8/12/2019 Toll Application in Android SRS
1/30
TOLL APPLICATION
T o l l A p p l i c a t i o n | O m n i f i c e n c e Page 1
Toll Application
Software Requirements Specification
Mentor
Mr.R.Jayaraj (Asst. Professor), Department of CSE
Members
Arun Prasath.S - 090105107008
Jojy George - 100405107005
Prabhu.E - 100405107013
Vivek Andrew Sha - 090105107121
College -Hindusthan College of Engineering and Technology, Coimbatore 641032
Department -Computer Science and Engineering
State -Tamil Nadu
8/12/2019 Toll Application in Android SRS
2/30
8/12/2019 Toll Application in Android SRS
3/30
TOLL APPLICATION
T o l l A p p l i c a t i o n | O m n i f i c e n c e Page 3
1.Introduction
In United States the toll gate payment requires more manual work. Toll App is an application
which enables automatic payment for the Toll gate. Toll gates are created as virtual geo-fences using
Google map and the cost of crossing the fence is defined. The user is tracked via his GPS enabled device
and the payment is made automatically from his credits purchased.
1.1 Methodology
The Rational Unified Process brings together elements from all of the generic process models,
supports iteration and illustrates good practice in specification and design. The RUP is normally described
from three perspectives:
A dynamic perspectivethat shows the phases of the model over time
A static perspectivethat shows the process activities that are enacted
A practice perspecti vethat suggests good practices to be used during the process
8/12/2019 Toll Application in Android SRS
4/30
8/12/2019 Toll Application in Android SRS
5/30
TOLL APPLICATION
T o l l A p p l i c a t i o n | O m n i f i c e n c e Page 5
1.4 Definitions, Acronyms and Abbreviations
AJAX - Asynchronous JavaScript and XMLis about updating parts of a web page, without reloading the
whole page.
API Application Programming Interface
Database platform (Microsoft SQL Server 2008) MS SQL Server is the database management
system that delivers a flexible and cost effective database platform to build robust on demand business
applications and supports the .NET and web services standards.
IIS Internet Information Service is an application server that runs and supports .NET and web service
applications.
UML - Unified Modeling Language is a standard language for writing software blueprints. The UML
may be used to visualize, specify, construct and document
XML - eXtensible Markup Language is a text based format that let developers describe, deliver and
exchange structured data between a range of applications to client for display and manipulation.
ASPX - Active Server Pages extendedis used to create dynamic web content.
C# - C# is a multi-paradigm programming language encompassing strong typing, imperative,
declarative, functional, generic, object-oriented (class-based), and component-oriented programming
disciplines.
HTTP - Hypertext Transfer Protocol is a transaction oriented client/server protocol between web browser
and a Web Server.
1.5 References
Microsoft documentation (MSDN)
Object Oriented Modeling and Design with UML - Michael Blaha, James Rambaugh.
Professional Android Application DevelopmentReto Meier
8/12/2019 Toll Application in Android SRS
6/30
TOLL APPLICATION
T o l l A p p l i c a t i o n | O m n i f i c e n c e Page 6
1.6 Technologies to be used
.NET : .NET Framework is a software framework developed by Microsoft that runs primarily
on Microsoft Windows includes a large library and provides language interoperability
AJAX : Updating parts of a web page, without reloading the whole page. SOA :Set of principles and methodologies for designing and developing software in the form
of interoperable services.
UML :Standard for writing software blueprints, and used to visualize, specify, construct and
document.
XML : XML is a text based format that let developers describe, deliver and exchange
structured data between a range of applications to client for display and manipulation.
1.7 Tools to be used
Rational Rose
Rational Rose is an object-oriented programming (OOP) and unified modeling language (UML)
tool to design enterprise-level software applications and components. It creates visual software
application models under object-oriented principles. Example application models include the creation of
actors, use cases, relationships, entities, etc.
Eclipse
Eclipse is a multi-language software development environment comprising an integrateddevelopment environment (IDE) and an extensible plug-in system.
MS Visual Studio 2005 Microsoft Visual Studio is an integrated development environment (IDE)
from Microsoft used to develop console and graphical user interface applications along with Windows
Forms applications, web sites, web applications, and web services in both native code together with
managed code for all platforms
Microsoft SQL Server 2008
MS SQL Server is the database management system that delivers aflexible and cost effective database platform to build robust on demand business applications and supports
the .NET and web services standards.
IIS Internet Information Service is an application server that runs and supports .NET and web service
applications
8/12/2019 Toll Application in Android SRS
7/30
TOLL APPLICATION
T o l l A p p l i c a t i o n | O m n i f i c e n c e Page 7
1.8 Overview
The SRS will include two sections, namely:
Overall Description
This section will describe major components of the system, interconnections, and external
interfaces.
Specific Requirements
This section will describe the functions of actors, their roles in the system and the constraints
faced by the system.
2. Overall Descriptions
2.1 Product Perspective
The Toll App is available for use by the administrator and the user. The administrator and users
will use the webpage as a front end. Toll App mobile application is available for the user. The browser
goes through an http server. Application server manages the connection between the front end and
backend, all types of information and data, that are necessary for the users are stored in MS SQL Server.
8/12/2019 Toll Application in Android SRS
8/30
TOLL APPLICATION
T o l l A p p l i c a t i o n | O m n i f i c e n c e Page 8
2.2 Product Functions
Web application should have registration and login facility
Application should support payment for users to pay for the application service.
Application should have two kind users, normal users and administrator users. Administrator should able to manage users like activating/deactivating accounts, set password for
users, delete an account, set application level settings like frequency of GPS signal to the server
from client.
Administrator should be able to create/edit/delete geo fences using Google map and it should be
stored in database.
Circle and Polygon type fences should be supported.
Administrator should able to set charge for a fence when client pass through it.
Administrator should able to set dependent fence for a fence to charge a fence. For example, ifclient pass first fence A then fence B, client will be charged X amount for crossing B. if client
pass first fence C, then fence B then client will be charged Y amount for crossing B.
There should facility to report history charges and purchases made to/by client.
On each charge customer should be notified via Notification Service.
Customer should be able to purchase credits using credit cards/pay pal account/debit cards
Android client should be able to read GPS signal for every X distance and sent to server.
Android client should be able to login into server using credentials passed by customer.
Only one account should be used in one device at a time. If the same account is used in another
device, logout the first one.
Report should able to save it as .CSV file (comma separate values).
Web application should have API to login, send GPS location, and get last transaction
information for client Android application to work.
Website should have facility to retrieve forgot password.
8/12/2019 Toll Application in Android SRS
9/30
TOLL APPLICATION
T o l l A p p l i c a t i o n | O m n i f i c e n c e Page 9
2.3Software Interface
Users
Web browser (any), operating system (any) and Android operating system for Mobile application
Administrator
Web browser (any), operating system (Windows)
Web Server
IIS, Operating System (Windows)
Data Base Server
MS SQL Server 2008, operating system (Windows)
Development End
MS Visual studio 2005
2.4 Hardware Interface
2.4.1 Minimum Requirements
Toll App (Server)
Processor RAM Disk Space
Storage Space Intel Core Family
AMD Athlon
8 GB RAM 500 GB
MS SQL Server 2008 1 GB RAM 8 GB
Users (Public People)
Android Processor RAM
Android OS
(Version 2.2)
ARM V6 Processor 128 MB RAM
8/12/2019 Toll Application in Android SRS
10/30
TOLL APPLICATION
T o l l A p p l i c a t i o n | O m n i f i c e n c e Page 10
2.4.2 Recommended Requirements
Toll App (Server)
Processor RAM Disk Space
Storage Space Intel Core Family (Any)
AMD Phenom
(Above 2 GHz)
10 GB RAM 1 TB
MS SQL Server 2008 2 GB RAM 10 GB
Users (Public People)
Android Processor RAM
Android OS
(in and above 2.2)
ARM V7 Processor 300 MB RAM
2.5 User Characteristics
Both users and administrator on internet will be using HTTP protocol.
User uses Android application for availing the Toll App service.
Administrator uses web application to manage the application service for their users.
2.6 Constraints
GUI is only in English.
Centralized server is used.
2.7 Assumptions and Dependencies
Toll App mobile application can be installed only on Android OS (above v 2.2). It is assumed that
the user has a GPS enabled device installed with Android OS. It is assumed that the user dontswitch off
his device or close the application at any time. The web application needs Google Map API to createfences across states in USA. The Android application must use PayPal service to credit the balance.
8/12/2019 Toll Application in Android SRS
11/30
TOLL APPLICATION
T o l l A p p l i c a t i o n | O m n i f i c e n c e Page 11
2.8 Architecture Design
8/12/2019 Toll Application in Android SRS
12/30
TOLL APPLICATION
T o l l A p p l i c a t i o n | O m n i f i c e n c e Page 12
2.9 Use Case Model Survey
2.9 Use Case Model Survey
Android client
Android client can read GPS signal for every X distance and sent to server
Android client can login into server using credentials passed by customer.
8/12/2019 Toll Application in Android SRS
13/30
TOLL APPLICATION
T o l l A p p l i c a t i o n | O m n i f i c e n c e Page 13
Users
Users can purchase credits using credit cards/pay pal account/debit cards.
Users can view his history about the payments made.
Users can receive notification about the charges when he crosses the fences that created in
Google map.
Administrator
Administrator can manage users like activating/deactivating accounts, set password for users,
delete an account, and set application level settings like frequency of GPS signal to the server
from client.
Administrator can create/edit/delete geo fences using Google map and it should be stored in
database.
Administrator should able to set charge for a fence when client pass through it.
Administrator can generate report for history charges and purchases made to/by client.
Web application
Web application has registration and login facility
Web application supports payment for users to pay for the application service.
Web application has API to login, send GPS location and get last transaction information for
client Android application to work.
Web application has facility to retrieve forgot password.
Database
Database (MS SQL Server 2008) keep track of all the records includes Location history, amount
transactions.
Database also keeps the history of charges to the US peoples while they crossing the fences.
Database keeps the identity of the users (both personal and Car information) for the purpose of
monitoring their travel.
8/12/2019 Toll Application in Android SRS
14/30
TOLL APPLICATION
T o l l A p p l i c a t i o n | O m n i f i c e n c e Page 14
2.10 ER Diagram
8/12/2019 Toll Application in Android SRS
15/30
8/12/2019 Toll Application in Android SRS
16/30
TOLL APPLICATION
T o l l A p p l i c a t i o n | O m n i f i c e n c e Page 16
3.1.2 Web Application (Server)
3.1.2 Use Case Report for Web application (Server)
USECASE DESCRIPTION
Push notification The application can push notifications to users
Charges The application can send notification about chargesGPS Location The application can send notification about GPS Location
Read coordinates The application can read coordinates from the android client
Support fence creation The application supports the admin for creation
Validate Sign in The application can validate when the user signs in
Validate Registration The application can validate user registration
Username check The application can check if the username exists already while registration
Keep location history The application can keep location history of the users
8/12/2019 Toll Application in Android SRS
17/30
TOLL APPLICATION
T o l l A p p l i c a t i o n | O m n i f i c e n c e Page 17
3.1.3 Android client
3.1.3 Use Case Report for Android client
Access API The application can use the API to access various resources
Send mail The application can send mails to the users and admin
Detect users The application can identify whether the logged user is normal user or
administrator
Support one login The application should force the user not to log in second time at an
instance
Payment support The application should support various payment methods
Manage transaction The application should manage transaction
Purchase validation The applications should validate the user purchases
Balance management The application can manage the balance for the respective user
Add balance The application can add balance to the account
Remove balance The application can remove balance when the user crosses a fence
Report The application can generate reports on various transactions
History charges The application can generate reports on history charges
Credit purchases The application can generate reports on credits purchases
FAQ The application can maintain FAQ
8/12/2019 Toll Application in Android SRS
18/30
TOLL APPLICATION
T o l l A p p l i c a t i o n | O m n i f i c e n c e Page 18
USECASE DESCRIPTION
Connect to server The client can connect to the server by using the login credentials
Do amount transactions The client can perform amount transaction
Read GPS signal The client can read its current location using GPS
Send GPS signal The client can send its current location using GPS
Receive notification The client can receive notifications about various information
Charges The client can receive notifications about the charges deducted
GPS Location The client can receive notifications about the current location using GPS
3.1.4 US People
3.1.4 Use Case Report for US People
USECASE DESCRIPTION
Register identities The people can register for his account
Pass credentials The people can pass credentials while logging in
Purchase credits The people can purchase credits by using his PayPal / Credit / Debit card
Amount transaction The people can transfer amount while purchase credits
View notifications The people can view notifications about various information
Retrieve password The people can retrieve password if he forgets
8/12/2019 Toll Application in Android SRS
19/30
TOLL APPLICATION
T o l l A p p l i c a t i o n | O m n i f i c e n c e Page 19
3.2 Activity Diagrams
3.2.1 User Registration
The user is made to fill all the mandatory fields, each user must choose a unique user name. If the
user has filled a name that is already present in the database, then the user will be prompted to fill in a
different username. After this the user must enter the new password and other identities. When the user
submits the form it is validated and if the registration is successful the users profile is displayed else it
will display the error.
3.2.1 User Registration Activity
8/12/2019 Toll Application in Android SRS
20/30
TOLL APPLICATION
T o l l A p p l i c a t i o n | O m n i f i c e n c e Page 20
3.2.2 Login Activity
The user enters the login credentials. The System validates the login credentials. If the login
credentials are valid then the system detects the type of user. If user is a member then the system redirects
to the members home page. If the user is administrator then the system redirects to the administrators
home page.
3.2.2 Login Activity
8/12/2019 Toll Application in Android SRS
21/30
8/12/2019 Toll Application in Android SRS
22/30
TOLL APPLICATION
T o l l A p p l i c a t i o n | O m n i f i c e n c e Page 22
3.2.4 Manage fences
The administrator can manage the fences after login. He can view the existing fences he created.
He can mark the new fence. Once he created a fence successfully he can set dependent fence. He can set
fare for that particular fence. He can also edit the fences if necessary.
3.2.4 Manage fences
8/12/2019 Toll Application in Android SRS
23/30
TOLL APPLICATION
T o l l A p p l i c a t i o n | O m n i f i c e n c e Page 23
3.2.5 Retrieve password
The user can retrieve his account if he forgets his password. He can request for password by
providing his mail ID. If the mail ID exists in database then the password retrieving options are sent to his
mail ID else he is prompted to enter he mail ID again.
3.2.5 Retrieve password
8/12/2019 Toll Application in Android SRS
24/30
TOLL APPLICATION
T o l l A p p l i c a t i o n | O m n i f i c e n c e Page 24
3.2.6 Support One Login
Toll App supports the user to login only once at an instance. The user enter the login credentials
and request for login. If the user is not logged in previously in any other device then a new session is
created else the previous session is closed and then a new session is created.
3.2.6 Support One Login
8/12/2019 Toll Application in Android SRS
25/30
TOLL APPLICATION
T o l l A p p l i c a t i o n | O m n i f i c e n c e Page 25
3.3 Sequence Diagrams
3.3.1 User Registration
3.3.1 User Registration
While registering the user should enter the username. The username is checked with the existing
usernames from the database. If he enters a new username then he enters his identity. Then those
identities are sent for registration. On successful registration the user is displayed his profile else he is
shown the respective error.
8/12/2019 Toll Application in Android SRS
26/30
TOLL APPLICATION
T o l l A p p l i c a t i o n | O m n i f i c e n c e Page 26
3.3.2 Android client
3.3.2 Android client
In Android client the user should enter the login credentials for the first time. On successful login
the user is shown his account else he is shown the respective error. After login he can pay the amount to
purchase the credits. Once he purchased the credits, his location is updated in the server for a particular
time interval. If his location is changed to a new location the amount is debited and the notification is sent
to the user.
8/12/2019 Toll Application in Android SRS
27/30
TOLL APPLICATION
T o l l A p p l i c a t i o n | O m n i f i c e n c e Page 27
3.3.3 Amount Transaction
3.3.3 Amount Transaction
The User can pay the amount to buy credits using PayPal account. PayPal validates his
credentials. On successful validation the user can add credits and the transaction is updated in the
database. Notifications are sent to the users after the credits are added.
8/12/2019 Toll Application in Android SRS
28/30
TOLL APPLICATION
T o l l A p p l i c a t i o n | O m n i f i c e n c e Page 28
3.3.4 Retrieve Password
3.3.4 Retrieve Password
If the user forgets the password, he can request for password. The request is forwarded to the web
application. The web application verifies if the username exists in the database. On successful verification
the password resetting options are shown to the user.
8/12/2019 Toll Application in Android SRS
29/30
TOLL APPLICATION
T o l l A p p l i c a t i o n | O m n i f i c e n c e Page 29
3.3.5 Balance Management
3.3.5 Balance Management
The Android client sends the users co-ordinates to the web application. The web application
validates if the user is in new co-ordinates. If the user is in new co-ordinates then the amount is debited
and the transaction details are updated in the database. On successful transaction the notification is sent to
the user.
8/12/2019 Toll Application in Android SRS
30/30
TOLL APPLICATION
Thanks to