SlideShare a Scribd company logo
Software Requirements
Specification
for
First Class Airline Reservation
System
Version 1.7
Prepared by Deborah Lewis
Lewis Consulting Services
November 7, 2016
Copyright © 2002 by Karl E. Wiegers. Permission is granted to use, modify, and distribute this
document.
Software Requirements Specification for First Class Airline Reservation System
Page ii
Table of Contents
1. Introduction............................................................................................................................1
1.1 Purpose ............................................................................................................................1
1.2 Document Conventions.....................................................................................................1
1.3 Intended Audience and Reading Suggestions..................................................................1
1.4 Project Scope....................................................................................................................2
1.5 References........................................................................................................................2
2. Overall Description................................................................................................................4
2.1 Product Perspective..........................................................................................................4
2.2 Product Features...............................................................................................................5
2.3 User Classes and Characteristics.....................................................................................5
2.4 Operating Environment.....................................................................................................6
2.5 Design and Implementation Constraints...........................................................................6
2.6 User Documentation.........................................................................................................6
2.7 Assumptions and Dependencies.......................................................................................6
3. System Features....................................................................................................................7
3.1 Secure Session.................................................................................................................7
3.1.1 Description and Priority...............................................................................................7
3.1.2 Stimulus/Response Sequences..................................................................................7
3.1.3 Functional Requirements............................................................................................7
3.2 Login.................................................................................................................................7
3.2.1 Description and Priority...............................................................................................7
3.2.2 Stimulus/Response Sequences..................................................................................8
3.2.3 Functional Requirements............................................................................................8
3.2.4 Test Case 1: Failed Login Lockout.............................................................................8
3.3 Search for Flights..............................................................................................................9
3.3.1 Description and Priority...............................................................................................9
3.3.2 Stimulus/Response Sequences..................................................................................9
3.3.3 Functional Requirements............................................................................................9
3.3.4 Test Case 2: Search for Flights................................................................................10
3.4 Create New Reservation.................................................................................................11
3.4.1 Description and Priority.............................................................................................11
3.4.2 Stimulus/Response Sequences................................................................................11
3.4.3 Functional Requirements..........................................................................................11
3.5 View Reservation............................................................................................................12
3.5.1 Description and Priority.............................................................................................12
3.5.2 Stimulus/Response Sequences................................................................................12
3.5.3 Functional Requirements..........................................................................................12
3.5.4 Test Case 3: View Reservations...............................................................................12
3.6 Cancel Reservation.........................................................................................................13
3.6.1 Description and Priority.............................................................................................13
3.6.2 Stimulus/Response Sequences................................................................................13
3.6.3 Functional Requirements..........................................................................................13
4. External Interface Requirements........................................................................................15
4.1 User Interfaces................................................................................................................15
4.2 Hardware Interfaces........................................................................................................16
4.3 Software Interfaces.........................................................................................................17
4.4 Communications Interfaces.............................................................................................18
5. Other Nonfunctional Requirements....................................................................................18
5.1 Performance Requirements............................................................................................18
5.2 Safety Requirements......................................................................................................19
5.3 Security Requirements....................................................................................................19
5.4 Software Quality Attributes.............................................................................................20
Software Requirements Specification for First Class Airline Reservation System
Page iii
6. Agile Development Methodology........................................................................................20
6.1 What is Agile Development Methodology.......................................................................20
6.2 Why use Agile Development for the First Class Airlines Reservation Application..........21
6.3 Agile Practices to Employ...............................................................................................21
Revision History
Name Date Reason For Changes Version
Deborah Lewis 10/07/201
6
Completion of section 1 1.0
Deborah Lewis 10/15/201
6
Revision of section 1 based on instructor
feedback.
1.1
Deborah Lewis 10/16/201
6
Completion of Section 2, Section 3, Appendix
B, and additions to Appendix A
1.2
Deborah Lewis 10/24/201
6
Completion of section 4 and test cases for
section 3
1.3
Deborah Lewis 10/31/201
6
Completion of Section 5 1.4
Deborah Lewis 11/02/201
6
Revision of test scripts and functional
requirements for section 3.5 based on instructor
and peer feedback
1.5
Deborah Lewis 11/02/201
6
Completion of section 6 1.6
Deborah Lewis 11/07/201
6
Completion of Appendix C 1.7
Software Requirements Specification for First Class Airlines Reservations System Page 1
1. Introduction
1.1 Purpose
First Class Airlines (FCA) was founded in 1999 and provides flights to an elusive clientele of elite
corporate executives and government employees. They are known for their very high level of
service with all of the conveniences of the office to ensure that transportation from one city to
another is not a disruption to their clientele’s workload. To book a flight with FCA, one must call
into the FCA central office to reserve a flight and make any special requests. A service that was
once a little known secret in the corporate world is beginning to grow. As a result, FCA is
struggling to keep up with the demand for their service. To combat this struggle, FCA purchased
50 additional passenger planes and hired of 300 new employees; however, customers are still
frustrated by the long wait times experienced when scheduling flights by phone. As a result, FCA
has hired Lewis Consulting to create and implement an Airline Reservation System (ARS) that will
be accessible as an application for the Samsung Galaxy S6 smartphone.
This Software Requirements Specification (SRS) outlines the steps taken to create a working
solution for the initial deployment of the FCA reservation system. The role of Lewis Consulting will
be to design and implement an ARS that can be used by passengers and potential passengers
as a self-service tool. Phase 1 of the FCA Reservation System will allow passengers to establish
a secure connection to the FCA Reservation System, log in, search for available flights, create a
reservation, cancel a reservation, and view a listing of all reservations.
1.2 Document Conventions
 Main topics are bolded in a heading and are represented using whole numbers.
 Sub topics and bullets are indented beneath the main topic heading with a decimal version
of the whole number.
 All acronyms will be introduced with its full name, followed by its acronym in parenthesis.
From this point forward, the acronym is used in place of the full word titles.
 In the glossary in Appendix A, any acronyms used within this document are outlined in
alphabetical order for easy reference.
1.3 Intended Audience and Reading Suggestions
This document is written by Lewis Consulting in response to FCA’s request for a proposal for the
first phase of the ARS. It is intended for use by all who are involved in the design of the FCA
Reservation System. This includes all stakeholders and employees of FCA, in addition to
designers, developers, testers, programmers, testers, and programmers of Lewis Consulting
Services. This document is best read from beginning to end to fully grasp the program to be
implemented, however the table of contents can be used to hone in on specific areas of interest
to specific readers. By using the CTRL key and clicking on any item in the Table of Contents,
readers can jump straight to topics of interest.
This document is not intended for use by end-users. Documentation provided for use of the
software by end users should be created by FCA after the completion of this application.
Software Requirements Specification for First Class Airlines Reservations System Page 2
1.4 Project Scope
In the first phase of FCA Reservation System, the following functions will be included:
 Establish a secure connection
 Login to the system
 Search for available flights
 Create reservation
 View reservation
 Cancel reservation
The ARS will be accessible from all the Samsung Galaxy S6 smartphone with the FCA
Reservations Application installed. Lewis Consulting will perform one User Acceptance Test
(UAT) with FCA representatives.
Training of FCA Reservation System users and managing login credentials is out of the scope of
this project and is the responsibility of FCA.
1.5 References
Agile Alliance. (n.d.). 12 Principles Behind the Agile Manifesto. Retrieved November 7, 2016, from
Agile Alliance: https://www.agilealliance.org/agile101/12-principles-behind-the-agile-
manifesto/
Agile Alliance. (n.d.). Agile 101. Retrieved November 7, 2016, from Agile Alliance:
https://www.agilealliance.org/agile101/
Atencio, T. (2016, October 2). CS455 Live Chat #1 – Getting Started.. [Chat]. Retrieved from
Colorado Technical University Online, Virtual Campus, CS455-1604A-01 Classroom:
https://campus.ctuonline.edu
Atencio, T. (2016, October 2). CS455 Live Chat #2 – elicitation meeting – class project.. [Chat].
Retrieved from Colorado Technical University Online, Virtual Campus, CS455-1604A-01
Classroom: https://campus.ctuonline.edu
Atencio, T. (2016, October 9). CS455 Live Chat #3 – Use Case Diagram. [Chat]. Retrieved from
Colorado Technical University Online, Virtual Campus, CS455-1604A-01 Classroom:
https://campus.ctuonline.edu
Atencio, T. (2016, October 9). CS455 Live Chat #4 – Specifications and FDUCS. [Chat].
Retrieved from Colorado Technical University Online, Virtual Campus, CS455-1604A-01
Classroom: https://campus.ctuonline.edu
Atencio, T. (2016, October 16). CS455 Live Chat #5 – Verification & Validation. [Chat]. Retrieved
from Colorado Technical University Online, Virtual Campus, CS455-1604A-01 Classroom:
https://campus.ctuonline.edu
Atencio, T. (2016, October 16). CS455 Live Chat #6– Test Cases. [Chat]. Retrieved from
Colorado Technical University Online, Virtual Campus, CS455-1604A-01 Classroom:
https://campus.ctuonline.edu
Software Requirements Specification for First Class Airlines Reservations System Page 3
Atencio, T. (2016, October 23). CS455 Live Chat #7 – sharing and helping. [Chat]. Retrieved from
Colorado Technical University Online, Virtual Campus, CS455-1604A-01 Classroom:
https://campus.ctuonline.edu
Atencio, T. (2016, October 23). CS455 Live Chat #8 – how we do business. [Chat]. Retrieved
from Colorado Technical University Online, Virtual Campus, CS455-1604A-01 Classroom:
https://campus.ctuonline.edu
Atencio, T. (2016, October 30). CS455 Live Chat #9 – remembering. [Chat]. Retrieved from
Colorado Technical University Online, Virtual Campus, CS455-1604A-01 Classroom:
https://campus.ctuonline.edu
Atencio, T. (2016, October 30). CS455 Live Chat #10 – rAgile and Traceability Matrix. [Chat].
Retrieved from Colorado Technical University Online, Virtual Campus, CS455-1604A-01
Classroom: https://campus.ctuonline.edu
Galaxy S6 edge | Galaxy S6. (n.d.). Retrieved from: http://www.samsung.com/us/explore/galaxy-
s-6-features-and-specs/
HPE ProLiant SL4540 Gen8 2 Node Server. (n.d.). Retrieved from
https://www.hpe.com/us/en/product-catalog/servers/proliant-servers/pip.specifications.hpe-
proliant-sl4540-gen8-2-node-server.7611040.html
IndicThreads. (n.d.). Quick Introduction To Agile Software Development. Retrieved November 7,
2016, from IndicThreads: http://www.indicthreads.com/1439/quick-introduction-to-agile-
software-development
Oracle Database Online Documentation, 10g Resease 2 (10.2). (n.d.) Retrieved from
https://docs.oracle.com/cd/B19306_01/server.102/b14220/intro.htm
Requirements Traceability Matrix. (n.d.). Retrieved November 7, 2016, from Ofni Systems:
http://www.ofnisystems.com/services/validation/traceability-matrix/
Wiegers, K. E., Beatty, J. (2013). Software requirements (3rd
ed.). Redmond: Microsoft Press
Software Requirements Specification for First Class Airlines Reservations System Page 4
2. Overall Description
2.1 Product Perspective
The FCA Reservation application is a brand new venture for FCA. As a small airline, there are
concerns that the application may not compete well with those of larger scoped travel
applications, like Travelocity and Expedia. The goal with Phase 1 of the FCA Reservation
application is to offer travelers the ability to provide basic flight searching, reservation and
cancellation abilities from the Samsung Galaxy S6 smartphone. The desired result is a product
that allows flyers to self-serve and avoid long telephone hold times when calling into the FCA
Reservation office.
Software Requirements Specification for First Class Airlines Reservations System Page 5
Figure 2.1 – Samsung Galaxy S6 smartphone
2.2
P
r
o
d
u
c
t
Features
The FCA Reservation application allows users of the Samsung Galaxy S6 smartphone to install
the application from the Google Play Store and perform a series of actions to aid in the airline
reservations process. These functions include securing a secure connection to the FCA Servers,
logging into an account, searching for flights, creating a reservation, viewing all reservations, and
cancelling a reservation.
Figure 2.2 – UML Data Flow Diagram for FCA Airlines Reservation application
2.3 User Classes and Characteristics
Travelers with a Samsung Galaxy S6 smartphone are the target users of the FCA Reservation
application. General characteristics of these users are:
 Adults age 18 and older
 Owners of a Samsung Galaxy S6 smartphone
Software Requirements Specification for First Class Airlines Reservations System Page 6
 May or may not be tech savvy
 May or may not have prior experience with travel applications
 May or may not be educated and trained
2.4 Operating Environment
FCA has chosen the following elements of the environment for the FCA Reservation application:
 The FCA server is the HP ProLiant SL 4500 server with a Citrix OS interface
 The Samsung Galaxy S6 smartphone with a Linux-based Operating System (OS) will be
used to house the application.
 The database which holds customers’ data and flight data is SQL.
2.5 Design and Implementation Constraints
 The FCA Reservation application will be designed only for the Samsung Galaxy S6
smartphone.
 It is the responsibility of the potential traveler to download and install the FCA Reservation
application to a Samsung Galaxy S6 smartphone.
 It is the responsibility of the potential traveler to maintain the application and keep it
updated.
 The FCA server is available 24/7, except during scheduled maintenance times.
 The application will be designed for use on the 1440 x 2560 pixel screen size that comes
standard on the Samsung Galaxy S6 smartphone.
 Any memory restrictions applied to the Samsung Galaxy S6 smartphone will apply as
design constraints.
 Interruption of cell phone service will cause the application to close and require the
establishment of a new secure session.
 Secure sessions will be monitored in order to ensure proper closure after 5 minutes of
inactivity for security purposes.
2.6 User Documentation
The FCA Reservation application will use a very intuitive design, leaving the following
considerations:
 A Portable Document Format (PDF) User manual will be provided by Lewis Consulting to
FCA with an overview of the application and its functionalities.
 It will be the responsibility of FCA to provide users of the FCA Reservation application with
instruction on use of the application from a users’ standpoint.
 User acceptance testing materials will be provided by Lewis Consulting.
 A question mark icon will appear in the upper right corner of the application at all times.
When a user clicks on this icon, a help center article provided by FCA will open in an
external browser to provide users with additional instruction.
2.7 Assumptions and Dependencies
 The application will be used only by confirmed passengers and potential passengers of
FCA.
 Users own or have access to a Samsung Galaxy S6 smartphone.
Software Requirements Specification for First Class Airlines Reservations System Page 7
 Users of the application are knowledgeable about using applications on their Samsung
Galaxy S6 smartphone.
 Users will keep the FCA Reservation application and smartphone updated
 It is the responsibility of FCA to keep the application updated with the most current
technology
 The servers at FCA are up and running.
3. System Features
This section outlines the low level details of each system function of the FCA Reservation
System. It sets priorities of each function so that developers and FCA stakeholders know what will
be accomplished first and what functions will be available for review first.
3.1 Secure Session
3.1.1 Description and Priority
Because sensitive information and personal data is exchanged between passengers and
the application, the information contained within each session must remain
protected and confidential. FCA is responsible for safeguarding the data transferred
by the FCA Reservation System application. It is crucial that the FCA Reservation
System application keep this data encrypted and safeguarded from those with
nefarious or malicious intent. This is the highest priority.
3.1.2 Stimulus/Response Sequences
The user opens the FCA Reservation application by touching the application icon on their
Samsung Galaxy S6 smartphone. This launches the application interface and
automatically begins securing a connection to the FCA servers.
3.1.3 Functional Requirements
SS-1: a secure session is established between the FCA Reservation application
and the FCA servers
SS-2: an icon displays to let the user know that a secure connection has been
successfully attained prior to continuing to the rest of the application
SS-3: if a secure connection could not be established, an error message is
displayed and the application closes
SS-4: when the application is closed or when 5 minutes of inactivity elapses, the
secure session terminates
3.2 Login
3.2.1 Description and Priority
The user will be prompted by the FCA Reservation application to enter a username and
password on a login screen. Upon submission of valid login credentials, the data will
be verified by the FCA Servers. Verification of the user is important because the
Samsung Galaxy S6 smartphone may be lost or accessed by someone other than
the authorized user. Because this application includes payment data and other
sensitive materials, ensuring that only authorized users can access this data is
crucial. Passengers and FCA is responsible for the protection of login credentials.
This feature is of highest priority.
Software Requirements Specification for First Class Airlines Reservations System Page 8
3.2.2 Stimulus/Response Sequences
After a secure session is established, a login screen will be displayed to the user. The user
will enter a username and password, and then select a button that says, “Login” to
submit their credentials to the FCA Servers for validation. The application will
display a message indicating the success or failure of the authentication.
3.2.3 Functional Requirements
LI-1: a login page is displayed and asks the user to enter a username and
password.
LI -2: the password will be masked as it is typed into the login interface
LI -3: a touchable button submits the username and password from the login
form to the FCA Server
LI -4: the credentials are compared against those stored in the FCA database
LI-5: if login information does not match, the user will be given two more
chances to enter correct login information
LI -6: after 3 failed login attempts, the user account is locked and an error
message is displayed instructing the user to call a 1-800 number to
reactivate the account
LI-7: if the database matches the credentials, the server returns the
confirmation
LI-8: after confirmation of correct login credentials, the FCA Reservation
application menu is displayed
3.2.4 Test Case 1: Failed Login Lockout
Test Name: TC1: Failed Login Lockout
Description: User is locked out after 3 failed password attempts
Requirement(s): Spec. 3.2, LI-1 – LI-6 , UC2
Prerequisites: The FCA Reservation has been installed on a Samsung
Galaxy S6 smartphone.
Setup: The user will begin by opening the FCA Reservation
application from a Samsung Galaxy S6 smartphone. The
application interface will indicate through imagery that a
secure session has been established with the server.
TC1: Failed Login Lockout
Step Operator Action Expected Results Observed
Results
Pass/
Fail
Severity
1. Await login prompt The application displays a login
form. This form provides prompts to
enter a username into the username
text box, a password into the
password text box, and a submit
button to submit login credentials.
Start time Stop time
Software Requirements Specification for First Class Airlines Reservations System Page 9
Step Operator Action Expected Results Observed
Results
Pass/
Fail
Severity
2. Enter invalid
username and
password and press
Submit (1st
attempt)
The application sends the submitted
credentials to the server/database
for validation.
3. Await results An error message informs the user
that the username and password do
not match.
4. Enter invalid
username and
password and press
Submit (2nd
attempt)
The application sends the submitted
credentials to the server/database
for validation.
5. Await results An error message informs the user
that the username and password do
not match and only one try is
remaining.
6. Enter invalid
username and
password and press
Submit (3rd
attempt)
The application sends the submitted
credentials to the server/database
for validation.
7. Await results An error message informs the user
that the username and password do
not match, the account is locked,
and they must call a 1-800 number
to restore account access
3.3 Search for Flights
3.3.1 Description and Priority
Upon successful entry into the FCA Reservation Application, a user can select “Search for
Flights” from the application’s main menu. This allows users to search for available
flights. This function is one of the main motivators of the application, but it’s quite as
crucial as the establishment of a secure connection or login ability so its feature is
of medium priority.
3.3.2 Stimulus/Response Sequences
After a user selects “Search for Flights” from the FCA Reservation application menu, the
search interface opens. The application accepts an entry of the departure city,
arrival city, and travel date from the user and submits this request to the FCA
Servers. The FCA Server then returns a listing of available flights that meet the
user’s selection. If no flights are available, the user will be provided with a listing of
similar flights that depart or arrive at airports near to the desired destination.
3.3.3 Functional Requirements
SF-1: a search form will be provided to the user that requests the city of
departure, city of arrival, and travel dates
Software Requirements Specification for First Class Airlines Reservations System Page 10
SF-2: a touchable button submits the data
SF-3: data is validated for completeness, accurate dates, and valid cities of
departure and arrival
SF-4: if the data is complete and valid, the FCA Reservation application will
request matching flights from the FCA database
SF-5: if matching flights exist, the FCA Reservation application will display
matching flights to the user
SF-6: if no matching flights exist, an error will be displayed and nearby cities of
departure/arrival will be presented to the user
3.3.4 Test Case 2: Search for Flights
Test Name: TC2: Search for Flights
Description: Display flight listing
Requirement(s): Spec. 3.3, SF-1 – SF-5, UC3
Prerequisites: The FCA Reservation has been installed on a Samsung
Galaxy S6 smartphone. The tester has valid login
credentials. Flights must exist in the database that match the
criteria that the tester will be entering.
Setup: The tester will begin by opening the FCA Reservation
application on a Samsung Galaxy S6 smartphone. The
application interface will indicate through imagery that a
secure session has been established with the server. The
user will log into the application with valid login credentials,
and then select “Search for Flights” from the application’s
main menu.
TC2: Search for Flights
Step Operator Action Expected Results Observed
Results
Pass/
Fail
Severity
1. Await search form The application displays a search
form. This form provides prompts to
enter a departure city and arrival
city into separate text boxes and a
submit button to submit search
query.
2. Enter a valid city of
departure, city of
arrival, and travel
date, then press
Submit
A loading symbol appears. The
application sends the search query
to the FCA server/database.
Start time Stop time
Software Requirements Specification for First Class Airlines Reservations System Page 11
Step Operator Action Expected Results Observed
Results
Pass/
Fail
Severity
3. Await results A loading symbol appears. The FCA
application accepts a listing of
matching flights from the FCA
server/database and prepares for
display.
4. Observe that the list
of matching flights
have been returned
The FCA application displays a
listing of flights that match the
selected city of departure, city of
arrival, and travel date.
3.4 Create New Reservation
3.4.1 Description and Priority
After selecting an available flight, users can create a reservation for a flight. Users will then
submit their personal data to secure their seat for the flight. Because this function is
a main motivation for the creation of the FCA Reservation Application, but is not as
crucial as the establishment of a secure session or login, its priority is medium.
3.4.2 Stimulus/Response Sequences
After an available flight is selected, the FCA Reservation application displays a reservation
form. Upon submission, the FCA Reservation application submits the payment
details to the Pay Processor and all other fields to the FCA Database. For entries
with successful payment, a reservation will be created and confirmation will be
provided to the user. For payment failures, a reservation will not be created and an
error message will be displayed to the user.
3.4.3 Functional Requirements
CNR-1: display a reservation form to users to enter their name, email address,
and billing information
CNR -2: a touchable button submits the data
CNR -3: data is validated for completeness
CNR -4: if data is missing, an error message is displayed
CNR -5: if data is complete, the FCA Reservation application will submit the user’s
name and email address to the FCA Database for storage upon selection
of the submit button
CNR -6: if data is complete, the FCA Reservation Application will submit payment
information to the Pay Processor for processing upon selection of the
submit button
CNR -7: the FCA Reservation Application will display a success or failure message
provided by the Pay Processor
CNR -8: if the payment is successful, a confirmation message will display on-
screen and be sent to the email address provided by the user
CNR -9: if the payment is not successful, an error will display and up to two
additional attempts will be permitted
CNR-10: after three failed payment attempts the user will be prompted to call a 1-
800 number to complete their reservation
Software Requirements Specification for First Class Airlines Reservations System Page 12
3.5 View Reservation
3.5.1 Description and Priority
Users who have previously made a reservation can view their reservation details by
selecting “View Reservations” from the FCA Reservation application main menu.
This functionality is not core to the vision of the application as a whole so its priority
is low.
3.5.2 Stimulus/Response Sequences
When a user selects “View Reservations” from the FCA Reservations application, the FCA
Reservation application will make a request to the FCA database for any flights on
which the user has a confirmed reservation. In cases where a user has multiple
confirmed reservations, an index page will first appear to allow the user to select
which flight in which to view the details. For flights departing more than 72 hours in
the future, an option to cancel the reservation will be provided.
3.5.3 Functional Requirements
VR-1: the FCA Reservation application will request a listing of reserved flights
for the user from the FCA Database
VR-2: if no reserved flights exist, an error message will display
VR-3: if reserved flights exist, a listing of confirmed reservations will display
VR-4: when selected, a detailed view of the flight details will display
VR-5: for flights departing more than 72 hours in the future, an option to cancel
the flight will be provided within the flight details
3.5.4 Test Case 3: View Reservations
Test Name: TC3: View Reservation
Description: Display reservation details
Requirement(s): Spec. 3.5, VR-1, VR-3, UC5
Prerequisites: The FCA Reservation has been installed on a Samsung
Galaxy S6 smartphone. The tester has valid login
credentials. The tester has previously secured a reservation
and the reservation exists in the FCA database.
Setup: The tester will begin by opening the FCA Reservation
application on a Samsung Galaxy S6 smartphone. The
application interface will indicate through imagery that a
secure session has been established with the server. The
user will log into the application with valid login credentials,
and then select “View Flights” from the application’s main
menu.
TC3: View Reservation
Start time Stop time
Software Requirements Specification for First Class Airlines Reservations System Page 13
Step Operator Action Expected Results Observed
Results
Pass/
Fail
Severity
1. Await flight listing A loading symbol appears. The
application sends a request to the
FCA server/database for a listing of
confirmed flight reservations for the
current user.
2. Await flight listing The application accepts a listing of
confirmed flight reservations from
the FCA server/database and
displays this information to the user.
3. Select individual entry
to display.
A loading symbol appears. The
application resends a request to the
FCA server/database for the
individual reservation details.
4. Await results The FCA application accepts the
reservation details from the FCA
server/database and displays this
information to the user.
3.6 Cancel Reservation
3.6.1 Description and Priority
Users who have previously made a reservation can cancel a reservation for flights
scheduled to depart more than 72 hours in the future. This functionality is not core
to the vision of the application as a whole so its priority is low.
3.6.2 Stimulus/Response Sequences
A user who has a confirmed reservation selects “Cancel Flight”. For flights scheduled to
depart within 72 hours, the user is given an error message instructing him or her to
call FCA to cancel their flight. For flights scheduled to depart more than 72 hours in
the future, the FCA Reservation application instructs the Pay Processor to refund
the reservation fee and instructs the FCA database to update the reservation from a
status of RESERVED to a status of CANCELLED. An on-screen notification and
email notification are provided to the user upon successful cancellation of the
reservation.
3.6.3 Functional Requirements
CR-1: the FCA Reservation application will prompt the user to confirm that they
would like to cancel the reservation before taking action.
CR-2: for flights scheduled to depart within the next 72 hours, an error message
will display to prompt the user to call a 1-800 number to cancel
CR-3: for flights scheduled to depart 72 hours or more in the future, the FCA
Reservation application will instruct the Pay Processor to issue a refund
of the reservation fee
Software Requirements Specification for First Class Airlines Reservations System Page 14
CR-4: for flights scheduled to depart 72 hours or more in the future, the FCA
Reservation application will update the reservation status for the user
from RESERVED to CANCELLED
CR-5: an on-screen confirmation of refund and cancellation will be provided to
the user
Software Requirements Specification for First Class Airlines Reservations System Page 15
4. External Interface Requirements
4.1 User Interfaces
The FCA application has seven main interfaces that users will view. Basic mock ups of these
interfaces are provided in this section. A placeholder depicts the space in which imagery supplied
by FCA will display.
Figure 4.1 – Visual mockups of the seven main interfaces of the FCA Reservation application,
including the Sign In page, Main Menu, Flight Search, Search Results, Reservation Form, Flight
Listing, and Reservation Details
Software Requirements Specification for First Class Airlines Reservations System Page 16
4.2 Hardware Interfaces
HP ProLiant SL 4500 server
Drive description (25) LFF SAS/SATA/SSD per node for two-node
configuration; (2) SFF SATA/SSD per node
Storage type Hot-plug LFF 3.5-inch SAS; Hot-plug LFF 3.5-inch SATA;
Hot-plug LFF 3.5-inch SATA SSD; Hot-plug SFF 2.5-inch
SATA SSD; Hot-plug SFF 2.5-inch SATA
Cache 25 MB L3; 20 MB L3; 15 MB L3; 10 MB L3
Processor family Intel Xeon E5-2400 v2 Processor Family; Intel Xeon E5-
2400 Processor Family
Processor number 1 or 2 per node
Compute nodes Up to 3
Processor core
available
8, 6, or 4
Processor speed 2.5 GHz
Memory slots 12 DIMM slots maximum per node; (6 DIMM slots per
processor)
Maximum memory 192 GB per node
Memory type HP Smart Memory; DDR3 Registered (RDIMM)
Memory protection
features
Advanced ECC (multi-bit error protection), online spare, and
memory lock-step mode
Network controllers HP Ethernet 10 Gb 2P 544i Adapter
Storage controllers HP Dynamic Smart Array B120i SATA RAID for controlling 2
SFF drives per node
Expansion slots 1 Maximum; The low profile expansion slot can contain a
storage controller for external attached storage (HBA or
Smart Array Controller), networking options, or an HP I/O
accelerator.
Management HP iLO Management, HP Insight Control
System fan features 5 dual fans modules, shipped standard
Power supply type Up to 4 power supplies; 750W and 1200W Common Slot
hot-plug redundant power supply; (Up to 94 percent
efficiency).
Graphic card Integrated Matrox G200 video standard; 1280 x 1024 (32
bpp); 1920 x 1200 (16 bpp)
Form factor of chassis 4.3 U
Samsung Galaxy S6 smartphone
Type Touchscreen smartphone
OS Android 5.0, Lollipop
Weight 132g
Product Dimensions 5.59" x 2.76" x 0.28"
Internal Memory 32GB UFS 2.0
Processor Speed,
Type
21 GHz, 1.5GHz; Octa-Core
Storage 128GB storage, no card slot
Battery Non-removable Li-Ion 2550 mAh battery
Frequencies and Data
Type
Infra: 3G WCDMA,4G LTE FDD; 4G FDD LTE: B1(2100),
B2(1900), B3(1800), B4(AWS), B5(850), B7(2600),
Software Requirements Specification for First Class Airlines Reservations System Page 17
B12(700), B17(700), B20(800)
Wi-Fi 802.11 a/b/g/n/ac
2.4g+5ghz, vht80 mimo
Usb Usb 2.0
Bluetooth Bluetooth v4.1
Bluetooth Profiles A2DP, AVRCP, DI,HFP, HID, HOGP, HSP, MAP, OPP,
PAN, PBAP
Main Display
Resolution
2560 x 1440 (Quad HD)
Main Display
Technology
Dual Edge Super AMOLED
Color Depth 16M
4.2.1.1.1 Sensor
Type
Accelerometer, Barometer, Fingerprint Sensor, Gyro Sensor,
Geomagnetic Sensor, Hall Sensor, HR Sensor, Light
Sensor, Proximity Sensor
4.3 Software Interfaces
Windows Server 2016 Operating System
Processor 1.4 GHz 64-bit processor
RAM 512 MB
Disk space
requirements
32 GB
Throughput Ethernet adaptor with 1 GB throughput
File System ReFS
Communication Server Message Block (SMB) protocol, Transmission Control
Protocol/Internet Protocol (TCP/IP) protocol
Memory NVDIMM-N
Encryption BitLocker
Oracle Database Management System
Type System Dynamic, Static
Architecture Relational Model
Software License Proprietary
Operating System Windows, Mac OS X, Linux, UNIX, z/OS
Interface API, GUI, SQL
Access Control Audit, Brute-force Protection, Enterprise Directory
Compatibility, Native Network Encryption, Password
Complexity Rules, Resource Limit, Security Certification
Indexes Bitmap, Expression, Full-text, Hash, Partial, R-/R+ Tree,
Reverse, Spatical
Max Blob/Clob Size 128 TB
Max DB Size Unlimited
Max Table Size 4 GB
Max Column Name
Size
30
Max Row Size 8 KB
Software Requirements Specification for First Class Airlines Reservations System Page 18
Max Columns per Row 1000
Android 5.0, Lollipop Operating System
Security software
version
MDF v2.0 Release 6, VPN v1.4 Release 6.0
Kernel version 3.10.61 dpi@SWHD7421 #1
RAM 512 MB
4.4 Communications Interfaces
The Secure Socket Layer (SSL) protocol will be hard coded into the application to provide
encryption and security and prevent unauthorized access to the system.
The Hypertext Transfer Protocol Secure (HTTPS) will use an SSL Digital certificate protocol to
encrypt communication between the application, FCA servers, and databases.
5. Other Nonfunctional Requirements
5.1 Performance Requirements
The following are the performance requirements for the FCA Reservation Application:
Requirement Description
System Availability The application will have no more than 4% of downtime within a
given month. 12 hours of scheduled maintenance will be permitted
in any given month. Unscheduled downtime and maintenance must
be addressed and resolved in as little time as possible.
System Response The application must take no more than 4 seconds to respond to
any request and return data from the FCA database.
System
Responsiveness
The system must display a loading indicator to signify any requests
or retrievals of data between the application, the FCA servers, and
the FCA databases.
System Load
Balancing
The system must be able to support 2,500 users without
degradation. The system must support 5,000 users with no more
than 8% degradation.
System User Session
Timeout
The system will recognize when a user has been idle for a period of
4 minutes. At this time, the application will close and the user will be
required to reopen the application to restore a secured session and
log into the system.
Software Requirements Specification for First Class Airlines Reservations System Page 19
5.2 Safety Requirements
The following are the safety requirements for the FCA Reservation Application:
Requirement Description
System Accessibility The application will react to the Galaxy S6 accessibility settings for
font size and font style. This includes default settings and special
accommodations provided by Samsung for those with visual
challenges.
Soft Color Scheme The application will use a color scheme that does not include high
contrast colors in order to reduce eye strain.
Smartphone Controls The application will not override the safety functions of the
Samsung Galaxy S6 smartphone.
Lost or Low Battery The application will close when the smartphone battery is depleted.
This will require that the user re-open the application and restart a
secure session after restoring the device’s battery.
Lost or Stolen Device The application and user accounts will have the capacity to be
deactivated in cases where a user’s device is lost or stolen.
5.3 Security Requirements
The following are security requirements for the FCA Reservation Application:
Requirement Description
Data Encryption All communication will be encrypted to 129-bit standards. This
protects the application, data, and the personal information of users
from interception.
Automatic Logout After 4 minutes of inactivity, the application will close. This will
require that the user reopens the application in order to establish a
secure session.
Cache The application will not store personal data on the device.
SSL Certification The application requires that a valid SSL certificate be maintained
at all times to allow trusted and secure communication.
Memory Protection The application will perform garbage collection of the session data
upon closure of the application.
Proactive Response A trace log will be used to capture all interactions between the FCA
Reservation application and FCA servers. Suspect activity will alert
the FCA administrator to take action.
Software Requirements Specification for First Class Airlines Reservations System Page 20
5.4 Software Quality Attributes
The following are software quality attributes for the FCA Reservation Application:
Requirement Description
Font Family The application will use the Samsung Galaxy S6 default font of
Samsung Sans on all pages.
Font Size Regular text will use the Samsung Galaxy S6 default of 18-point
font. The font size will increase to 24-point font for all headers and
decrease to 12-point font for support information and footers.
Branding The application will use the FCA color scheme of blue and white.
Images The FCA logo and a secure connection image will be present on all
screens with the exception of the loading screen.
Usability The application will score no less than 7 on ease of use during
usability tests.
Help Icon Each page of the application will display a help icon in the upper
right corner. This icon appears as a question mark nested inside of
a circle.
Updates Each update to the application will include versioning for
troubleshooting and traceability purposes. The version number can
be found on the About Page of the application.
Reusability The application will be developed using Object Oriented
programming. This platform allows for design features to be reused.
6. Agile Development Methodology
6.1 What is Agile Development Methodology
Agile Software Development Methodology is a modern style of software development that places
a strong emphasis on customer satisfaction through a continuous delivery of functional software.
This methodology is a culmination of a number of positive aspects of methodologies in use in the
1990’s and formally became recognized as a software methodology in 2001. There are 12
principles that form the basis of Agile Development. They are:
 Customer Satisfaction through continuous delivery of software.
 Openness to changing requirements, even late in development.
 Deliverance of working software with a preference to shorter timescales.
 Collaboration between business people and developers.
 Building projects around motivated individuals, providing the environment and support to
get the job done.
 Efficiency in conveying information to and within a development team through face-to-face
conversation.
 Use of working software as the primary measure of progress.
 Promotion of sustainable development.
 Continuous attention to technical excellence and good design.
 Maximizing the amount of work done through simplicity.
 Use of self –organized teams to provide the best architectures, designs, and
requirements.
Software Requirements Specification for First Class Airlines Reservations System Page 21
 Regular reflection on effectiveness, fine tuning, and adjustment.
6.2 Why use Agile Development for the First Class Airlines Reservation
Application
The use of Agile Development within the creation of the First Class Airlines Reservation system
presents a number of benefits to First Class Airlines
 More active involvement and higher priority.
 Regular and frequent status updates.
 Requirements acceptance is performed with each step.
 Rapid delivery with key functionalities available for use sooner.
 Guaranteed delivery of project functionality within specified time periods.
 More testing is done, which results in a higher quality of software.
6.3 Agile Practices to Employ
The following are the key features of Agile Development that will be used to benefit the creation
of the First Class Airlines Reservation Application:
 Begin with an elicitation kick-off meeting
 Understand and prioritize software requirements
 Estimate the complexity of requirements
 Design using diagrams
 Use Test Driven Development (TDD) with emphasis on “test-writing first
and then writing code to pass the test”
 Develop the code
 Test the code using continuous integration
 Alter code based on usability and stakeholder feedback
Software Requirements Specification for First Class Airlines Reservations System Page 22
Appendix A: Glossary
Terms and acronyms which may not be familiar to all readers are provided in this section.
Definitions provided are limited to their scope within this document. All terms are listed in
alphabetical order for easy reference.
Term Definition
Agile Development
A modern style of software development with an emphasis
on customer satisfaction through continuous delivery of
functional software.
ARS – Airline Reservation System
An application that allows users to search for available
flights, make a reservation, view reservations, and cancel
reservations.
FCA – First Class Airlines
The company for which the FCA Reservation application is
being developed.
OS – Operating System
The software that supports the basic functions of the device
on which it is installed, including executing applications and
controlling peripherals
PCI – Payment Card Industry
A proprietary information security standard for organizations
that handle credit cards from major companies including
Visa, MasterCard, Discover, and American Express
PDF – Portable Document Format
A file format that provides an electronic image of text and/or
text and graphics that can be viewed, printed, and
electronically transmitted
RTM – Requirements Traceability
Matrix
A table used for tracking the requirements of the FCA
Reservation application
SMB – Server Message Block
A network file sharing protocol that allows applications on a
computer to read and write to files and to request services
from server programs in a computer network
SRS – Software Requirements
Specification
A description of software to be developed
TCP/IP – Transmission Control
Protocol/Internet
A set of networking protocols that allows two or more
computers to communicate
TDD – Test Driven Development
An agile development feature that emphasizes test-writing
first, followed by development of code designed to pass the
test
UAT – User Acceptance Testing
The final phase of the software testing process where the
software is stressed to ensure that it can handle required
tasks in real-world scenarios according to specifications
Software Requirements Specification for First Class Airlines Reservations System Page 23
Appendix B: Analysis Models
UC-1: Secure Connection
Use Case ID: UC-1
Use Case
Name:
Secure Session
Created By: Deborah Lewis Last Updated By: Deborah Lewis
Date Created: 10/16/2016 Date Last
Updated:
10/16/2016
Actors: FCA Application, FCA Server
Description: Because sensitive information and personal data is
exchanged between passengers and the application, the
information contained within each session must remain
protected and confidential. FCA is responsible for
safeguarding the data transferred by the FCA Reservation
System application. It is crucial that the FCA Reservation
System application keep this data encrypted and
safeguarded from those with nefarious or malicious intent.
Trigger: The user opens the FCA Reservation application by touching
the application icon on their Samsung Galaxy S6
smartphone. This launches the application interface and
automatically begins securing a connection to the FCA
servers
Preconditions: 1. The application must be installed on the Samsung
Galaxy S6 smartphone.
2. The icon to open the application must be selected by the
user.
Post conditions: 1. A secure session is established between the FCA
Reservation application and the FCA Servers.
2. An icon appears to let the user know that a secure
session has been established.
3. The FCA Reservation application prompts the user for a
username and password.
Normal Flow: 1. The FCA Reservation application requests an HTTPS
session from the FCA Server.
2. SSL certification is exchanged.
3. SSL Handshake is created.
Software Requirements Specification for First Class Airlines Reservations System Page 24
4. An icon appears to indicate that a secure session is
established
5. The FCA Reservation application displays a prompt for
the user to enter a username and password.
Alternative Flows: 1. A secure session could not be established so the
session closes.
2. The application has been open for more than 5
minutes with no activity so the application displays an
error message and closes the application.
Exceptions: None
Includes: Request from FCA Reservation application to FCA Server to
establish a secure session.
Priority: Highest
Frequency of Use: Every time the application launches.
Business Rules: A secure session is to monitor activity and remain open
throughout the entire session. If a certificate cannot be
verified the session will not be created.
Special Requirements: After 90 seconds, a timeout will occur if no secure session
could be established
Assumptions: FCA is responsible for ensuring that certificates exist and
that they are current.
Notes and Issues: Must determine whether to provide password reset
functionality in app or require users to call into FCA
Customer Support to reset credentials.
Software Requirements Specification for First Class Airlines Reservations System Page 25
UC-2: Login
Use Case ID: UC-2
Use Case
Name:
Login
Created By: Deborah Lewis Last Updated By: Deborah Lewis
Date Created: 10/16/2016 Date Last
Updated:
10/16/2016
Actors: Passenger, FCA Server
Description: Authentication of the passenger using the application.
Trigger: The user has opened the FCA Reservation application and a
secure session has been successfully established.
Preconditions: 1. A username and password have been established for
use with the FCA Reservation system.
2. A secure connection has been established.
Post conditions: 1. A menu page opens to allow user to interact with
other areas of the application if login is successful.
2. An error message displays if credentials could not be
validated.
3. After 3 failed login attempts, the account is locked
and password reset instructions are displayed.
Normal Flow: 1. After a secure connection is established, the
application displays the login page where the user is
asked to enter a username and password.
2. The user enters a valid username and password.
3. The user selects “Login”, which triggers the FCA
Reservation application to request that the FCA
Server authenticates the login credentials.
4. The FCA Server affirms successful entry of login
credentials.
5. The application displays a menu page to allow user to
interact with other areas of the application.
Alternative Flows: 1. The user enters invalid login credentials.
2. An error message is displayed.
3. User is given two more attempts to enter valid login
credentials
4. After three failed attempts, the account is locked and
password reset instructions are displayed.
Exceptions: A system administrator may override user credentials to
access accounts for maintenance purposes.
Software Requirements Specification for First Class Airlines Reservations System Page 26
Includes: Look-up routine
Priority: Highest
Frequency of Use: Every time the application launches.
Business Rules: 1. Usernames are alphanumeric strings of 6-30
characters.
2. Passwords are strings of 6-30 characters and include
at least one capital letter and one special character.
Special Requirements: Mask the password when entered.
Assumptions: FCA is responsible for the interface used for username and
password maintenance.
Notes and Issues: For protection from username enumeration vulnerability,
when login fails, do not confirm that the username exists. For
all failures, display “Invalid credentials” or similar message.
UC-3: Search for Flights
Use Case ID: UC-3
Use Case
Name:
Search for Flights
Created By: Deborah Lewis Last Updated By: Deborah Lewis
Date Created: 10/16/2016 Date Last
Updated:
10/16/2016
Actors: Passenger, FCA Database
Description: The passenger searches for available flights.
Trigger: The passenger has successfully logged into the FCA
Reservation application and selected the menu option to
search for available flights.
Preconditions: 1. A secure connection has been established.
2. Login credentials have been successfully validated.
3. The user selects the menu option to search for
available flights.
Post conditions: 1. A listing of available flights is displayed.
Normal Flow: 1. The user selects the menu option to search for
available flights.
2. The user enters their city of departure and city of
arrival.
3. A listing of available flights is displayed.
Software Requirements Specification for First Class Airlines Reservations System Page 27
Alternative Flows: 1. The user selects the menu option to search for
available flights.
2. The user enters their city of departure and city of
arrival.
3. No flights are available.
4. An error message appears.
5. User is prompted to either start a new search or
search for nearby airports.
Exceptions: None
Includes: Look-up routine.
Priority: Medium
Frequency of Use: Each time the menu option to search for flights is selected by
a user.
Business Rules: 1. A city of departure and city of arrival must be entered
by the user.
2. A travel date must be entered by the user.
Special Requirements: Provide a prompt for user to “search nearby airports” only if
no results are found for original query.
Assumptions: FCA will maintain a current and accurate database of
available flights.
Notes and Issues:
UC-4: Create New Reservation
Use Case ID: UC-4
Use Case
Name:
Create Reservation
Created By: Deborah Lewis Last Updated By: Deborah Lewis
Date Created: 10/16/2016 Date Last
Updated:
10/16/2016
Actors: Passenger, FCA Database, Payment Processor
Description: After finding an available flight, a user creates a reservation
to secure their spot on the desired flight.
Trigger: The user selects “Choose Flight” from a listing of available
flights.
Software Requirements Specification for First Class Airlines Reservations System Page 28
Preconditions: 1. A user is logged in within a secure session.
2. The user has searched for and found an available
flight.
3. The user selects “Choose Flight” from a listing of
available flights.
Post conditions: 1. A reservation has been successfully created.
2. The application returns to the main menu.
Normal Flow: 1. The user selects “Choose Flight” from a listing of
available flights.
2. The user is prompted to complete a form to secure a
reservation for their selected flight.
3. User data contained within the FCA Database is
automatically filled into the form.
4. The user submits the form with valid data.
5. They payment processor approves payment for the
flight.
6. An on-screen confirmation appears.
7. An email notification and receipt are sent to the user.
Alternative Flows: 1. The payment is declined.
2. An error message is displayed.
3. User is returned to reservation form and asked to
enter a new card number.
4. After 3 failed attempts in a 24 hour timeframe, the
user is locked out from further attempts and must call
FCA to reserve by phone.
Exceptions: A dummy card number of 4111 1111 1111 1111 will allow
administrators to create a fake reservation for testing
purposes.
Includes: Look-up process
Priority: Medium
Frequency of Use: Any time an available flight is selected.
Business Rules: 1. All flights must be paid in full for the reservation to be
successfully created.
Special Requirements: To avoid double booking in cases where multiple users are
reserving seats for the same flight, when “Choose Flight” is
selected, the seat will be temporarily reserved until the
secure session is terminated or until a permanent reservation
is completed through the normal flight reservation process.
Assumptions: FCA will supply the Reservation Form and data to be
requested. FCA will maintain a current Payment Card
Industry (PCI) compliance certificate.
Notes and Issues: 1. In cases where payment is declined and the user is
returned to the reservation form, preserve data from
all fields except the credit card type, number,
expiration date, and security code.
2. Mask the credit card security code for security
purposes.
Software Requirements Specification for First Class Airlines Reservations System Page 29
UC-5: View Reservation
Use Case ID: UC-5
Use Case
Name:
View Reservation
Created By: Deborah Lewis Last Updated By: Deborah Lewis
Date Created: 10/16/2016 Date Last
Updated:
10/16/2016
Actors: Passenger, FCA Database
Description: Passengers can view a listing of all upcoming flights for
which they have reservations.
Trigger: 1. The user selects “View Upcoming Flights” from a list
of menu options.
Preconditions: 1. The user is logged in and has an active secure
session.
2. The user has a confirmed flight reservation.
3. The user selects “View Upcoming Flights” from a list
of menu options in the FCA Reservation application.
Post conditions: 1. The user views their flight details.
Normal Flow: 1. The user selects “View Upcoming Flights” from the
FCA Reservation application’s main menu.
2. The application requests flight details from the FCA
Servers.
3. The FCA Servers return a listing of upcoming flights
for which the user is reserved.
4. Details related to the flight are displayed.
Alternative Flows: 1. The user selects “View Upcoming Flights” from the
FCA Reservation application’s main menu.
2. The application requests flight details from the FCA
Servers.
3. FCA Servers do not return upcoming flight details
because no prior reservations have been made by
the user.
4. An error message appears.
5. User is returned to the FCA Reservation application
main menu.
Exceptions: None
Includes: Look-up process.
Priority: Low
Frequency of Use: Any time “View Upcoming Flights” is selected from the FCA
Software Requirements Specification for First Class Airlines Reservations System Page 30
Reservation application’s main menu
Business Rules: If a flight has been cancelled, the flight details should still be
available to the user along with a notation that the flight is no
longer scheduled.
Special Requirements: None
Assumptions: The user has previously reserved a seat on an available
flight with FCA. FCA Servers will provide flight details for
display.
Notes and Issues: When multiple flights are scheduled, display an index page
to allow users to select the flight for which they would like to
view details.
Software Requirements Specification for First Class Airlines Reservations System Page 31
UC-6: Cancel Reservation
Use Case ID: UC-6
Use Case
Name:
Cancel Reservation
Created By: Deborah Lewis Last Updated By: Deborah Lewis
Date Created: 10/16/2016 Date Last
Updated:
10/16/2016
Actors: Passenger, FCA Database, Pay Processor
Description: A passenger cancels their reservation for a flight that is
scheduled for 72 hours or more in the future.
Trigger: The passenger selects “Cancel Reservation” from the “View
Upcoming Flights” screen.
Preconditions: 1. The user is logged in with a secure session.
2. The user selected “View Upcoming Flights”.
3. The user selected “Cancel Flight” for an upcoming
flight.
Post conditions: 1. The user’s reservation is cancelled.
2. Payment for the flight is refunded by the pay
processor.
3. An on-screen confirmation appears.
4. An emailed refund receipt is sent.
5. User returns to FCA Reservations main menu.
Normal Flow: 1. The user selects “Cancel Flight” for a reservation that
is scheduled for 72 hours or more in the future.
2. The user confirms their cancellation.
3. FCA Reservations application requests that the FCA
Database removes the passenger from its flight list.
4. The FCA Database confirms successful removal.
5. The Pay Processor refunds the payment.
6. An on-screen confirmation message appears.
7. An emailed refund receipt is sent.
8. The user returns to the FCA Reservation application
main menu.
Alternative Flows: 1. The user selects “Cancel Flight” for a reservation that
is within 72 hours of the current date/time.
Software Requirements Specification for First Class Airlines Reservations System Page 32
2. An error message appears to instruct user to call FCA
to cancel their reservation.
Exceptions: None.
Includes: Look-up process
Priority: Low
Frequency of Use: Any time “Cancel Flight” is selected from the “View Upcoming
Flights” page.
Business Rules: If the flight is scheduled for departure within the next 72
hours, customers must call FCA to cancel their reservation
and a refund may not be permitted.
Special Requirements: Flights cannot be cancelled through the FCA Reservations
application if they are scheduled for departure within 72
hours of the current time.
Assumptions: The user has a reservation.
Notes and Issues: None.
Appendix C: Traceability Matrix
The Requirements Traceability Matrix (RTM) tracks system features throughout the software
validation process. It ensures that each of the requirements defined for the First Class Airlines
Reservation application are included and tested for full functionality.
System
Features
Requirement
Description
Use Case Specific
Requirement
Test Case
SF-3.1 Secure Session UC-1, UC-2, UC-
3, UC-4, UC-5,
UC-6
SS-1, SS-2, SS-
3, SS-4
SF -3.2 Login UC-2, UC-3, UC-
4, UC-5, UC-6
LI-1, LI-2, LI-3,
LI-4, LI-5, LI-6,
LI-7, LI-8
TC1: LI-1—LI-6
SF -3.3 Search for Flights UC-3, UC-4 SF-1, SF-2, SF-3,
SF-4, SF-5, SF-6
TC2: SF-1—SF-5
SF -3.4 Create
Reservation
UC-4 CNR -1, CNR -2,
CNR -3, CNR -4,
CNR -5, CNR -6,
CNR -7, CNR -8,
CNR -9, CNR -10
SF -3.5 View Reservation UC-5, UC-6 VR-1, VR-2, VR-
3, VR-4, VR-5
TC3: VR-1—VR-
3
SF -3.6 Cancel
Reservation
UC-6 CR-1, CR-2, CR-
3, CR-4, CR-5

More Related Content

What's hot

Airline reservation system
Airline reservation system Airline reservation system
Airline reservation system
krishnayadav962132
 
Railway Reservation System - Software Engineering
Railway Reservation System - Software EngineeringRailway Reservation System - Software Engineering
Railway Reservation System - Software Engineering
Lalit Pal
 
Student Management System report
Student Management System reportStudent Management System report
Student Management System report
Chandresh Prasad
 
SCHOOL BUS ROUTING MANAGEMENT SYSTEM [FINAL]
SCHOOL BUS ROUTING MANAGEMENT SYSTEM [FINAL]SCHOOL BUS ROUTING MANAGEMENT SYSTEM [FINAL]
SCHOOL BUS ROUTING MANAGEMENT SYSTEM [FINAL]ayushi goyal
 
Srs example webapp
Srs example webappSrs example webapp
Srs example webapp
Rivaldy Setiawan
 
Airline management system
Airline management systemAirline management system
Airline management system
SH Rajøn
 
Air line reservation system software engeniring
Air line reservation system software engeniringAir line reservation system software engeniring
Air line reservation system software engeniring
Asfand Sheraz Khan Niazi
 
Online Ticket Reservation System-SRS, ERD, DFD, Structured Charts
Online Ticket Reservation System-SRS, ERD, DFD, Structured ChartsOnline Ticket Reservation System-SRS, ERD, DFD, Structured Charts
Online Ticket Reservation System-SRS, ERD, DFD, Structured Charts
grandhiprasuna
 
Passport Automation System
Passport Automation SystemPassport Automation System
Passport Automation System
Megha Sahu
 
Railway reservation system
Railway reservation systemRailway reservation system
Railway reservation system
KOYELMAJUMDAR1
 
Project report RAILWAY TICKET RESERVATION SYSTEM SAD
Project report RAILWAY TICKET RESERVATION SYSTEM SADProject report RAILWAY TICKET RESERVATION SYSTEM SAD
Project report RAILWAY TICKET RESERVATION SYSTEM SAD
Nitesh Singh
 
Software Requirements Specification (SRS) for Online Tower Plotting System (O...
Software Requirements Specification (SRS) for Online Tower Plotting System (O...Software Requirements Specification (SRS) for Online Tower Plotting System (O...
Software Requirements Specification (SRS) for Online Tower Plotting System (O...
Dr Sukhpal Singh Gill
 
Online flight booking srs document
Online flight booking srs documentOnline flight booking srs document
Online flight booking srs document
manthankdesai
 
Online Bus Ticket Reservation System
Online Bus Ticket Reservation SystemOnline Bus Ticket Reservation System
Online Bus Ticket Reservation SystemTuvshinbayar Davaa
 
Systems Analysis and Design | Final Project
Systems Analysis and Design | Final Project Systems Analysis and Design | Final Project
Systems Analysis and Design | Final Project
Amber Raiford
 
Airline ticket reservation system
Airline ticket reservation systemAirline ticket reservation system
Airline ticket reservation system
SH Rajøn
 
Online bus reservation system
Online bus reservation systemOnline bus reservation system
Online bus reservation system
SannanGulzar
 
ER diagrams for Railway reservation system
ER diagrams for Railway reservation systemER diagrams for Railway reservation system
ER diagrams for Railway reservation system
Soham Nanekar
 
Software Requirement Specification For Smart Internet Cafe
Software Requirement Specification For Smart Internet CafeSoftware Requirement Specification For Smart Internet Cafe
Software Requirement Specification For Smart Internet Cafe
Hari
 
Software Requirements Specification Final
Software Requirements Specification FinalSoftware Requirements Specification Final
Software Requirements Specification Finaljangjong
 

What's hot (20)

Airline reservation system
Airline reservation system Airline reservation system
Airline reservation system
 
Railway Reservation System - Software Engineering
Railway Reservation System - Software EngineeringRailway Reservation System - Software Engineering
Railway Reservation System - Software Engineering
 
Student Management System report
Student Management System reportStudent Management System report
Student Management System report
 
SCHOOL BUS ROUTING MANAGEMENT SYSTEM [FINAL]
SCHOOL BUS ROUTING MANAGEMENT SYSTEM [FINAL]SCHOOL BUS ROUTING MANAGEMENT SYSTEM [FINAL]
SCHOOL BUS ROUTING MANAGEMENT SYSTEM [FINAL]
 
Srs example webapp
Srs example webappSrs example webapp
Srs example webapp
 
Airline management system
Airline management systemAirline management system
Airline management system
 
Air line reservation system software engeniring
Air line reservation system software engeniringAir line reservation system software engeniring
Air line reservation system software engeniring
 
Online Ticket Reservation System-SRS, ERD, DFD, Structured Charts
Online Ticket Reservation System-SRS, ERD, DFD, Structured ChartsOnline Ticket Reservation System-SRS, ERD, DFD, Structured Charts
Online Ticket Reservation System-SRS, ERD, DFD, Structured Charts
 
Passport Automation System
Passport Automation SystemPassport Automation System
Passport Automation System
 
Railway reservation system
Railway reservation systemRailway reservation system
Railway reservation system
 
Project report RAILWAY TICKET RESERVATION SYSTEM SAD
Project report RAILWAY TICKET RESERVATION SYSTEM SADProject report RAILWAY TICKET RESERVATION SYSTEM SAD
Project report RAILWAY TICKET RESERVATION SYSTEM SAD
 
Software Requirements Specification (SRS) for Online Tower Plotting System (O...
Software Requirements Specification (SRS) for Online Tower Plotting System (O...Software Requirements Specification (SRS) for Online Tower Plotting System (O...
Software Requirements Specification (SRS) for Online Tower Plotting System (O...
 
Online flight booking srs document
Online flight booking srs documentOnline flight booking srs document
Online flight booking srs document
 
Online Bus Ticket Reservation System
Online Bus Ticket Reservation SystemOnline Bus Ticket Reservation System
Online Bus Ticket Reservation System
 
Systems Analysis and Design | Final Project
Systems Analysis and Design | Final Project Systems Analysis and Design | Final Project
Systems Analysis and Design | Final Project
 
Airline ticket reservation system
Airline ticket reservation systemAirline ticket reservation system
Airline ticket reservation system
 
Online bus reservation system
Online bus reservation systemOnline bus reservation system
Online bus reservation system
 
ER diagrams for Railway reservation system
ER diagrams for Railway reservation systemER diagrams for Railway reservation system
ER diagrams for Railway reservation system
 
Software Requirement Specification For Smart Internet Cafe
Software Requirement Specification For Smart Internet CafeSoftware Requirement Specification For Smart Internet Cafe
Software Requirement Specification For Smart Internet Cafe
 
Software Requirements Specification Final
Software Requirements Specification FinalSoftware Requirements Specification Final
Software Requirements Specification Final
 

Similar to Airline Reservation Software Requirement Specification

Mohan_Dissertation (1)
Mohan_Dissertation (1)Mohan_Dissertation (1)
Mohan_Dissertation (1)Mohan Bhargav
 
Open acc.1.0
Open acc.1.0Open acc.1.0
Open acc.1.0
shengmingzhiyu
 
Oracle® Fusion Middleware
Oracle® Fusion MiddlewareOracle® Fusion Middleware
Oracle® Fusion Middleware
Ngo Hung Long
 
Jms 1 1-fr-spec
Jms 1 1-fr-specJms 1 1-fr-spec
Jms 1 1-fr-specHyunsuk Oh
 
B28654oas10g best pracitice
B28654oas10g best praciticeB28654oas10g best pracitice
B28654oas10g best pracitice
Caipei Chen
 
S Pii Plus+C+Library+Programmer+Guide
S Pii Plus+C+Library+Programmer+GuideS Pii Plus+C+Library+Programmer+Guide
S Pii Plus+C+Library+Programmer+Guideguestd2fe1e
 
S Pii Plus+C+Library+Programmer+Guide
S Pii Plus+C+Library+Programmer+GuideS Pii Plus+C+Library+Programmer+Guide
S Pii Plus+C+Library+Programmer+Guideguestd2fe1e
 
Role Based Access Control - Overview
Role Based Access Control - OverviewRole Based Access Control - Overview
Role Based Access Control - Overview
Hitachi ID Systems, Inc.
 
Deploying GFI EventsManager™
Deploying GFI EventsManager™Deploying GFI EventsManager™
Deploying GFI EventsManager™
GFI Software
 
V mware service-def-private-cloud-11q1-white-paper
V mware service-def-private-cloud-11q1-white-paperV mware service-def-private-cloud-11q1-white-paper
V mware service-def-private-cloud-11q1-white-paper
Chiến Nguyễn
 
Oracle Web Conferencing - Release 2.0.4
Oracle Web Conferencing - Release 2.0.4Oracle Web Conferencing - Release 2.0.4
Oracle Web Conferencing - Release 2.0.4Mehul Sanghavi
 
Enabling mobile apps with ibm worklight application center red
Enabling mobile apps with ibm worklight application center redEnabling mobile apps with ibm worklight application center red
Enabling mobile apps with ibm worklight application center red
bupbechanhgmail
 
Deployment guide series ibm tivoli composite application manager for web reso...
Deployment guide series ibm tivoli composite application manager for web reso...Deployment guide series ibm tivoli composite application manager for web reso...
Deployment guide series ibm tivoli composite application manager for web reso...Banking at Ho Chi Minh city
 
Deployment guide series ibm tivoli composite application manager for web reso...
Deployment guide series ibm tivoli composite application manager for web reso...Deployment guide series ibm tivoli composite application manager for web reso...
Deployment guide series ibm tivoli composite application manager for web reso...Banking at Ho Chi Minh city
 
Sap s4 hana 1709 op sap api-master guide
Sap s4 hana 1709 op sap api-master guideSap s4 hana 1709 op sap api-master guide
Sap s4 hana 1709 op sap api-master guide
mutia_arum
 
Spring data-keyvalue-reference
Spring data-keyvalue-referenceSpring data-keyvalue-reference
Spring data-keyvalue-reference
dragos142000
 
A Cloud Decision making Framework
A Cloud Decision making FrameworkA Cloud Decision making Framework
A Cloud Decision making FrameworkAndy Marshall
 
Whitepaper MEDINA Continuous Life Cycle Management of Cloud Security Certific...
Whitepaper MEDINA Continuous Life Cycle Management of Cloud Security Certific...Whitepaper MEDINA Continuous Life Cycle Management of Cloud Security Certific...
Whitepaper MEDINA Continuous Life Cycle Management of Cloud Security Certific...
MEDINA
 

Similar to Airline Reservation Software Requirement Specification (20)

Mohan_Dissertation (1)
Mohan_Dissertation (1)Mohan_Dissertation (1)
Mohan_Dissertation (1)
 
Adf tutorial oracle
Adf tutorial oracleAdf tutorial oracle
Adf tutorial oracle
 
Open acc.1.0
Open acc.1.0Open acc.1.0
Open acc.1.0
 
Oracle® Fusion Middleware
Oracle® Fusion MiddlewareOracle® Fusion Middleware
Oracle® Fusion Middleware
 
Jms 1 1-fr-spec
Jms 1 1-fr-specJms 1 1-fr-spec
Jms 1 1-fr-spec
 
B28654oas10g best pracitice
B28654oas10g best praciticeB28654oas10g best pracitice
B28654oas10g best pracitice
 
S Pii Plus+C+Library+Programmer+Guide
S Pii Plus+C+Library+Programmer+GuideS Pii Plus+C+Library+Programmer+Guide
S Pii Plus+C+Library+Programmer+Guide
 
S Pii Plus+C+Library+Programmer+Guide
S Pii Plus+C+Library+Programmer+GuideS Pii Plus+C+Library+Programmer+Guide
S Pii Plus+C+Library+Programmer+Guide
 
Role Based Access Control - Overview
Role Based Access Control - OverviewRole Based Access Control - Overview
Role Based Access Control - Overview
 
Deploying GFI EventsManager™
Deploying GFI EventsManager™Deploying GFI EventsManager™
Deploying GFI EventsManager™
 
V mware service-def-private-cloud-11q1-white-paper
V mware service-def-private-cloud-11q1-white-paperV mware service-def-private-cloud-11q1-white-paper
V mware service-def-private-cloud-11q1-white-paper
 
Oracle Web Conferencing - Release 2.0.4
Oracle Web Conferencing - Release 2.0.4Oracle Web Conferencing - Release 2.0.4
Oracle Web Conferencing - Release 2.0.4
 
Enabling mobile apps with ibm worklight application center red
Enabling mobile apps with ibm worklight application center redEnabling mobile apps with ibm worklight application center red
Enabling mobile apps with ibm worklight application center red
 
Deployment guide series ibm tivoli composite application manager for web reso...
Deployment guide series ibm tivoli composite application manager for web reso...Deployment guide series ibm tivoli composite application manager for web reso...
Deployment guide series ibm tivoli composite application manager for web reso...
 
Deployment guide series ibm tivoli composite application manager for web reso...
Deployment guide series ibm tivoli composite application manager for web reso...Deployment guide series ibm tivoli composite application manager for web reso...
Deployment guide series ibm tivoli composite application manager for web reso...
 
Sap s4 hana 1709 op sap api-master guide
Sap s4 hana 1709 op sap api-master guideSap s4 hana 1709 op sap api-master guide
Sap s4 hana 1709 op sap api-master guide
 
Jms
JmsJms
Jms
 
Spring data-keyvalue-reference
Spring data-keyvalue-referenceSpring data-keyvalue-reference
Spring data-keyvalue-reference
 
A Cloud Decision making Framework
A Cloud Decision making FrameworkA Cloud Decision making Framework
A Cloud Decision making Framework
 
Whitepaper MEDINA Continuous Life Cycle Management of Cloud Security Certific...
Whitepaper MEDINA Continuous Life Cycle Management of Cloud Security Certific...Whitepaper MEDINA Continuous Life Cycle Management of Cloud Security Certific...
Whitepaper MEDINA Continuous Life Cycle Management of Cloud Security Certific...
 

Airline Reservation Software Requirement Specification

  • 1. Software Requirements Specification for First Class Airline Reservation System Version 1.7 Prepared by Deborah Lewis Lewis Consulting Services November 7, 2016 Copyright © 2002 by Karl E. Wiegers. Permission is granted to use, modify, and distribute this document.
  • 2. Software Requirements Specification for First Class Airline Reservation System Page ii Table of Contents 1. Introduction............................................................................................................................1 1.1 Purpose ............................................................................................................................1 1.2 Document Conventions.....................................................................................................1 1.3 Intended Audience and Reading Suggestions..................................................................1 1.4 Project Scope....................................................................................................................2 1.5 References........................................................................................................................2 2. Overall Description................................................................................................................4 2.1 Product Perspective..........................................................................................................4 2.2 Product Features...............................................................................................................5 2.3 User Classes and Characteristics.....................................................................................5 2.4 Operating Environment.....................................................................................................6 2.5 Design and Implementation Constraints...........................................................................6 2.6 User Documentation.........................................................................................................6 2.7 Assumptions and Dependencies.......................................................................................6 3. System Features....................................................................................................................7 3.1 Secure Session.................................................................................................................7 3.1.1 Description and Priority...............................................................................................7 3.1.2 Stimulus/Response Sequences..................................................................................7 3.1.3 Functional Requirements............................................................................................7 3.2 Login.................................................................................................................................7 3.2.1 Description and Priority...............................................................................................7 3.2.2 Stimulus/Response Sequences..................................................................................8 3.2.3 Functional Requirements............................................................................................8 3.2.4 Test Case 1: Failed Login Lockout.............................................................................8 3.3 Search for Flights..............................................................................................................9 3.3.1 Description and Priority...............................................................................................9 3.3.2 Stimulus/Response Sequences..................................................................................9 3.3.3 Functional Requirements............................................................................................9 3.3.4 Test Case 2: Search for Flights................................................................................10 3.4 Create New Reservation.................................................................................................11 3.4.1 Description and Priority.............................................................................................11 3.4.2 Stimulus/Response Sequences................................................................................11 3.4.3 Functional Requirements..........................................................................................11 3.5 View Reservation............................................................................................................12 3.5.1 Description and Priority.............................................................................................12 3.5.2 Stimulus/Response Sequences................................................................................12 3.5.3 Functional Requirements..........................................................................................12 3.5.4 Test Case 3: View Reservations...............................................................................12 3.6 Cancel Reservation.........................................................................................................13 3.6.1 Description and Priority.............................................................................................13 3.6.2 Stimulus/Response Sequences................................................................................13 3.6.3 Functional Requirements..........................................................................................13 4. External Interface Requirements........................................................................................15 4.1 User Interfaces................................................................................................................15 4.2 Hardware Interfaces........................................................................................................16 4.3 Software Interfaces.........................................................................................................17 4.4 Communications Interfaces.............................................................................................18 5. Other Nonfunctional Requirements....................................................................................18 5.1 Performance Requirements............................................................................................18 5.2 Safety Requirements......................................................................................................19 5.3 Security Requirements....................................................................................................19 5.4 Software Quality Attributes.............................................................................................20
  • 3. Software Requirements Specification for First Class Airline Reservation System Page iii 6. Agile Development Methodology........................................................................................20 6.1 What is Agile Development Methodology.......................................................................20 6.2 Why use Agile Development for the First Class Airlines Reservation Application..........21 6.3 Agile Practices to Employ...............................................................................................21 Revision History Name Date Reason For Changes Version Deborah Lewis 10/07/201 6 Completion of section 1 1.0 Deborah Lewis 10/15/201 6 Revision of section 1 based on instructor feedback. 1.1 Deborah Lewis 10/16/201 6 Completion of Section 2, Section 3, Appendix B, and additions to Appendix A 1.2 Deborah Lewis 10/24/201 6 Completion of section 4 and test cases for section 3 1.3 Deborah Lewis 10/31/201 6 Completion of Section 5 1.4 Deborah Lewis 11/02/201 6 Revision of test scripts and functional requirements for section 3.5 based on instructor and peer feedback 1.5 Deborah Lewis 11/02/201 6 Completion of section 6 1.6 Deborah Lewis 11/07/201 6 Completion of Appendix C 1.7
  • 4. Software Requirements Specification for First Class Airlines Reservations System Page 1 1. Introduction 1.1 Purpose First Class Airlines (FCA) was founded in 1999 and provides flights to an elusive clientele of elite corporate executives and government employees. They are known for their very high level of service with all of the conveniences of the office to ensure that transportation from one city to another is not a disruption to their clientele’s workload. To book a flight with FCA, one must call into the FCA central office to reserve a flight and make any special requests. A service that was once a little known secret in the corporate world is beginning to grow. As a result, FCA is struggling to keep up with the demand for their service. To combat this struggle, FCA purchased 50 additional passenger planes and hired of 300 new employees; however, customers are still frustrated by the long wait times experienced when scheduling flights by phone. As a result, FCA has hired Lewis Consulting to create and implement an Airline Reservation System (ARS) that will be accessible as an application for the Samsung Galaxy S6 smartphone. This Software Requirements Specification (SRS) outlines the steps taken to create a working solution for the initial deployment of the FCA reservation system. The role of Lewis Consulting will be to design and implement an ARS that can be used by passengers and potential passengers as a self-service tool. Phase 1 of the FCA Reservation System will allow passengers to establish a secure connection to the FCA Reservation System, log in, search for available flights, create a reservation, cancel a reservation, and view a listing of all reservations. 1.2 Document Conventions  Main topics are bolded in a heading and are represented using whole numbers.  Sub topics and bullets are indented beneath the main topic heading with a decimal version of the whole number.  All acronyms will be introduced with its full name, followed by its acronym in parenthesis. From this point forward, the acronym is used in place of the full word titles.  In the glossary in Appendix A, any acronyms used within this document are outlined in alphabetical order for easy reference. 1.3 Intended Audience and Reading Suggestions This document is written by Lewis Consulting in response to FCA’s request for a proposal for the first phase of the ARS. It is intended for use by all who are involved in the design of the FCA Reservation System. This includes all stakeholders and employees of FCA, in addition to designers, developers, testers, programmers, testers, and programmers of Lewis Consulting Services. This document is best read from beginning to end to fully grasp the program to be implemented, however the table of contents can be used to hone in on specific areas of interest to specific readers. By using the CTRL key and clicking on any item in the Table of Contents, readers can jump straight to topics of interest. This document is not intended for use by end-users. Documentation provided for use of the software by end users should be created by FCA after the completion of this application.
  • 5. Software Requirements Specification for First Class Airlines Reservations System Page 2 1.4 Project Scope In the first phase of FCA Reservation System, the following functions will be included:  Establish a secure connection  Login to the system  Search for available flights  Create reservation  View reservation  Cancel reservation The ARS will be accessible from all the Samsung Galaxy S6 smartphone with the FCA Reservations Application installed. Lewis Consulting will perform one User Acceptance Test (UAT) with FCA representatives. Training of FCA Reservation System users and managing login credentials is out of the scope of this project and is the responsibility of FCA. 1.5 References Agile Alliance. (n.d.). 12 Principles Behind the Agile Manifesto. Retrieved November 7, 2016, from Agile Alliance: https://www.agilealliance.org/agile101/12-principles-behind-the-agile- manifesto/ Agile Alliance. (n.d.). Agile 101. Retrieved November 7, 2016, from Agile Alliance: https://www.agilealliance.org/agile101/ Atencio, T. (2016, October 2). CS455 Live Chat #1 – Getting Started.. [Chat]. Retrieved from Colorado Technical University Online, Virtual Campus, CS455-1604A-01 Classroom: https://campus.ctuonline.edu Atencio, T. (2016, October 2). CS455 Live Chat #2 – elicitation meeting – class project.. [Chat]. Retrieved from Colorado Technical University Online, Virtual Campus, CS455-1604A-01 Classroom: https://campus.ctuonline.edu Atencio, T. (2016, October 9). CS455 Live Chat #3 – Use Case Diagram. [Chat]. Retrieved from Colorado Technical University Online, Virtual Campus, CS455-1604A-01 Classroom: https://campus.ctuonline.edu Atencio, T. (2016, October 9). CS455 Live Chat #4 – Specifications and FDUCS. [Chat]. Retrieved from Colorado Technical University Online, Virtual Campus, CS455-1604A-01 Classroom: https://campus.ctuonline.edu Atencio, T. (2016, October 16). CS455 Live Chat #5 – Verification & Validation. [Chat]. Retrieved from Colorado Technical University Online, Virtual Campus, CS455-1604A-01 Classroom: https://campus.ctuonline.edu Atencio, T. (2016, October 16). CS455 Live Chat #6– Test Cases. [Chat]. Retrieved from Colorado Technical University Online, Virtual Campus, CS455-1604A-01 Classroom: https://campus.ctuonline.edu
  • 6. Software Requirements Specification for First Class Airlines Reservations System Page 3 Atencio, T. (2016, October 23). CS455 Live Chat #7 – sharing and helping. [Chat]. Retrieved from Colorado Technical University Online, Virtual Campus, CS455-1604A-01 Classroom: https://campus.ctuonline.edu Atencio, T. (2016, October 23). CS455 Live Chat #8 – how we do business. [Chat]. Retrieved from Colorado Technical University Online, Virtual Campus, CS455-1604A-01 Classroom: https://campus.ctuonline.edu Atencio, T. (2016, October 30). CS455 Live Chat #9 – remembering. [Chat]. Retrieved from Colorado Technical University Online, Virtual Campus, CS455-1604A-01 Classroom: https://campus.ctuonline.edu Atencio, T. (2016, October 30). CS455 Live Chat #10 – rAgile and Traceability Matrix. [Chat]. Retrieved from Colorado Technical University Online, Virtual Campus, CS455-1604A-01 Classroom: https://campus.ctuonline.edu Galaxy S6 edge | Galaxy S6. (n.d.). Retrieved from: http://www.samsung.com/us/explore/galaxy- s-6-features-and-specs/ HPE ProLiant SL4540 Gen8 2 Node Server. (n.d.). Retrieved from https://www.hpe.com/us/en/product-catalog/servers/proliant-servers/pip.specifications.hpe- proliant-sl4540-gen8-2-node-server.7611040.html IndicThreads. (n.d.). Quick Introduction To Agile Software Development. Retrieved November 7, 2016, from IndicThreads: http://www.indicthreads.com/1439/quick-introduction-to-agile- software-development Oracle Database Online Documentation, 10g Resease 2 (10.2). (n.d.) Retrieved from https://docs.oracle.com/cd/B19306_01/server.102/b14220/intro.htm Requirements Traceability Matrix. (n.d.). Retrieved November 7, 2016, from Ofni Systems: http://www.ofnisystems.com/services/validation/traceability-matrix/ Wiegers, K. E., Beatty, J. (2013). Software requirements (3rd ed.). Redmond: Microsoft Press
  • 7. Software Requirements Specification for First Class Airlines Reservations System Page 4 2. Overall Description 2.1 Product Perspective The FCA Reservation application is a brand new venture for FCA. As a small airline, there are concerns that the application may not compete well with those of larger scoped travel applications, like Travelocity and Expedia. The goal with Phase 1 of the FCA Reservation application is to offer travelers the ability to provide basic flight searching, reservation and cancellation abilities from the Samsung Galaxy S6 smartphone. The desired result is a product that allows flyers to self-serve and avoid long telephone hold times when calling into the FCA Reservation office.
  • 8. Software Requirements Specification for First Class Airlines Reservations System Page 5 Figure 2.1 – Samsung Galaxy S6 smartphone 2.2 P r o d u c t Features The FCA Reservation application allows users of the Samsung Galaxy S6 smartphone to install the application from the Google Play Store and perform a series of actions to aid in the airline reservations process. These functions include securing a secure connection to the FCA Servers, logging into an account, searching for flights, creating a reservation, viewing all reservations, and cancelling a reservation. Figure 2.2 – UML Data Flow Diagram for FCA Airlines Reservation application 2.3 User Classes and Characteristics Travelers with a Samsung Galaxy S6 smartphone are the target users of the FCA Reservation application. General characteristics of these users are:  Adults age 18 and older  Owners of a Samsung Galaxy S6 smartphone
  • 9. Software Requirements Specification for First Class Airlines Reservations System Page 6  May or may not be tech savvy  May or may not have prior experience with travel applications  May or may not be educated and trained 2.4 Operating Environment FCA has chosen the following elements of the environment for the FCA Reservation application:  The FCA server is the HP ProLiant SL 4500 server with a Citrix OS interface  The Samsung Galaxy S6 smartphone with a Linux-based Operating System (OS) will be used to house the application.  The database which holds customers’ data and flight data is SQL. 2.5 Design and Implementation Constraints  The FCA Reservation application will be designed only for the Samsung Galaxy S6 smartphone.  It is the responsibility of the potential traveler to download and install the FCA Reservation application to a Samsung Galaxy S6 smartphone.  It is the responsibility of the potential traveler to maintain the application and keep it updated.  The FCA server is available 24/7, except during scheduled maintenance times.  The application will be designed for use on the 1440 x 2560 pixel screen size that comes standard on the Samsung Galaxy S6 smartphone.  Any memory restrictions applied to the Samsung Galaxy S6 smartphone will apply as design constraints.  Interruption of cell phone service will cause the application to close and require the establishment of a new secure session.  Secure sessions will be monitored in order to ensure proper closure after 5 minutes of inactivity for security purposes. 2.6 User Documentation The FCA Reservation application will use a very intuitive design, leaving the following considerations:  A Portable Document Format (PDF) User manual will be provided by Lewis Consulting to FCA with an overview of the application and its functionalities.  It will be the responsibility of FCA to provide users of the FCA Reservation application with instruction on use of the application from a users’ standpoint.  User acceptance testing materials will be provided by Lewis Consulting.  A question mark icon will appear in the upper right corner of the application at all times. When a user clicks on this icon, a help center article provided by FCA will open in an external browser to provide users with additional instruction. 2.7 Assumptions and Dependencies  The application will be used only by confirmed passengers and potential passengers of FCA.  Users own or have access to a Samsung Galaxy S6 smartphone.
  • 10. Software Requirements Specification for First Class Airlines Reservations System Page 7  Users of the application are knowledgeable about using applications on their Samsung Galaxy S6 smartphone.  Users will keep the FCA Reservation application and smartphone updated  It is the responsibility of FCA to keep the application updated with the most current technology  The servers at FCA are up and running. 3. System Features This section outlines the low level details of each system function of the FCA Reservation System. It sets priorities of each function so that developers and FCA stakeholders know what will be accomplished first and what functions will be available for review first. 3.1 Secure Session 3.1.1 Description and Priority Because sensitive information and personal data is exchanged between passengers and the application, the information contained within each session must remain protected and confidential. FCA is responsible for safeguarding the data transferred by the FCA Reservation System application. It is crucial that the FCA Reservation System application keep this data encrypted and safeguarded from those with nefarious or malicious intent. This is the highest priority. 3.1.2 Stimulus/Response Sequences The user opens the FCA Reservation application by touching the application icon on their Samsung Galaxy S6 smartphone. This launches the application interface and automatically begins securing a connection to the FCA servers. 3.1.3 Functional Requirements SS-1: a secure session is established between the FCA Reservation application and the FCA servers SS-2: an icon displays to let the user know that a secure connection has been successfully attained prior to continuing to the rest of the application SS-3: if a secure connection could not be established, an error message is displayed and the application closes SS-4: when the application is closed or when 5 minutes of inactivity elapses, the secure session terminates 3.2 Login 3.2.1 Description and Priority The user will be prompted by the FCA Reservation application to enter a username and password on a login screen. Upon submission of valid login credentials, the data will be verified by the FCA Servers. Verification of the user is important because the Samsung Galaxy S6 smartphone may be lost or accessed by someone other than the authorized user. Because this application includes payment data and other sensitive materials, ensuring that only authorized users can access this data is crucial. Passengers and FCA is responsible for the protection of login credentials. This feature is of highest priority.
  • 11. Software Requirements Specification for First Class Airlines Reservations System Page 8 3.2.2 Stimulus/Response Sequences After a secure session is established, a login screen will be displayed to the user. The user will enter a username and password, and then select a button that says, “Login” to submit their credentials to the FCA Servers for validation. The application will display a message indicating the success or failure of the authentication. 3.2.3 Functional Requirements LI-1: a login page is displayed and asks the user to enter a username and password. LI -2: the password will be masked as it is typed into the login interface LI -3: a touchable button submits the username and password from the login form to the FCA Server LI -4: the credentials are compared against those stored in the FCA database LI-5: if login information does not match, the user will be given two more chances to enter correct login information LI -6: after 3 failed login attempts, the user account is locked and an error message is displayed instructing the user to call a 1-800 number to reactivate the account LI-7: if the database matches the credentials, the server returns the confirmation LI-8: after confirmation of correct login credentials, the FCA Reservation application menu is displayed 3.2.4 Test Case 1: Failed Login Lockout Test Name: TC1: Failed Login Lockout Description: User is locked out after 3 failed password attempts Requirement(s): Spec. 3.2, LI-1 – LI-6 , UC2 Prerequisites: The FCA Reservation has been installed on a Samsung Galaxy S6 smartphone. Setup: The user will begin by opening the FCA Reservation application from a Samsung Galaxy S6 smartphone. The application interface will indicate through imagery that a secure session has been established with the server. TC1: Failed Login Lockout Step Operator Action Expected Results Observed Results Pass/ Fail Severity 1. Await login prompt The application displays a login form. This form provides prompts to enter a username into the username text box, a password into the password text box, and a submit button to submit login credentials. Start time Stop time
  • 12. Software Requirements Specification for First Class Airlines Reservations System Page 9 Step Operator Action Expected Results Observed Results Pass/ Fail Severity 2. Enter invalid username and password and press Submit (1st attempt) The application sends the submitted credentials to the server/database for validation. 3. Await results An error message informs the user that the username and password do not match. 4. Enter invalid username and password and press Submit (2nd attempt) The application sends the submitted credentials to the server/database for validation. 5. Await results An error message informs the user that the username and password do not match and only one try is remaining. 6. Enter invalid username and password and press Submit (3rd attempt) The application sends the submitted credentials to the server/database for validation. 7. Await results An error message informs the user that the username and password do not match, the account is locked, and they must call a 1-800 number to restore account access 3.3 Search for Flights 3.3.1 Description and Priority Upon successful entry into the FCA Reservation Application, a user can select “Search for Flights” from the application’s main menu. This allows users to search for available flights. This function is one of the main motivators of the application, but it’s quite as crucial as the establishment of a secure connection or login ability so its feature is of medium priority. 3.3.2 Stimulus/Response Sequences After a user selects “Search for Flights” from the FCA Reservation application menu, the search interface opens. The application accepts an entry of the departure city, arrival city, and travel date from the user and submits this request to the FCA Servers. The FCA Server then returns a listing of available flights that meet the user’s selection. If no flights are available, the user will be provided with a listing of similar flights that depart or arrive at airports near to the desired destination. 3.3.3 Functional Requirements SF-1: a search form will be provided to the user that requests the city of departure, city of arrival, and travel dates
  • 13. Software Requirements Specification for First Class Airlines Reservations System Page 10 SF-2: a touchable button submits the data SF-3: data is validated for completeness, accurate dates, and valid cities of departure and arrival SF-4: if the data is complete and valid, the FCA Reservation application will request matching flights from the FCA database SF-5: if matching flights exist, the FCA Reservation application will display matching flights to the user SF-6: if no matching flights exist, an error will be displayed and nearby cities of departure/arrival will be presented to the user 3.3.4 Test Case 2: Search for Flights Test Name: TC2: Search for Flights Description: Display flight listing Requirement(s): Spec. 3.3, SF-1 – SF-5, UC3 Prerequisites: The FCA Reservation has been installed on a Samsung Galaxy S6 smartphone. The tester has valid login credentials. Flights must exist in the database that match the criteria that the tester will be entering. Setup: The tester will begin by opening the FCA Reservation application on a Samsung Galaxy S6 smartphone. The application interface will indicate through imagery that a secure session has been established with the server. The user will log into the application with valid login credentials, and then select “Search for Flights” from the application’s main menu. TC2: Search for Flights Step Operator Action Expected Results Observed Results Pass/ Fail Severity 1. Await search form The application displays a search form. This form provides prompts to enter a departure city and arrival city into separate text boxes and a submit button to submit search query. 2. Enter a valid city of departure, city of arrival, and travel date, then press Submit A loading symbol appears. The application sends the search query to the FCA server/database. Start time Stop time
  • 14. Software Requirements Specification for First Class Airlines Reservations System Page 11 Step Operator Action Expected Results Observed Results Pass/ Fail Severity 3. Await results A loading symbol appears. The FCA application accepts a listing of matching flights from the FCA server/database and prepares for display. 4. Observe that the list of matching flights have been returned The FCA application displays a listing of flights that match the selected city of departure, city of arrival, and travel date. 3.4 Create New Reservation 3.4.1 Description and Priority After selecting an available flight, users can create a reservation for a flight. Users will then submit their personal data to secure their seat for the flight. Because this function is a main motivation for the creation of the FCA Reservation Application, but is not as crucial as the establishment of a secure session or login, its priority is medium. 3.4.2 Stimulus/Response Sequences After an available flight is selected, the FCA Reservation application displays a reservation form. Upon submission, the FCA Reservation application submits the payment details to the Pay Processor and all other fields to the FCA Database. For entries with successful payment, a reservation will be created and confirmation will be provided to the user. For payment failures, a reservation will not be created and an error message will be displayed to the user. 3.4.3 Functional Requirements CNR-1: display a reservation form to users to enter their name, email address, and billing information CNR -2: a touchable button submits the data CNR -3: data is validated for completeness CNR -4: if data is missing, an error message is displayed CNR -5: if data is complete, the FCA Reservation application will submit the user’s name and email address to the FCA Database for storage upon selection of the submit button CNR -6: if data is complete, the FCA Reservation Application will submit payment information to the Pay Processor for processing upon selection of the submit button CNR -7: the FCA Reservation Application will display a success or failure message provided by the Pay Processor CNR -8: if the payment is successful, a confirmation message will display on- screen and be sent to the email address provided by the user CNR -9: if the payment is not successful, an error will display and up to two additional attempts will be permitted CNR-10: after three failed payment attempts the user will be prompted to call a 1- 800 number to complete their reservation
  • 15. Software Requirements Specification for First Class Airlines Reservations System Page 12 3.5 View Reservation 3.5.1 Description and Priority Users who have previously made a reservation can view their reservation details by selecting “View Reservations” from the FCA Reservation application main menu. This functionality is not core to the vision of the application as a whole so its priority is low. 3.5.2 Stimulus/Response Sequences When a user selects “View Reservations” from the FCA Reservations application, the FCA Reservation application will make a request to the FCA database for any flights on which the user has a confirmed reservation. In cases where a user has multiple confirmed reservations, an index page will first appear to allow the user to select which flight in which to view the details. For flights departing more than 72 hours in the future, an option to cancel the reservation will be provided. 3.5.3 Functional Requirements VR-1: the FCA Reservation application will request a listing of reserved flights for the user from the FCA Database VR-2: if no reserved flights exist, an error message will display VR-3: if reserved flights exist, a listing of confirmed reservations will display VR-4: when selected, a detailed view of the flight details will display VR-5: for flights departing more than 72 hours in the future, an option to cancel the flight will be provided within the flight details 3.5.4 Test Case 3: View Reservations Test Name: TC3: View Reservation Description: Display reservation details Requirement(s): Spec. 3.5, VR-1, VR-3, UC5 Prerequisites: The FCA Reservation has been installed on a Samsung Galaxy S6 smartphone. The tester has valid login credentials. The tester has previously secured a reservation and the reservation exists in the FCA database. Setup: The tester will begin by opening the FCA Reservation application on a Samsung Galaxy S6 smartphone. The application interface will indicate through imagery that a secure session has been established with the server. The user will log into the application with valid login credentials, and then select “View Flights” from the application’s main menu. TC3: View Reservation Start time Stop time
  • 16. Software Requirements Specification for First Class Airlines Reservations System Page 13 Step Operator Action Expected Results Observed Results Pass/ Fail Severity 1. Await flight listing A loading symbol appears. The application sends a request to the FCA server/database for a listing of confirmed flight reservations for the current user. 2. Await flight listing The application accepts a listing of confirmed flight reservations from the FCA server/database and displays this information to the user. 3. Select individual entry to display. A loading symbol appears. The application resends a request to the FCA server/database for the individual reservation details. 4. Await results The FCA application accepts the reservation details from the FCA server/database and displays this information to the user. 3.6 Cancel Reservation 3.6.1 Description and Priority Users who have previously made a reservation can cancel a reservation for flights scheduled to depart more than 72 hours in the future. This functionality is not core to the vision of the application as a whole so its priority is low. 3.6.2 Stimulus/Response Sequences A user who has a confirmed reservation selects “Cancel Flight”. For flights scheduled to depart within 72 hours, the user is given an error message instructing him or her to call FCA to cancel their flight. For flights scheduled to depart more than 72 hours in the future, the FCA Reservation application instructs the Pay Processor to refund the reservation fee and instructs the FCA database to update the reservation from a status of RESERVED to a status of CANCELLED. An on-screen notification and email notification are provided to the user upon successful cancellation of the reservation. 3.6.3 Functional Requirements CR-1: the FCA Reservation application will prompt the user to confirm that they would like to cancel the reservation before taking action. CR-2: for flights scheduled to depart within the next 72 hours, an error message will display to prompt the user to call a 1-800 number to cancel CR-3: for flights scheduled to depart 72 hours or more in the future, the FCA Reservation application will instruct the Pay Processor to issue a refund of the reservation fee
  • 17. Software Requirements Specification for First Class Airlines Reservations System Page 14 CR-4: for flights scheduled to depart 72 hours or more in the future, the FCA Reservation application will update the reservation status for the user from RESERVED to CANCELLED CR-5: an on-screen confirmation of refund and cancellation will be provided to the user
  • 18. Software Requirements Specification for First Class Airlines Reservations System Page 15 4. External Interface Requirements 4.1 User Interfaces The FCA application has seven main interfaces that users will view. Basic mock ups of these interfaces are provided in this section. A placeholder depicts the space in which imagery supplied by FCA will display. Figure 4.1 – Visual mockups of the seven main interfaces of the FCA Reservation application, including the Sign In page, Main Menu, Flight Search, Search Results, Reservation Form, Flight Listing, and Reservation Details
  • 19. Software Requirements Specification for First Class Airlines Reservations System Page 16 4.2 Hardware Interfaces HP ProLiant SL 4500 server Drive description (25) LFF SAS/SATA/SSD per node for two-node configuration; (2) SFF SATA/SSD per node Storage type Hot-plug LFF 3.5-inch SAS; Hot-plug LFF 3.5-inch SATA; Hot-plug LFF 3.5-inch SATA SSD; Hot-plug SFF 2.5-inch SATA SSD; Hot-plug SFF 2.5-inch SATA Cache 25 MB L3; 20 MB L3; 15 MB L3; 10 MB L3 Processor family Intel Xeon E5-2400 v2 Processor Family; Intel Xeon E5- 2400 Processor Family Processor number 1 or 2 per node Compute nodes Up to 3 Processor core available 8, 6, or 4 Processor speed 2.5 GHz Memory slots 12 DIMM slots maximum per node; (6 DIMM slots per processor) Maximum memory 192 GB per node Memory type HP Smart Memory; DDR3 Registered (RDIMM) Memory protection features Advanced ECC (multi-bit error protection), online spare, and memory lock-step mode Network controllers HP Ethernet 10 Gb 2P 544i Adapter Storage controllers HP Dynamic Smart Array B120i SATA RAID for controlling 2 SFF drives per node Expansion slots 1 Maximum; The low profile expansion slot can contain a storage controller for external attached storage (HBA or Smart Array Controller), networking options, or an HP I/O accelerator. Management HP iLO Management, HP Insight Control System fan features 5 dual fans modules, shipped standard Power supply type Up to 4 power supplies; 750W and 1200W Common Slot hot-plug redundant power supply; (Up to 94 percent efficiency). Graphic card Integrated Matrox G200 video standard; 1280 x 1024 (32 bpp); 1920 x 1200 (16 bpp) Form factor of chassis 4.3 U Samsung Galaxy S6 smartphone Type Touchscreen smartphone OS Android 5.0, Lollipop Weight 132g Product Dimensions 5.59" x 2.76" x 0.28" Internal Memory 32GB UFS 2.0 Processor Speed, Type 21 GHz, 1.5GHz; Octa-Core Storage 128GB storage, no card slot Battery Non-removable Li-Ion 2550 mAh battery Frequencies and Data Type Infra: 3G WCDMA,4G LTE FDD; 4G FDD LTE: B1(2100), B2(1900), B3(1800), B4(AWS), B5(850), B7(2600),
  • 20. Software Requirements Specification for First Class Airlines Reservations System Page 17 B12(700), B17(700), B20(800) Wi-Fi 802.11 a/b/g/n/ac 2.4g+5ghz, vht80 mimo Usb Usb 2.0 Bluetooth Bluetooth v4.1 Bluetooth Profiles A2DP, AVRCP, DI,HFP, HID, HOGP, HSP, MAP, OPP, PAN, PBAP Main Display Resolution 2560 x 1440 (Quad HD) Main Display Technology Dual Edge Super AMOLED Color Depth 16M 4.2.1.1.1 Sensor Type Accelerometer, Barometer, Fingerprint Sensor, Gyro Sensor, Geomagnetic Sensor, Hall Sensor, HR Sensor, Light Sensor, Proximity Sensor 4.3 Software Interfaces Windows Server 2016 Operating System Processor 1.4 GHz 64-bit processor RAM 512 MB Disk space requirements 32 GB Throughput Ethernet adaptor with 1 GB throughput File System ReFS Communication Server Message Block (SMB) protocol, Transmission Control Protocol/Internet Protocol (TCP/IP) protocol Memory NVDIMM-N Encryption BitLocker Oracle Database Management System Type System Dynamic, Static Architecture Relational Model Software License Proprietary Operating System Windows, Mac OS X, Linux, UNIX, z/OS Interface API, GUI, SQL Access Control Audit, Brute-force Protection, Enterprise Directory Compatibility, Native Network Encryption, Password Complexity Rules, Resource Limit, Security Certification Indexes Bitmap, Expression, Full-text, Hash, Partial, R-/R+ Tree, Reverse, Spatical Max Blob/Clob Size 128 TB Max DB Size Unlimited Max Table Size 4 GB Max Column Name Size 30 Max Row Size 8 KB
  • 21. Software Requirements Specification for First Class Airlines Reservations System Page 18 Max Columns per Row 1000 Android 5.0, Lollipop Operating System Security software version MDF v2.0 Release 6, VPN v1.4 Release 6.0 Kernel version 3.10.61 dpi@SWHD7421 #1 RAM 512 MB 4.4 Communications Interfaces The Secure Socket Layer (SSL) protocol will be hard coded into the application to provide encryption and security and prevent unauthorized access to the system. The Hypertext Transfer Protocol Secure (HTTPS) will use an SSL Digital certificate protocol to encrypt communication between the application, FCA servers, and databases. 5. Other Nonfunctional Requirements 5.1 Performance Requirements The following are the performance requirements for the FCA Reservation Application: Requirement Description System Availability The application will have no more than 4% of downtime within a given month. 12 hours of scheduled maintenance will be permitted in any given month. Unscheduled downtime and maintenance must be addressed and resolved in as little time as possible. System Response The application must take no more than 4 seconds to respond to any request and return data from the FCA database. System Responsiveness The system must display a loading indicator to signify any requests or retrievals of data between the application, the FCA servers, and the FCA databases. System Load Balancing The system must be able to support 2,500 users without degradation. The system must support 5,000 users with no more than 8% degradation. System User Session Timeout The system will recognize when a user has been idle for a period of 4 minutes. At this time, the application will close and the user will be required to reopen the application to restore a secured session and log into the system.
  • 22. Software Requirements Specification for First Class Airlines Reservations System Page 19 5.2 Safety Requirements The following are the safety requirements for the FCA Reservation Application: Requirement Description System Accessibility The application will react to the Galaxy S6 accessibility settings for font size and font style. This includes default settings and special accommodations provided by Samsung for those with visual challenges. Soft Color Scheme The application will use a color scheme that does not include high contrast colors in order to reduce eye strain. Smartphone Controls The application will not override the safety functions of the Samsung Galaxy S6 smartphone. Lost or Low Battery The application will close when the smartphone battery is depleted. This will require that the user re-open the application and restart a secure session after restoring the device’s battery. Lost or Stolen Device The application and user accounts will have the capacity to be deactivated in cases where a user’s device is lost or stolen. 5.3 Security Requirements The following are security requirements for the FCA Reservation Application: Requirement Description Data Encryption All communication will be encrypted to 129-bit standards. This protects the application, data, and the personal information of users from interception. Automatic Logout After 4 minutes of inactivity, the application will close. This will require that the user reopens the application in order to establish a secure session. Cache The application will not store personal data on the device. SSL Certification The application requires that a valid SSL certificate be maintained at all times to allow trusted and secure communication. Memory Protection The application will perform garbage collection of the session data upon closure of the application. Proactive Response A trace log will be used to capture all interactions between the FCA Reservation application and FCA servers. Suspect activity will alert the FCA administrator to take action.
  • 23. Software Requirements Specification for First Class Airlines Reservations System Page 20 5.4 Software Quality Attributes The following are software quality attributes for the FCA Reservation Application: Requirement Description Font Family The application will use the Samsung Galaxy S6 default font of Samsung Sans on all pages. Font Size Regular text will use the Samsung Galaxy S6 default of 18-point font. The font size will increase to 24-point font for all headers and decrease to 12-point font for support information and footers. Branding The application will use the FCA color scheme of blue and white. Images The FCA logo and a secure connection image will be present on all screens with the exception of the loading screen. Usability The application will score no less than 7 on ease of use during usability tests. Help Icon Each page of the application will display a help icon in the upper right corner. This icon appears as a question mark nested inside of a circle. Updates Each update to the application will include versioning for troubleshooting and traceability purposes. The version number can be found on the About Page of the application. Reusability The application will be developed using Object Oriented programming. This platform allows for design features to be reused. 6. Agile Development Methodology 6.1 What is Agile Development Methodology Agile Software Development Methodology is a modern style of software development that places a strong emphasis on customer satisfaction through a continuous delivery of functional software. This methodology is a culmination of a number of positive aspects of methodologies in use in the 1990’s and formally became recognized as a software methodology in 2001. There are 12 principles that form the basis of Agile Development. They are:  Customer Satisfaction through continuous delivery of software.  Openness to changing requirements, even late in development.  Deliverance of working software with a preference to shorter timescales.  Collaboration between business people and developers.  Building projects around motivated individuals, providing the environment and support to get the job done.  Efficiency in conveying information to and within a development team through face-to-face conversation.  Use of working software as the primary measure of progress.  Promotion of sustainable development.  Continuous attention to technical excellence and good design.  Maximizing the amount of work done through simplicity.  Use of self –organized teams to provide the best architectures, designs, and requirements.
  • 24. Software Requirements Specification for First Class Airlines Reservations System Page 21  Regular reflection on effectiveness, fine tuning, and adjustment. 6.2 Why use Agile Development for the First Class Airlines Reservation Application The use of Agile Development within the creation of the First Class Airlines Reservation system presents a number of benefits to First Class Airlines  More active involvement and higher priority.  Regular and frequent status updates.  Requirements acceptance is performed with each step.  Rapid delivery with key functionalities available for use sooner.  Guaranteed delivery of project functionality within specified time periods.  More testing is done, which results in a higher quality of software. 6.3 Agile Practices to Employ The following are the key features of Agile Development that will be used to benefit the creation of the First Class Airlines Reservation Application:  Begin with an elicitation kick-off meeting  Understand and prioritize software requirements  Estimate the complexity of requirements  Design using diagrams  Use Test Driven Development (TDD) with emphasis on “test-writing first and then writing code to pass the test”  Develop the code  Test the code using continuous integration  Alter code based on usability and stakeholder feedback
  • 25. Software Requirements Specification for First Class Airlines Reservations System Page 22 Appendix A: Glossary Terms and acronyms which may not be familiar to all readers are provided in this section. Definitions provided are limited to their scope within this document. All terms are listed in alphabetical order for easy reference. Term Definition Agile Development A modern style of software development with an emphasis on customer satisfaction through continuous delivery of functional software. ARS – Airline Reservation System An application that allows users to search for available flights, make a reservation, view reservations, and cancel reservations. FCA – First Class Airlines The company for which the FCA Reservation application is being developed. OS – Operating System The software that supports the basic functions of the device on which it is installed, including executing applications and controlling peripherals PCI – Payment Card Industry A proprietary information security standard for organizations that handle credit cards from major companies including Visa, MasterCard, Discover, and American Express PDF – Portable Document Format A file format that provides an electronic image of text and/or text and graphics that can be viewed, printed, and electronically transmitted RTM – Requirements Traceability Matrix A table used for tracking the requirements of the FCA Reservation application SMB – Server Message Block A network file sharing protocol that allows applications on a computer to read and write to files and to request services from server programs in a computer network SRS – Software Requirements Specification A description of software to be developed TCP/IP – Transmission Control Protocol/Internet A set of networking protocols that allows two or more computers to communicate TDD – Test Driven Development An agile development feature that emphasizes test-writing first, followed by development of code designed to pass the test UAT – User Acceptance Testing The final phase of the software testing process where the software is stressed to ensure that it can handle required tasks in real-world scenarios according to specifications
  • 26. Software Requirements Specification for First Class Airlines Reservations System Page 23 Appendix B: Analysis Models UC-1: Secure Connection Use Case ID: UC-1 Use Case Name: Secure Session Created By: Deborah Lewis Last Updated By: Deborah Lewis Date Created: 10/16/2016 Date Last Updated: 10/16/2016 Actors: FCA Application, FCA Server Description: Because sensitive information and personal data is exchanged between passengers and the application, the information contained within each session must remain protected and confidential. FCA is responsible for safeguarding the data transferred by the FCA Reservation System application. It is crucial that the FCA Reservation System application keep this data encrypted and safeguarded from those with nefarious or malicious intent. Trigger: The user opens the FCA Reservation application by touching the application icon on their Samsung Galaxy S6 smartphone. This launches the application interface and automatically begins securing a connection to the FCA servers Preconditions: 1. The application must be installed on the Samsung Galaxy S6 smartphone. 2. The icon to open the application must be selected by the user. Post conditions: 1. A secure session is established between the FCA Reservation application and the FCA Servers. 2. An icon appears to let the user know that a secure session has been established. 3. The FCA Reservation application prompts the user for a username and password. Normal Flow: 1. The FCA Reservation application requests an HTTPS session from the FCA Server. 2. SSL certification is exchanged. 3. SSL Handshake is created.
  • 27. Software Requirements Specification for First Class Airlines Reservations System Page 24 4. An icon appears to indicate that a secure session is established 5. The FCA Reservation application displays a prompt for the user to enter a username and password. Alternative Flows: 1. A secure session could not be established so the session closes. 2. The application has been open for more than 5 minutes with no activity so the application displays an error message and closes the application. Exceptions: None Includes: Request from FCA Reservation application to FCA Server to establish a secure session. Priority: Highest Frequency of Use: Every time the application launches. Business Rules: A secure session is to monitor activity and remain open throughout the entire session. If a certificate cannot be verified the session will not be created. Special Requirements: After 90 seconds, a timeout will occur if no secure session could be established Assumptions: FCA is responsible for ensuring that certificates exist and that they are current. Notes and Issues: Must determine whether to provide password reset functionality in app or require users to call into FCA Customer Support to reset credentials.
  • 28. Software Requirements Specification for First Class Airlines Reservations System Page 25 UC-2: Login Use Case ID: UC-2 Use Case Name: Login Created By: Deborah Lewis Last Updated By: Deborah Lewis Date Created: 10/16/2016 Date Last Updated: 10/16/2016 Actors: Passenger, FCA Server Description: Authentication of the passenger using the application. Trigger: The user has opened the FCA Reservation application and a secure session has been successfully established. Preconditions: 1. A username and password have been established for use with the FCA Reservation system. 2. A secure connection has been established. Post conditions: 1. A menu page opens to allow user to interact with other areas of the application if login is successful. 2. An error message displays if credentials could not be validated. 3. After 3 failed login attempts, the account is locked and password reset instructions are displayed. Normal Flow: 1. After a secure connection is established, the application displays the login page where the user is asked to enter a username and password. 2. The user enters a valid username and password. 3. The user selects “Login”, which triggers the FCA Reservation application to request that the FCA Server authenticates the login credentials. 4. The FCA Server affirms successful entry of login credentials. 5. The application displays a menu page to allow user to interact with other areas of the application. Alternative Flows: 1. The user enters invalid login credentials. 2. An error message is displayed. 3. User is given two more attempts to enter valid login credentials 4. After three failed attempts, the account is locked and password reset instructions are displayed. Exceptions: A system administrator may override user credentials to access accounts for maintenance purposes.
  • 29. Software Requirements Specification for First Class Airlines Reservations System Page 26 Includes: Look-up routine Priority: Highest Frequency of Use: Every time the application launches. Business Rules: 1. Usernames are alphanumeric strings of 6-30 characters. 2. Passwords are strings of 6-30 characters and include at least one capital letter and one special character. Special Requirements: Mask the password when entered. Assumptions: FCA is responsible for the interface used for username and password maintenance. Notes and Issues: For protection from username enumeration vulnerability, when login fails, do not confirm that the username exists. For all failures, display “Invalid credentials” or similar message. UC-3: Search for Flights Use Case ID: UC-3 Use Case Name: Search for Flights Created By: Deborah Lewis Last Updated By: Deborah Lewis Date Created: 10/16/2016 Date Last Updated: 10/16/2016 Actors: Passenger, FCA Database Description: The passenger searches for available flights. Trigger: The passenger has successfully logged into the FCA Reservation application and selected the menu option to search for available flights. Preconditions: 1. A secure connection has been established. 2. Login credentials have been successfully validated. 3. The user selects the menu option to search for available flights. Post conditions: 1. A listing of available flights is displayed. Normal Flow: 1. The user selects the menu option to search for available flights. 2. The user enters their city of departure and city of arrival. 3. A listing of available flights is displayed.
  • 30. Software Requirements Specification for First Class Airlines Reservations System Page 27 Alternative Flows: 1. The user selects the menu option to search for available flights. 2. The user enters their city of departure and city of arrival. 3. No flights are available. 4. An error message appears. 5. User is prompted to either start a new search or search for nearby airports. Exceptions: None Includes: Look-up routine. Priority: Medium Frequency of Use: Each time the menu option to search for flights is selected by a user. Business Rules: 1. A city of departure and city of arrival must be entered by the user. 2. A travel date must be entered by the user. Special Requirements: Provide a prompt for user to “search nearby airports” only if no results are found for original query. Assumptions: FCA will maintain a current and accurate database of available flights. Notes and Issues: UC-4: Create New Reservation Use Case ID: UC-4 Use Case Name: Create Reservation Created By: Deborah Lewis Last Updated By: Deborah Lewis Date Created: 10/16/2016 Date Last Updated: 10/16/2016 Actors: Passenger, FCA Database, Payment Processor Description: After finding an available flight, a user creates a reservation to secure their spot on the desired flight. Trigger: The user selects “Choose Flight” from a listing of available flights.
  • 31. Software Requirements Specification for First Class Airlines Reservations System Page 28 Preconditions: 1. A user is logged in within a secure session. 2. The user has searched for and found an available flight. 3. The user selects “Choose Flight” from a listing of available flights. Post conditions: 1. A reservation has been successfully created. 2. The application returns to the main menu. Normal Flow: 1. The user selects “Choose Flight” from a listing of available flights. 2. The user is prompted to complete a form to secure a reservation for their selected flight. 3. User data contained within the FCA Database is automatically filled into the form. 4. The user submits the form with valid data. 5. They payment processor approves payment for the flight. 6. An on-screen confirmation appears. 7. An email notification and receipt are sent to the user. Alternative Flows: 1. The payment is declined. 2. An error message is displayed. 3. User is returned to reservation form and asked to enter a new card number. 4. After 3 failed attempts in a 24 hour timeframe, the user is locked out from further attempts and must call FCA to reserve by phone. Exceptions: A dummy card number of 4111 1111 1111 1111 will allow administrators to create a fake reservation for testing purposes. Includes: Look-up process Priority: Medium Frequency of Use: Any time an available flight is selected. Business Rules: 1. All flights must be paid in full for the reservation to be successfully created. Special Requirements: To avoid double booking in cases where multiple users are reserving seats for the same flight, when “Choose Flight” is selected, the seat will be temporarily reserved until the secure session is terminated or until a permanent reservation is completed through the normal flight reservation process. Assumptions: FCA will supply the Reservation Form and data to be requested. FCA will maintain a current Payment Card Industry (PCI) compliance certificate. Notes and Issues: 1. In cases where payment is declined and the user is returned to the reservation form, preserve data from all fields except the credit card type, number, expiration date, and security code. 2. Mask the credit card security code for security purposes.
  • 32. Software Requirements Specification for First Class Airlines Reservations System Page 29 UC-5: View Reservation Use Case ID: UC-5 Use Case Name: View Reservation Created By: Deborah Lewis Last Updated By: Deborah Lewis Date Created: 10/16/2016 Date Last Updated: 10/16/2016 Actors: Passenger, FCA Database Description: Passengers can view a listing of all upcoming flights for which they have reservations. Trigger: 1. The user selects “View Upcoming Flights” from a list of menu options. Preconditions: 1. The user is logged in and has an active secure session. 2. The user has a confirmed flight reservation. 3. The user selects “View Upcoming Flights” from a list of menu options in the FCA Reservation application. Post conditions: 1. The user views their flight details. Normal Flow: 1. The user selects “View Upcoming Flights” from the FCA Reservation application’s main menu. 2. The application requests flight details from the FCA Servers. 3. The FCA Servers return a listing of upcoming flights for which the user is reserved. 4. Details related to the flight are displayed. Alternative Flows: 1. The user selects “View Upcoming Flights” from the FCA Reservation application’s main menu. 2. The application requests flight details from the FCA Servers. 3. FCA Servers do not return upcoming flight details because no prior reservations have been made by the user. 4. An error message appears. 5. User is returned to the FCA Reservation application main menu. Exceptions: None Includes: Look-up process. Priority: Low Frequency of Use: Any time “View Upcoming Flights” is selected from the FCA
  • 33. Software Requirements Specification for First Class Airlines Reservations System Page 30 Reservation application’s main menu Business Rules: If a flight has been cancelled, the flight details should still be available to the user along with a notation that the flight is no longer scheduled. Special Requirements: None Assumptions: The user has previously reserved a seat on an available flight with FCA. FCA Servers will provide flight details for display. Notes and Issues: When multiple flights are scheduled, display an index page to allow users to select the flight for which they would like to view details.
  • 34. Software Requirements Specification for First Class Airlines Reservations System Page 31 UC-6: Cancel Reservation Use Case ID: UC-6 Use Case Name: Cancel Reservation Created By: Deborah Lewis Last Updated By: Deborah Lewis Date Created: 10/16/2016 Date Last Updated: 10/16/2016 Actors: Passenger, FCA Database, Pay Processor Description: A passenger cancels their reservation for a flight that is scheduled for 72 hours or more in the future. Trigger: The passenger selects “Cancel Reservation” from the “View Upcoming Flights” screen. Preconditions: 1. The user is logged in with a secure session. 2. The user selected “View Upcoming Flights”. 3. The user selected “Cancel Flight” for an upcoming flight. Post conditions: 1. The user’s reservation is cancelled. 2. Payment for the flight is refunded by the pay processor. 3. An on-screen confirmation appears. 4. An emailed refund receipt is sent. 5. User returns to FCA Reservations main menu. Normal Flow: 1. The user selects “Cancel Flight” for a reservation that is scheduled for 72 hours or more in the future. 2. The user confirms their cancellation. 3. FCA Reservations application requests that the FCA Database removes the passenger from its flight list. 4. The FCA Database confirms successful removal. 5. The Pay Processor refunds the payment. 6. An on-screen confirmation message appears. 7. An emailed refund receipt is sent. 8. The user returns to the FCA Reservation application main menu. Alternative Flows: 1. The user selects “Cancel Flight” for a reservation that is within 72 hours of the current date/time.
  • 35. Software Requirements Specification for First Class Airlines Reservations System Page 32 2. An error message appears to instruct user to call FCA to cancel their reservation. Exceptions: None. Includes: Look-up process Priority: Low Frequency of Use: Any time “Cancel Flight” is selected from the “View Upcoming Flights” page. Business Rules: If the flight is scheduled for departure within the next 72 hours, customers must call FCA to cancel their reservation and a refund may not be permitted. Special Requirements: Flights cannot be cancelled through the FCA Reservations application if they are scheduled for departure within 72 hours of the current time. Assumptions: The user has a reservation. Notes and Issues: None. Appendix C: Traceability Matrix The Requirements Traceability Matrix (RTM) tracks system features throughout the software validation process. It ensures that each of the requirements defined for the First Class Airlines Reservation application are included and tested for full functionality. System Features Requirement Description Use Case Specific Requirement Test Case SF-3.1 Secure Session UC-1, UC-2, UC- 3, UC-4, UC-5, UC-6 SS-1, SS-2, SS- 3, SS-4 SF -3.2 Login UC-2, UC-3, UC- 4, UC-5, UC-6 LI-1, LI-2, LI-3, LI-4, LI-5, LI-6, LI-7, LI-8 TC1: LI-1—LI-6 SF -3.3 Search for Flights UC-3, UC-4 SF-1, SF-2, SF-3, SF-4, SF-5, SF-6 TC2: SF-1—SF-5 SF -3.4 Create Reservation UC-4 CNR -1, CNR -2, CNR -3, CNR -4, CNR -5, CNR -6, CNR -7, CNR -8, CNR -9, CNR -10 SF -3.5 View Reservation UC-5, UC-6 VR-1, VR-2, VR- 3, VR-4, VR-5 TC3: VR-1—VR- 3 SF -3.6 Cancel Reservation UC-6 CR-1, CR-2, CR- 3, CR-4, CR-5