“AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 1
A Project Report On “AIR LINES RESERVATION SYSTEM” “AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 2
SUBMITTED BY:
CERTIFICATE This is to certify that the project work entitled “Air Lines Reservation System”, which is being submitted by …………….. Enrollment no………………. in partial fulfillment of the requirements for award of the degree of BCA(NEW) (Bachelor of Science in Information Technology) in ……………………………. is an authentic work carried out by the student in …….. under my supervisor and guidance.
I wish the student the best for his academic ventures.
Signature of Student
“AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 3
Signature of Supervisor: Name of Supervisor: ……………………. Date:
ACKNOWLEDGEMENT In this modern world of competition there is a race of existence in which those are efficient to come forward to succeed. Project is like a bridge between theoretical and practical .so, I have ed this particular project. Today after completing my project I feel great relief and satisfaction, now when I look back, I still the day when I was assigned this project “AIRLINES RESERVATION ". I was somewhat puzzled and a bit nervous and curious where to begin from. This was a new exposure for me. At this juncture of time when my project is completed, I would like to that who provided me power to complete this work and to my parents who always inspired and encouraged me throughout my life. Once again, I would like to convey my sincere and special thanks to Mr.
faculty of Computer Science, for his kind
cooperation and knowledge assistance in giving shape to this project and great regards for all the Collage staff who gave me the practical knowledge of all. I believe that without their guidance the successful completion of this project was not possible.
“AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 4
Signature of Student
Date:
“AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 5
TABLE OF CONTENTS CERTIFICATE..............................................................................................................................3 ACKNOWLEDGEMENT..............................................................................................................4 TABLE OF CONTENTS...............................................................................................................6 INTRODUCTION..........................................................................................................................7 OBJECTIVES................................................................................................................................8 SYSTEM ANALYSIS...................................................................................................................10 SYSTEM ANALYSIS...................................................................................................................11 FEASIBILITY STUDY................................................................................................................13 1.Technical Feasibility:................................................................................................................14 PLATFORM USED.....................................................................................................................18 PROJECT ANALYSIS.................................................................................................................19 RISK ANALYSIS..........................................................................................................................25 OJBECT ORIENTED DEVELOPMENT...................................................................................26 WORK FLOW THE PROJECT...................................................................................................27 FEASIBILITY STUDY................................................................................................................28 TYPE OF FEASIBILITIES........................................................................................................29 SYSTEM DESIGN.......................................................................................................................32 PROJECT DESIGN.....................................................................................................................39 TABLE STRUCTURE.................................................................................................................44 1. CUSTOMER.DAT (Stores all information for customers)....................................................44 2. STATION.DAT (Stores all information for Stations).............................................................44 PROGRAM STRUCTURE...........................................................................................................45 FLOW CHART.............................................................................................................................47 DFD..............................................................................................................................................60 Data Flow Diagram......................................................................................................................64 PROJECT CODE – AIRLINE RESERVATION SYSTEM.......................................................67 SOFTWARE TESTING & IMPLIMENTATION:.....................................................................98 Validation testing: .....................................................................................................................100 ALPHA TESTING: ...................................................................................................................100 IMPLEMENTATION................................................................................................................103 SYSTEM SECURITY MEASURES..........................................................................................105 PERT chart and GANTT chart.................................................................................................106 FUTURE SCOPE OF THE PROJECT....................................................................................108 REFERENCES..........................................................................................................................109
“AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 6
INTRODUCTION Project name is “Air Lines Reservation System”.
The project is very flexible and it can be modified if the need arises. I hope the will find this project work quite pleasing in its output as general sample deg has been done to enhance the view and simple programming statement and commands have been made use of, so that the had no problem in understanding the listing of the project. Files have been used to create a systematic medium of data storage and retrieval. I am sure that reader will like this effort and so, I wished him/her by hearts to ahead and turn this page.
“AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 7
OBJECTIVES Airways has a number of reservation offices in each city where the flights operate. Each reservation office has a number of reservation counters to handle reservations and cancellations.
Each counter has a counter assistant who is responsible for making
reservations or cancellations.
The main objective of this project to performed
reservation, cancellation and report. In concerned to reservations, the following activities are done. Accepts the date, sector, and class of travel from the person and checks for the
availability of a seat in the Reservation file. Confirms the details with the prospective enger and accepts the remaining details. Update the seat availability status in the reservation file and adds the enger
details to the file. The enger is assigned a unique enger Name Request (PNR) number, Collects the fare amount. Update the Daily Collection file with the fare amount.
In concerned to cancellation, the following activities is done Retrieves the details from the file using the PNR number. Verifies the details of the ticket and computes the refund amount. Updates the seat availability status in the reservations file and marks the corresponding details of the file. Makes the refund and prints the refund receipt. Files the receipt along with the signature of the enger . Updates the Daily Collection file. “AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 8
And Reports are generated as: Print the confirmed and wait-listed enger list of flights departing . Print the daily collection summary report. It also generate view rates for different sector & view flight schedules for a specific period Show status of ticket with given PNR number. Report on availability of flight & seats on desired date.
“AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 9
SYSTEM ANALYSIS • SYSTEM ANALYSIS Introduction of Definition of System Identification of Need Preliminary Investigation
Modules in AIR-LINES RESERVATION SYSTEM
“AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 10
SYSTEM ANALYSIS Analysis is a detailed study of the various operations performed by a system and their relation within and outside the system. A key question is what must be done to solve the problem. One aspect of the analysis defining the boundaries of the system and determining whether or not a candidate system should consider other related system. During analysis data are collected on the available files decision points and transaction handled by the parent system. Some logical system models and tools are used in the analysis. Data flow diagrams, interviews, onsite observation and questionnaires are examples, the interview is commonly used in analysis. It requires special skill and sensitivity to the subject being interview bias in data collection and interpretation can be problem. Training experience and common sense are required for Collections of the information are needed to do analysis. Once analysis is completed, the analyst has firm understanding of what is to be done. The next step is to decide how the problem might be solved. Thus in system design, we be move from the logical to the physical aspects of the life cycle.
The Initial Investigation and Identification of need : The most critical phase of managing system projects is planning to launch a system investigation, we need plan detailing the steps to be taken, the people to be questioned and they out come expected. The initial investigation has the objective of determining whether the s request has potential merit. The major steps are defining requirements. When the initial investigation is completed. The receives a proposal summarizing the finding the recommendation of the analyst. A key part of feasibility analysis is gathering information about the present system. The analyst knows what information to gather, where to find it, how to collect it and what “AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 11
to make of it. The proper use of tools for gathering information is the key to successful analysis. The tools are the traditional interview, questionnaire, and on-site observation. We need to know, for example how to structure an interview, what makes up a questionnaire, and what to look for on-site observations. These tools when learned help analysis assess the effectiveness of the present system and provide the groundwork for recommending a candidate system.
Identification of need The system need accomplish the following functions:
The system should allow the counter assistants to handle ticketing and refunds.
While accepting reservation data, all necessary validations should be performed. For example, the system should check whether a flight operates on the date of travel specified by the enger. It should also check the seat availability status. After all data has accepted, the system should print the ticket. It should also store the enger details, update the daily collections, and update the seat plan.
In case of cancellation, the system should accept the PNR number from the , validate the PNR number and update the cancellation flag for the enger. The system should then print the refund receipt. It should also update the daily collections to reflect the refund amount. The status of overbooked and wait-listed tickets should be changed whenever a confirmed ticket is cancelled.
The system should generate the following reports: 1. Confirmed enger list 2. Waiting list 3. Daily collection report
In addition, the new system should provide facilitate engers to perform the following tasks: “AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 12
Check the waiting list status.
View rates for different sectors.
View flight schedules for a specific period. This module should be developed as an program that can be easily integrated with various Web sites.
FEASIBILITY STUDY
“AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 13
The main objective of the preliminary analysis is to identify the problem, evaluate the system concept of feasibility, and perform the economic and technical analyses perform the cost benefit analysis. After the clarification analysis the solution proposed it is checked that it is practical to implement that solution. This is done through the feasibility study. It is checked for various aspects whether the proposed solution is technically or economically feasible or not. On the basis if which it has been categorized into four classes viz 1.) Technical 2.) Economic 3.) Operational The outcome of the preliminary analysis should be clear so that an alternate way to do the job can be found out? 1.Technical Feasibility: During the technical feasibility studies following issues are taken into consideration 1. Whether the required technology is available or not? 2. Required resources are available or not? (Manpower, programmer, software and hardware etc) Once the technical feasibility is established, it is important to consider the monetary factors also. Since it might happen that developing a particular system may be technically possible but it may be require huge investments and benefits may be less. For evaluating this, economic feasibility of the proposed system is carried out. As in our proposed system our team has technically trained manpower with knowledge of developing the system. We are going to use web technology in our system, which is readily available. Software to be used is also available easily. So technically the project is feasible.
2. Economic Feasibility: “AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 14
For any system if the expected benefits equal or exceed the expected costs, the system can be judged to be economically feasible. In economic feasibility, cost benefit analysis is done in which expected costs and benefits are evaluated. Economic analysis is used for evaluating the effectiveness of the proposed system. In economic feasibility, the most important is cost benefit analysis. As the name suggests, it is an analysis of the cost to be incurred in the system and benefits derivable out of the system. As in our institute the hardware and software required for this type of system is already available so economically our project is feasible. 3. Operational Feasibility The staff of the company (client) is used to the computer. They will only be given training about the proposed system to make efficient use of it. This feasibility study is carried out by a small group of people who are familiar with information system techniques, who understand the part of the system that are relevant to the project and are skilled in system analysis and design process. Considering the above three feasibility we can say that the system is feasible and ahead for analysis of the system.
SOFTWARE ENGINEERING PARADISM
“AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 15
In the software principle we are using the incremental model (evolutionary software process model). The incremental model combines elements of the linear sequential model with the iterative philosophy of prototyping. The linear sequential model suggests a systemic, sequential approach to software development that begins at the system level
and progress through analysis, design,
coding and module testing, delivery and maintenance. ANALYSIS: In this phase we will gathered all the information about the organization
queries and
analysis requirement for both the system and software documented and reviewed with the s. DESIGN: After analysis we documented all the Interface representations, and algorithm details. CODING AND MODULE TESTING: After deg, coding plays major role in software development process. We are using JAVA(JSP) in front end, ORACLE in the back end for coding Individual modules developed in this phase is also tested before being delivered to the program testing phase. PROGRAM TESTING: Once the module has been developed. Program testing begins We will provide some other s for testing for few days, and all problems and errors, which overcome during testing, will be pointed out. The requirement will be also kept in mind and then delivery process begins. DELIVERY: Once the system es all the tests, it is delivered to the customer and enters the maintenance phase. “AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 16
MAINTENANCE: Software will undoubtedly undergo changes because errors have been encountered. So keeping requirement and testing in mind, we will make some necessary changes.
“AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 17
PLATFORM USED Hardware Requirement
1. Pentium Processor or above 2. Color Monitor 3. Keyboard 4. 8 GB Hard Disk or above 5. 32 MB RAM or above 6. 1.44 MB Floppy Disk Drive 7. Speakers
“AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 18
Software Requirement 1.
Windows 9x or MS-DOS 6.22
2.
Turbo C++ Compiler
3.
Turbo C++ Editor or any other text editor
PROJECT ANALYSIS “AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 19
(OOPS – Object Oriented Programming System) Object Oriented Programming is a method of programming that seeks to mimic the way we form models of the world. To cope with the complexities of life, we have evolved a wonderful capacity to generalize, classify and generate abstractions. Almost every noun in our vocabulary represents a class of objects sharing some set of attributes or behavioral traits. The entire basis of Object Oriented Programming, infect is defining the Object in Object Oriented Programming. Object is a unit that combines both code and data together. And an object is an instance of a class. Class is a type of data structure defined to hold both data and the code functions. Object Oriented Programming also allows you to design and implement your application more quickly than traditional approaches. Object Oriented Programming also makes code easier to maintain so that you can refine the implementation without causing major problems. Since object-oriented programming was fundamental to the development of C++, it is important to define precisely what object-oriented programming is. Object-oriented programming has taken the best ideas of structured programming and has combined them with several powerful concepts that allow you to organize your programs more effectively. In general, when programming in an object-oriented fashion, you decompose a problem into its constituent parts. Each component becomes a self-contained object that contains its own instructions and data related to that object. Through this process, complexity is reduced and you can manage larger programs. “AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 20
Encapsulation As you probably know, all programs are composed of two fundamental elements: program statements (code) and data. Code is that part of a program that performs actions, and data is the information affected by those actions. Encapsulation is a programming mechanism that binds together code and the data it manipulates, and that keeps both safe from outside interference and misuse. In an object-oriented language, code and data may be bound together in such a way that a self-contained black box is created. Within the box are all necessary data and code. When code and data are linked together in this fashion, an object is created. In other words, an object is the device that s encapsulation. Within an object, the code, data, or both may be private to that object or public. Private code or data is known to, and accessible only by, another part of the object. That is, private code or data may not be accessed by a piece of the program that exists outside the object. When code or data is public, other parts of your program may access it, even though it is defined within an object. Typically, the public parts of an object are used to provide a controlled interface to the private elements of the object.
Polymorphism Polymorphism (from the Greek, meaning “many forms”) is the quality that allows one interface to be used for a general class of actions. The specific action is determined by the exact nature of the situation. A simple example of polymorphism is found in the “AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 21
Steering wheel of an automobile. The steering wheel (i.e., the interface) is the same no matter what type of actual steering mechanism is used. That is, the steering wheel works the same whether your car has manual steering, power steering, or rack-and-pinion steering. Therefore, once you know how to operate the steering wheel, you can drive any type of car. The same principle can also apply to programming. For example, consider a stack (which is a first-in, last-out list). You might have a program that requires three different types of stacks. One stack is used for integer values, one for floating-point values, and one for characters. In this case, the algorithm that implements each stack is the same, even though the data being stored differs. In a non-object-oriented language, you would be required to create three different sets of stack routines, calling each set by a different name, with each set having its own interface. However, because of polymorphism, in C++ you can create one general set of stack routines (one interface) that works for all three specific situations. This way, once you know how to use one stack, you can use them all. More generally, the concept of polymorphism is often expressed by the phrase “one interface, multiple methods.” This means that it is possible to design a generic interface to a group of related activities. Polymorphism helps reduce complexity by allowing the same interface to be used to specify a general class of action. It is the compiler’s job to select the specific action (i.e., method) as it applies to each situation. You, the programmer, don’t need to do this selection manually. You need only and utilize the general interface. “AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 22
The first object-oriented programming languages were interpreters, so polymorphism was, of course, ed at run time. However, C++ is a compiled language. Therefore, in C++, both run-time and compile-time polymorphism are ed.
Inheritance Inheritance is the process by which one object can acquire the properties of another object. The reason this is important is that it s the concept of hierarchical classification. If you think about it, most knowledge is made manageable by hierarchical (i.e., top-down) classifications. For example, a Red Delicious apple is part of the classification apple, which in turn is part of the fruit class, which is under the larger class food. That is, the food class possesses certain qualities (edible, nutritious, etc.) that also apply, logically, to its fruit subclass. In addition to these qualities, the fruit class has specific characteristics (juicy, sweet, etc.) that distinguish it from other food. The apple class defines those qualities specific to an apple (grows on trees, not tropical, etc.). A Red Delicious apple would, in turn, inherit all the qualities of all preceding classes, and would define only those qualities that make it unique. Without the use of hierarchies, each object would have to explicitly define all of its characteristics. However, using inheritance, an object needs to define only those qualities that make it unique within its class. It can inherit its general attributes from its parent. Thus, it is the inheritance mechanism that makes it possible for one object to be a specific instance of a more general case.
C++ Implements OOP “AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 23
As you will see as you progress through this book, many of the features of C++ exist to provide for encapsulation, polymorphism, and inheritance. , however, that you can use C++ to write any type of program, using any type of approach. The fact that C++ s object-oriented programming does not mean that you can only write object-oriented programs. As with its predecessor, C, one of C++’s strongest advantages is its flexibility.
“AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 24
RISK ANALYSIS Project Risk: It identify potential budgetary, schedule, personnel, resource, customer, and requirements problems and their impact on software. All the above factors are analyzed, customer requirements are analyzed properly.
Technical
Risk:
It
identifies
potential
design,
implementation,
interface,
verification, and maintenance problems. All the above factors have been analyzed.
Business Risk: (1) Software is developed keeping in mind that there is demand in custom, so that to avoid the market risk. (2) Software is designed to fit into the overall business strategy for the custom department, to avoid the strategic risk. (3) The software is easily understandable by the sales person’s team, so that they could know much about the product working and sell in the market. (4) It has the strong management , and not likely to change in the management people to avoid the management risk. (5) Software fits the budget and there is no budget risk.
“AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 25
OJBECT ORIENTED DEVELOPMENT An object-oriented system draws upon class definitions that are derived from the analysis model. Some of these definitions will have to be built from scratch, but many others may be reused it appropriate design patterns are recognized. Object Oriented Design establishes a design blueprint that enables a software engineer to define the Object Oriented architecture in a manner that maximized reuse, thereby improving development speed and end-product quality. The four layers of the Object Oriented design are: The subsystem layer: It represents each of the subsystems that enable the software to achieve its customer-defined requirements and to implement the technical infrastructure that s customer requirements, in the custom department. The class and object layer: It contains the class hierarchies that enable the system to be created using generalizations and increasingly more targeted specializations. The message layer: It contains the design details that enable each object to communicate with its collaborators. This layer establishes the external and inters interfaces for the software. The responsibilities layer: It contains the data structure and algorithmic design for all attributes and operations for each object. “AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 26
WORK FLOW THE PROJECT ♦ can view list of stations along with their code, charges for document and non-document by selecting option 1 from the main menu. ♦ can book the courier by selecting option 2 from the main menu. s
have to input details of courier, consignor and consignee, and data is saved in the file – customer. at. ♦ can search for station information by giving station code, by selecting option 3 from the main menu. ♦ can search and view customer details by selecting option 4 from the main menu. ♦ can view daily booking status by selecting option 1 from the report menu. ♦ can view monthly booking status by selecting option 2 from the report menu. ♦ can add, modify or delete station records by selecting option 1, 2 or 3 from the edit station menu.
“AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 27
FEASIBILITY STUDY
Steps in feasibility analysis
Eight steps are involved in the feasibility analysis. They are :
1. Form a project team and appoint a project leader. 2. Prepare system flowcharts. 3. Enumerate potential proposed systems. 4. Define and identify characteristics of proposed system. 5. Determine and evaluate performance and cost effectiveness of each proposed system. 6. Weight system performance and cost data. 7. Select the best proposed system. 8. Prepare and report final project directive to management
“AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 28
TYPE OF FEASIBILITIES 1. Economic Feasibility
Economic analysis is the most frequently used technique for evaluating the effectiveness of a proposed system. More commonly known as cost / benefit analysis; in this procedure we determine the benefits and savings that are expected from a proposed system and compare them with costs. We found the benefits outweigh the costs; we take a decision to design and implement the new proposed system.
2. Technical Feasibility
This is concerned with specifying equipment and software that will successfully satisfy the requirement. The technical needs of the system may vary considerably, but might include: · The facility to produce outputs in a given time.
“AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 29
· Response time under certain conditions. · Ability to process a certain volume of transaction at a particular speed. · Facility to communicate data to distant location.
After examining technical feasibility, we give more importance to the configuration of the system than the actual make of hardware. The configuration gives the complete picture about the system's requirements: Ten to twelve workstations are required, these units should be interconnected through LAN so that they could operate and communicate smoothly. They should have enough speeds of input and output to achieve a particular quality of printing.
3. Operational Feasibility
It is mainly related to human organizational and political aspects. The points to be considered are: · what changes will be brought with the system? · what organizational structures are disturbed?
“AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 30
· what new skills will be required? Do the existing staff have these skills?
· If not, can they be trained in due course of time? Generally project will not be rejected simply because of operational infeasibility but such considerations are likely to critically affect the nature and scope of the eventual recommendations. For operational feasibility study we appointed a small group of people who are familiar with information system techniques, who understand the parts of the business that are relevant to the project and are skilled in system analysis and design process.
4. Social feasibility Social feasibility is a determination of whether a proposed project will be acceptable to the people or not. This determination typically examines the probability of the project being accepted by the group directly affected by the proposed system change.
5. Management feasibility
“AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 31
It is a determination of whether a proposed project will be acceptable to management. If management does not accept a project or gives a negligible to it, the analyst will tend to view the project as a non-feasible one.
6. Legal feasibility Legal feasibility is a determination of whether a proposed project infringes on known Acts, Statutes, as well as any pending legislation. Although in some instances the project might appear sound, on closer investigation it may be found to infringe on several legal areas.
7. Time feasibility Time feasibility is a determination of whether a proposed project can be implemented fully within a stipulated time frame. If a project takes too much time it is likely to be rejected.
SYSTEM DESIGN “AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 32
Introduction System design provides the understandings and procedural details necessary for implementing the system recommended in the system study. Emphasis is on the translating the performance requirements into design specifications. The design has is a transition from a -oriented document (System proposal) to a document oriented to the programmers or database personnel. System design goes through two phases of development: 1)
Logical Design
2)
Physical Design
A data flow diagram shows the logical flow of the system. For a system it describes the input (source), output (destination), FILE (data stores) and procedures (data flows) all in a format that meets the ’s requirement. When analysis prepare the logical system design, they specify the needs at a level of detail that virtually determines the information flow into an out of the system and the required data resources. The logical design also specifies input forms and screen layouts. The activities following logical design are the procedure followed in the physical design e.g., producing programs, software, file and a working system. Design specifications instruct the about what the system should do.
Logical and Output Design: The logical design of an information system is analogous to an engineering blue print of an automobile. It shows the major features and how they are related to one another. The detailed specification for the new system was drawn on the bases of ’s requirement data. The outputs inputs and databases are designed in this phase. “AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 33
Output design is one of the most important features of the information system. When the output is not of good quality the s will be averse to use the newly designed system and may not use the system. There are many types of output, all of which can be either highly useful or can be critical to the s, depending on the manner and degree to which they are used. Outputs from computer system are required primarily to communicate the results of processing to s; they are also used to provide a permanent hard copy of these results for later consultation. Various types of outputs required can be listed as below: •
External Outputs, whose destination is outside the organization
•
Internal outputs, whose destination is with the organization
•
Operational outputs, whose use is purely with in the computer department e.g., program-listing etc.
•
Interactive outputs, which involve the is communicating directly with the computer, It is particularly important to consider human factor when deg computer outputs. End must find outputs easy to use and useful to their jobs, without quality output, may find the entire system unnecessary and avoid using it. The term “Output” in any information system may apply to either printer or displayed information. During the deg the output for this system, it was taken into consideration, whether the information to be presented in the form of query of report or to create documents etc. Other important factors that were taken into consideration are:
•
The End , who will use the output.
•
The actual usage of the planned information “AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 34
•
The information that is necessary for presentation
•
When and how often output and their format is needed. While deg output for project based Attendance Compilation System, the following aspects of outputs deg were taken into consideration.
•
The outputs (i.e., well formatted table outputs in the screen itself) designed are simple to read and interpret.
•
Format of each output was another important point taken into consideration. Output media, for each output appropriate media is decided whether it will be displayed on screen or will be taken to printer or both.
•
Other output design related specifications, i.e., how frequently the outputs will be generated, how many pages or sheets approximately it will keep up, what is its planned use and output distribution to s are also taken into .
These were a few major deg issues, which were taken into consideration, while deciding the output specifications for the system. As direct beneficiary of reports is the community, they were consulted constantly at every level. Formats and screen design for various reports were identified, taking into the requirements. Before finalising these were given to s for any improvement and suggestions. End s issues taken into consideration were Readability, Relevance and Acceptability. Once all the output reports to be generated by HARS system were identified, they were given to s for their acceptance. For prototyping various outputs, final outputs models were created with dummy data, before they were finalized.
Output Sources: “AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 35
Output contents originate from these sources: •
Retrieval from a data source.
•
Transmission from a process or system activity.
•
Directly from an input source.
The information produced in an output can be presented as •
Tabular contents
•
Graphic format
•
Using Icons
Output Definition: The output should be defined in of: Types of outputs •
Content-headings, numeric, alphanumeric, etc.,
•
Format-hardcopy, screen, microfilm, etc.,
•
Location-local, remote, transmitted, etc.,
•
Frequency-daily, weekly, hourly, etc.,
•
Response-immediate with in a period, etc.,
Data items
“AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 36
The name given to each data item should be recorded and its characteristics described clearly in a standard form: •
Whether alphanumeric or numeric
•
Legitimate and specific range of characteristics
•
Number of characters
•
Positions of decimal point, arithmetic design, etc.,
Input Design: The input design is the link that ties the information system into the ’s world. Input specifications describe the manner in which data enters the system for processing. Input design features can ensure the reliability of the system and produce results from accurate data, or they can result in the production of erroneous information.
Input Design consists of •
developing specifications and procedures for data preparation
•
Steps necessary to put data into a usable form for processing.
•
Data entry, the activity of putting data into the computer processing.
Objectives of Input design
“AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 37
Five objectives of design input focus on •
Controlling the amount of input required
•
Avoid delay
•
Avoiding errors in data
•
Avoiding extra steps.
•
Keeping the process simple.
Input stages several activities have to be carried out as part of the overall input process. They include some or all of the following. Data recording (i.e., collection of data) Data encapsulation (i.e., transfer of data) Data conversion (i., e.controlling the flow of data) Data transmission (i.e., transporting the data) Data validation (i.e., checking the input data) Data correction (i.e., correcting the errors) Input Performa were designed, after a careful discussion with s. It was attempted to cover all requirements. Designed Performa were given to for any suggestion and final approval. Various data items were identified and wherever necessary were recorded. As the data concerning of HARS is voluminous in nature and number of case will grow dynamically in future, proper care was taken for accuracy and consistency of data.
“AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 38
Input designs are aimed at reducing the chances of mistakes of errors. As the human beings are prone to errors there is always a possibility of occurrence of chance of errors. Adequate validation checks are incorporated to ensure error free data storage. Some of the data validation checks applied are as following: •
Redundancy of data is checked. It means the records of primary key do not occur twice.
•
Primary key field of any table must not be left blank.
•
Wherever items are coded, input code is checked for it’s validly with respect to several checks.
•
Utmost care has been taken to incorporate the validation at each stage of the system. E.g. when entering records into employee information table for employee, it is checked that whether the corresponding employee exists in the employee information table etc.,
Enough messages and dialogue boxes are provided while design screen, which does guide at the time of any errors, or at time of entry. This feature provides a -friendly interface to native s. It can be emphasized that input deigns of HARS system is so designed that it ensures easy and error free data entry mechanism. Once one is sure of input data the output formatting becomes a routine work.
PROJECT DESIGN
Modules & Process logic “AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 39
Airways has a number of reservation offices in each city where the flights operate. Each reservation office has a number of reservation counters to handle reservations and cancellations.
Each counter has a counter assistant who is responsible for making
reservations or cancellations. The procedure followed for performing reservations and cancellations is given bellow. Reservation Reservations for a flight commence 30 days before the date of the flight. The procedure for making reservations is given below. The procedure described below deals with the provisional reservations the can be made through telephone conversation. On receiving request for reservation from a person, the counter assistant performs the following activities: Accepts the date, sector, and class of travel from the person and checks for the
availability of a seat on the requested date. The details about the availability seats and the seat plan are kept in the Reservation file. Confirms the details with the prospective enger and accepts the remaining details. These details include the preferences such as a window or an aisle seat, a smoking or a non-smoking zone, meal preferences such as vegetarian or nonvegetarian, and special service requests (SSR), such as dietary and medical considerations. Update the seat availability status in the reservation file and adds the enger
details to the file. The enger is assigned a unique enger Name Request (PNR) number, which is used to access ticket details for queries and cancellation. Collects the fare amount.
Prints the ticket and gives it to the enger. Update the Daily Collection file with the fare amount.
Horizon Airways also provides for overbooked and wait-listed tickets for the economy class. Overbooking is allowed for 10 seats per flight. For example, if the capacity of an “AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 40
aircraft is 340 seats, booking are made for 350 seats, that is, 340 seats + 10 overbooked tickets. If the number of bookings exceeds the capacity and overbooking, a wait-listed ticket is issued to the enger with his or her consent. An overbooked or wait-listed enger is accommodated on the flight depending on the availability of a seat when the enger checks in. A enger who cannot be accommodated on a flight is given full refund.
Cancellation On receiving a cancellation request from a enger the counter assistant performs the following tasks: Retrieves the details from the file using the PNR number. Verifies the details of the ticket and computes the refund amount. Updates the seat availability status in the reservations file and marks the corresponding details of the file. Makes the refund and prints the refund receipt. Files the receipt along with the signature of the enger. Updates the Daily Collection file. The amount of refund is calculated based on the ticket status and the date cancellation. If the ticket is wait-listed or overbooked, full amount is refunded.
3 classes have been used in this project:
STATION DATE CUSTOMER
“AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 41
Modules in class STATION: • addition() • modification() • deletion() • list() • search() • amount()
:
Function to add new station record in the
:
file. Function to modify existing record of
:
station. Function to delete existing record of the
: :
station. Function to display list of all stations. Function to search information for
:
station. Function to calculate and return total amount for the given information of
•
found code()
:
station. Function to return station code found in the file or not.
Modules in class DATE: • valid()
:
Function to check validity of the given date.
“AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 42
Modules in class CUSTOMER: • booking()
:
Function to book courier along with consignor and consignee information and
• search() • •
daily list() monthly list()
• lastcustcode()
:
store in the file – customer. at. Function to search for the customer
: :
information. Function to display daily booking status. Function to display monthly booking
:
status. Function to return last customer code in the customer file.
“AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 43
TABLE STRUCTURE Two files have been used in this project:
1. CUSTOMER.DAT (Stores all information for customers) • custcode • • • • • • • •
Name Address Phone Strode Came Cadress hone Type
• Weight • Amount • DoB
:
Code no. of the customer. This is unique
: : : :
field. Name of the customer. Address of the customer. Phone no. of the customer. Station code to which courier has to be
: : : :
sends. Consignee name. Consignee address. Consignee phone no. Type of the courier (document or non-
: : :
document) Weight of the courier. Total charges for sending the courier. Date of booking courier.
2. STATION.DAT (Stores all information for Stations) •
strode
:
Code no. of the station. “AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 44
• Name • Doc • Docadd • Ndoc • ndocadd
: : :
Name of the station. Charges for document. Additional charges for document above
: :
500 gms. Charges for non-document. Additional charges for non-document above 500 gms.
PROGRAM STRUCTURE 3 classes have been used in this project: STATION DATE CUSTOMER Modules in class STATION: “AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 45
• addition() • modification() • deletion() • list() • search() • amount()
:
Function to add new station record in the
:
file. Function to modify existing record of
:
station. Function to delete existing record of the
: :
station. Function to display list of all stations. Function to search information for
:
station. Function to calculate and return total amount for the given information of
• foundcode()
:
station. Function to return station code found in the file or not.
Modules in class DATE: • valid()
:
Function to check validity of the given date.
Modules in class CUSTOMER: • booking()
:
Function to book courier along with consinor and consinee information and
• search()
:
store in the file – customer.dat. Function to search for the customer information. “AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 46
• dailylist() • Monthlylist() • lastcustcode()
: :
Function to display daily booking status. Function to display monthly booking
:
status. Function to return last customer code in the customer file.
FLOW CHART “AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 47
START 1. Station Information 2. Booking 3. Search Station 4. Customer Record 5. Reports 6. Edit Station 0. Quit Enter your Choice :
MENU
Input Ch
If Ch=1
Y
1
N If Ch=2
STOP 6
Y
If Ch=6 Ch=0 N
N
IfN Ch=3 Ch=5 N
Y
2 “AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 48
Y Y
345
If Ch=4
1
Open file station.dat in read only mode.
Read data from file and Display station information.
“AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 49
if eof
Y
MENU
N
switch to next record
2
Input consinor, consinee and courier information.
Open file customer.dat in append mode.
“AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 50
write data in file.
MENU
3 Input code no. of the station
Open file station.dat in read only mode.
Read data from file.
if eof
MENU N
if stcode = file.stcode
N “AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 51
Y
Y Display station information.
switch to next record
4
Input code no. of the customer
Open file customer.dat in read only mode.
Read data from file.
Y
if eof
MENU N
if code = file.code
N
“AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 52
Y Display customer information.
switch to next record 5
1. Daily Booking Status 2. Monthly Booking Status 0. Exit Enter your Choice : Input Ch
If Ch=1
Y
R1
N If Ch=2
Y
R2
N If Ch=0
Y MENU
“AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 53
R1
Input Date to view status
Open file customer.dat in read only mode.
Read data from file.
if eof
5
N
if date = booking date
N “AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 54
Y
Y Display booking information.
R2 switch to next record Input month & year to view status
Open file customer.dat in read only mode.
Read data from file.
if eof
5
N
if month = booking month
N
“AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 55
Y
Y
Display booking information.
6 to next record switch
1. Add new station record 2. Delete Record 3. Modify Record 0. Exit Enter your Choice : Input Ch
If Ch=1
Y
E1
N If Ch=2
Y
E2
N If Ch=3
Y
E3
N Y
“AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 56
If Ch=0
MENU
E1
Input station information.
Open file station.dat in append mode.
write data in file.
6
“AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 57
E2
Input code no. of the station
Open master file station.dat in read mode. Open transaction file in write mode
Read all the records from master file and write in transaction file accept the record to be deleted.
Open master file station.dat in write mode. Open transaction file in read mode
Read all the records from transaction file and write in master file.
“AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 58
6 E3
Input code no. of the station
Open master file station.dat in read mode. Open transaction file in write mode
Read all the records from master file and write in transaction file with updation.
Open master file station.dat in write mode. Open transaction file in read mode
“AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 59
DFD
“AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 60
ENTITY RELATIONSHIP DIAGRAM (ERD): The overall logical structure of a database can be express graphically by an E-R-Diagram. Then relative simplicity and pictorial clarity of this diagramming technique may well System in large part for the wide spread use of the E-R model. 7.1.1 components of E-R Diagram:
Rectangle: which represent entity sets
Ellipses: which represent attributes
Diamonds: which represent relationships sets
Lines: which link attribute to entity set and entity set to relationship sets
Double ellipses: which represent multi values attributes
Dashed ellipses: which denote derived attributes
Entity-Relationship Diagram “AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 61
The following diagram depicts various entities involved in the airline reservation system the attributes of entities and the relationships between entities: SS R
Seat Zone
Meal
Cancel Flag
Seat preference
First Class Seats available
Aircraft Type
Statu s Flight No.
Dep. Time
Arr.Time
ENGER
Class
M
Boar ds
1
FLIGHT
Flight Date Business
1
Class Seats
Travel Date
Age
Available
PNR No. s Economy Clas
First Name
le Seats availab
Last Name Operates in
1 Sector ID
SECTOR
Week Day 2
Description
Week Day 1
First Class Fare Business Class Fare
Economy Class Fare
The Entity-Relationship Diagram for the Airlines Reservation System
DATAFLOW DIAGRAM (DFD): Full descriptions of the system actually consist of a set of data flow diagram. Specification: “AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 62
Here we have used YOURDON’s data flow symbols. •
Dataflow: Data move in a specific direction from and origin to a destination the form of a document.
•
Process: People, procedures or device that use or produced data. The physical component is not identified.
•
Source or destination: External source or destinations of data interact with the system. The source and sink are interchangeable with origin and destination.
•
Data store: Here data are store or referenced by a process in the system.
“AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 63
Data Flow Diagram
Check waiting Status
Query waiting list & Daily
Reservation/Cancellation Reques
Update available seat/amount
Ask availability of seat, Fare & schedule
Feed complete detail
Airways
Customer Response availability of seat, Fare & schedule Reservation/
Counter Assistant
Reservatio
Generate PNR No.
n System
Cancellation response
Ticket Print Response waiting list & Daily
Waiting status
CONTEXT LEVEL DFD
“AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 64
“AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 65
Program coding
“AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 66
PROJECT CODE – AIRLINE RESERVATION SYSTEM # # # # # # # # #
include include include include include include include include include
<string.h> <stdlib.h> <stdio.h>
<dos.h>
<process.h>
class TICKET { private: void ADD_RECORD(char[10],char[15],char[15],int,int); public: void ADDITION(void); void ENQUIRY(void); char *FLIGHTNO(int); protected: char fltno[10],from[15],to[15]; int ecofair,exefair; }; //THIS CLASS CONTROLS ALL THE FUNCTIONS RELATED TO ENGERS class ENGER { public: void ADD_RECORD(int,int,char[26],char[36],int,char,char); void DELETE_TICKET(int); int DELETE_FLIGHT(int); void LIST(void); int LAST_TICKETNO(void); int SEATS(int); “AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 67
int FOUND(int); char *NAME(int); void _INFO(); void MODIFY(); protected: char Class,name[26],address[36],sex; int slno,age,ticketno; }; //THIS IS THE DERIVED CLASS WHICH CONTROLS ALL THE FUNCTIONS //RELATED TO RESERVATION,CANCELLATION,ETC. class RESERVE : public TICKET,public ENGER { public: void RESERVATION(void); void CANCELLATION(void); void DISPLAY_TICKET(void); void DELETE_ALL(void); }; //FUNCTION TO ADD GIVEN DATA IN THE TICKET FILE(TICKET.DAT) void TICKET :: ADD_RECORD(char t_fltno[10],char t_from[15],char t_to[15],int t_ecofair,int t_exefair) { fstream file; file.open("TICKET.DAT",ios::app); stry(fltno,t_fltno); stry(from,t_from); stry(to,t_to); ecofair = t_ecofair; exefair = t_exefair; file.write((char*)this,sizeof(TICKET)); file.close(); } //FUNCTION TO RETURN FLIGHT NO. FOR THE GIVEN S.NO char *TICKET :: FLIGHTNO(int sno) { fstream file; file.open("TICKET.DAT",ios::in); int count = 1; while(file.read((char*) this,sizeof(TICKET))) “AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 68
{ if (sno == count) break; count++; } file.close(); return fltno; } //FUNCTION TO GIVE DATA TO ADD RECORDS IN THE TICKET FILE void TICKET :: ADDITION(void) { fstream file; file.open("TICKET.DAT",ios::in); if (!file.fail() ) return; file.close(); ADD_RECORD("KL176","DELHI","MUMBAI",1500,1700); ADD_RECORD("KL177","MUMBAI","DELHI",1500,1700); ADD_RECORD("KL156","DELHI","CALCUTTA",1700,1900); ADD_RECORD("KL157","CALCUTTA","DELHI",1700,1900); ADD_RECORD("KL166","DELHI","MADRAS",2100,2300); ADD_RECORD("KL167","MADRAS","DELHI",2100,2300); ADD_RECORD("KL176","MUMBAI","CALCUTTA",1900,2100); ADD_RECORD("KL177","CALCUTTA","MUMBAI",1900,2100); ADD_RECORD("KL186","MUMBAI","MADRAS",1800,2000); ADD_RECORD("KL187","MADRAS","MUMBAI",1800,2000); ADD_RECORD("KL196","CALCUTTA","MADRAS",1600,1800); ADD_RECORD("KL197","MADRAS","CALCUTTA",1600,1800); } //FUNCTION TO DISPLAY LIST OF FLIGHTS void TICKET :: ENQUIRY(void) { clrscr(); fstream file; file.open("TICKET.DAT",ios::in); gotoxy(30,3); cout<<"LIST OF THE FLIGHTS"; gotoxy(18,5); cout<<"Sno. FLIGHT NO. FROM TO ECO.FAIR EXE.FAIR"; int row = 7,sno = 1; while(file.read((char*)this, sizeof(TICKET))) “AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 69
{ gotoxy(18,row); cout<<sno; gotoxy(23,row); cout<
TO EXIT"; gotoxy(3,20); clreol(); cout<<"ENTER THE SNO. OF THE FLIGHT : "; gets(t1); t2 = atoi(t1); sno = t2; if(strlen(t1) == 0) return; if(sno < 1 || sno > 12) { valid = 0; “AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 70
gotoxy(3,23); clreol(); cout<<"ENTER CORRECTLY"; getch(); } }
while(!valid);
int i=1; fstream file; file.open("TICKET.DAT",ios::in); while(file.read((char*)this, sizeof(TICKET))) { if(sno == i) break; i++; } file.close(); stry(pfltno,fltno); if(p.SEATS(sno)>=250) { gotoxy(5,21); cout<<"\7Sorry! SEATS ARE NOT AVAILABLE"; getch(); return; } gotoxy(3,23); clreol(); cout<<"E=ECONOMIC,X=EXECUTIVE or PRESS <ENTER> TO EXIT"; do { gotoxy(3,21); clreol(); cout<<"BY WHICH CLASS YOU WOULD LIKE TO TRAVEL : "; pclass = getche(); pclass = toupper(pclass); if(pclass == 13) return; } while(pclass !='E' && pclass !='X'); clrscr(); gotoxy(72,3); cout<<"<0>-EXIT"; gotoxy(34,2); “AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 71
cout<<"RESERVATION"; gotoxy(5,5); cout<<"NAME : "; gotoxy(5,6); cout<<"ADDRESS : "; gotoxy(5,7); cout<<"SEX M/F : "; gotoxy(5,8); cout<<"AGE : "; do { valid = 1; gotoxy(5,25); clreol(); cout<<"ENTER THE NAME OF THE ENGER"; gotoxy(15,5); clreol(); gets(pname); if(pname[0] == '0') return; if(strlen(pname) < 1 || strlen(pname) > 25) { valid = 0; gotoxy(5,25); clreol(); cout<<"\7ENTER CORRECTLY {RANGE : 1 TO 25}"; getch(); } } while(!valid); do { valid = 1; gotoxy(5,25); clreol(); cout<<"ENTER THE ADDRESS OF THE ENGER"; gotoxy(15,6); clreol(); gets(paddress); if(paddress[0] == '0') return; if(strlen(paddress) < 1 || strlen(paddress) > 35) { valid = 0; gotoxy(5,25); clreol(); “AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 72
cout<<"\7ENTER CORRECTLY {RANGE : 1 TO 35}"; getch(); } }
while(!valid);
do { gotoxy(5,25); clreol(); cout<<"ENTER THE SEX OF THE ENGER"; gotoxy(15,7); clreol(); psex = getche(); psex = toupper(psex); if(psex == '0') return; } while(psex !='M' && psex !='F' ); do { valid = 1; gotoxy(5,25); clreol(); cout<<"ENTER THE AGE OF THE ENGER"; gotoxy(15,8); clreol(); gets(t1); t2 = atoi(t1); page = t2; if(t1[0] == '0') return; if(page < 1 || page > 100) { valid = 0; gotoxy(5,25); clreol(); cout<<"\7ENTER CORRECTLY "; getch(); } } while(!valid); clrscr(); gotoxy(11,4); cout<<"****************************************************"; gotoxy(11,21); “AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 73
cout<<"****************************************************"; gotoxy(33,6); cout<<"TICKET NO. : "<
Enrollment No. Page 74
char t1[15],pclass,pname[26],paddress[36],psex,pfltno[10]; int t2,valid,page,tno,sno; _INFO(); cout<<"\nENTER THE TICKET NUMBER OF THE ENGER"; cin>>tcno; fstream file; file.open(".DAT",ios::in|ios::out); int m=0; int l; file.read((char*)this,sizeof(ENGER)); while(!file.eof()) { m++; if(tcno==ticketno) { l=(m-1)*sizeof(ENGER); cout<
-EXIT"; gotoxy(34,2); cout<<"RESERVATION"; gotoxy(5,5); cout<<"NAME : "; gotoxy(5,6); cout<<"ADDRESS : "; gotoxy(5,7); cout<<"SEX M/F : "; gotoxy(5,8); cout<<"AGE : "; gotoxy(5,25); clreol(); cout<<"ENTER THE NAME OF THE ENGER"; gotoxy(15,5); clreol(); gets(pname); gotoxy(5,25); clreol(); cout<<"ENTER THE ADDRESS OF THE ENGER"; gotoxy(15,6); clreol(); gets(paddress); gotoxy(5,25); “AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 75
clreol(); cout<<"ENTER THE SEX OF THE ENGER"; gotoxy(15,7); clreol(); psex = getche(); psex = toupper(psex); gotoxy(5,25); clreol(); cout<<"ENTER THE AGE OF THE ENGER"; gotoxy(15,8); clreol(); gets(t1); t2 = atoi(t1); page = t2; cout<<"CLASS:E(ECONOMIC) OR X(EXECUTIVE)"; pclass=getche(); if(strlen(paddress)!=0) stry(address,paddress); if(strlen(pname)!=0) stry(name,pname); if(strlen(t1)!=0) age=page; if(psex!=13) sex=psex; if(pclass!=13) Class=pclass; file.seekp(l); file.write((char*)this,sizeof(ENGER)); file.close(); return; } else file.read((char*)this,sizeof(ENGER)); } } void ENGER :: _INFO() { fstream file; file.open(".DAT",ios::in); cout<<" INFORMATION\n"; cout<<" **************************\n"; gotoxy(2,4);
ENGERS
“AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 76
cout<<"T.NO."; gotoxy(11,4); cout<<"S.NO."; gotoxy(25,4); cout<<"NAME"; gotoxy(48,4); cout<<"ADDRESS"; gotoxy(66,4); cout<<"AGE"; gotoxy(70,4); cout<<"SEX"; gotoxy(74,4); cout<<"CLASS"; gotoxy(1,5); cout<<"********************************************************* **********************"; int tno,sno,page; char pname[26],paddress[36],psex,pclass,pfltno[10]; int i=6; while(file.read((char*)this,sizeof(ENGER))) { tno=ticketno; sno=slno; stry(pname,name); stry(paddress,address); page = age; psex = sex; pclass = Class; gotoxy(2,i); cout<
Enrollment No. Page 77
//THIS FUNCTION RETURNS THE LAST TICKET NO. IN THE ENGER FILE int ENGER ::LAST_TICKETNO(void) { fstream file; file.open(".DAT",ios::in); int count = 0; while(file.read((char*)this,sizeof(ENGER))) count = ticketno; file.close(); return count; } //THIS FUNCTION RETURNS TOTAL NO. OF SEATS IN THE ENGER FILE int ENGER :: SEATS(int sno) { fstream file; file.open(".DAT",ios::in); int count = 0; while(file.read((char*)this,sizeof(ENGER))) { if(sno == slno) count++; } file.close(); return count; } //THIS FUNCTION RETURNS 0 IF THE TICKET NO. IS NOT FOUND IN THE //ENGER FILE int ENGER :: FOUND(int tno) { fstream file; file.open(".DAT",ios::in); int found = 0; while(file.read((char*)this,sizeof(ENGER))) { if(tno == ticketno) { found = 1; break; “AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 78
} } file.close(); return found; } //THIS FUNCTION RETURNS ENGER'S NAME FOR THE GIVEN TICKETNO. char *ENGER :: NAME(int tno) { fstream file; file.open(".DAT",ios::in); while(file.read((char*)this,sizeof(ENGER))) { if(tno == ticketno) break; } file.close(); return name; } //THIS FUNCTION DISPLAYS THE LIST OF THE ENGERS void ENGER :: LIST (void) { clrscr(); char t1[10]; int t2,sno,valid; TICKET ticket; ticket.ENQUIRY(); do { valid = 1; gotoxy(3,23); clreol(); cout<<"PRESS <ENTER> TO EXIT"; gotoxy(3,20); clreol(); cout<<"ENTER SNO.OF THE FLIGHT WHOSE DETAILS YOU WANT"; gets(t1); t2 = atoi(t1); sno = t2; if(strlen(t1) == 0) return; if(sno < 1 || sno > 12) “AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 79
{
}
valid = 0; gotoxy(3,23); clreol(); cout<<"\7ENTER CORRECTLY"; getch(); } while(!valid);
clrscr(); int row = 8,found = 0,flag = 0; char ch; gotoxy(3,4); cout<<"FLIGHT NO.----> "<
"; “AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 80
ch = getch(); if(ch == 27) break; clrscr(); gotoxy(32,3); cout<<"LIST OF ENGERS"; gotoxy(2,5); cout<<"TICKET NO. NAME } else row++;
CLASS ";
} } if(!found) { gotoxy(5,10); cout<<"\7RECORDS NOT FOUND"; } if(!flag) { gotoxy(5,23); cout<<"PRESS ANY KEY TO CONTINUE...."; getch(); } file.close(); } //THIS FUNCTION DELETES ENGER RECORDS FOR THE GIVEN TICKET NO. void ENGER :: DELETE_TICKET(int tno) { fstream file; file.open(".DAT",ios::in); fstream temp; temp.open("temp.dat",ios::out); file.seekg(0,ios::beg); while(!file.eof()) { file.read((char*)this,sizeof(ENGER)); if(file.eof()) break; if(tno != ticketno) temp.write((char*)this,sizeof(ENGER)); } file.close(); temp.close(); “AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 81
file.open(".DAT",ios::out); temp.open("temp.dat",ios::in); temp.seekg(0,ios::beg); while(!temp.eof() ) { temp.read((char*)this,sizeof(ENGER)); if(temp.eof() ) break; file.write((char*)this,sizeof(ENGER)); } file.close(); temp.close(); } //THIS FUNCTION DELETES ENGER RECORDS FOR THE GIVEN FLIGHTNO. int ENGER :: DELETE_FLIGHT(int sno) { fstream file; file.open(".DAT",ios::in); fstream temp; temp.open("temp.dat",ios::out); file.seekg(0,ios::beg); int found = 0; while(!file.eof() ) { file.read((char*)this,sizeof(ENGER)); if(file.eof() ) break; if(sno !=slno) temp.write((char*)this,sizeof(ENGER)); else found = 1; } file.close(); temp.close(); file.open(".DAT",ios::out); temp.open("temp.dat",ios::in); temp.seekg(0,ios::beg); while(!temp.eof() ) { temp.read((char*)this,sizeof(ENGER)); if(temp.eof() ) break; file.write((char*)this,sizeof(ENGER)); } “AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 82
file.close(); temp.close(); return found; } //THIS FUNCTION CANCELS ENGER'S TICKET void RESERVE ::CANCELLATION(void) { clrscr(); char t1[10],ch; int t2,tno,valid; do { valid = 1; gotoxy(3,23); clreol(); cout<<"PRESS <ENTER> TO SEE LIST OR 0 TO EXIT "; gotoxy(3,20); clreol(); cout<<"ENTER TICKETNO. OF ENGER TO CANCEL THE TICKET"; gets(t1); t2 = atoi(t1); tno = t2; if(t1[0] == '0') return; if(strlen(t1) == 0) { valid = 0; LIST(); clrscr(); } if(!FOUND(tno) && valid) { valid = 0; gotoxy(3,23); clreol(); cout<<"\7RECORD NOT FOUND"; getch(); } } while(!valid); //PAGE 11 clrscr(); “AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 83
fstream file; file.open(".DAT",ios::in); while(file.read((char*)this,sizeof(ENGER))) if(ticketno == tno) break; file.close(); int i = 1; file.open("TICKET.DAT",ios::in); while(file.read((char*)this,sizeof(TICKET))) { if(slno == i) break; i++; } file.close(); ENGER p; gotoxy(11,4); cout<<"****************************************************"; gotoxy(11,21); cout<<"****************************************************"; gotoxy(33,6); cout<<"TICKET NO. : "<
Enrollment No. Page 84
}
ch = toupper(ch); while(ch != 'Y' && ch != 'N');
if(ch == 'N') return; DELETE_TICKET(tno); gotoxy(10,25); cout<<"\7TICKET CANCELLED"; getch(); } //THIS FUNCTION DISPLAYS THE ENGER'S INFORMATION void RESERVE :: DISPLAY_TICKET(void) { //
PAGE 12
clrscr(); char t1[10],ch; int t2,tno,valid; do { valid = 1; gotoxy(3,23); clreol(); cout<<"PRESS <ENTER rel="nofollow"> TO SEE LIST OR 0 TO EXIT"; gotoxy(3,20); clreol(); cout<<"ENTER THE TICKETNO. OF THE ENGER : "; gets(t1); t2 = atoi(t1); tno = t2; if(t1[0] == '0') return; if(strlen(t1) == 0) { valid = 0; LIST(); clrscr(); } if(FOUND(tno) && valid) { valid = 0; gotoxy(3,23); clreol(); cout<<"\7RECORD NOT FOUND"; “AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 85
getch(); } }
while(!valid);
clrscr(); fstream file; file.open(".DAT",ios::in); while(file.read((char*)this,sizeof(ENGER))) if(ticketno == tno) break; file.close(); int i = 1; file.open("TICKET.DAT",ios::in); while(file.read((char*)this,sizeof(TICKET))) { if(slno == i) break; i++; } file.close(); ENGER p; gotoxy(11,4); cout<<"****************************************************"; gotoxy(11,21); cout<<"****************************************************"; gotoxy(33,6); cout<<"TICKET NO. : "<
PAGE 13
gotoxy(20,15); cout<<"SEX : "<<sex; gotoxy(20,17); cout<<"AGE : "<
Enrollment No. Page 86
cout<<"TOTAL FAIR : "<<ecofair; else cout<<"TOTAL FAIR : "<<exefair; gotoxy(10,25); cout<<"PRESS ANY KEY TO CONTINUE...."; getch(); } //THIS FUNCTION GIVES FLIGHT NO. TO DELETE ALL ENGER RECORDS void RESERVE :: DELETE_ALL(void) { clrscr(); ENQUIRY(); char t1[5]; int t2,valid,sno; do { valid = 1; gotoxy(3,23); clreol(); cout<<"PRESS <ENTER rel="nofollow"> TO EXIT"; gotoxy(3,20); cout<<"ENTER SNO. OF THE FLIGHT TO DELETE RELATED RECORDS"; gets(t1); t2 = atoi(t1); sno = t2; if(strlen(t1) == 0) return; if(sno < 1 || sno > 12) { valid = 0; gotoxy(3,23); clreol(); cout<<"\7ENTER CORRECTLY"; getch(); } } while(!valid); gotoxy(3,23); if(!DELETE_FLIGHT(sno) ) cout<<"\7RECORDS NOT FOUND.PRESS ANY KEY TO CONTINUE...."; else “AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 87
cout<<"\7RECORDS DELETED.PRESS ANY KEY TO CONTINUE...."; getch(); } //THIS IS THE MAIN FUNCTION WHICH DISPLAYS MENU AND CALLS FUNCTIONS void main(void) { // PAGE 14 ENGER p; TICKET ticket; RESERVE r; ticket.ADDITION(); int ch,ch1; while(1) { clrscr(); gotoxy(29,9); cout<<"AIR TICKET RESERVATION"; gotoxy(29,10); cout<<"~~~~~~~~~~~~~~~~~~~~~~~~~~"; gotoxy(30,11); cout<<"1 : RESERVATION"; gotoxy(30,12); cout<<"2 : CANCELLATION"; gotoxy(30,13); cout<<"3 : ENGER RECORDS ->"; gotoxy(30,14); cout<<"4 : ENQUIRY"; gotoxy(30,15); cout<<"5 : LIST OF ENGERS"; gotoxy(30,16); cout<<"6 : QUIT"; gotoxy(30,18); cout<<"ENTER YOUR CHOICE : "; cin>>ch; switch(ch) { case 1: r.RESERVATION(); break; case 2: “AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 88
r.CANCELLATION(); break; case 3: clrscr(); gotoxy(29,10); cout<<" ENGER RECORDS "; gotoxy(29,11); cout<<"~~~~~~~~~~~~~~~~~~~~~~~"; gotoxy(33,12); cout<<"1 : ENGER INFORMATION"; gotoxy(33,13); cout<<"2 : MODIFY"; gotoxy(33,14); cout<<"0 : EXIT"; gotoxy(33,16); cout<<"ENTER YOUR CHOICE--->"; cin>>ch1; if(ch1==1) {clrscr(); p._INFO(); getch(); } else if(ch1==2) {clrscr(); p.MODIFY();} else break; break; case 4: ticket.ENQUIRY(); gotoxy(2,23); cout<<"PRESS ANY KEY TO CONTINUE...."; getch(); break; case 5: p.LIST(); break; case 6: exit(0); default: cout<<"ENTER THE CORRECT CHOICE"; } “AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 89
} }
OUTPUT SCREEN
“AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 90
PAGE OF AIRLINES TICKET RESERVATION
“AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 91
Si NO. OF FLIGHTS
“AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 92
LIST OF THE FLIGHTS
“AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 93
ENGER RECORDS
“AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 94
LIST OF THE FLIGHTS
“AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 95
ENGERS INFORMATION “AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 96
“AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 97
SOFTWARE TESTING & IMPLIMENTATION: SOFTWARE TESTING: The purpose of this document is to cover testing of Horizon Airways project from all aspects i.e. from module wide testing to system integration testing. Software testing is a process of executing a program with objective of finding an error. Software quality should be a primary concern in software development efforts. Software testing and evaluation are traditional method of checking software quality. It consists of putting together various coded pieces of a design, testing them and correcting the parts of the code or the design that is not correct. At this stage some errors are introduced purposely to test whether the program will spot them. Test summary document with test results (Quality Record) for each test case with problems found during the test execution. After review of test summary document, it will be decided if any test case is to be repeated or if the identified problem should be converted into “a defect” to be fixed in subsequent release of product. Data entry: • Is alphanumeric data entry properly echoed and input to the system? • Do graphical modes of data entry work properly? • Is invalid data properly recognized? • Are data input messages intelligible? TESTING STRATEGIES: A strategy for software testing may also be viewed in the context of spiral. Unit testing begins at the vertex of the spiral and concentrates on each unit of the software as implemented in source code. Testing progresses the moving outward along the spiral to integrations testing. Where the focus is on design and the and the construction of the software architecture. Taking another turn outward on the spiral, we encounter validation testing, where requirements established as part of software requirements analysis are “AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 98
validated against the software that has been constructed. Finally, arrive at system testing, where the software and other system elements are tested as a whole. Here I will specify each testing but the outcome of the testing and reports is not included because they are very large and I have to give Project- Report in limited page. Unit testing: In Unit testing module interface, local data structures. Boundary conditions, independent paths, error handling paths are tested. Module interface is tested to ensure that information properly flows into and our of the program unit under test. The local data is structure is examined to ensure that data stored temporarily maintained its integrity during all steps in an algorithm’s execution. Boundary conditions are tested to ensure that the module operates properly at boundaries established to limit or restrict processing. All independent paths through the control structure are exercised to ensure that all statements in a module have been executed at lest once. And finally, all error handling paths are tested. Thus the unit testing is done after code development, reviewed, and verified for correct syntax and in unit testing we execute each module one by one and prepare a report of result. Integration technique: Integration testing is a systematic technique for constructing the program structure while conducting tests to uncover errors associated with interfacing. The objective is to take unit tested modules and build a program structure that has been dictated by design. Their are three type of integration testing, each are discussed below.
TOP DOWN INTEGERATION: This technique is an approach to construction of program structure. Modules are integrated by moving downward through the control hierarchy, beginning with the main “AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 99
control module. Modules subordinate to the main control module are incorporated into the structure either into a depth-first or breadth first manner. I used depth-search for testing which integrate all modules on a major control path of structure. BOTTOM OF INTEGERATION: This technique begins construction and testing with atomic modules. Because modules are integrated from the bottom up, processing required for module subordinate to a given level’s always available and the need for stubs are eliminated. REGRESSION TESTING: This technique is the activity that help to ensure that changes during the testing do not introduce unintended behavior or additional errors. Validation testing: Validation succeeds when software functions in a manner that can be reasonably expected by the customer. There are two types of validation testing these are discussed below. ALPHA TESTING: The alpha tests are conducted at the developer’s site by a customer. The software is used in a natural setting with the developer. Alpha tests are conducted in a controlled environment. BETA TESTING: The beta tests are conducted at one or more customer sites by the end use of the software. Unlike, the alpha testing, the developer is generally not present. Therefore, the beta test is a “live” application of the software in an environment that cannot be controlled by the developer. The customer records all problems that are encountered during beta testing and reports these to the developer at regular intervals. As a results of problems reported during beta test. The software developer makes modifications and then prepares for release of the software product to the entire customer base. “AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 100
System testing: It is a series of different test whose primary purpose is to fully exercise the computerbased system. These are discussed below: RECOVERY TESTING: It the system tests that forces the software to fail in a variety of ways and verifies that recovery is properly performed. SECURITY TESTING: It attempts to that protection mechanisms built into a system will in fact protect, it from improper penetration. STRESS TESTING: It executes a system in a manner that demands resources in abnormal quantity, Frequency, or volume. PERFORMANCE TESTING: It is designed to test run-time performance of software within the context of an integrated system. It occurs throughout all steps in the testing process.
GUI Verification Field Level Validation TESTING METHODOLOGIES Global Level Validation GUI Testing Consistency of GUIs Testing Standard Controls
Testing Strategy
Stress/Load Testing Profile Testing Database Script Testing Fail-over Testing Compatibility Testing
“AIR LINES RESERVATION SYSTEM”
Functional Testing Scenario Based Testing
Negative Testing
Enrollment No.
Performance Testing Page 101
“AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 102
IMPLEMENTATION IMPLEMENTATION PLAN:
Implementation follows the forms to the detailed design stage. This effect of the department and system designer in getting the new steps in operation. The following steps are performed during implementation: 1) System Testing: It is tested and ensured that the different modules are working correctly individually and as a whole. 2) Review and Maintenance: Once the system becomes operational, it would be examined to see if it has met its objective. The system is reviewed and maintained periodically for the following reasons: • To deal with unforeseen problems arising in the operation i.e. programs may need to be dealt with unforeseen circumstances. • To confirm that the planning objects have been met and if not work to achieve so. • To ensure that the system is able to cope with changing requirements.
“AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 103
IMPLEMNTATION PROCEDURE: The s in the organization are familiar with the basics of computers but will not be aware with working of the new system. A training program will be conducted for three days to guide the about the new system. After the completion of the training program actual implementation will start as follows:A. Pilot run of system. B. Parallel run of system. C. Change over of the system. Pilot Run of System: In this phase historical data will be entered into the system as test data and the output of the system will be checked against the historical reports. Parallel Run of System: In this phase both the systems will be run in parallel form for about two to three months and the results of both will be checked manually. After the completion of the time period, system will be handed over to the management. Change Over of the System:
This is the last phase of the implementation procedure. In this phase all the data will be entered into the system by the and the management will discontinue the manual system.
“AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 104
SYSTEM SECURITY MEASURES To do an adequate job on security, a systems analyst must analyze the risk, exposure, and costs and specify measures such as s and encryption to provide protection. The backup copies of software and recovery restart procedures must be available when needed. This system will provide the facilities for both customer & operators on the same portal. So security constraints must be applied carefully. A customer wouldn’t require to into the reservation system for reservation. He will simply view all the information on web. While a counter assistant will require to have ID & . After proper validation checking of that operator he can make transactions. His total transaction details will also be recorded along with his ID in a log Table, so that any misusage of the system can be prohibited. System security refers to various validations on data in form of checks and controls to avoid the system from failing. It is always important to ensure that only valid data is entered and only valid operations are performed on the system. The system employs two types of checks and controls:
Client Side Security Various client side validations are used to ensure on the client side that only valid data is entered. Client side validation saves server time and load to handle invalid data. Some checks imposed are: A JavaScript program is used to fill up date in the date fields only. JavaScript is used to ensure that numeric field is filled with numeric data only. Maximum lengths of the fields of the forms are appropriately defined. Forms can not be submitted without filling up the mandatory data so that manual mistakes of submitting empty fields that are mandatory can be sorted out at the client side to save the server time and load.
“AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 105
Tab-Indexes are set according to the need and taking into the ease of while working with the system. Server Side Security Some checks can’t be applied at client side. Server side checks are necessary to save the system from failing and intimating the that some invalid operation has been performed or the performed operation is restricted. Some of the server side checks imposed are: Server side constraint has been imposed to check for the validity of Primary key and foreign key. A primary key value cannot be duplicated. Any attempt to duplicate the primary key value results into a message intimating the about that. Values through the forms using foreign key can be updated only for the existing foreign key values. Exceptions are caught in the programs and are used constructively to avoid system failure. is intimated through appropriate messages about the successful operations or exceptions occurring at server side. Access permissions to various types of s are controlled according to the organizational structure. Only permitted s can log on to the system and can have access according to their category. -name, s and permissions are controlled on the server side.
PERT chart and GANTT chart PERT Chart:
“AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 106
1 JUL
1 JUL, 1AUG
Start
Analysis and Design
Help
28 SEP
2AUG , 20 AUG Training on iButton
Testing
Coding
API Development
24 SEP,18 SEP
20AUG, 18 SEP
2AUG , 20 AUG
A PERT Chart is a network of boxes and arrows. To create PERT chart, first we need to list all the activities required for completion of the project and estimate how long each will take. Then we must determine the dependence of activities on each other. The PERT chart gives a graphical representation of this information. PERT chart is always used by the project manager to answer the questions like which all activities are necessary or there in the project and how long each will take. Here we are using boxes to represent the activities. The arrows are used to show the dependencies of activities on one another. The activity at the head of an arrow cannot start until the activity at the tail of the arrow is finished. The boxes in a PERT chart can be decorated with starting and ending dates for activities.
GANTT Chart: GANTT charts are a project control technique that can be used for several purposes, including scheduling, budgeting, and resource planning. A Gantt chart is a bar
“AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 107
chart, with each bar representing an activity. The bars are drawn against a time line. The length of each bar is proportional to the length of time planned for the activity.
1 JUL
1 AUG
20 AUG
18 SEP
28 SEP
Start Analysis & Design
Training Developin g API Coding Test Help file creati on Finish
FUTURE SCOPE OF THE PROJECT “AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 108
This project “HORIZON AIRWAYS RESERVATION SYSTEM” is very flexible and simple. The system will be developed as a module of the airways system and will be well documented. Following modifications are possible in future: New modules and functionality can be added without many troubles. Automatic reservation by customer through Credit Card No. & PIN No. This module should be developed as an program that can be easily
integrated with various Web sites.
REFERENCES “AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 109
During making this project I learn c++ and for programming. I took help from these various books.
1. Object Oriented programming ( Robert lafore ) 2. Object oriented programming ( E.Balagurusamy ) 3. Introduction to c++(Sumita arora) 4. Let Us C(Yashwant kanitkar) 5. Software Engineering: ROGER S PRESSMAN 6.
System Analysis and Design Methods: GALGOTIA PUBLICATIONS
“AIR LINES RESERVATION SYSTEM”
Enrollment No. Page 110