Airline Ticket Reservation System Specs
Airline Ticket Reservation System Specs
Specification
for
1
4.1.4 Communication Interfaces…………………………….. 26
4.2 Functional Requirements…………………………………….. 26
4.3 Software System attributes…..………………………………. 27
4.4 Nonfunctional Requirements………………………………… 28
4.4.1 Performance Requirements…………………..………… 28
4.4.2 Reliability Requirements………………………………… 28
4.4.3 Security Requirements...……………………………….. 28
4.4.4 Maintainability Requirements………………………….. 28
4.4.5 Portability Requirements……………………………….. 28
4.4.6 Safety Requirements……………………………………. 28
4.4.7 Other Requirements…………………………………….. 29
4.5 Solution-oriented Requirements…………………………….... 29
4.5.1 Class diagram requirements…………………………… 29
4.5.2 State diagram requirements…………………………….. 29
4.5.3 Sequence diagram requirements……………………….. 29
4.6 System Features……………………………………………….. 30
4.7 Requirements Prioritization……………………………………. 31
4.7.1 MoSCoW Method………………………………………… 31
4.7.2 Prioritization According to Cost………………………… 32
4.7.3 Prioritization According to Value………………………. 33
4.7.4 Plot ROI Graph.…………………………………………… 35
4.7.5 Hierarchical Prioritization.……………………………….. 36
4.8 Requirements Traceability…………………………………….. 37
4.8.1 Traceability Matrix……………………………………….. 38
4.8.2 Traceability Model……………………………………….. 38
5 Prototype ……………………………………………………….. 40
Appendix A: Glossary……………………………………………….. 41
2
Document Version Control:
Team 03.12.2018 Scope of the main problem is defined, class V3.0 V2.1
6 diagram, state models, solution-oriented
requirements are extracted and documented
by being grouped into system features,
traceability model is upgraded
3
Requirements Version Control:
4
Introduction
1.1 Purpose
This document lists the requirement specifications for an Airline Ticket Reservation System
(ATRS). The document is subject the change as the project progresses. The given version of the
document is the initial one. Further changes of the project will be recorded to the document.
1.6 Overview
The remaining part of the specification document is organized as follows.
5
● Section 2 defines overall description of the system which defines product perspectives
and functions, use-case diagrams, classes and characteristics of involved users, the
environment that the system is going to be deployed, constraints on design and
implementation of the system, user documentation, assumptions and dependencies.
● Section 3 focuses on requirements and goal modelling. Strategic dependency model,
model of software-intensive system, goal and agent responsibility model are used to
model goals, while class diagram, state models and sequence diagram are constructed to
model requirements.
● Section 4 contains all the specific requirements such as functional requirements,
performance requirements and external interface requirements, which in turn includes
user, software, hardware and communication interface requirements. Attributes of the
software system and nonfunctional requirements are also specified in this section.
Solution-oriented requirements extracted from requirements modelling part are
documented in this section.
Prioritization and traceability of requirements are also included in Section 4.
6
2. Overall Description
2.1 Product Perspective
ATRS is the digitized version of the traditional manual reservation system at the airline office.
Existing manual system requires every customer to come to the airline office in order to make a
booking. Apart from the fact that not all customers have time to come to the office, existing
system also causes long queues at the office. Some customers get bored from waiting in the
queue and airline loses its potential customers.
In addition to that, a hard copy of the passport is required during the reservation at office.
Customers who are not able to present their passports at the office for whatever reason cannot
make reservations.
The new system aims to overcome the above-mentioned drawbacks of the existing system. It will
allow users to make reservations according their needs from different parts of the world without
leaving their places. Furthermore, it will reduce the workload of the employees who are
responsible to make reservations at the office.
The system allows customers to check the availability of flights for specific dates and routes, get
information about durations of available flights. It also allows customers to check the prices and
the things that are included in the ticket such as baggage allowance, meal and etc. and booking
the ticket. Administrator can modify, remove existing flights, also add new flights to the system.
Furthermore, administrator can see customer requests about cancellation of bookings, and decide
whether to accept and reject them.
7
2.2.4 Book flights
Description: This function allows customer to book flights by choosing ticket types and
processing online payment.
8
responsible for maintenance of the system, ensuring the security of the system (by creating
predefined users and maintaining AAS), safety of the system (by restoring and recovering data
and assuring data integrity) and reliability of the system (by maintaining SLA).
9
Use Case ID: 01
Actor: Customer
Frequency of Use: 1
Postconditions: System displays the list of all available flights on a chosen date
Alternative Courses: NA
Includes: Search for one-way, Search for round-trip, search for multiple
destinations.
10
Date Created: 10/11/2018 Date Last Updated: 10/11/2018
Actor: Customer
Preconditions: System has displayed the list of available flights based on customer’s
query
Frequency of Use: 1
Normal Course of Customer chooses to sort the flights according to price or flight
Events: duration on the system.
Alternative NA
Courses:
11
Use Case Name: Payment
Actor: Customer
Frequency of Use: 1
Preconditions: Customer has selected the available flight and ticket type of
his/her choice
Postconditions: Customer has booked the flight and paid for the ticket(s)
12
Use Case Adding new flights.
Name:
Actor: Administrator
Alternative Courses: NA
Includes: NA
13
2.4 User Classes and Characteristics
The system users are divided into three categories: administrators, customers and support staff.
Administrators should be trained and have a knowledge about using this application. On the
other hand, customers do not need a training or a background knowledge. Support staff consist of
of specialists who have good analytical and problem solving skills, up-to-date technical
knowledge, good interpersonal and customer care skills.
14
3. Requirements and Goal Modelling
Goal Modelling
3.1
3.1.1 Strategic Dependency Model
ID Description of Figure 2
G1.1 In order to see acceptance message of successful payment customers are dependent
on technical authority
G1.4 For portability of the system in terms of being manageable in multiple browsers
customers are dependent on technical authority
15
G2.2 Administrators are dependent on technical authority for access to database
G3.2 In order being able to login with predefined passwords administrators are dependent
from support staff
G3.3 In order to see warning messages administrators are dependent from support staff
G3.4 To change their predefined passwords administrators are dependent from support
staff
G4.1 Customers are dependent on safety of communication channel from support staff
G4.2 Customers are dependent from support staff for fulfilment of SLA of 98%
G5.2 Customers are dependent on addition of new flights to the system from
administrators
G5.3 Customers are dependent from administrators on removal of cancelled flights from
the system from administrators
16
3.1.2 Model of software-intensive system
Figure 3.
Software-intensive system model
Below given table explains how Figure 3 should be read:
ID Description of Figure 3
17
T2.2 ATRS depends on customer’s request to book the ticket
T4.1 Bank depends on ATRS to fetch the card details of customer to handle the
payment
18
Figure 4. KAOS Model 1
Below given table explains the way
Figure 4 should be read:
ID Description of Figure 4
19
Figure 5.
KAOS Model 2
Below given table explains the way
Figure 5should be read:
ID Description of Figure 5
20
G8 Administrator uses AAS to ensure security of the system
Figure 6.
Booking a flight
Description: Customer class contains information about customers, such as their full names,
locations, card details and genders. Operations performed by customers via interactions with
administrator, bank, flight and flight tickets are contained in the respective part of the Customer
class. Administrator class, on the other hand contains the data about the administrator (name and
account details) and the operations he/she performs on the system. It relates to customer on
approving or rejecting the cancellation requests made by the customer. Flight class is another key
class in our diagram and contains information about flight such as destination and origin city,
flight date, time and duration, number of seats and flight’s availability. Ticket class is also
21
essential for our diagram and contains the full name of the customer that it belongs to. It has its
own unique ID, price and type, which expands to Standard, Premium or VIP class tickets. The
last class in the diagram belongs to Bank and as operations its payment processing and receipt
generating functions are specified.
Figure 7.
Adding new flight
22
1.2 SD_2 Administrator diagram
Figure 8.
Removing existing flight
1.3 SD_3 Bank statement
Figure 9.
Processing payment
23
1.4 SD_4 Customer state
Figure 10.
Paying for booking
Description:In sequence diagram we have displayed how the objects of classes interact with
each other throughout the customer’s ticket booking process.
24
4. Specific Requirements
4.1 External Interface Requirements
4.1.1 User Interfaces
[Link]ATRS should have a customer user interface.
[Link] ATRS should have an administrator user interface.
[Link] Customer user interface should have a graphical user interface (GUI).
[Link] Administrator user interface should have a GUI.
25
4.1.4 CommunicationInterfaces
[Link] HTTP protocol should be used as an interface of communication between client and
server sides.
26
4.2.26 System should demand customer to provide his/her full name to book the ticket.
4.2.27 System should demand customer not to enter numbers for full name label.
4.2.28 System should demand customer to provide his/her number of travel document to book
the ticket.
4.2.29 System should demand customer to enter only characters for full name label.
4.2.30 System should demand customer not to enter specific characters for travel document
number label.
4.2.31 System should demand customer to choose the payment method.
4.2.32 System should offer payment via manually manually entering card details as default
payment method to customer.
4.2.33 System should be able to handle payments done by the customer via PayPal.
4.2.34 System should be able to process the payments done by the customer via manually
entering the card details.
4.2.35 Provided list of flights should contain information about duration of flight for each flight.
4.2.36 Provided list of flights should contain information about price in chosen currency for each
flight.
4.2.37 Provided list of flights should illustrate the exact hours of departure and arrival for each
flight.
4.2.38 Provided list of flights should contain information about departure and arrival airport
names for each flight.
4.2.39 Flight offered cities should be grouped respect to the continents they are located.
4.2.40 Types of the tickets should be classified as Standard, Premium and VIP.
4.2.41 Administrator should be able to add new flights to the system.
4.2.42 Administrator should be able to modify the details of existing flights.
4.2.43 Administrator should be able to remove cancelled flights from the system.
4.2.44 Administrator should be able to see reservation cancellation requests.
4.2.45 Administrator should be able to accept reservation cancellation requests.
4.2.46 Administrator should be able to reject reservation cancellation requests.
4.2.47 Administrator should be able to see details of existing bookings.
27
[Link] Number of available seats for specific flight should be decreased by 1 unit once a
transaction of the payment for the flight ticket is made.
28
4.4.7 Other Requirements[4.2.21-4.2.25]
[Link] System should display a warning message if the customer input for full name label is out
of defined standard.
[Link] System should display a warning message if the customer input for travel document
number is out of defined standard.
[Link] System should display a warning message if the customer wants to book flights for more
than 6 people.
[Link] System should display a warning message if the administrator tries to customize his/her
password out of defined standards.[4.2.47]
29
[Link] Customer should be able to pay online. Based_on SD1_1 4 out of 5
[Link] Customer should be able to see the list of Based_on SD1_4 5 out of 5
available flights based on the information he
entered.
30
25. Warning messages
26. Booking Tickets
27. Reliability of ATRS
28. Customizing administrator passwords
29. Security of communication channel
30. Acceptance messages
31
3. Specifying number of passengers while searching (adults,
children and infants)
4. Multi - Currency and language
5. Displaying warning messages
6. Maintain 1000 transactions in second
7. Customized administrator passwords
8. Acceptance messages
[Link] Normalized
[Link] Percent
32
4.7.3 Prioritisation According to Value
[Link] Main
33
[Link] Normalised
[Link] Percent
34
4.7.4 Plot ROI Graph
Figure 11.
ROI Plot Graph
35
4.7.5 Hierarchical Prioritization
Figure 13
. Hierarchical prioritization of requirements
36
4.8 Requirements Traceability
4.8.1 Traceability Matrix
Scenarios are defined as follows:
Scenario 1 – Customer wants to search for flights.
Scenario 2 – Customer wants search for flights of specific dates.
Scenario 3 – Customer wants to search for flights of specific routes.
Scenario 4 – Customer wants to see flight prices of different ticket types.
Scenario 5 – Customer wants to see what is included in different ticket types.
Scenario 6 – Customer wants to sort available flights according to price.
Scenario 7 – Customer wants to sort available flights according to duration.
Scenario 8 – Customer wants to proceed to payment for booked flight.
Scenario 9 – Customer wants to cancel his/her booked ticket.
Scenario 10 – Administrator wants to add a new flight to the system.
Scenario 11 – Administrator wants to modify the details about existing flights.
Scenario 12 – Administrator wants to remove cancelled flights.
Scenario 13 – Administrator wants to respond to cancellation requests of customers.
Scenario 14 – Customer wants to be sure about security of payment.
Scenario 15 – Customer wants to enter information to the labels.
Scenario 16 – Customer enters non-standard information while filling labels.
Scenario 17 – Administrator wants to log on the system.
Scenario 18 – Administrator types wrong password during log in.
Scenario 19 – Administrator wants to change his/her predefined password.
Scenario 20 – Administrator defines new password out of defined standards.
Scenario 21 – Customers cannot reach website.
Scenario 22 – Customer wants to change the currency and language.
Scenario 23 – Support staff wants to ensure the security of the system.
Scenario 24 – Support staff wants to ensure the safety of the system.
Scenario 25 – Support staff wants to maintain performance of the system.
Scenario 26 – Support staff wants to ensure the reliability of the system.
Traceability matrix according to these scenarios and previous mentioned features (contains
functional, nonfunctional and solution-oriented requirements) is constructed as follows:
37
Figure 14.
Traceability matrix
Figure 15.
Traceability model
38
In the given model following subtypes are defined under the traceability types of Content,
Abstraction and Evolution:
Content
● Contradicts- inconsistency in the requirements artefacts
● Conflicts- realisation of requirement A may hinder (but does not necessarily
exclude) the realisation of requirement B
Abstraction
● Generalizes - artefact is a generalisation of (one or) several other artefacts
Evolution
● Satisfies - if artefact A is realised in the system, artefact B is realised as well
● Based on - artefact A has influenced the definition of artefact B
● Formalizes - artefact A is a formal documentation of artefact B
● Derived - artefact A was derived based on a set of other artefact
39
5. Prototype
Description: Visualisation of website.
We try to visualize website of ITM Airlines and while customers using this website, they can
take several advantage of it. On the other hand, it is narrow version of website in order to make it
much more clear and understandable. In the first stage, customers will enter to home page of
website. Then, they can choose type of the ticket, number of adults/children/infants, sort tickets
either by duration or by price, and in this prototype, customers can only search tickets for one
way trip. Moreover, we were add sign in and register buttons for administrators in order to
register/enter the system itself. Finally, there are several buttons such as feedback, currency and
language buttons that allow customer in order to give their feedbacks about website, change
currency and language.
40
41
Appendix A: Glossary
IEEE he Institute of Electrical and Electronics Engineers
T
HTTP Hypertext Transfer Protocol
ATRS Airline Ticket Reservation System
Authentication The process of identifying an individual, usually based
on username and password
Authorization The process of granting defined privileges to successfully
authenticated individuals
AAS Authentication and Authorization System
Database An organized collection of data, stored and accessed
Electronically.
Standby database Database replica created from a backup of a primary
database
Server Computer program that provides functionality to other programs
such as clients
World Wide Web Combination of all resources and users on the Internet that are
using HTTP.
Web-browser Software application to access information on World Wide Web
Client Computer application, such as web-browser, that runs on a
computer and connects to server as necessary
Service Level Agreement(SLA) S tates agreed level of availability
VIP Very Important Person
Adult 12+ years old individuals
Children 0-12 years old individuals
Infant To 2 years
42