p.p1 font: 25.7px Avenir; color: #000000; -webkit-text-stroke: #000000;

p.p1 {margin: 0.0px 0.0px 0.0px 0.0px; text-align: justify; font: 25.7px Avenir; color: #000000; -webkit-text-stroke: #000000; background-color: #ffffff}
p.p2 {margin: 0.0px 0.0px 0.0px 0.0px; text-align: justify; font: 18.0px ‘Helvetica Neue’; color: #000000; -webkit-text-stroke: #000000; background-color: #ffffff; min-height: 23.0px}
p.p3 {margin: 0.0px 0.0px 0.0px 0.0px; text-align: justify; font: 18.0px ‘Helvetica Neue’; color: #000000; -webkit-text-stroke: #000000; background-color: #ffffff}
p.p4 {margin: 0.0px 0.0px 0.0px 0.0px; text-align: justify; font: 16.0px ‘Helvetica Neue’; color: #000000; -webkit-text-stroke: #000000; background-color: #ffffff}
p.p5 {margin: 0.0px 0.0px 0.0px 0.0px; text-align: justify; font: 12.0px Arial; color: #000000; -webkit-text-stroke: #000000; background-color: #ffffff}
p.p6 {margin: 0.0px 0.0px 0.0px 48.0px; text-align: justify; font: 12.0px Arial; color: #000000; -webkit-text-stroke: #000000; background-color: #ffffff; min-height: 14.0px}
p.p7 {margin: 0.0px 0.0px 0.0px 0.0px; text-align: justify; font: 16.0px ‘Helvetica Neue’; color: #000000; -webkit-text-stroke: #000000}
p.p8 {margin: 0.0px 0.0px 0.0px 0.0px; text-align: justify; font: 12.0px Arial; color: #000000; -webkit-text-stroke: #000000}
p.p9 {margin: 0.0px 0.0px 0.0px 0.0px; text-align: justify; font: 12.0px Arial; color: #000000; -webkit-text-stroke: #000000; background-color: #ffffff; min-height: 14.0px}
p.p10 {margin: 0.0px 0.0px 0.0px 0.0px; font: 10.0px ‘Helvetica Neue’; color: #ffffff; -webkit-text-stroke: #ffffff}
p.p11 {margin: 0.0px 0.0px 0.0px 0.0px; font: 10.0px ‘Helvetica Neue’; color: #000000; -webkit-text-stroke: #000000}
p.p12 {margin: 0.0px 0.0px 0.0px 0.0px; text-align: justify; font: 12.0px Arial; color: #000000; -webkit-text-stroke: #000000; min-height: 14.0px}
p.p13 {margin: 0.0px 0.0px 0.0px 0.0px; text-align: justify; font: 18.0px ‘Helvetica Neue’; color: #000000; -webkit-text-stroke: #000000}
p.p14 {margin: 0.0px 0.0px 0.0px 0.0px; font: 18.0px ‘Helvetica Neue’; color: #000000; -webkit-text-stroke: #000000}
p.p15 {margin: 0.0px 0.0px 0.0px 0.0px; font: 16.0px ‘Helvetica Neue’; color: #000000; -webkit-text-stroke: #000000}
p.p16 {margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px Arial; color: #000000; -webkit-text-stroke: #000000}
p.p17 {margin: 0.0px 0.0px 0.0px 0.0px; text-align: justify; font: 14.0px Arial; color: #000000; -webkit-text-stroke: #000000}
p.p18 {margin: 0.0px 0.0px 0.0px 0.0px; text-align: justify; font: 14.0px Arial; color: #000000; -webkit-text-stroke: #000000; background-color: #ffffff}
p.p19 {margin: 0.0px 0.0px 0.0px 0.0px; font: 16.0px ‘Helvetica Neue’; color: #000000; -webkit-text-stroke: #000000; background-color: #ffffff}
p.p20 {margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px Arial; color: #000000; -webkit-text-stroke: #000000; background-color: #ffffff; min-height: 14.0px}
p.p21 {margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px Arial; color: #000000; -webkit-text-stroke: #000000; min-height: 14.0px}
p.p22 {margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px Arial; color: #000000; -webkit-text-stroke: #000000; background-color: #ffffff}
p.p23 {margin: 0.0px 0.0px 0.0px 0.0px; text-align: justify; font: 12.0px Times; color: #000000; -webkit-text-stroke: #000000; background-color: #ffffff; min-height: 14.0px}
p.p24 {margin: 0.0px 0.0px 0.0px 0.0px; font: 18.0px ‘Helvetica Neue’; color: #000000; -webkit-text-stroke: #000000; background-color: #ffffff}
p.p25 {margin: 0.0px 0.0px 6.0px 12.0px; font: 12.0px ‘Helvetica Neue’; color: #000000; -webkit-text-stroke: #000000}
p.p26 {margin: 0.0px 0.0px 6.0px 12.0px; text-indent: 14.1px; font: 12.0px ‘Helvetica Neue’; color: #000000; -webkit-text-stroke: #000000}
p.p27 {margin: 0.0px 0.0px 0.0px 0.0px; font: 16.0px Arial; color: #000000; -webkit-text-stroke: #000000; background-color: #ffffff}
li.li8 {margin: 0.0px 0.0px 0.0px 0.0px; text-align: justify; font: 12.0px Arial; color: #000000; -webkit-text-stroke: #000000}
li.li16 {margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px Arial; color: #000000; -webkit-text-stroke: #000000}
span.s1 {font-kerning: none}
span.s2 {font-kerning: none; background-color: #ffffff}
span.s3 {text-decoration: underline ; font-kerning: none}
span.Apple-tab-span {white-space:pre}
table.t1 {border-collapse: collapse}
td.td1 {width: 89.0px; height: 13.0px; background-color: #004d80; border-style: solid; border-width: 1.0px 1.0px 1.0px 1.0px; border-color: #000000 #000000 #000000 #000000; padding: 4.0px 4.0px 4.0px 4.0px}
td.td2 {width: 375.0px; height: 13.0px; background-color: #004d80; border-style: solid; border-width: 1.0px 1.0px 1.0px 1.0px; border-color: #000000 #000000 #000000 #000000; padding: 4.0px 4.0px 4.0px 4.0px}
td.td3 {width: 89.0px; height: 13.0px; background-color: #ffffff; border-style: solid; border-width: 1.0px 1.0px 1.0px 1.0px; border-color: #000000 #000000 #000000 #000000; padding: 4.0px 4.0px 4.0px 4.0px}
td.td4 {width: 375.0px; height: 13.0px; background-color: #ffffff; border-style: solid; border-width: 1.0px 1.0px 1.0px 1.0px; border-color: #000000 #000000 #000000 #000000; padding: 4.0px 4.0px 4.0px 4.0px}
td.td5 {width: 89.0px; height: 13.0px; background-color: #e7e7e7; border-style: solid; border-width: 1.0px 1.0px 1.0px 1.0px; border-color: #000000 #000000 #000000 #000000; padding: 4.0px 4.0px 4.0px 4.0px}
td.td6 {width: 375.0px; height: 13.0px; background-color: #e7e7e7; border-style: solid; border-width: 1.0px 1.0px 1.0px 1.0px; border-color: #000000 #000000 #000000 #000000; padding: 4.0px 4.0px 4.0px 4.0px}
td.td7 {width: 89.0px; height: 23.0px; background-color: #e7e7e7; border-style: solid; border-width: 1.0px 1.0px 1.0px 1.0px; border-color: #000000 #000000 #000000 #000000; padding: 4.0px 4.0px 4.0px 4.0px}
td.td8 {width: 375.0px; height: 23.0px; background-color: #e7e7e7; border-style: solid; border-width: 1.0px 1.0px 1.0px 1.0px; border-color: #000000 #000000 #000000 #000000; padding: 4.0px 4.0px 4.0px 4.0px}
ol.ol1 {list-style-type: lower-roman}
ol.ol2 {list-style-type: decimal}
ul.ul1 {list-style-type: disc}

1. Introduction 
1.1 Purpose of the system
The purpose of this Software Requirement Specification (SRS) is to describe the requirements involved in developing an Airline Reservation System (ARS). It defines the functional and nonfunctional requirements of the airline website and its different functionalities. Its intended audience is for users who wish to perform tasks related to booking an airline flight.

We Will Write a Custom Essay Specifically
For You For Only $13.90/page!


order now

1.2 Scope of the system 
The “XMUM Airlines” is a website that allows users to perform tasks related to booking an airline flight. If the user does not have an account, they are only allowed to search for flight information. The user must be logged into their account in order to book a flight, reserve a seat, check in, cancel a flight and to edit their member information.

1.3 Definitions, acronyms, and abbreviations 

Terms

Definitions

SRS

Software Requirements Specification

ARS

Airline Reservation System

GUI

Graphical User Interface

UI

User Interface

User

Someone who interacts with the website

Administrator

System administrator who is given specific permission for managing and controlling the system

1.4 References 
1 IEEE Software Engineering Standards Committee, “IEEE Std 830-1998, IEEE Recommended Practice for Software Requirements Specifications”, October 20, 1998

1.5 Overview 
The rest of this SRS document contains three other chapters. The second chapter provides the overall description of the ARS. It describes the product perspective and each of the product functions. It also mentions the user characteristics, system constraints, and assumptions about the product. 

The third chapter provides the requirements specification in detailed terms and a description of the different system interfaces. It also discusses the design constraints and software system attributes. 

The last chapter gives additional information for the document. The Appendixes in the end of the document include the results of a survey conducted to understand customer requirements of an ARS website. 

2. Overall description 
2.1 Product perspective 
This project represents the initial version of the Airline Booking system. All requirements listed herein describe a self-contained system. At a high level, this project will allow a user to book flights, check flights, edit account information, and query flight information. The goal is to allow customers greater and easier access to the airline’s booking system, twenty-four hours a day.

2.2 Product functions 

Sign Up: This function allows unregistered users to create a new account with the website. In order to create a new account, the user has to provide required information such as their full name, email address, phone number, and password. The system checks if all required data are provided and then will prompt the user to enter additional information, if required. 
Login: This function allows a registered user to login to his account using email and password. If a user is not registered, the website shall allow the user to sign up first. The system will check both the email and password to see if it is already an existing account when a user attempts to login. If not existing, they will ask the user to try again or sign up for a new account.
Book Flights: A user who has logged in can use the Book Flights function to purchase seats for an airplane flight. The user can select if they want a one-way ticket or return ticket. The user can select Business class or Economy class. He can select his departure and arrival location, and select the dates of the flights. The system will bring the user to the next page which shows information on all flights to the location on the selected dates. It will show the date and time of departure, estimated travel time, arrival time, flight number, remaining available seats, and price of each flight. Finally, the system shall guide the user completely through the checkout process (See 2.2.4).  
Make Payment: After a user has booked a flight, the system will bring the user to the payment page. The user can choose between Credit Card or Online Banking. The user can also trade in his accumulated points for discounts. 
Reserve Seats: After the user has confirmed his booking and paid, he is able to reserve seats for his flights. This function is available immediately after booking until 45 minutes before the flight. The system shall display the available seats for the departing and returning flights booked by the user. The user can then select his preferred seat (window seat, aisle seat, front seat, etc.) for each flight. Once the user has selected a seat, he can confirm the selection. From that point, the seats are removed from available seats and the user’s booking shall be linked to his selected seat. If the user does not select a seat, he will be randomly assigned one of the remaining unreserved seats 45 minutes prior to takeoff. 
Flight Info: This section shall allow the user to view flight information that matches input criteria. The user does not need to be logged in to use this function. The user will provide either (a) A flight number and Date; or (b) Departing/Arriving Cities and Date. The system will then display matching results with the following fields: Flight Number, Departure City, Arrival City, Status (In Flight, At the Gate, Delayed, On Time) and Gate Number.
My Account: This function gives the user the ability to view, edit or delete his personal information stored in his account. The user can also check his accumulated points. This section will show the user’s upcoming flights and allows the user to cancel their flights. 
Logout: Lastly, the user is able to log out whenever he ends a session, so that no one else will be able to access his data.

2.3 User characteristics 
In general, anyone can use the finished website regardless of their education level or technical expertise. However, it is expected that all users have some sort of computer literacy in order to use the website.

2.4 Constraints 

The website fetches data from the database over the Internet, therefore an internet connection is necessary for the website to function. 
The website is based completely on Windows functionality platform.

2.5 Assumptions and dependencies 

One assumption is that the user is using a widely used web browser, such as Google Chrome or Mozilla Firefox, on either a computer, mobile phone, or tablet. This website might not appear as intended on less popular browsers. 
It is assumed that the user already has an email account before signing up, and that he has some computer literacy in order to navigate the website. 
The user must be using an operating system of Windows XP/2000 or later. 

3. Specific requirements 
3.1 External interfaces 
There are three different types of interfaces when developing the Airline Reservation System website. They are the User Interface, Hardware Interface and Software Interface.

i. User Interface:
The UI of the website is simple, user friendly and very interactive. It should be structured in a way that even for first-time users, they are able to navigate the website easily. 

ii. Software Interface

Operating System: We have chosen Windows operating system for its best support and user-friendliness.
Database: To save the flight records, passengers records we have chosen SQL+ database
HTML & Javascript: We choose to use basic

iii. Hardware Interface

Keyboard: to input data such as username & password.
Printer: to print flight itinerary, invoice, & boarding pass. 

3.2 Functions
The functional requirements of the Airline Reservation System can be explained in detail as follows: 

i. Member sign up and login:

The system shall allow new user/non-member to sign up.
The system shall receive email and password input by user and proceed login.
The system shall prompt the user to re-enter the email and password, if the information is mismatched.

ii. Flight info:

The system shall check the validity of the information input by user. For example, check for invalid date, departure flight after return flight.
The system shall auto save the information input by user, such as flight date, destination.  
The system shall warn the user while invalid input is detected, and highlight the column which the user have to re-input. 
The system shall allow user to check flight details without having login.

iii. Flight booking and cancelling

The system shall require the non-registered user to sign up to do further operations, such as book flight and cancel flight.
The system shall allow user to book flight after logging in.
The system shall require the user to complete the payment before confirming the booking.
The system shall allow the user to cancel booking after the booking is confirmed.

3.3 Performance Requirements

Response time of the ARS should be less than 2 seconds most of the time. Response time refers to the waiting time while the system accesses, queries and retrieves the information from the databases.
ARS shall be able to handle at least 1000 transactions/inquiries per second.
ARS shall show no visible deterioration in response time as the number of users or flight schedule data increases
ARS shall be available 24 hours a day, 7 days a week
ARS shall always provide real time information about flight availability information.

3.4 Logical database requirements

The system requires the use of text files to maintain the customers personal details and his booking details. 
An entity must be used to specify the various departments and the seats available in them. 
This information will be used frequently by the authorities for verification.

3.5 Design constraints 

ARS shall provide an easy-to-use GUI similar to other existing reservation system so that the users do not have to learn a new style of interaction.
The web interface should be easily navigable. Users should be able to understand the menu and options provided by ARS.
Any notification or error messages generated by ARS shall be easily understood and free of jargon.

3.6 Software system attributes 
3.6.1 Reliability
The factors needed to establish the software expected reliability are:
The inputs of the users should be logical and within range. The termination of the program should be normal.

3.6.2 Availability
System availability would be affected by some factors :
Suitable input
Correct system termination
Checkpoint
Recovery
Restart

3.6.3 Security
Some factors will protect the system from malicious and anonymous access that will bring harm or destruction to the system :
The access and use of the features of website should be authorised by using user ID and password.
The use of firewall will ensure the network security.
Checking should be worked regularly to protect the data.

3.6.4 Maintainability
The system developed should have the concept of easing the maintenance of the system. The administrator should have enough knowledge of maintenance and further enhancements of the system.

3.6.5 Portability
The software must be available and suitable to run on different devices and operating systems, such as Windows and MacOS.

3.7 Organising the specific requirements
This SRS document section 3 is organised by feature.

4. Supporting Information
4.1 Table of contents 
1. Introduction 
1.1 Purpose of the system 1
1.2 Scope of the system 1
1.3 Definitions, acronyms, and abbreviations 1
1.4 References 1
1.5 Overview 2
2. Overall description 
2.1 Product perspective 2
2.2 Product functions 2
2.3 User characteristics 4
2.4 Constraints 4
2.5 Assumptions and dependencies 4
3. Specific requirements 
3.1 External interfaces 4
3.2 Functions 5
3.3 Performance Requirements 6
3.4 Logical database requirements 6
3.5 Design constraints 6
3.6 Software system attributes 6
3.7 Organising the specific requirements 7
4. Supporting Information
4.1 Table of contents 7
4.2 Index 8
4.3 Appendixes 9

4.2 Index 
The index is written in the lower right corner of every page.

4.3 Appendixes
4.3.1. Use Case Diagram of Product Functions 

4.3.2. Survey of Customer Requirements for Flight Booking Website
 

  
 

4.3.3. Website Prototype  
   

 

x

Hi!
I'm Isaac!

Would you like to get a custom essay? How about receiving a customized one?

Check it out