Airline Reservation System - Software Engineering

46
AIRLINE RESERVATION SYSTEM Project by : Dimpy Chugh Drishti Bhalla Shweta Arya

Transcript of Airline Reservation System - Software Engineering

Page 1: Airline Reservation System - Software Engineering

AIRLINE RESERVATION SYSTEM

Project by :

Dimpy Chugh

Drishti Bhalla

Shweta Arya

Page 2: Airline Reservation System - Software Engineering

OBJECTIVE OF OUR PROJECT

The Aim of our project is to design and develop a software which would automate

the major airline operations like providing the facilities for the reservation of online

air tickets or any other operations through an effective and yet simple GUI for a

normal passenger intending to travel through airways.

Page 3: Airline Reservation System - Software Engineering

PROPOSED RESERVATION

SYSTEM

This Airline Reservation System Project will provide the user with the following

functions:

• Flight Booking System: The system allows the airline passenger to search for

flights that are available between the two travel cities, namely the “Departure city”

and “Arrival city” for a particular departure date. The system gives the list of

available flights with certain flight details and allows customer to choose a particular

flight suiting his comforts. If the seats are available in a particular flight, then the

system allows the passenger to book a seat of his/her choice. Otherwise it asks the

user to choose another flight. He can also cancel the current reservations without

any problem.

• Flight Status System: Our system allows the registered users to check the flight

status if there is any delay in their flight timings due to inclement weather or any

other reason. It automatically notifies by sending a voice message to the authorised

passengers who have their tickets booked.

Page 4: Airline Reservation System - Software Engineering

• User Accounts System: Creating and maintaining an online account on the

system, in order to see status and updates on booked flights. A User can login

into his account by providing its authorised username and password and

alternatively a new user can register into the system and hence become an

authorised user.

• Web Check-In: Passengers can get their boarding pass in advance through

web check in and go straight to the baggage drop-counter. This will surely save

their time.

After all the necessary details needed for reservation are provided by the

passenger, the screen then takes the traveller to confirm details and online pay the

payment by online transaction screen.

Page 5: Airline Reservation System - Software Engineering

ADVANTAGES OF THE PROPOSED SYSTEM

• Results are received very quickly.

• It uses concept of user friendliness.

• Increases security, speed, storing and accuracy.

• Customer services can not only be satisfied but also enhanced to the extent that

one can obtain or cancel a reservation from anywhere.

• Managing and maintaining data becomes easier.

• Provide convenience to travellers.

Page 6: Airline Reservation System - Software Engineering

PROCESS MODEL We have used LINEAR SEQUENTIAL MODEL or WATERFALL MODEL for

our system which is a software development model in which development is seen

as flowing steadily downwards (like a waterfall) through the phases of

requirements analysis, design, implementation, testing .

Page 7: Airline Reservation System - Software Engineering

We have used this process model because of the following reasons:-

• As our system proceeds from one phase to another in sequential and

systematic manner i.e. the phases are well segregated and only after the

completion of one phase, the development of software moves to the next

phase.

• As our system is simple to implement and represents processes which are easy

to manage and measure.

• All the requirements stated by the user are known before hand and are well

understood .

• As this is a short duration project.

Page 8: Airline Reservation System - Software Engineering

PROJECT SCHEDULING

• The degree of rigor is a function of many project characteristics .

• Various Task sets are designed to accommodate different types of projects and

different degrees of rigor.

• Our project is basically a New application development project (NDev.) which

is undertaken as a consequence of a specific customer request.

• Structured Degree of Rigor- The process framework activities will be applied

for this project. Framework activities and related tasks appropriate to the project

type will be applied and umbrella activities necessary to ensure high quality will

be applied. Software Quality Assurance (SQA), Software Configuration

Management (SCM), documentation, and measurement tasks will be conducted

in a streamlined manner.

Task set selector value for degree of rigor (Structured)

1.0<TSS<3.0

Page 9: Airline Reservation System - Software Engineering

COMPUTING THE TASK SET

SELECTOR TABLE

ADAPTATION CRITERIA GRADE WEIGHT

ENTRY

POINT

MULTIPLIER

NDEV.

PRODUCT

Size of project 2 1.20 1 2.40

Number of users 2 1.10 1 2.20

Business criticality 1 1.10 1 1.10

Longevity 2 0.90 1 1.80

Stability of requirements 2 1.20 1 2.40

Ease of communication 1 0.90 1 0.90

Maturity of technology 0 0.90 1 0.00

Performance constraints 2 0.80 1 1.60

Embedded 2 1.20 1 2.40

Project staffing 1 1.00 1 1.00

Interoperability 0 1.10 1 0.00

Reengineering factors 0 1.20 0 0.00

Task set selector(TSS) 1.32

Task set selector (TSS) = [∑ (Product)]/12] =[15.8/12] = 1.32

Page 10: Airline Reservation System - Software Engineering

HARDWARE INTERFACES

• Our software is compatible with Microsoft Windows based machines.

• The database connectivity requires a hardware configuration with a fast

database system running on hard-disk permitting back-up systems to support

the primary goal of reliability.

• The system must interface with the standard output device, keyboard and

mouse to interact with the software.

Page 11: Airline Reservation System - Software Engineering

SOFTWARE INTERFACES FRONT END DESCRIPTION

• The Front End for ARS is designed using HTML. The front end contains a

very user-friendly interface.

• It contains various screens such as -

1. Login

2. Registration

3. Online Reservation

4. Reservation Form

5. Online Transaction

6. Flight Status

7. Web Check-In

8. Cancel Reservation.

Page 12: Airline Reservation System - Software Engineering

Screen Name Description

Login Allows to login as an administrator or a user.

Registration Interface for registering a new member.

Online Reservation Allows user to search flights by specifying

journey details and accordingly reserve

seats.

Reservation Form Asks for user details and preferred seat

location for booking.

Online Transaction Enables the user to make online payment by

providing card details.

Flight Status Accepts flight details as input and display

current status of flight in accordance with

them.

Web Check-in Allow to acquire a print of boarding pass by

verifying reservation details.

Cancel Reservation Interface which enables the user to cancel

reservation by providing e-ticket number.

Page 13: Airline Reservation System - Software Engineering

SCREEN 1

LOGIN SYSTEM

Page 14: Airline Reservation System - Software Engineering

SCREEN 2

REGISTRATION

Page 15: Airline Reservation System - Software Engineering

SCREEN 3

ONLINE RESERVATION

Page 16: Airline Reservation System - Software Engineering

SCREEN 4

RESERVATION FORM

Page 17: Airline Reservation System - Software Engineering

SCREEN 5

ONLINE TRANSACTION

Page 18: Airline Reservation System - Software Engineering

SCREEN 6

FLIGHT STATUS

Page 19: Airline Reservation System - Software Engineering

SCREEN 7

WEB-CHECK IN

Page 20: Airline Reservation System - Software Engineering

SCREEN 8

CANCEL RESERVATION

Page 21: Airline Reservation System - Software Engineering

BACK END DESCRIPTION

• The Back End for ARS is designed using MS Access. This includes passenger,

reservation, flights, flight status, account info, web check-in, payment and

cancellation relations.

• The account info relation contains the information of the users like its valid

username and password, first name, last name, email-id, contact no and gender.

• The passenger relation will contain unique e-ticket number, first name, last

name, gender, D.O.B, seat no, flight no, departure date, e-contact no, booking

username.

• The flights relation contains the information about all the flights available

between different cities such as flight number, the two cities to which the flight

connects i.e. the origin and destination, total seats and the days on which it flies.

Page 22: Airline Reservation System - Software Engineering

• The web check-in relation includes the e-ticket number corresponding to which

the boarding pass has been printed.

• The reservation relation will include the e-ticket numbers corresponding to which

reservations have been made.

• The payment relation contains the transaction Id, the total fare calculated and the

username using which the booking was done.

• The cancellation relation consists of e-ticket numbers corresponding to which the

reservations have been cancelled due to some reasons and the amount refunded to

the user.

• The flight status relation contains flight no, status, departure date, arrival date,

scheduled departure and arrival time and estimated/actual departure and arrival

time of different available flights.

Page 23: Airline Reservation System - Software Engineering

DATA DICTIONARY

SNO. Attributes Data Type Field Length Constraints Description

1 USERNAME Alpha-numeric 20 Primary Key A name that

Uniquely identifies

each user.

2 PASSWORD Alpha-numeric 20 Not Null Password of the User

for secure account.

3 FIRST NAME String 20 Not Null First Name of the User.

4 LAST NAME String 20 Not Null Last Name of the User.

5 GENDER Character 5 Not Null Gender of the

User.

6 CONTACT NO. Numeric 20 Not Null Contact Number

Of Passenger.

7 E-MAIL ID Alpha-numeric 20 - E -Mail Address

Of the User.

ACCOUNT INFO

Page 24: Airline Reservation System - Software Engineering

PASSENGER SNO. Attributes Data Type Field Length Constraints Description

1 E-TICKET NUMBER Numeric 10 Primary Key Unique Ticket No.

generated at the time

of reservation.

2 FIRST NAME String 20 Not Null First Name of the

Passenger.

3 LAST NAME String 20 Not Null Last Name of the

Passenger.

4 GENDER Character 5 Not Null Gender of the

Passenger.

5 DOB Numeric 20 Not Null Date of Birth

of Passenger .

6 BOOKING_USERN

AME

Alpha-numeric 20 Foreign Key A unique username

under which

reservations(s) were

made.

7 FLIGHT NUMBER Alpha-numeric 10 Foreign Key Unique Id /No. of a

Particular Flight.

8 SEAT NUMBER Integer 3 Not Null Specific number

for identification of

every seat.

9 DEPARTURE DATE Numeric 20 Not Null Date of Departure of

Flight.

10 E-CONTACT NO. Numeric 20 Not Null Emergency Contact

Number Of Passenger.

Page 25: Airline Reservation System - Software Engineering

RESERVATION

SNO. Attributes Data type Field length Constraints Description

1 E-TICKET NUMBER Numeric 10 Primary Key, Foreign

Key

Unique Ticket No.

generated at the

time of reservation.

FLIGHT SNO. Attributes Data Type Field Length Constraints Description

1 FLIGHT NUMBER Alpha-numeric 10 Primary Key Unique Id /No. of a

Particular Flight.

2 ORIGIN String 20 Not Null The Place From Where

The Flight Will Depart.

3 DESTINATION String 20 Not Null The Place Where The

Flight is Destined to

Reach.

4 TOTAL SEATS Numeric 5 Not Null Total No. of Seats in a

Particular Flight.

5 DAYS String 10 Not Null Days when the flight

departs.

Page 26: Airline Reservation System - Software Engineering

WEB CHECK-IN

SNO. Attributes Data type Field length Constraints Description

1 E-TICKET NUMBER Numeric 10 Primary Key, Foreign Key Unique Ticket No.

generated at the

time of reservation.

SNO. Attributes Data type Field length Constraints Description

1 TRANSACTION ID Alpha-numeric 20 Primary Key Unique Id generated

at the time of

payment.

2 BOOKING_USERNA

ME

Alpha-numeric 20 Foreign Key A unique username

under which

reservations(s) were

made.

3 TOTAL FARE

GENERATED

Integer 10 Not Null Total Price of the

Reservations made.

PAYMENT

Page 27: Airline Reservation System - Software Engineering

SNO. Attributes Data type Field length Constraints Description

1 E-TICKET NUMBER Numeric 10 Primary Key, Foreign Key Unique Ticket No.

generated at the

time of reservation.

2 REFUNDED

AMOUNT

Integer 10 - Amount refunded(if

any ) to the user.

CANCELLATION

SNO. Attributes Data Type Field Length Constraints Description

1 FLIGHT NUMBER Alpha-numeric 10 Primary Key, Foreign

Key

Unique Id /No. of a

Particular Flight.

2 DEPARTURE DATE Numeric 20 Primary Key Date of Departure of

Flight.

3 ARRIVAL DATE Numeric 20 Not Null Date of Arrival of Flight.

4 SCHEDULED

DEPARTURE TIME

Timestamp 10 Not Null Time when the Flight is

scheduled to depart.

5 SCHEDULED

ARRIVAL TIME

Timestamp 10 Not Null Time when the Flight is

scheduled to arrive.

6 ESTIMATED

/ACTUAL

DEPARTURE TIME

Timestamp 10 Not Null Time when the Flight is

estimated to depart or

departed.

7 ESTIMATED

/ACTUAL ARRIVAL

TIME

Timestamp 10 Not Null Time when the Flight is

estimated to arrive or

arrived.

8 STATUS String 30 Not Null Status of the Flight.

FLIGHT STATUS

Page 28: Airline Reservation System - Software Engineering

DATA FLOW DIAGRAMS • Data Flow Diagram (DFD) is a graphical representation of the "flow" of

data through an information system. A DFD is created to provide an

overview of the system.

CONTEXT LEVEL DIAGRAM

Page 29: Airline Reservation System - Software Engineering

LEVEL -1 DFD

Page 30: Airline Reservation System - Software Engineering

LEVEL -2 DFD OF LOGIN

Page 31: Airline Reservation System - Software Engineering

LEVEL -2 DFD OF ONLINE RESERVATION

Page 32: Airline Reservation System - Software Engineering

LEVEL -2 DFD OF ONLINE TRANSACTION

Page 33: Airline Reservation System - Software Engineering

LEVEL -2 DFD OF WEB CHECK -IN

Page 34: Airline Reservation System - Software Engineering

LEVEL -2 DFD OF FLIGHT STATUS

Page 35: Airline Reservation System - Software Engineering

LEVEL-2 DFD OF CANCELLATION

Page 36: Airline Reservation System - Software Engineering

FUNCTION POINT METRICS

Information Weighting Factor Domain Value Count Average

Number of external inputs 45 X 4 = 180

Number of external outputs 10 X 5 = 50

Number of external inquiries 3 X 4 = 12

Number of internal logical files 1 X 10 = 10

Number of external interfaces 1 X 7 = 7

Count total------------------------------------------------------------------------------> 259

Function-point (FP) metric can be used effectively as a means for measuring the

functionality delivered by a system.

∑ (Fi) = (2+2+0+0+2+4+2+2+0+0+2+2+2+0) = 20

FP = count total x [0.65+0.01 x ∑ (Fi)]

= 220.15

Page 37: Airline Reservation System - Software Engineering

EFFORT ESTIMATION The COCOMO model or the Constructive Cost Model is a method for evaluating

and estimating the cost /effort of software development product based on inputs

relating to the size of the software and a number of scale factors that effect

productivity.

COMPLEXITY WEIGHTING TABLE

OBJECT TYPE NUMBER OF

INSTANCES

COMPLEXITY WEIGHT:

MEDIUM

Screens 8 X 2 16

Reports 1 X 5 5

Objects

Point (Total) 21

Page 38: Airline Reservation System - Software Engineering

NOP = (Object points) x [(100-%reuse)/100] [NOP = new object points]

= 21 x [(100-0)/100] [%reuse = 0]

= 21 x 1

=21

PRODUCTIVITY RATES TABLE

The Productivity rate for different levels of developer experience and development environment maturity is Low that is 7.

Estimated effort = NOP/PROD

= 21/7

= 3 person-month

Developer’s experience/capability Low

Environment maturity/capability Low

PROD 7

Page 39: Airline Reservation System - Software Engineering

RISK ANALYSIS • A risk analysis is a series of steps that help a software team to understand and

manage uncertainty.

• A risk is a potential problem which should be identified, its probability of

occurrence should be assessed, its impact should be estimated and a contingency

plan should be prepared.

DEVELOPING A RISK TABLE

RISK NAME CATEGORY PROBABILITY

IMPACT

Staff

inexperienced ST 50% 3

Delivery deadline

will be tightened BU 60% 3

Customer will

change

requirements

PS 20% 3

Page 40: Airline Reservation System - Software Engineering

WHITE- BOX TESTING White-box testing, sometimes called glass-box testing is a test case design method

that uses the control structure of the procedural design to derive test cases.

ALGORITHM FOR LOGIN SCREEN

1. Identify role.

2. If role = administrator and username and password are valid

Then

3. Proceed to administrator functions

Else

4. If role = user and username and password are valid

Then

5. Proceed to either online reservation screen or cancel reservation screen or Flight

status screen

Else

6. Display error message

7. Else If user has no account and registration details entered are valid

Then

8. Create account and then login

Else

9. Display error message and enter the details again

Page 41: Airline Reservation System - Software Engineering

FLOW CHART OF LOGIN SCREEN

Page 42: Airline Reservation System - Software Engineering

FLOW GRAPH OF LOGIN SCREEN

Page 43: Airline Reservation System - Software Engineering

CYCLOMATIC COMPLEXITY 1. Number of regions of flow graph = 6

2. V (G) = E-N+2 [where E = no. of edges, N = no. of nodes]

= 15-11+2 [where E = 15, N = 11]

= 6.

3. V (G) = P+1 [where P = predicate nodes]

= 5+1 [where P = 5(1, 2, 3, 6, 10)]

= 6

Therefore, the Cyclomatic Complexity of the flow graph is 6.

Page 44: Airline Reservation System - Software Engineering

TEST CASES Test case ID Input value Actual output Expected output

1.

For user Username U

Password xxxxxx (valid input)

To be observed after execution

Proceed to online reservation or cancel

reservation or flight status.

2.

For user Username U

Password xxxxxx (invalid input)

To be observed after execution

Display error message and login again.

3.

For administrator Username U

Password xxxxxx (valid input)

To be observed after execution

Proceed to administrator functions.

4.

For administrator Username U

Password xxxxx (invalid input)

To be observed after execution

Display error message and login again.

5. For new user

Enter Registration details (valid input)

To be observed after execution

Account created and proceed to login.

6. For new user Enter details

(Invalid input)

To be observed after execution

Display error message.

Page 45: Airline Reservation System - Software Engineering

BIBLIOGRAPHY

Software Engineering - A Practitioner's Approach by R. S. Pressman,

McGraw-Hill, Ed-7, 2010.

An Integrated Approach to Software Engineering by P. Jalote, Narosa

Publishing House, Ed-3, 2011.

Page 46: Airline Reservation System - Software Engineering

THANK YOU!!!