Upload
sasbubbly
View
493
Download
1
Embed Size (px)
Citation preview
IME 671 - Managing software Projects
Developing a railway train inquiry & ticket booking system through SMS
Software Requirement Specification
Group 3, Team Members – Ankit Nigam, Ashutosh Sharma, Akhil Babbar, Chetak Chauhan, Gaurav Mittal, K V GopaKumar, Manu Agrawal, Nitasha Agarwal, Nitin Jain, Siddharth Garg
09-Feb-11
Version History: Version 1.0
This document (SRS) is a complete description of the behavior of the ticket booking system to be
developed. It includes a set of use cases that describe all of the interactions that the users will have
with the software.
Contents1.0. Purpose.................................................................................................................................................2
1.1. Introduction......................................................................................................................................2
1.2. Scope of Project................................................................................................................................2
1.3.References.........................................................................................................................................3
2.0. Overall Description...............................................................................................................................4
2.1. Overview..........................................................................................................................................4
2.2. Product Perspective..........................................................................................................................7
2.3. Product Functions.............................................................................................................................8
2.4. Users.................................................................................................................................................9
3.0. Functional Requirements....................................................................................................................12
3.1. Introduction....................................................................................................................................12
3.2. Input...................................................................................................................................................13
3.3. Processing..........................................................................................................................................13
3.4. Output.................................................................................................................................................13
4.0. External interface requirements.........................................................................................................15
4.1. User interface.....................................................................................................................................15
4.2. Hardware interface.............................................................................................................................15
4.3. Software interface...............................................................................................................................15
4.4. Database interface..............................................................................................................................15
4.5. Technology interface..........................................................................................................................15
5. Performance Requirements...................................................................................................................16
6.0. Design Constraints..............................................................................................................................17
6.1. Technology Constraint.......................................................................................................................17
6.2. Functionality Constraint.....................................................................................................................17
6.3. Data Security Constraint....................................................................................................................17
6.4. Mobile Server Reliability Constraint..................................................................................................17
6.5. Economic Constraint..........................................................................................................................18
1.0. Purpose
1.1. Introduction
This Software Requirements Specification provides a complete description of all the
functions and specifications of the IRCTC SMS Ticketing system.
The expected audience of this document is the Project Manager, IRCTC and all related personnel
in Indian Railways Catering & Tourism Corporation Limited, Dr Veena Bansal, the development
team and the Project Manager. It will also serve as a reference for future students.
1.2. Scope of Project
Online ticketing service introduced by the Indian Railways in 2003 caught the attention of one
and all. But over the last few years the mobile communication technology has surpassed the
internet in terms of its availability, penetration and ease of use. Currently Indian Railways do not
have a mobile railway enquiry and booking system. This software system tries to bridge this gap.
It is designed to supplement the current modes of railway booking namely – over the counter
booking and online booking. The use of SMS to communicate enables all sections of the society
to use this service owing to their simplicity and the availability of the feature in all mobile
phones.
This system enables a user/customer to enquire about a given train details (arrival, departure,
timings etc.) and to book, cancel or modify the tickets for their journey. In case of enquiry,
preformatted SMSs would be sent by the users to the mobile number provided and in return they
would receive an SMS with the required details. In case of booking, again users would be
requested to fill in preformatted SMSes with the passenger details and other relevant
information. On booking, the money would be deducted from the users Mobile Bill (Postpaid) or
the amount of talk time left (Prepaid). The system updates the same database which the online
system or the counter booking system uses as they all are operational simultaneously.
1.3.References
[IEEE] The applicable IEEE standards are published in “IEEE Standards Collection2001 edition.
Principal source of textbook material is “Software Project Management, A Unified Framework” by Walker Royce
“An Integrated Approach to Software Engineering”, Pankaj Jalote
2.0. Overall DescriptionThe mobile service ticket booking is an application inbuilt into the SIM of the service provider.
The application will take all the information from IRCTC database. The customer would open
that application on the handset and press the numbers on the handset to get the relevant
information. This information is received by the customer in the form of an SMS. After knowing
the details about train availability status, customer would type an SMS about the passenger
details for making reservations. The no of passengers which can be booked through one SMS is
limited to 6. This would go to IRCTC database and after the reservation; the customer would
again receive an SMS about booking i.e. coach no., berth details, etc.
2.1. Overview
The application is present on the user’s handset for the service provider with whom IRCTC has
entered into a contract. When a customer uses the application, the information goes to service
provider communication centre. The communication centre then connects to IRCTC server and
gets the necessary information for the customer. Based on the information, the customer makes
the reservation request and sends it to the communication centre again. There the request gets
processed and reservation is done by debiting necessary amount from the customer’s mobile bill.
Sequence Diagram
Sequence Diagram for Requesting Train Details
Sequence Diagram for Checking Availability
Sequence Diagram for Booking Tickets
Deployment Diagram:
Service Provider communication center
Customer’s mobile(device)
IRCTC database
Accounting Center
Ticket Payment
Info. Processing
Reservation
Information Seeking Final Info. about reservation
Processor(IRCTC server)
2.2. Product Perspective
The system will provide a linkage to avail the IRCTC’s ticket booking functionality just by SMS
communication through a mobile handset. This utility becomes very significant in India where
ticket booking counters are not available at every place and internet has not sufficient reach to
the villages of India. On the other hand, mobile communication has grown very fast across the
country, also covering the villages and rural areas. So there is a sufficient and vital requirement
to provide such a functionality which can be availed by people living in remote places for ticket
booking of Railways which is a lifeline connecting India.
This application will interact with several entities during the process. The application will be
installed at IRCTC’s centres. It will be used by sending the SMS to a pre assigned number for
IRCTC. This application will use the IRCTC online system and for monetary transactions, it will
have tie-ups with banks for transferring amount of ticket to the IRCTC. During the process,
application will interact with mobile operators for receiving the ticket amount.
2.3. Product Functions
1. This application will be responsible for receiving the SMS from the mobile user and
invoking the IRCTC connection to get the required information about train ticket
booking.
2. SMS functionality will be available for each of the following options to mobile users:
a. Getting information about trains between two stations
b. Getting information about train ticket availability for different classes
c. Train ticket booking with limit of 6 passengers, as also applicable in case of
normal over the counter booking
3. This application will act as an interface between mobile user’s cell phone and IRCTC
application. On the back end, this application will use IRCTC online service and retrieve
the response according to the mobile user’s inquiry filters.
4. Application will handle a secure payment gateway mechanism for deducting the amount
of ticket from the mobile user’s account (In case of Prepaid customer, it will be deducted
from prepaid account and for Postpaid users, it will add up to the Postpaid mobile bill of
the customer) and transferring it to the IRCTC. For the transaction, system will charge a
transaction fee which will be major source of revenue for the system.
5. System will send the response back to the mobile user in the form of SMS having details
like PNR number for booked tickets or list of trains as inquired by the mobile user.
2.4. Users
1) Customer:- Any person who wants to book railways ticket through mobile sms facility
would be the user
2) IRCTC/vendor support team:- These people will be there to resolve any application issue
regarding the connectivity,
The overall system would look like
Here, the application would interact via the user’s mobile service provider and the IRCTC
application system. The customer can recharge the coupon to book the ticket. The customer will
send an SMS to the application giving details such as checking of ticket availability, train
number and booking of ticket. IRCTC support team in collaboration with the vendor will provide
24*7 support to the application to resolve any issues.
Following use cases would be applicable to the system from the customer point of view
1. User sends the SMS regarding train booking
Input: - User sends the SMS to the IRCTC number
Precondition: - User should have a basic mobile phone with SMS facility
Function: - Authentication of the train details
Output: - Acknowledgement from IRCTC with the train details
2. User books the train by giving booking information
Input: - User sends the SMS to the IRCTC number
Precondition: - The required train and seats are available to the user
Function: - Sending the information about the number of passengers to IRCTC
Output: - IRCTC books the ticket and sends the confirmation to the user
3. The deduction of amount from the user’s mobile bill
Input: - IRCTC sends the billing amount to the user’s mobile service provider
Precondition: - The tickets have been booked and there is balance available with the user’s
recharge coupon
Function: - Request processed
Output: - User gets the SMS that the amount is deducted from user’s balance and transferred to
IRCTC.
3.0. Functional Requirements
3.1. Introduction
The functionalities of this system appear at three interfaces.
a) End User Interface : The end-user interface should provide the functionality of checking
of train schedule, train seating availability, reservation and cancellation facility under
following quotas: the general quota, tatkal quota and ladies quota. The booking process
needs to be conducted through SMSs sent from the end consumer’s handset to the central
server where the requests will be processed. The customer should be prompted to provide
details necessary for above specified functionalities. The payment would be done with
the help of the service provider of the mobile user by deducting the amount payable from
the main balance of subscriber in case of prepaid connection. In case of postpaid
connection, the payable amount would be added to the monthly bill of the subscriber. In
case of cancellation, the refundable amount will be credited back to the user’s
subscription account with the service provider. The confirmation of the reservation would
be done through a text SMS sent to the mobile number from which booking was done
from a specific commercial number which will include the PNR for reservation. The PNR
will be a 10 digit unique number used to identify the reservation transaction. The
confirmation message will specify the details of the passengers travelling along with the
details of the booking process.
b) User management : This interface will be available to the backend staff and will be used
to manage user accounts and tackle any technical failures or failed transactions that need
manual intervention. This interface will provide following functionalities: create user,
edit user and delete user. Also, the backend staff will have admin rights to handle any
database or technical failures. There would be regular monitoring of system performance
with the help of daily reports generated through the reports module.
c) Report generation Module : This module will have facility to generate various reports
related to the system functioning at any time and also daily automated report generation
activity. These regular reports would be required to analyzed and looked into for system
errors and then further worked upon. Any further action will be recorded in further
reports and the system will provide facility to link reports with each other depending
upon actionable events. All of the above mentioned reports and events directory will be
archived in softcopy format for 6 months and later copied to compact disks.
3.2. InputUsers of this system will be any person having access to a valid mobile connection from any
legal mobile services provider in India. To available any service like enquiry or booking of ticket
the user should be able to give input in the form of a very simple SMS from any type of mobile
handset. This is to make the use of the system very simple and user friendly. The exact input
provided will depend on the service being availed by the user. For enquiring the information
about trains between two stations the input will be the source city, destination city and date. For
checking ticket availability on a particular train the input will be the either the train number or
the train name. For booking the tickets the input will the passenger name, age, senior citizen
(yes/no), tatkal (yes/no), date of booking, train number/train name.
3.3. ProcessingSystem will get the input in the form of SMS, from which the information will be extracted to
find what service is being asked by the user and if minimum required information has been given
by the user. Once the information is obtained from the user SMS, the system will interact with
the IRCTC system to obtain the required information on the trains, seats availability and ticket
booking. Once the information is obtained from the IRCTC system and database the user is
replied back with an output.
3.4. OutputOutput will be in the form of SMS or pop ups on the mobile handset of the user. This output will
be send to the handset from which the initial SMS had come. Hence, this output will be seen by
the user who had sent the initial service request SMS. However, output will be different for each
service request because the output is trying to answer the specific service request. For enquiry on
the information about trains between two stations the output will have the list of trains with train
number, train name, departure time and arrival time. For enquiry on ticket availability on a
particular train the output will be the different class of tickets available on the train, number of
tickets available on each class and the price of the ticket. For requests on booking of tickets the
outputs will the confirmation of ticket booked with the PNR number, amount deducted for the
ticket and the remaining mobile balance. If the ticket could not be booked then the output will
flash a regret message and the possible reason for the failure of service.
4.0. External interface requirements
4.1. User interfaceThe user interface will be mobile based. Any mobile handset, capable of sending and receiving
text messages and/or push messages, can be used.
4.2. Hardware interfaceOnly hardware interface required at user end is a mobile phone.
4.3. Software interfaceThe only software interface required at the user end is the mobile phone’s SMS feature.
4.4. Database interfaceWe will share the same database, as is currently being used for online/over-the-counter railway
bookings. The mobile application will interact with the railways database to provide up to date
search results, and ability to add and update records for booking/cancelling/modifying tickets.
4.5. Technology interface1. Getting user input through SMS, and displaying results by sending SMS to the user’s
mobile phone.
2. Interacting with the user’s mobile carrier, for payment related activities
a. For postpaid connections, adding the ticket amount to the user’s current month’s
phone bill
b. For prepaid connections, deducting the ticket amount from the user’s current
balance (which, at the time of booking, should be greater than the ticket amount +
transaction charges)
5. Performance RequirementsSome key performance requirements of the system, based on various parameters are:
1. After any user request is received (for searching trains, checking availability, booking
ticket), the response must be sent within 30 seconds.
2. For large results to search queries, multiple SMS to be sent, with not more than 5 results
in each message.
3. Desired system uptime: 99% (excluding scheduled downtime from 11:30 pm to 12:30
am)
4. Capable of handling 10,00,000 transactions in a day
5. Capable of handling 10,000 concurrent transactions
6. Response time for interaction with the carrier gateway for payment: 90 seconds, failing
which the transaction is to be cancelled.
7. System should handle up to 6 person’s reservation in a single ticket
6.0. Design ConstraintsA design constraint refers to some limitation on the conditions under which a system is
developed, or on the requirements of the system. The design constraint could be on the systems
form, fit or function or could be in the technology to be used, materials to be incorporated, time
taken to develop the system, overall budget, and so on. A design constraint is normally imposed
externally, either by the organization or by some external regulation. During system design, it is
as important to identify each design constraint as it is to elicit requirements since the design
constraints place an overall boundary around the system design process.
In the case of our Railway Ticket Booking System through the mobile, some of the design
constraints that we will encounter are as follows:
6.1. Technology ConstraintThe technology used should be such that any user using a basic handset or a advanced device
should be able to make the transactions i.e. the data format and SMS transfer protocols should be
compatible across the various Mobile handsets and across the various mobiles service operators.
6.2. Functionality ConstraintThough we are providing the ease of booking ticket to users via their mobile handsets but we
will not be offering the plethora of services which the IRCTC does, rather we will be focusing on
only the core value services of getting the train information & booking tickets.
6.3. Data Security ConstraintSince the normal SMS data formats used by the various mobile operators are unsecured and our
service will be requiring the access to IRCTC & the Banks databases, so the data security have to
be kept very high for such an application.
6.4. Mobile Server Reliability ConstraintThe success of this application will depend a great deal on how reliable are the services of the
mobile service provider, if the coverage area and the signal quality is not optimal than there will
be lots of failed transactions and the users will get annoyed.
6.5. Economic ConstraintThe cost of providing this service should be in line with the user segment which will be mostly
rural people and so the service should not be expensive rather the price should be such which
will encourage the people to use the SMS mode of booking rather than go to the railway booking
counter.