Reference Architecture for an Effective Ground Transportation System
Reference Architecture for an Effective Ground Transportation System
In this article, we have defined a reference architecture for an effective ground transportation system by identifying the main stakeholders, key requirements, and technical approach.
Join the DZone community and get the full member experience.Join For Free
Ready for feedback: How would you use Capital One’s Virtual Card Numbers API?
Transporation has been one of the most important activities of human existence. It helped people to spread across the globe, build new communities, explore beautiful places and so on, but every advancement hits a breakeven point where it slowly deviates away from its sole purpose or the advantage it brings. In the world of transportation, it is the “congestion” which causes the sole purpose to breakeven. Across the globe, wherever there is a considerable advancement in transportation, people are experiencing “congestion” or a “traffic jam.” It does not matter whether you own a Maruti, Toyota, Audi, BMW or Lamborghini. It is the same hectic feeling when we hit a traffic jam. It is not the car manufacturers who are responsible for this congestion, it is the people and their behavior along with inefficient traffic handling systems.
- Users (Commuters, Pedestrians, Drivers)
- Infrastructure (Roads, Traffic light, Traffic police, control center)
- Vehicles (Bus, Train, Car, Self-driving Car)
- Commuters — People who travel as passengers of vehicles. They are interested in reaching their destination in a more convenient and time efficient manner. They need information about traffic conditions, vehicle locations, capacities, and vehicle conditions.
- Drivers — People who drive the vehicle and use the infrastructure in reality. Their responsibility is to move commuters from the starting point to the destination in a safe, timely manner. They are interested in traffic conditions, traffic light system, commuters who are waiting for their travel, roadside maintenance activities, events happening in that area, etc.
- Pedestrians — People who use the roads by foot and walking around the city. They want to know about air pollution, crowded areas, and traffic light system.
- Vehicles (including self-driving) — This is the actual tool drivers are using to carry commuters around. These vehicles have sensors to capture data and actuators to act upon receiving data. Self-driving vehicles are solely driven by these 2 types of data, while other vehicles use those data points to improve drivers efficiency and eventually contribute to the overall improvement of the system.
Sensors — Sensors can be used to improve the overall system efficiency. There can be different types of sensors depending on the positions they are located in.
Traffic sensors — These sensors can be installed in the road near junctions (e.g. SCOOT). They will capture raw events about how many vehicles passed through the sensors. That can be used to derive the traffic flow of a particular direction within a junction and eventually communicate to the traffic control system so that overall traffic lighting system can be improved.
Platform gate sensors — These sensors can be used to measure the capacity at a given platform of a station, and based on that, users can be distributed to different sections of the platform to have a uniform distribution of load to the
Air pollution sensors — Measuring the air quality of an area.
- Traffic control system — The main component of the control system is the signal light system. Adaptive signal light systems can take feedback from roadside sensors and change the duration of green lights and control the traffic flow as a whole. Based on the day of the week and the time, it can decide the timing of lights across the entire system. Traffic police can also receive this information from the control center.
- Roadside maintenance — In a developing city, there can be many maintenance activities going on within the road network and this information needs to be properly fed into the system so that users can receive and act based on that. Prior notifications allow people to plan their routes in advance.
- Stations (Bus, Railway, Tram) — These are places that show a lot of information about the transportation system status. It shows details about schedules, current running vehicles, and locations. With the usage of sensors on vehicles, more detailed information like the capacity of each compartment, locations of buses, and predicted time can be communicated to the users through public communication mechanisms available in these stations.
- Taxi companies — These companies have a huge impact on the traffic condition by reducing the number of personal vehicles entering the city, ridesharing, and professional drivers with advanced devices. These drivers can make smart decisions and be more effective on the roads with quality information and experience.
- Transportation authorities — Most of the public transportation is controlled by these authorities. They can impose rules for better transportation system and run buses, trains, and trams within cities.
- Collect — data generated within various components are transmitted as events to other components. These events needs to be collected before doing any analysis in real time or batch mode.
- Analyze — The events needs to be analyzed and derive valuable insights through processing of these events.
- Communicate — Valuable insights, results and messages needs to be communicated to various channels for feedback and improvements of the system
- Act — Commuters, drivers, passengers, vehicles, police officers needs to act based on the valuable insights communicted to them so that they can collectively build a reliable transportation eco system
- Integration — There can be different systems like control centre applictions (desktop), web services, mobile applications, etc. These applications will be developed with their own standards and messaging formats and the transportation system should be capable of handling these integrations
- APIs — The processed data can be exposed as APIs so that other stakeholders like commuters, taxi services, third party application developers can consume this data and build innovative solutions which will eventually improve the overall system
- Security — Not all the processed data can be communicated to everyone. Hence we need to have proper security mechanisms established in the system so that only authorized people can access the relevant information.
- Monitoring — The events coming in from various sources and be used to build a realtime view of the system. This can be used in a contol centre to monitor the system and take necessary actions whenever there is a need for human (manual) interactions.
The above figure showcases a typical (scary) traffic jam and by only looking at that figure, you will feel the pain. Vehicle manufacturers are trying to solve this problem through self-driving cars with more and more technological advancements. Even though it is a good move, it will not be the silver bullet for this complex problem. Companies like Uber are building systems that are more efficient in terms of vehicle utilization and professional drivers so that it will almost become another public transportation and people don’t want to bring their own vehicles. All these moves are really great and helping the congestion problem in different forms. Within this article, we are going to discuss how to build an effective technology platform to improve the experience of people by providing necessary information to drivers, commuters, passengers, and even vehicles to act in a manner that causes the least traffic congestion. Due to the complexity of the problem, the approaches described here may not apply the same efficiency everywhere, but this will provide a firm basis to build effective transportation systems.
Understanding the Transportation Ecosystem
One key thing to note here is that we are trying to build a reference architecture specifically for ground transportation. This does not discuss the air or naval transportation. There are three main sections in ground transportation:
In the above three categories, we have supportive services like roadside maintenance and taxi companies like Uber, which help the system to run more efficiently. These main stakeholders can be depicted using the below figure:
Figure 1: Main stakeholders of ground transportation ecosystem
As depicted in the above figure, we can identify the following main stakeholders related to ground transportation.
There can be more than the above-mentioned stakeholders within a specific transportation ecosystem. But the above mentioned can be considered as a most common denominator.
Understanding the Technical Requirements
Prior to coming up with a technical reference architecture, we need to understand the main technical requirements of the ecosystem in a manner we can realize with real-world products. All the stakeholders we have mentioned in the previous section are more or less deal with valuable information to improve their efficiency. In this section, we are going to identify the information (or data) flows within this ecosystem and how these stakeholders are consuming or producing these events. At a 33000 feet level, we can identify the below mentioned technical aspects.
The next level of technical requirements comes when the processed data is shared with other parties. Here we need to have the following capabilities
Reference Architecture for a Ground Transportation System
With the identification of core technical requirements and capabilities for an efficient ground transportation system, it’s time to come up with a reference architecture for the solution.
Figure 2: Ground transportation system reference architecture
As depicted in Figure 2, sensors provide information about the current state of the system. This includes data about vehicle flow, commuter capacities at stations, current load of vehicles (in each compartment), vehicle locations, and air quality indexes. These events can be processed in two places.
- Pre-process data at the edge — Before sending out data to the central system for processing, events can be filtered and aggregated at the edge level so that only the required events coming into the central system handles a load of data.
- Process data at the central system — Once the events are filtered at the edge, those events can be communicated to the central system where it does the final processing and produces meaningful results and publishes them through different channels.
- Email notifications — If there are pre-planned maintenance activities or notifications that need to be sent out to drivers and commuters, they can be sent as emails.
- Pub-sub notifications — Real-time results can be pushed into a topic and the relevant users who have subscribed to that topic can retrieve the events when that is sent out from the central analysis in real time.
- APIs — Sometimes users need to know about the historical traffic conditions to pre-plan their activities. You need to have that data stored in the central system to do that. This stored data can be exposed to those applications through secured APIs. Also this historical data needs to be integrated with other systems which exists in the control centre through an integration layer.
- The drivers can get notifications about current traffic condition as well as historical data to choose their travel times and routes.
- Commuters can see notifications about current vehicle locations, platform capacities, compartment level capacities, traffic conditions and plan their journeys so that they get a safer, comfortable travel.
- Traffic light system can improve its efficiency by understanding the current traffic flows and change its behavior accordingly (Adaptive traffic light system)
- The control center can see the real-time and entire view of the system and make better decisions accordingly
- Traffic police officers can operate with more awareness of the real-time traffic conditions and offer better service to the public
Once the data is processed real-time, the derived results needs to be communicated to the relevant parties so that it can improve the overall system. These results can be communicated through following methodologies
These results will be consumed by the actual users of the transportation system.
Realizing the Reference Architecture
Now we have an understanding of the problem and the high-level solution. Let’s see how we can realize this reference architecture through a real product suite. According to the previous sections, we can identify 4 main capabilities, which need to realize this reference architecture.
- Real-time event processing
- Integration with message queueing
- API management
There are many vendors who offer these capabilities through open source as well as proprietary software products.
Detailed Technical Reference Architecture
When these different components connect with each other, they use different protocols, messaging formats, and interfaces. Let’s take a look at which technologies we can use to realize this reference architecture.
Figure 4: Ground transportation technical reference model
The above figure depicts the relevant protocols, standards, and messaging formats that are used to realize the reference architecture. Enterprise architects who need to implement this type of a reference model can take their vendor selection decisions by using the technologies mentioned above. That makes this model independent from any one particular vendor. If someone wanted to build this system from scratch without using any existing products, they could do so by fulfilling the above mentioned technological requirements.
Building an effective ground transportation system will drastically improve the productiveness of that community. People waste thousands of hours on the roads due to inefficient ground transportation systems through “congestion.” In this article, we have defined a reference architecture for an effective ground transportation system by identifying the main stakeholders, key requirements, technical approach and a realization mechanism with real product suite. Even though we have used a specific vendor for the purpose of this article, you can realize the same reference architecture through other technology stacks as well.
Opinions expressed by DZone contributors are their own.