Вы находитесь на странице: 1из 29

AIRLINE RESERVATION SYSTEM PROBLEM DEFINITION

Apple Airways are one of the private airlines in India, which caters large number of people. It has about 10 planes in which 5 serves for domestic and 5 for international. As the company is doing good business, they want to make the reservation system as a computerized Airline Reservation System. The plane details, their departure and arrival time, source and destination are as follows. S.No 1 2 3 4 5 1 2 3 4 5 Plane AAD01 AAD02 AAD03 AAD04 AAD05 AAI01 AAI02 AAI03 AAI04 AAI05 Destinatio Departure n Time DOMESTIC Chennai Mumbai 10.00 Kolkatta Chennai 12.00 Delhi Bangalore 11.15 Mumbai Chennai 13.30 Chennai Delhi 15.30 INTERNATIONAL Mumbai London 00.30 Delhi Paris 03.20 Chennai Colombo 19.30 Mumbai Los Angles 05.00 Delhi Dubai 04.00 Source Arrival Time 11.00 13.00 12.30 14.30 17.00 10.30 13.20 20.30 22.00 11.00

The system should get the passengers details such as name, age, address, passport number, which plane he/she wants to travel and the destination point. The software should provide search options. If the source point and destination point are entered, then all the planes traveling between these planes with arrival and departure time should be displayed for the sake of passenger. The software should have option for checking availability of the tickets. If the ticket is not available, a short message will appear as ticket unavailable will be displayed to the passenger. The software should have facility to cancel the reservation of the ticket and also can modify the changes if the customer has some changes in his reservation ticket.

A small statement regarding cancellation should be displayed to passenger after cancellation of their tickets. The ticket which is cancelled is then added up to the available ticket column. The airline software should have the facility to print the ticket with all the details such as data, name of the plane, destination with timings and the class along with the passenger details. The price list of the ticket is also put up according to the class the passenger prefers to travel.

AIRLINE RESERVATION SYSTEM SOFTWARE REQUIREMENTS SPECIFICATION 1. INTRODUCTION


1.1. PURPOSE The main purpose of this software is to reduce the manual errors involved in the airline reservation process and make it convenient for the customers to book the flights as when they require such that they can utilize this software to make reservations, modify reservations or cancel a particular reservation. 1.2 SCOPE The name of the software is AIRLINE RESERVATION SYSTEM. This software provides options for viewing different flights available with different timings for a particular date and provides customers with the facility to book a ticket, modify or cancel a particular reservation but it does not provide the customers with details of cost of the ticket and it does not allow the customer to modify a particular part of his reservation and he/she can modify all his details. 1.3 DEFINITIONS, ACRONYMS AND ABBREVIATIONS ARS-Airline Reservation System LAN-Local Area Network GUI-Graphical User Interface OS-Operating System RAM-Random Access Memory MB-Mega Bytes GB-Giga Bytes Mbps-Mega bits per second HDD-Hard Disk Drive

1.4 REFERENCES The books and materials referred during the pre-development stages of the project include 1. Software Engineering-A Practitioners Approach By Roger S. Pressman 2. Software Engineering-By James Peters 1.5 OVERVIEW The rest of the document deals about all the main features of this software each will its purpose and its main functions. It also gives details about the interface with other products and related functionality of each product.

2. OVERALL DESCRIPTION
2.1 PRODUCT PERSPECTIVE The ARS software is an independent application. It is a self-contained product. The system interfaces, user interfaces and hardware interfaces related with this software are defined as follows. 2.1.1 System Interfaces The client systems should be able to share the data available in the data base through the network connection. 2.1.2 User Interfaces The screen formats and menu structure should be in such a way that even have users will find it easy to use. The product must be use-friendly and very inter-active. The functionality provided by the system like displaying error messages should adapt itself to the different users of the software. 2.1.3 Hardware Interfaces Nil 2.1.4 Software Interfaces Name of the language: Visual Basics

2.1.5 Communication Interfaces There is an LAN used for communication among the different client systems to be used. 2.1.6 Memory Constraints The system would require disk space of 10 GB and a 256 MB HDD and 64 MB RAM for client systems. 2.1.7 Operation The users can first make a reservation in a particular flight for a particular date and time. The system provides the customer with a pin code which gives him access to either make any changes in his reservation or cancel a reservation. These must also be back up of data to enable any easy recovery from any features. 2.1.8 Site Adaptive Requirements The ARS software is an independent and self-contained product and no modification are required to adapt to a particular installation. 2.2 PRODUCT FUNCTIONS The major functions include Providing flight details Flight bookings for a particular destination, date and time and also providing with a pin code. Allowing the customer to modify or cancel his reservation provided the correct pin code is given. Displaying a report of the number of people flying in a particular flight. 2.3 USER CHARACTERISTICS No technical experience is required basic knowledge of handling system is sufficient.

2.4 CONSTRAINTS Regulatory policies: It is a mandatory that no text book must be left empty or contains insufficient data. Hardware limitations: There must be a 64 MB on board memory Control functions: The software must be very user-friendly and display appropriate error messages. Interfaces to other applications: Not applicable. Parallel operations: It must support many users simultaneously. Reliability requirements: Data redundancy and use of special/blank characters must be avoided. Safety/security considerations: The application must be exited always normally. Higher order language requirements: VB 2.5 ASSUMPTIONS AND DEPENDENCIES It is assumed that the details of the cost of ticket are already known to the customer. Future changes like providing different types of flights with different classes like business class, economic class will allow the customers to benefit from one facility. 2.6 APPORTIONING OF REQUIREMENTS The necessity of providing options to customer to choose their seat or to choose for economic or business class can be delayed until future versions of the software are developed.

3. SPECIFIC REQUIREMENTS
3.1 EXTERNAL INTERFACE REQUIREMENTS 3.1.1 User Interfaces The interface must be easy to understand. The user interface includes SCREEN FORMATS/ORGANIZATION: The introductory screen will be the first to be displayed which will allow the users to choose either of the two options, viewing flight detail or booking a ticket. WINDOW FORMAT/ORGANIZATION: When the user chooses some other option, then the information pertaining to that choice will be displayed in a new window which ensures multiple windows to be visible on the screen and the users can switch between them. DATA FORMAT: The data entered by the users will be alpha numeric. END MESSAGES: When there are some exceptions raising error like entering invalid details, then error messages will be displayed prompting the users to re-enter the details. 3.1.2 Hardware Interfaces The system must basically support certain input and output devices. Their descriptions are as follows. Name of Item Description of Purpose Source of Input/ Description of output Key board To accept data from Source of Input user like pin code, personal details, flight details Printer To print the bookings Destination of Output mode E.g.: Destination chosen with date and timings 3.1.3 Software Interfaces Not applicable since the product under considerations is an independent one.

3.1.4 Communication Interfaces Every client system connected through LAN establishes a communication only with the server and not with any client system. An LAN of 10 Mbps is used. 3.2 SOFTWARE PRODUCT FEATURES 3.2.1 FEATURE 1 The ability of the software is to provide the details of the flights available and allow the customers to choose a particular destination and make a reservation. 3.2.1.1 PURPOSE The purpose of this is to enable the users to view the different flights available so as to make it convenient for him to make a reservation. 3.2.1.2 STIMULUS/RESPONSE Once the user chooses the particular option, the web pages corresponding to that are to be displayed on the screen i.e., it will display the different flights available to their respective destinations and allow the customer to book a ticket. 3.2.1.3 ASSOCIATED FUNCTIONAL REQUIREMENTS 3.2.1.3.1 FUNCTIONAL REQUIREMENTS Once the user makes a reservation, he must be provided with a pin code. 3.2.1.3.1.1 INTRODUCTION The user must be provided with the required information within 10 seconds. 3.2.1.3.1.2 INPUTS The user must enter the destination with date and timings and must make reservation by giving his personal details like name, address, age, gender, nationality. 3.2.1.3.1.3 PROCESSING

Recognizing the correct details are entered that a message is displayed confirming his reservation and displays the pin code. 3.2.2 FEATURE 2 The software allows the user to modify an already existing reservation made by the customer if in case there are any changes that are to be modified in the reservations of the ticket. 3.2.2.1 PURPOSE The purpose is to allow the customer to make any changes in his personal details or flight booking details. 3.2.2.2 STIMULUS/RESPONSE Once the user requests for changing his reservation, it must be displayed on the screen prompting the customer to enter his pin code. 3.2.2.3 ASSOCIATED FUNCTIONALITY REQUIREMENTS 3.2.2.3.1 FUNCTIONAL REQUIREMENTS If the pin code provided by the customer does not match, then would notify the person by displaying error messages. 3.2.2.3.1.1 INTRODUCTION The system will allow the customer to modify his reservation provided correct pin code has been entered by him. 3.2.2.3.1.2 INPUT The user should enter his pin code which gives him access to modify his reservation. 3.2.2.3.1.3 PROCESSING The pin code is processed and checked for his validity. If it is correct then the user can modify his reservation else an error message will be displayed asking the user to enter the correct pin code number. 3.2.2.3.1.4 OUTPUT Given the correct pin code, the user can now modify his reservation. A new pin code will be generated for the customers.

3.2.3 FEATURE 3 The software allows the user to cancel an already existing reservation made by the customer who has booked the ticket. 3.2.3.1 PURPOSE The purpose is to allow the customer to cancel his reservation if not required. 3.2.3.1 STIMULUS/RESPONSE Once the user requests for canceling his reservation, it must be displayed on the screen prompting the customer to enter his pin code. 3.2.3.3 ASSOCIATED FUNCTIONAL REQUIREMENTS 3.2.3.3.1 FUNCTIONAL REQUIREMENTS If the pin code provided by the customer does not match, then it would notify the person by displaying error messages. 3.2.3.3.1.1 INTRODUCTION The system will allow the customer to cancel his reservation provided correct pin code has been entered by the customer. 3.2.3.3.1.2 INPUT The user should enter his pin code which gives him access to cancel his reservation. 3.2.3.3.1.3 PROCESSING The pin code is processed and checked for its validity. If it is correct, then the user can cancel his reservation else an error message will be displayed asking the user to enter the correct pin code number. 3.2.3.3.1.4 OUTPUT Given the correct pin code, the user can now cancel his reservation.

3.2.4 FEATURE 4 The software must also give a report on the number of reservations made for a particular flight. 3.2.4.1 PURPOSE The purpose is to enable the administrator to view the number of people in a particular flight. 3.2.4.2 STIMULUS/RESPONSE Once the user requests for this option, all the details of the customers who have made reservation will be displayed. 3.2.4.3 ASSOCIATED FUNCTIONAL REQUIREMENTS 3.2.4.3.1 FUNCTIONAL REQUIREMENTS If no reservations are made, then a message is displayed that no bookings have been made. 3.2.4.3.1.1 INTRODUCTION The system will allow the administrator to view all the details of the customer who have made reservations. 3.2.4.3.1.2 INPUT The administrator must enter the password so that access is given only to him to view the details of all the customers. 3.2.4.3.1.3 PROCESSING The password is processed and checked for its validity. If it is not correct, then the administrator is asked to enter the correct password. 3.2.4.3.1.4 OUTPUT Given the correct password, the administrator can view all the details of customers with date and time of their bookings made.

3.3 PERFORMANCE REQUIREMENTS At any instant, a maximum of four nodes or users will be given access simultaneously. Since the program handles multiple users, if more than one person attempts to same date to the files stored in the data base, the program will lock the data file using a 2-phase commit protocol to prevent simultaneous access. 3.4 DESIGN CONSTRAINTS Requires 256 MB on-board memory. Based completely on Windows functionality platform. The software should be portable and must be inaccessible to unauthorized users. 3.5 SOFTWARE SYSTEM ATTRIBUTES 3.5.2 Reliability The factors needed to establish the software expected reliability are The user inputs should be valid and within the given range. Normal termination of the program. 3.5.2 Availability The factors guarantee the softwares availability includes proper termination and correct input details. Also the resources used for the project development are Microsoft Certified which speaks of its high quality standards. 3.5.3 Security It must be ensured that access will be provided to the authorized persons through user ID and password. Network security will be provided by the use of firewalls. Checks can be performed at regular internals to ensure data integrity.

3.5.4 Maintainability The software will be developed by implementing the concept of modularity which in turn reduces the complexity involved in maintaining it. The administrator should have a sound technical knowledge about maintaining the software and further enhancements will be undertaken by the developer. 3.5.5 Portability The application is portable which ensures its adaptability for use on different computer terminals with different operating systems and standards. 3.6 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.7 OTHER REQUIREMENTS Nil

4. INDEX
Nil

5. APPENDICES
Nil

DATA FLOW DIAGRAM: LEVEL 0:

Reservati on Displa y Cancellatio n

User

Airline reservation System

LEVEL 1(a):

User

Reservation

Accept the details Reserve in the file Passenger Database

LEVEL 1(b): Cancellatio n Accept the details Cancel in the file Passenger Database

User

LEVEL 2:

User

Displa y

Read Passenger details Display in tabular form

Customer database

FUNCTION POINT ANALYSIS AIRLINE RESERVATION SYSTEM


Function point analysis is a structural technique of problem solving. It is a method to break system into small components so that they can be better understood and analyzed. Function point analysis is a unique measure for software. 1. Data communications-2 2. Distributed data processing-2 3. Performance-3 4. Heavily used configuration-2 5. Transaction rate-3 6. Online data entry-0 7. End user efficiency-1 8. Online update-0 9. Complex processing-3 10. Reusability-4 11. Installation ease-3 12. Operational ease-3 13. Multiple sites-0 14. Facilitate change-3 Type of component External inputs External outputs External inquiries Internal logic files External interface Files Count 9 9 3 1 1 Complexity of the components Low Function point 3 15 4 16 3 9 7 7 5 6 Count total 33

Function point = count total*[0.65+ (0.01*f(i)] Where the f(i) [1, 2,,14] are complexity adjustment values based on the responses to 14 statements. Scales ranges from 1, 2,3,4,5.

Formula FP = count total*[0.65+ (0.01*Fi)] =33*[0.65+ (0.01*29)] = 31.02 Function point count for Airline reservation system= 31.02 Lines of code=31.02*29=899.5=0.8KLOC Code developed in C++ Estimation of effort using Cocomo Model: a=3.2; b=1.05 Effort =a*(KLOC) b =3.2*(0.8)1.05 =2.5 person-month Estimation of time using Cocomo Model: Type of Project = Organic. Then, c=2.5; d=0.38 Time = (Effort) d * c = (2.5) 0.38 * 2.5 = 3.3 months Estimation of Cost using Cocomo Model: Cost = 3.3 *10000 = Rs. 33,000.

PROGRAM #include<fstream.h> #include<iostream.h>

#include<iomanip.h> #include<stdio.h> #include<conio.h> #include<stdlib.h> #include<process.h> #include<dos.h> #include<time.h> #include<string.h> class airline { char name[20]; char addr[30]; char email[20]; long int phone; long int passno; long int date; char source[30]; char dest[30]; char dep[20]; char arrv[20]; int pword; public: void reserve(); void display(); void cancel(); }ob; ifstream fin; ofstream fout; int choice; int size=sizeof(airline); void line() { cout<<"\n"; for(int i=0;i<80;i++) cout<<"-"; cout<<"\n"; } void main() {

do { clrscr(); line(); cout<<"\n\t\t\tAIRLINE RESERVATION"; cout<<"\SYSTEM\n"; line(); cout<<"\n\tMENU:\n"; cout<<"\n1:RESERVATION"; cout<<"\n2:DISPLAY"; cout<<"\n3:CANCELLATION"; cout<<"\n4:EXIT"; cout<<"\n\nEnter your choice : "; fflush(stdin); cin>>choice; line(); switch(choice) { case 1: fout.open("nel.cpp",ios::app); ob.reserve(); fout.write((char*)&ob,size); fout.close(); getch(); break; case 2: ob.display(); getch(); break; case 3: ob.cancel(); getch(); break; case 4: exit(0); } }while(choice<4); getch(); } void airline::reserve() { int mode,plno;

char pname[10]; clrscr(); cout<<"\nEnter passengers details : "; cout<<"\nName "; gets(name); cout<<"\nAddress "; gets(addr); cout<<"\nE-Mail ID "; gets(email); cout<<"\nTelephone no "; cin>>phone; cout<<"\nEnter the date of travelling : "; cin>>date; line(); cout<<"\n\t1:Domestic\n\t2:International\nEnter the mode:"; cin>>mode; if(mode==1) { cout<<"\nEnter the plane 1 or 2 or 3 "; cin>>plno; switch(plno) { case 1: strcpy(pname,"aado1"); strcpy(source,"Chennai"); strcpy(dest,"Mumbai"); strcpy(dep,"10:00"); strcpy(arrv,"11:00"); break; case 2: strcpy(pname,"aado2"); strcpy(source,"Mumbai"); strcpy(dest,"Kolkata"); strcpy(dep,"12:00"); strcpy(arrv,"13:15"); break; strcpy(pname,"aado3"); strcpy(source,"Kolkata"); strcpy(dest,"Chennai");

case 3:

strcpy(dep,"17:00"); strcpy(arrv,"18:00"); break; } } else if(mode==2) { cout<<"\nEnter the plane 1 or 2 or 3 cin>>plno; switch(plno) { case 1:

";

strcpy(pname,"aai01"); strcpy(source,"Mumbai"); strcpy(dest,"London"); strcpy(dep,"00:30"); strcpy(arrv,"10:30"); break; strcpy(pname,"aai02"); strcpy(source,"Delhi"); strcpy(dest,"Paris"); strcpy(dep,"03:20"); strcpy(arrv,"13:20"); break; strcpy(pname,"aaio3"); strcpy(source,"Chennai"); strcpy(dest,"Colombo"); strcpy(dep,"19:30"); strcpy(arrv,"20:30"); break;

case 2:

case 3:

} } randomize(); pword=random(1000); cout<<"\nPASSWORD\t"<<pword;

getch(); line(); clrscr(); } void airline::display() { cout<<"\n\n\t1:Passenger Reports\n"; line(); cout<<"RESNO"<<setw(12)<<"NAME"<<setw(12) ; cout<<"ADDRESS"<<setw(12)<<"SOURCE"; cout<<setw(16)<<"DESTINATION\n"; fin.open("nel.cpp"); line(); while(fin.read((char*)&ob,size)) { cout<<pword<<setw(12)<<name; cout<<setw(12)<<addr<<setw(12); cout<<source<<setw(16)<<dest<<"\n"; } line(); fin.close(); } void airline::cancel() { int login,p=0; fin.open("nel.cpp"); fout.open("tempfile1.cpp"); cout<<"\nEnter your password : "; cin>>login; while(fin) { if(login==pword) p=1; if(login!=pword) fout.write((char*)&ob,size); fin.read((char*)&ob,size); } fin.close(); fout.close(); remove("nel.cpp");

rename("tempfile1.cpp","nel.cpp"); clrscr(); if(p==0) cout<<"\nNo match found"; else cout<<"\nReservation cancelled"; }

OUTPUT

-------------------------------------------------------------------------------AIRLINE RESERVATION SYSTEM -------------------------------------------------------------------------------MENU: 1:RESERVATION 2:DISPLAY 3:CANCELLATION 4:EXIT Enter your choice : 1 -------------------------------------------------------------------------------Enter passengers details Name ABC Address E-Mail ID Telephone no :

100,USMANROAD,CH-17 ABC@YAHOO.CO.IN 1111111

Enter the date of travelling : 1 -------------------------------------------------------------------------------1:Domestic 2:International Enter the mode:1 Enter the plane 1 or 2 or 3 PASSWORD 131 1

---------------------------------------------------------------------------------------------------------------------------------------------------------------

AIRLINE RESERVATION SYSTEM -------------------------------------------------------------------------------MENU: 1:RESERVATION 2:DISPLAY 3:CANCELLATION 4:EXIT Enter your choice : 2 -------------------------------------------------------------------------------1:Passenger Reports -------------------------------------------------------------------------------RESNO NAME ADDRESS SOURCE DESTINATION

-------------------------------------------------------------------------------131 ABC 100,USMANROAD, CH-17 Chennai Mumbai

--------------------------------------------------------------------------------

--------------------------------------------------------------------------------

AIRLINE RESERVATION SYSTEM -------------------------------------------------------------------------------MENU: 1:RESERVATION 2:DISPLAY 3:CANCELLATION 4:EXIT Enter your choice : 3

-------------------------------------------------------------------------------Enter your password : 131 Reservation cancelled --------------------------------------------------------------------------------

--------------------------------------------------------------------------------

AIRLINE RESERVATION SYSTEM -------------------------------------------------------------------------------MENU: 1:RESERVATION 2:DISPLAY 3:CANCELLATION 4:EXIT Enter your choice : 2 -------------------------------------------------------------------------------1:Passenger Reports -------------------------------------------------------------------------------RESNO NAME ADDRESS SOURCE DESTINATION

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------AIRLINE RESERVATION SYSTEM -------------------------------------------------------------------------------MENU: 1:RESERVATION 2:DISPLAY 3:CANCELLATION 4:EXIT Enter your choice : 4

TEST CASES

INPUT Reservation: reserve { .. .. .. .. }

PROCESSING Reservation system: Input the details about the passenger and the flight in which they are willing to travel. It generates a password for the passenger.

OUTPUT Enter the passenger details: Name-abc Address100,umanroad,ch-17 E-Mail idabc@yahoo.co.in Telephone no-1111111 Enter the date of traveling1:domestic 2:international Enter the mode: 1 Enter the plane 1or2or3-1 PASSWORD 131 Enter the password:131 Reservation cancelled

Cancellation: cancel { .. .. .. .. }

Cancellation: Input the Password of the passenger to be deleted. And cancels the flight.

ERROR TRACKING:

Errors per requirements specification page : denoted by Ereq-3 Errors per component design level : denoted by Edesign-5 Errors per component code level : denoted by Ecode-0