0% found this document useful (0 votes)
32 views14 pages

(Locating The Distance of Automobiles Using GPS) SRS

Uploaded by

wsufyan37
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
32 views14 pages

(Locating The Distance of Automobiles Using GPS) SRS

Uploaded by

wsufyan37
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 14

Locating the Distance of Automobiles using GPS/GPRS

Software Requirements Specification

Version 1.0

Group Id: S24026744B (BC200414821)

Supervisor Name: Asim Mehmood


Revision History
Date Version Description Author
(dd/mm/yyyy)
27/05/2024 1.0 This project involves developing BC200414821
an Android application for
tracking the location and
distance between vehicles using
GPS and GPRS/GSM
technology. The app will allow
users to register, collect and
share their coordinates, and
calculate the time it will take for
one user to reach another user's
location. Key features include
Location Tracking,
Communication, User
Management, and Data Storage.
The goal is to create an effective
system for real-time vehicle
tracking and communication,
enhancing road safety and
navigation efficiency.
Table of Contents

1. Scope (of the project)

2. Functional Requirements Non Functional requirements

3. Use Case Diagram

4. Usage Scenarios

5. Adopted Methodology

6. Work Plan (Use MS Project to create Schedule/Work Plan)

SRS Document

Scope of Project:

The project aims to design and implement an efficient automobile tracking system to identify and
monitor the location and distance between vehicles on the road using GPS and GSM/GPRS
technology. The focus is on developing an Android application that allows users to determine the
distance between their vehicles through the exchange of location data via text messages. The
application will gather geographical coordinates using GPS, which will be transmitted to a
central database using GPRS at regular intervals. Coordinates will be updated every 10 minutes
to ensure tracking accuracy, and a robust database will store user coordinates, speed data, and
other relevant information. Users must register to access the application's features, and the
system will manage user profiles and preferences securely.
The application will enable users to exchange location data through text messages, allowing
them to request and receive real-time location information from each other. Upon receiving
location data, the application will calculate the distance between users and estimate the time
required for one user to reach another based on current speed and coordinates. Additionally, the
application will periodically send speed and location information to the central database, making
this data accessible to users for accurate distance and time estimations. The implementation
strategy includes the development of a user-friendly Android application, integrating GPS and
GPRS for real-time data collection and sharing. A secure, scalable database will be developed to
manage user and location data efficiently. Extensive testing will be conducted to ensure the
system's accuracy and reliability, followed by deployment on Android platforms with user
training and support.

Functional and non-Functional Requirements:

1. Functional Requirements

o Location Data Collection:


Gather geographical coordinates using GPS.
Update coordinates every 10 minutes.

o Data Transmission:
Transmit coordinates to a central database using GPRS.
Periodically send speed and location information.

o User Registration and Management:


Provide secure registration for users.
Manage user profiles and preferences.

o User Interaction:
Allow users to exchange location data via text messages.
Enable users to request and receive real-time location information from each
other.

o Distance and Time Calculation:


Calculate the distance between users upon receiving location data.
Estimate time required for one user to reach another based on current speed and
coordinates.

o Database Management:
Store user coordinates, speed data, and other relevant information.
Ensure efficient data retrieval and update mechanisms.

2. Non-Functional Requirements

o Performance:
Ensure real-time data processing and transmission.
Provide fast and accurate distance and time calculations.

o Scalability:
Design the system to handle an increasing number of users and data volume.

o Reliability:
Ensure high availability and minimal downtime.
Implement robust error handling and recovery mechanisms.

o Security:
Ensure secure transmission of data between users and the database.
Protect user data and privacy with encryption and secure access controls.

o Usability:
Design a user-friendly interface for easy navigation.
Provide clear and intuitive user interactions.

o Compatibility:
Ensure compatibility with a wide range of Android devices.
Support various versions of Android operating systems.

o Maintainability:
Write clean, well-documented code for ease of maintenance.
Implement modular architecture to facilitate updates and enhancements.

o Compliance:
Adhere to relevant data protection and privacy regulations.
Ensure compliance with industry standards for mobile applications.
Use Case Diagram(s):

Figure0.1Use case diagram


Usage Scenarios:

User Registration

Heading Description
Use Case Title User Registration
Use Case ID UC001
1. User opens the app.<br>2. User enters required details.<br>3. User
Actions submits the form.
Description Registers a new user into the system.
Alternative
Paths None
Heading Description
Pre-conditions User has the app installed.<br>User has internet access.
Post-conditions User account created and stored in the database.
Author BC200414821
Network failure - prompt user to try again.<br>Validation errors - prompt
Exceptions user to correct details.

2. User Login

Heading Description
Use Case Title User Login
Use Case ID UC002
1. User opens the app.<br>2. User enters login credentials.<br>3. User
Actions submits the form.
Description Allows an existing user to log into the system.
Alternative
Paths Password reset
Pre-conditions User is registered.<br>User has internet access.
Post-conditions User logged in and directed to the home screen.
Author BC200414821
Incorrect credentials - prompt user to try again.<br>Network failure -
Exceptions prompt user to try again later.

3. Send Coordinates

Heading Description
Use Case Title Send Coordinates
Use Case ID UC003
1. App captures current coordinates.<br>2. Coordinates are sent to the
Actions server.
Description Captures and sends the user's current coordinates.
Alternative
Paths None
Pre-conditions User is logged in.<br>GPS is enabled.
Post-
conditions Coordinates stored in the server database.
Author BC200414821
GPS failure - prompt user to enable GPS.<br>Network failure - store
Exceptions coordinates locally and try sending again later.

4. Receive Coordinates
Heading Description
Use Case Title Receive Coordinates
Use Case ID UC004
1. User requests coordinates of another user.<br>2. Coordinates are
Actions retrieved from the server.
Description Retrieves another user's coordinates from the server.
Alternative
Paths None
Pre-conditions User is logged in.<br>Server has coordinates data.
Post-
conditions Coordinates received and displayed to the user.
Author BC200414821
Network failure - prompt user to try again later.<br>No data available -
Exceptions inform user that no coordinates are found for the specified user.

5. Calculate Distance

Heading Description
Use Case Title Calculate Distance
Use Case ID UC005
Actions 1. User fetches coordinates of another user.<br>2. Distance is calculated.
Description Calculates the distance between two sets of coordinates.
Alternative
Paths None
Pre-conditions User has coordinates of another user.
Post-
conditions Distance displayed to the user.
Author BC200414821
No coordinates - prompt user to request coordinates first.<br>Calculation
Exceptions error - display error message and prompt user to try again.

6. Calculate Time to Arrival

Heading Description
Use Case
Title Calculate Time to Arrival
Use Case ID UC006
1. User fetches speed data.<br>2. User fetches coordinates.<br>3.
Actions Estimated time of arrival is calculated.
Description Calculates ETA based on distance and current speed.
Alternative
Paths None
Heading Description
Pre-
conditions User has distance and speed data.
Post-
conditions ETA displayed to the user.
Author BC200414821
Missing data - prompt user to ensure speed and distance data are
available.<br>Calculation error - display error message and prompt user to
Exceptions try again.

7. Update Coordinates Periodically

Heading Description
Use Case Title Update Coordinates Periodically
Use Case ID UC007
1. Schedule periodic updates.<br>2. Coordinates are captured.<br>3.
Actions Coordinates are sent to the server.
Description Automatically updates coordinates at regular intervals.
Alternative
Paths Manual update
Pre-conditions User is logged in.<br>GPS is enabled.
Post-conditions Coordinates periodically updated on the server.
Author BC200414821
GPS failure - log error and retry.<br>Network failure - store coordinates
Exceptions locally and try sending again later.

8. View User Locations on Map

Heading Description
Use Case Title View User Locations on Map
Use Case ID UC008
Actions 1. User requests coordinates.<br>2. Coordinates are displayed on the map.
Description Displays the locations of all users on a map.
Alternative
Paths None
Pre-conditions User is logged in.<br>Map service is available.
Post-
conditions Map with user locations displayed.
Author BC200414821
Network failure - display cached data or prompt user to try again
Exceptions later.<br>Map service failure - prompt user to try again later.
9. Speed and Coordinates Data Logging

Heading Description
Use Case Title Speed and Coordinates Data Logging
Use Case ID UC009
1. Speed and coordinates are captured.<br>2. Data is logged at specified
Actions intervals.
Description Logs speed and coordinates data for future reference or analysis.
Alternative
Paths None
Pre-conditions User is logged in.<br>GPS and speedometer are enabled.
Post-conditions Data logged in the local database and server.
+Author BC200414821
GPS failure - log error and retry.<br>Network failure - store data locally
Exceptions and sync with server later.

Adopted Methodology:

For the development of our automobile tracking system, we have adopted the VU Process
Model. The VU Process Model is a hybrid methodology combining the Waterfall and Spiral
models, leveraging the strengths of both to create a robust and flexible framework suitable for
our project. This approach ensures systematic progression through project phases while
incorporating iterative cycles for continuous refinement and risk management

Waterfall Model:
The Waterfall model is a linear and sequential approach to software development. Each phase
must be completed before the next phase can begin. Here is a detailed Waterfall model for your
project, including each phase and its respective activities:

 Requirements Analysis:
 Gather requirements from stakeholders (users, developers, network engineers).

 System Design:
 Create system architecture and design diagrams.
 Define the overall system components (GPS module, GPRS module, database, user
interface).

 Implementation:
 Set up the development environment (Android Studio, development servers).
 Develop the Android application according to the design specifications.

 Integration and Testing:


 Integrate all system components (GPS, GPRS, database, UI).
 Perform unit testing on individual components to ensure they work correctly.
 Deployment:
 Prepare the deployment environment (servers, network configurations).
 Deploy the Android application to the Google Play Store or distribute it directly to users.

 Maintenance:
 Monitor system performance and user feedback.
 Perform regular maintenance tasks (database backups, server updates).

Waterfall Model Diagram:

Figure0.2waterfall model
Spiral Model:
The Spiral model is an iterative software development process that combines elements of both
design and prototyping. It focuses on risk assessment and reduction through repeated cycles (or
spirals). Each cycle in the Spiral model consists of four main phases: Planning, Risk Analysis,
Engineering, and Evaluation.

 Planning Phase:
 Further refine requirements based on user feedback.
 Plan additional functionalities (e.g., distance calculation, user interface improvements).

 Risk Analysis Phase:


 Assess risks related to user interface and performance.
 Develop detailed risk mitigation plans.
 Engineering Phase:
 Develop distance calculation and time estimation modules.
 Improve user interface and experience.

 Evaluation Phase:
 Conduct comprehensive testing of new features.
 Collect and analyze user feedback for further refinements.

Here is a more detailed spiral model diagram for project:

Figure0.3Spiral Model

VU Process Model:

Key Features of the VU Process Model:


For the development of our automobile tracking system, we have adopted the VU Process
Model. This model is a hybrid approach combining the structured, sequential nature of the
Waterfall model with the iterative, risk-driven elements of the Spiral model. The VU Process
Model ensures that we maintain a clear, systematic progression through project phases while
allowing for continuous refinement and risk management.

Application of the VU Process Model to Our Project

 Requirements Analysis Phase


- Gather initial requirements from stakeholders. Define functional and non-
functional requirements.
- Validate requirements with stakeholders.

 System Design Phase

- Create system architecture and design documents. Design data flow and
communication protocols.
- Develop detailed design specifications for each component.

 Implementation Phase

- Set up development environment. Develop the Android application according to


design specifications. Implement GPS, GPRS modules, and database schema.
- Develop user registration and management functionalities. Implement modules
for distance calculation and ETA.

 Integration and Testing Phase

- Integrate all system components. Perform unit, integration, and system testing.
- Conduct user acceptance testing (UAT) with a sample group.

 Deployment Phase

- Prepare the deployment environment. Deploy the Android application.


- Set up the production database. Provide user training and documentation.

 Maintenance Phase

- Monitor system performance and gather user feedback. Perform regular


maintenance tasks.
- Address any issues and implement updates and improvements.

VU Process Model Diagram


Figure0.4VU Process Model

Work Plan (Use MS Project to create Schedule/Work Plan):

You might also like