FYP Report
FYP Report
Vehicle Wave
(Mobile Application)
By
Muhammad Bilal CIIT/ SP20-BSE-050 /SWL
Supervisor
The candidates confirm that the work submitted on their own and appropriate credit has
been given where reference has been made to the work of others.
COMSATS University
Islamabad Sahiwal, Pakistan
A Project Represented to
COMSATS University Islamabad, Sahiwal Campus
In partial fulfillment
the requirement of the degree of
---------------------------------------
Supervisor
---------------------------------------
External Examiner
---------------------------------------
Head of Department
The app's development will follow an incremental model, allowing for the implementation of
the features in stages. The development process will be guided by the functional requirements
of the app, user authentication, shipment creation, real-time tracking, route optimization, and
communication tools. Users, including drivers, dispatchers, and customers, can interact with
the system through an intuitive interface, creating and managing shipments seamlessly.
The app's testing and evaluation will involve unit, integration, and system testing to ensure
that all functionalities are working as intended. The app will also undergo user acceptance
testing to improve the app's usability.
We are greatly indebted to our project supervisor “Mr. Muhammad Umar”. Without their
supervision, advice, and valuable guidance, the completion of this project would have been
doubtful. We are deeply indebted to them for their encouragement and continual help during
this work.
And we are also thankful to our parents and family who have been a constant source of
encouragement for us and brought us the values of honesty & hard work.
2 Problem definition............................................................................................................6
2.1 Problem statement.........................................................................................................6
2.2 Deliverables and development requirements.................................................................6
2.2.1 Deliverables:....................................................................................................................................6
2.2.2 Development Requirements:...........................................................................................................6
5 Implementation...............................................................................................................19
5.1 Algorithm.....................................................................................................................19
5.1.1 User Authentication:......................................................................................................................19
List of Tables
TABLE 1.1 COMPARABILITY CHART........................................................................................................................3
TABLE 5.1 EXTERNAL APIS...................................................................................................................................21
TABLE 6.1 MANUAL TESTING...............................................................................................................................24
TABLE 6.2 SYSTEM TESTING.................................................................................................................................24
TABLE 6.3 UNIT TESTING.....................................................................................................................................25
Chapter 1
Introduction
1 Introduction
In today's fast-moving world, getting vehicles from one place to another efficiently is crucial
for businesses and individuals. Imagine a world where sending a car, a truckload of goods, or
even a single package could be as simple as a few taps on your smartphone. That's exactly
what the vehicle shipment system offers. It's like having a personal logistics manager in your
pocket, simplifying the way vehicles are transported.
With this user-friendly app, you can effortlessly create and manage shipments. Whether
you're a business sending out multiple vehicles or a customer needing a car transported, the
process is as easy as entering your details and destination. The app not only plans the best
routes for the vehicles but also allows you to track them in real-time. You can see exactly
where your shipment is, ensuring you're always in the know. Plus, communication between
drivers, dispatchers, and customers is seamless, reducing misunderstandings and ensuring
smooth operations.
In essence, this android application transforms the hassle of vehicle shipment into a hassle-
free experience. It's about simplifying logistics, saving time, and ensuring that your precious
cargo, whether it's a car, a truck, or any goods, reaches its destination swiftly and securely.
Welcome to the future of effortless transportation right at your fingertips.
Users can quickly input shipment details, including vehicle type, destination, and preferred
delivery date. The app then automatically generates optimized routes, reducing delivery time
and costs. The application offers real-time tracking features, enabling users to monitor the
exact location of their shipments. This ensures transparency and allows for timely updates on
delivery progress. Our app promotes seamless communication between drivers, customers,
and dispatchers. Instant messaging and notifications keep everyone in the loop, reducing
misunderstandings and enhancing collaboration. In essence, our vehicle shipment
management system simplifies the complexities of vehicle shipping. It provides a hassle-free
way to create, track, and manage shipments, ensuring a smooth and efficient experience for
all users involved.
11
The primary aim is to streamline vehicle shipment operations. By integrating advanced route
optimization algorithms and real-time tracking, the system aims to reduce transit times,
minimize fuel consumption, and enhance overall operational efficiency.
The system aims to provide complete transparency in the shipment process. Real-time
tracking features empower users with precise location data, ensuring they are always aware of
the status and location of their vehicles. This transparency builds trust and confidence among
customers and stakeholders.
The system aims to facilitate seamless communication between drivers, dispatchers, and
customers. Instant messaging and automated notifications ensure that everyone involved is
well-informed about shipment updates, reducing communication gaps and enhancing
collaboration.
1.3 Background
In a world where moving vehicles from one place to another is common, there's a need for a
simple and efficient way to manage these shipments. Traditional methods often involve
paperwork, phone calls, and guesswork about vehicle locations. To solve these challenges,
our auto shipment system android application was created. It's like a digital assistant for
shipping vehicles. This app uses smart technology to plan the best routes, track vehicles in
real-time, and keep everyone involved in the shipment process connected. By eliminating the
confusion and enhancing communication, this application makes vehicle shipments smoother,
faster, and much more reliable for everyone involved.
ShipItNow[1]
QuickLoad Logistics[2]
12
1.4.1 Analysis review from literature review
Table 1.1 Comparability Chart
Our application
integrates advanced
ShipItNow lacks efficient
route optimization
route optimization, often
ShipItNow algorithms,
leading to longer delivery
ensuring the
times and increased fuel
quickest and most
costs.
cost-effective
routes for vehicle
shipments.
Our application
automates the
documentation
QuickLoad Logistics
process, eliminating
lacks automated
paperwork and
QuickLoad documentation
reducing the chance of
capabilities, relying
Logistics errors.
heavily on manual
paperwork for record- It maintains digital
keeping. records of shipments,
This manual process is ensuring accuracy and
prone to errors and can be compliance with
time-consuming for regulations, saving
administrative tasks. time for
administrative tasks
and enhancing overall
efficiency.
In the software development process, the very first model that is published from other
engineering processes that cascade from one phase to another is known as the waterfall
model. This model is also known as the linear sequential model. In the waterfall model,
13
firstly all of the requirements are gathered. After gathering all the requirements and analysis
of all the requirements further move to the next phase which is making the design of a project
and then the implementation, testing, and maintenance phases. All the next phases of this
model are dependent on the previous phase. All the phases worked as a waterfall after one
another. We will use this methodology.
14
that the final product meets the needs and expectations of users.
Finally, the incremental software development methodology allows for faster delivery and
deployment of the product. Each increment can be tested and released independently,
allowing for early delivery of working software and faster time-to-market.
Overall, the incremental software development methodology was selected for the Vehicle
Wave project due to its flexibility, adaptability, and ability to deliver a high-quality and
reliable product promptly.
15
Chapter 2
Problem definition
2 Problem definition
2.1 Problem statement
The auto shipment industry faces numerous challenges that hinder its efficiency and customer
satisfaction. Existing processes are often plagued by inefficiencies in route planning, lack of
real-time tracking, ineffective communication between stakeholders, and cumbersome
paperwork for documentation. These issues lead to longer delivery times, increased
operational costs, customer dissatisfaction due to lack of transparency, and potential errors in
compliance-related paperwork. Additionally, the absence of a centralized and user-friendly
platform exacerbates these challenges, making it difficult for drivers, dispatchers, and
customers to collaborate seamlessly.
Considering these challenges, there is a pressing need for a sophisticated Auto Shipment
Android Application. This application must address the inefficiencies in route planning,
provide accurate real-time tracking, facilitate seamless communication, automate
documentation processes, and offer an intuitive interface for all users involved. By doing so,
it will not only optimize operational processes within the auto shipment industry but also
enhance transparency, communication, and overall customer experience. The development of
such an application is crucial to revolutionizing the auto shipment sector, ensuring timely
deliveries, reducing costs, and fostering trust and satisfaction among businesses and
consumers alike.
6
2. The app should be user-friendly and intuitive, with a simple and clean interface design
that allows users to navigate easily between modules.
3. The app should include the following modules:
Shipment management module to develop features for creating, editing, and
canceling shipments, allowing users to input essential details such as vehicle type,
destination, and delivery time.
Implement a secure user authentication system for drivers, dispatchers, and
customers, ensuring data privacy and access control.
Route optimization module to implement algorithms for efficient route planning,
considering factors like distance, and delivery time windows to optimize shipment
routes.
Implement automated notifications and alerts to inform users about shipment
status changes and important updates.
Price generation module ensures transparency and fairness in pricing, providing
both the business and customers with clear insights into the expenses involved in
vehicle shipments.
4. The app should allow users to customize their reminders, and notifications according
to their preferences.
5. The app should have a reliable and secure database that stores user data and app
settings.
6. The app should have a testing phase to identify and fix bugs, as well as optimize the
app's performance and speed.
7. The app should comply with the relevant privacy and security regulations and
standards.
8. The app should have regular updates to fix bugs, add new features, and improve the
app's overall performance and usability.
7
Chapter 3
Requirement Analysis
3 Requirement analysis
3.1 Use case diagram
In this use case diagram, we are showing how a user can find the timetable. There are three
types of users: Customer, Admin, and Driver.
Actors Customer
This use case enables the customer to create a new shipment booking.
Description Users can enter their address, vehicle details, and schedule a
shipment for transport.
8
Trigger User selects the "Book Shipment" option in the application.
9
provided details.
Actors Driver
This use case represents the interactions of a driver within the appli.
Description The driver can log in, view assigned loads, update load statuses, view
load details, and confirm deliveries.
10
The use case is triggered when the driver successfully logs into the
Trigger
mobile application.
The driver must have a valid account and must be logged into
the application.
Pre condition
There must be assigned loads in the system for the driver to
interact with.
1. Login:
Driver enters valid credentials.
System authenticates the driver.
System redirects the driver to the dashboard.
2. View Assigned Load:
The driver navigates to the assigned loads section.
Normal Flow The system displays a list of assigned shipments to the
driver.
3. Update Load Status:
The driver selects a load from the list.
The driver updates the load status.
System records the status update.
11
3.3 Use case 3
Actors Admin
This use case represents the interactions of an Admin within the Auto
Shipment Management System. The admin can log in, manage
Description
customer accounts, manage shipments, view reports, and manage
driver information.
Trigger The use case is triggered when the admin successfully logs into the
12
Auto Shipment Management System.
1. Login:
Admin enters valid credentials.
System authenticates the Admin.
System redirects the admin to the admin dashboard.
2. Manage Customer:
Admin navigates to the customer management section.
Secure user login and authentication processes for drivers, dispatchers, and customers,
ensuring data privacy and access control.
14
By automating the price calculation process, the Price Generator module eliminates
the need for manual price negotiations and provides customers with instant, fair, and
reliable pricing information.
All users must use the logout to exit from the application.
3.5.1 Usability
The app must have a simple and intuitive user interface that is easy to use for both the
customer and driver. It should also be visually appealing and customizable.
3.5.2 Performance
The app should be fast and responsive, with quick load times and minimal lag. It should also
be optimized for different screen sizes and device specifications.
15
3.5.3 Reliability
The app should be reliable, with minimal downtime and errors. It should be able to handle
many users simultaneously without crashing or slowing down.
3.5.4 Compatibility
The app should be compatible with the latest version of android and should work seamlessly
across different devices and operating systems.
3.5.5 Availability
This app will be readily available to all its users all the time.
16
Chapter 4
15
4.2.2 Class diagram
The class diagram is a graphical representation of the system's classes, their attributes, and
the relationships between them. It depicts the static structure of the system and shows how
the different classes in the system are related to each other.
16
The entire process, from creating the request to successful delivery, is seamless and
transparent, enhancing efficiency and customer satisfaction.[5]
17
4.3 Design models
4.3.1 Incremental model
The incremental model was used in the development of the Vehicle Wave android app. This
model allows for the development of the application in increments, with each increment
adding new functionality and features to the app. The model was chosen because it enables
the development team to quickly produce a working version of the app, which can be tested
and refined before the next increment is added.
Using the incremental model also allows for greater flexibility in the development process, as
changes can be made to the app as it is being developed, rather than waiting until the entire
app is completed. This helps to reduce the risk of errors and omissions in the final product, as
any issues can be identified and corrected early in the development process.
Overall, the use of the incremental model has helped to ensure that the Vehicle Wave android
app is developed efficiently, with a focus on producing a high-quality product that meets the
needs of its users.[6]
18
Chapter 5
Implementation
5 Implementation
In this chapter, we’ll focus on the implementation of the “Vehicle Wave(android)” mobile
application. Where users can perform many activities on this mobile application.
The most important goal of this phase is to develop the application. The work in this phase
should be much more straightforward because of the work done in the planning and design
phases. This phase involves changing design specifications into executable programs. When
the design is there, developers can have an idea of the looks of the application. All that is
needed by developers is to put them in one place to understand.
The Auto Shipment Management App is developed using Flutter, a robust and
versatile framework for building cross-platform applications. Flutter's single codebase
approach allows developers to write code once and deploy it on both Android and iOS
platforms, ensuring consistency in user experience across devices. Flutter's extensive
widget library provides a wide range of customizable UI components, enabling the
creation of visually appealing interfaces tailored to the specific needs of the auto
shipment management system.
The database schema is carefully designed to optimize queries, ensuring quick
retrieval of information. Additionally, data normalization techniques are applied to
eliminate redundancy and improve data integrity. Indexing is utilized strategically to
speed up search operations and enhance overall database performance.
5.1 Algorithm
A general algorithm for Vehicle Wave is:
The user enters their credentials on the sign-up page, typically find fields to input
login credentials. These usually include:
19
2. Email: Enter your email address associated with your account.
3. Password: Create a strong and secure password following the app's password
requirements (e.g., length, special characters, etc.).
This module is made for customers who want to transport their vehicles.
After this, it generates a price for them if the customer accepts the price, then it adds
his load to the shipment box.
The shipment box will contain tracking, driver details and status of his load.
Cancellation functionalities.
Allowing users to input shipment details, modify existing shipments, and cancel
orders when necessary.
The Price Generator module is a crucial component that calculates the cost of vehicle
shipments based on various factors such as distance, vehicle type, and transportation
options.
Price Generator module considers the pickup and delivery locations, vehicle
specifications, and customer preferences to generate an accurate and competitive price
quote.
20
By automating the price calculation process, the Price Generator module eliminates
the need for manual price negotiations and provides customers with instant, fair, and
reliable pricing information.
The admin module enables administrators to manage user accounts, including creating
new accounts, modifying user information, and handling account-related issues. This
goal ensures proper user management and access control within the system.
Shipment management administrators can monitor and manage the entire lifecycle of
vehicle shipments through the admin module.
This includes tracking the status of orders, managing pickup and delivery schedules,
resolving any shipment-related issues, and generating reports for analysis and
decision-making.
21
Identification Number), fuel
efficiency, and maintenance
records.
22
Figure 5.6 User interface 1 Figure 5.7 User interface 2
23
Figure 5.8 User interface 3
Figure 5.9 User interface 3
For Example, in our application text fields are used for pickup Location that allow users to
enter the address from where the vehicle will be picked up. Delivery location enables users to
input the address where the vehicle will be delivered. Vehicle details provide space for users
to specify vehicle make, model, and other relevant information. Same as date and time
pickers are used to pick up dates that allow users to select the date for vehicle pickup.
Dropdown menus are used to select vehicle type users can select the type of vehicle being
shipped. Additional services provide options like expedited delivery or insurance, enhancing
user choices.
The overall design and layout of the app aim to provide a user-friendly and intuitive
experience for users, allowing them to easily navigate the app and access the
information they need.
25
Chapter 6
24
Test Cases Expected Result Actual Result Pass/Fail
Testing objective: To ensure the user can sign up into the system properly.
Table 6.5 Unit testing
Test Actual
Input Expected Output Pass/Fail
Case Output
25
password
User will sign E-mail:
up through
MuhammadBilal786@gmail.com Successfully
2 username Pass
signup into the
email and Password: 1234mb
system.
password
Actual
Test Case Input Expected Output Pass/Fail
Output
User will
login E-mail:
Successfully
through raimafatima6262@gmail.com login into the
email and
Password: raima@62 system.
1 password or Pass
direct to
Google.
Actual
Test Case Input Expected Output Pass/Fail
Output
Valid pickup
and delivery App displays
Booking should fail due to
details, valid an error
invalid date/time, and an error
vehicle type, message
1 message should be displayed. Pass
but past indicating an
date/time for invalid pickup
pickup. date/time.
Booking fails.
26
invalid vehicle type, and an an error
details,
error message should be message
invalid
vehicle type, displayed. indicating an
and invalid
preferred
vehicle type.
date/time.
Booking fails.
27
Users need to on their internet
Steps services.
User must need valid username,
email and password on the
dashboard to click on the signup
button and enter his/her basic
information.
The status is signup successfully
Status Pass
Test
Test Description Expected Result
ID
Verify that the user can login into The user can login into the system.
F01
the system
Verify that the user can sign up into The user can correctly sign up into the
F02
the system. system.
F03 Verify that the user can reset the The user can reset the password.
28
password.
Verify that the user can select pick User can select any valid address.
F04
up and drop off address.
Verify user can view past shipment User should be able to access and view their
F05
history. past shipment details.
Verify user receives notifications for User should receive timely notifications
F06
shipment status updates. about the status of their active shipments.
Verify the accuracy of the estimated The estimated cost displayed after entering
F07 shipment cost calculation. shipment details should match the calculated
cost based on distance and vehicle type.
Verify the functionality of adding User should be able to add and manage
F08 and managing multiple shipments multiple shipments concurrently without
simultaneously. any conflicts or data overlapping.
Verify the accuracy of the delivery The estimated delivery time provided to the
F09 time estimation. user should be accurate, considering factors
such as distance and delivery route.
29
Verify the secure handling of User data should be encrypted and securely
sensitive user data, such as stored, and there should be no unauthorized
F10
passwords and payment access to sensitive information.
information.
Verify the functionality of the date User should be able to select any valid
and time selection during shipment future date and time for pickup, ensuring the
F11
booking. system accepts the chosen schedule
accurately.
Verify user can log out of the User should be successfully logged out,
F12
application. terminating the current session.
30
Chapter 7
By automating tasks and providing a centralized platform, the system reduces manual efforts,
minimizes errors, and optimizes the logistics chain. It enables businesses to efficiently
manage their fleet, ensures timely deliveries, and enhances customer communication through
real-time tracking and notifications. Additionally, it promotes cost-effectiveness by
optimizing routes and resources, making the vehicle shipping industry more efficient and
reliable for both providers and customers.
Driver Module
Tracking Module
Chat Module
These modules will enhance the functionality of the application, making it more user-friendly
and efficient. The Driver Module enhances system efficiency by providing a streamlined
interface for carriers. Drivers can receive job assignments, access optimized routes, and
update shipment statuses in real-time. The Tracking Module significantly improves system
efficiency by offering real-time visibility into shipment locations for both users and carriers.
29
The Chat Module enhances efficiency by enabling instant communication between users,
carriers, and customer support within the application.
Overall, adding these modules will provide a more comprehensive and complete user
experience, and we are excited to implement them soon.
30
References
31