Académique Documents
Professionnel Documents
Culture Documents
Toll Application
Software Requirements Specification
Mentor Mr.R.Jayaraj (Asst. Professor), Department of CSE Members Arun Prasath.S Jojy George Prabhu.E 090105107008 100405107005 100405107013 090105107121
College - Hindusthan College of Engineering and Technology, Coimbatore 641032 Department - Computer Science and Engineering State - Tamil Nadu
Page 1
TOLL APPLICATION
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
Page 2
TOLL APPLICATION
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
Page 3
TOLL APPLICATION
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 users 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.
Page 4
TOLL APPLICATION
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,
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
Page 5
TOLL APPLICATION
.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.
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
Page 6
TOLL APPLICATION
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.
Page 7
TOLL APPLICATION
Page 8
TOLL APPLICATION
Administrator
Web browser (any), operating system (Windows)
Web Server
IIS, Operating System (Windows)
Development End
MS Visual studio 2005
Processor
Storage Space Intel Core Family AMD Athlon MS SQL Server 2008
RAM
8 GB RAM
Disk Space
500 GB
1 GB RAM
8 GB
Android
Android OS (Version 2.2)
Processor
ARM V6 Processor
RAM
128 MB RAM
Page 9
TOLL APPLICATION
Processor
Storage Space Intel Core Family (Any) AMD Phenom MS SQL Server 2008 (Above 2 GHz)
RAM
10 GB RAM
Disk Space
1 TB
2 GB RAM
10 GB
Android
Android OS (in and above 2.2)
Processor
ARM V7 Processor
RAM
300 MB RAM
2.6 Constraints
GUI is only in English. Centralized server is used.
Page 10
TOLL APPLICATION
Page 11
TOLL APPLICATION
Page 12
TOLL APPLICATION
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.
Page 13
TOLL APPLICATION
2.10 ER Diagram
Page 14
TOLL APPLICATION
3. Specific Requirements
3.1 Use Case Reports
3.1.1 Administrator
USECASE
Manage users Activate Deactivate Set password Set application settings Manage fences Create Edit Delete Fix charge Set dependent fence Generate report
DESCRIPTION
The administrator can manage users and their account The administrator can approve user after his registration The administrator can deactivate users The administrator can set password for users The administrator can change application settings The administrator can manage fences by using Google map The administrator can create a new fence The administrator can edit the existing fence The administrator can delete the existing fence The administrator can fix charge for each fence The administrator can set the dependent fence The administrator can generate reports for all transactions
Page 15
TOLL APPLICATION
USECASE
Push notification Charges GPS Location Read coordinates Support fence creation Validate Sign in Validate Registration Username check Keep location history
DESCRIPTION
The application can push notifications to users The application can send notification about charges The application can send notification about GPS Location The application can read coordinates from the android client The application supports the admin for creation The application can validate when the user signs in The application can validate user registration The application can check if the username exists already while registration The application can keep location history of the users
Page 16
TOLL APPLICATION
Access API Send mail Detect users Support one login Payment support Manage transaction Purchase validation Balance management Add balance Remove balance Report History charges Credit purchases FAQ The application can use the API to access various resources The application can send mails to the users and admin The application can identify whether the logged user is normal user or administrator The application should force the user not to log in second time at an instance The application should support various payment methods The application should manage transaction The applications should validate the user purchases The application can manage the balance for the respective user The application can add balance to the account The application can remove balance when the user crosses a fence The application can generate reports on various transactions The application can generate reports on history charges The application can generate reports on credits purchases The application can maintain FAQ
Page 17
TOLL APPLICATION
USECASE
Connect to server Do amount transactions Read GPS signal Send GPS signal Receive notification Charges GPS Location
DESCRIPTION
The client can connect to the server by using the login credentials The client can perform amount transaction The client can read its current location using GPS The client can send its current location using GPS The client can receive notifications about various information The client can receive notifications about the charges deducted The client can receive notifications about the current location using GPS
3.1.4 US People
USECASE
Register identities Pass credentials Purchase credits Amount transaction View notifications Retrieve password
DESCRIPTION
The people can register for his account The people can pass credentials while logging in The people can purchase credits by using his PayPal / Credit / Debit card The people can transfer amount while purchase credits The people can view notifications about various information The people can retrieve password if he forgets
Page 18
TOLL APPLICATION
Page 19
TOLL APPLICATION 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.
Page 20
TOLL APPLICATION 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.
Page 21
TOLL APPLICATION 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.
Page 22
TOLL APPLICATION 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.
Page 23
TOLL APPLICATION 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.
Page 24
TOLL APPLICATION
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.
Page 25
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.
Page 26
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.
Page 27
TOLL APPLICATION
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.
Page 28
TOLL APPLICATION
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.
Page 29
TOLL APPLICATION
Thanks to
Page 30