This project entitled “Alternative Road Finder” submitted by Hasanul Murshed Shakil and Shohag Kumar Bhowmik and Shanzida Afroz to the Department of Computer Science and Engineering, Daffodil International University has been accepted as satisfactory for partial fulfillment of the requirements for the degree of B.Sc. Department of Computer Science and Engineering Faculty of Science and Information Technology Daffodil International University. We hereby declare that this project was carried out by us under the supervision of Shaon Bhatta Shuvo, Senior Lecturer, Department of CSE, Daffodil International University.
We also declare that neither this project nor any part of this project has been submitted elsewhere for the award of any degree or diploma. In-depth knowledge and great interest of our supervisor in the field of "Field Name" to carry out this project. His endless patience, scientific guidance, constant encouragement, constant and energetic supervision, constructive criticism, valuable advice, reading many inferior drafts and correcting them at all stages have made it possible to complete this project.
Syed Akhter Hossain, Professor and Head of CSE Department, for his kind help to complete our project and also to other faculty members and staff of CSE department of Daffodil International University. We would like to thank all our course fellow at Daffodil International University who participated in this discussion during the completion of the course work.
LIST OF TABLES
Introduction
- Introduction
- Motivation
- Expected Outcome
- Feature
- Location Searching
- Initial Road
- Alternative Road
- Traffic Details
- Existing Applications and their Limitations
By using this application, the user can get information about the traffic on the road so that he can avoid the traffic jam if he wants. We also briefly describe the features of this project and describe the special feature that we add to our project. Here we also discuss the problem scope of our project and the challenges we face in developing this project.
We also discuss many types of requirements and analyze those requirements for this project. In Chapter 4, we will discuss about the design specifications, which cover all the details about the final, final design, as well as the user experience (UX) of this project. In this chapter we will also discuss the requirements we need to implement this application.
In Chapter 5 we try to cover all the topics related to the Implementation and Testing of this project. We discuss the limitations of this project as well as the conclusion and the future plan we have with this project.
Background
- Introduction
- Related Works
- Comparative Studies
- Challenges
If they know that their original travel route is full of traffic and they know the alternate routes on this initial route, then by using the alternate route they can avoid traffic jam and also reach their destination on time. Also, they can take help from bus details to avoid confusion about the buses.
Requirement Specification
Business Process Modeling
- Use Case: Source and Destination Address Locator
- Use Case: Search Shortest/ Initial Path
- Use Case: Search Alternative Road
- Use Case: Check Live Traffic Details
- Use Case: Check Dhaka City Bus Details
- Use Case: Check Help Option
- Use Case: Check About Option
- Use Case: Admin login
- Use Case: Delete bus details
In other words, we can say that without complete project requirements, we cannot actually complete this project. Design requirements are also very important, as they determine how we design the user interface of our application [5]. In fact, they help us to give our project a beautiful look and make it more user-friendly.
Design Specification
- Front-end Design
- Interaction Design and UX
Back-end design is also a set of codes that create a connection between a user and a project or application. For example, in our project we use a button that helps to display the bus details. This was actually done by the Java code that we write in our project as Back-end design.
So we can say that, some code that helps to perform a task in an application is actually the last design. When we get source to destination address data from google from API, then the data is used in Dijkstra algorithm for measuring the shortest path from their distance value. From this distance value, the application provides the alternative path whose distance value is higher than the shortest path.
This is mainly used to retrieve and load JSON data from REST based web service. Interaction design is actually the discipline that controls the interaction between an application and the user. In other words we can say that the way a user interacts with an application is decided by the interaction design [8].
On the other hand, User Experience (UX) refers to the overall experience between a user and an application. it is not only thinking about the interaction element, but also the overall look, feel or mechanism to deliver the expected result [8]. An implementation requirement is a type of requirement that is necessary to implement a project or an application. Virtual Device: This is a tool that helps to run an android application on a computer during its development.
Virtual device takes a lot of time, sometimes it is really boring to work with virtual device. Thus, the real device is used to run the app under development faster than a virtual device on a real phone. API: In our project we use some application programming interface (API) to implement google map in our project.
Implementation and Testing
- Implementation of Database
- Implementation of Front-end Design
- Implementation of Interactions .1 For user
- For admin
- Testing Implementation
Daffodil International University 21 In our application we get real time data quickly with the help of firebase. For example, when we are looking for the source and destination address, it helps to get real-time data and then use it to find the shortest route and alternative route. Daffodil International University 23 In this Figure 5.8, we can see that when the user searches for the source address, there is a source address search bar that will display the source address on the map.
In Figure 5.9, when the user searches the destination address in the destination address search bar, the destination address is displayed on the map. Daffodil International University 24 In Figure 5.10, we can see that when the user clicks the Next button after entering the source and destination addresses, the application provides the best shortest path between the source and destination locations using the Dijkstra algorithm. In Figure 5.11 we can see that when the user clicks the alternate paths button, the application shows the alternate path between the source and destination addresses.
In Figure 5.12 we can see that when the user clicks on the traffic button, the application displays the real-time traffic data on the map. In Figure 5.13, from the navigation drawer, the application opens the main page when the user clicks on the map option. In Figure 5.14 we can see that when the user clicks on the Buses option in the navigation drawer, the bus details are displayed along with the congestion when a user selects a bus.
In Figure 5.15, we can see that when the user clicks on the help option from the navigation drawer, it shows what the application does and how to do it. In Figure 5.16, we can see that when the user clicks on the about option in the navigation drawer, it shows application information. Daffodil International University 28 In Figure 5.17, by clicking the application icon 5 times, an admin can access this login page.
Enter the correct information for a bus in Figure 5.19. An administrator can add bus details from this page. Daffodil International University 30 In Figure 5.20, by clicking the icon to the right of a bus name, an administrator can delete the bus data from this page. When the user enters his 'Farmgate' as source address and 'Square hospital' as destination address, the application gives the source address with red icon and destination address with green icon.
For the shortest path and alternative path user click the next and other path button one by one. Then the application shows the shortest path with sky color and alternative with red color. Now, if the user needs to decide which path to take based on traffic details, the user needs to click on the traffic button.
Conclusion and Future Scope
Discussion and Conclusion
Limitations of this project
Add a bus ticket booking system with this project to make it easier to book a ticket using just this app.
APPENDIX Part A
Project Reflection
Part B
Plagiarism