Toll application - .NET and Android - SRS
-
Upload
arun-prasath -
Category
Technology
-
view
3.200 -
download
11
description
Transcript of Toll application - .NET and Android - SRS
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
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 2
Table of Contents
Description Page No
1. Introduction 3 - 7
1.1 Methodology ………………………………………………………………………… 3
1.2 Purpose ….. ………………………………………………………………………….. 4
1.3 Scope ……. ………………………………………………………………………….. 4
1.4 Definitions, Acronyms and Abbreviations … ……………………………………….. 5
1.5 References ………. …………………………………………………………………. 5
1.6 Technologies to be used ….…………………………………………………………. 6
1.7 Tools to be used …. …………………………………………………………………. 6
1.8 Overview …………………………………………………………………………….. 7
2. Overall Description 7 - 14
2.1 Product Perspective ………. ………………………………………………………… 7
2.2 Product Functions……………………………………………………………………. 8
2.3 Software Interface …………………………………………………………………. 9
2.4 Hardware Interface …………………………………………………………………. 9
2.5 User Characteristics …………………………………………………………………. 10
2.6 Constraints ………………………………………………………………………….. 10
2.7 Assumptions and Dependencies……………………………………………………… 10
2.8 Architecture Design …………………………………………………………………. 11
2.9 Use Case Model Survey ……………………………………………………………... 12
2.10 ER diagram…………………………………………………………………………. 14
3. Specific Requirements 14 - 29
3.1 Use Case Reports ……………………………………………………………………. 14
3.2 Activity Diagrams …………………………………………………………………… 19
3.3 Sequence Diagrams …………………………………………………………………. 25
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 perspective that shows the phases of the model over time
A static perspective that shows the process activities that are enacted
A practice perspective that suggests good practices to be used during the process
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 4
Inception
The goal of the inception phase is to establish a business case for the system. Identifying all
external entities that will interact with the system and defining these interactions. This information is used
to assess the contribution of system to business.
Elaboration
The goals of the elaboration phase are to develop an understanding of the problem domain,
establish an architectural framework, develop project plan and identify key project risks.
Construction
This phase is concerned with system design, programming and testing. Parts of the system are
developed in parallel and integrated during this phase.
Transition
This is the final phase of RUP and is concerned with moving the system from the development
community to the user community and making it work in real environment.
1.2 Purpose
Toll App is a mobile application developed for automatic and easy payment in Toll gates. Toll
App is a useful and convenient application that spares you the trouble of stopping your vehicle and makes
the payment in Toll gate. This application helps people to automatically pay their charge while crossing
toll fences. The application which we develop here uses state of the art technology to track user’s location
accurately and secure payment.
1.3 Scope
There are two basic users – Administrator, US Peoples, who drive the vehicle across the States.
Administrator has an ability to manage geo fences using Google map.
Administrator has the ability to provide the notification message to the logged users via webpage.
Users should provide their identities in the Toll App website.
Users should download the Android application from Google play and connect to the server by
using his credentials provided by the administrator.
Users can be able to purchase credits using credit cards/pay pal account/debit card.
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.
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 XML is 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 extended is 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 Development – Reto Meier
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 integrated
development 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 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
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.
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, if
client 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.
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.3 Software 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
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 don’t switch off
his device or close the application at any time. The web application needs Google Map API to create
fences across states in USA. The Android application must use PayPal service to credit the balance.
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
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.
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.
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
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 15
3. Specific Requirements
3.1 Use Case Reports 3.1.1 Administrator
3.1.1 Use Case Report for Administrator
USECASE DESCRIPTION Manage users The administrator can manage users and their account Activate The administrator can approve user after his registration Deactivate The administrator can deactivate users Set password The administrator can set password for users Set application settings The administrator can change application settings Manage fences The administrator can manage fences by using Google map Create The administrator can create a new fence Edit The administrator can edit the existing fence Delete The administrator can delete the existing fence Fix charge The administrator can fix charge for each fence Set dependent fence The administrator can set the dependent fence Generate report The administrator can generate reports for all transactions
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 charges GPS 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
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
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
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 user’s profile is displayed else it
will display the error.
3.2.1 User Registration Activity
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 member’s home page. If the user is administrator then the system redirects to the administrator’s
home page.
3.2.2 Login Activity
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 21
3.2.3 Manage users
The administrator can go to account management interface to manage the users. He can activate
newly registered users and he can deactivate users in case if necessary. The administrator can also set
password for the users.
3.2.3 Manage users
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
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
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
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.
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.
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.
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.
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 user’s 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.
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 30
Thanks to