Tuesday, June 4, 2019

Functional Requirements of Airline Reservation System

Functional Requirements of Airline Reservation governing bodyThis project deals with the development of a Softw be Requirements Specification (SRS) inventory that specifies what an air duct reservation carcass should and should not do. The SRS document is divided into five sections namelySystem ObjectivesThis section lists all the goals and objectives of the carcass categorized forthdoor staged on the viewpoint of the air duct comp some(prenominal) and the node (passenger). These ar higher-level goals which atomic number 18 somewhat broad in nature. They help in a top-down development of the SRS.System ContextThis section clearly depicts the environment and boundaries of the ARS and the entities with which it interacts. It helps us see how the transcription fits into the existing scheme of things. What the schema will do by itself and what it expects other entities to do is clearly delineated.Functional RequirementsThis section is the bulk of the document and precisely states the functions of the corpse what it should do and what it should not. This section is split into subsections modeled after the real world activities worry reserving just the tickets, rescheduling tickets etc. Freedom from ambiguity and navigability were kept in mind while documentation. A consistent termino lumbery has been find outed through with(predicate)out and the terms are explained in the appendix. The subsections follow a logical sequence that reflects the real world. For example, a customer cannot reagenda a ticket unless he has bought peerless earlier and cannot steal one unless he has settleed its availability.Non-functional RequirementsThese are quality requirements that stipulate the performance levels required of the system for mixed kinds of activities. Numerical lower and upper limits set conditions on the response condemnations, glide path times etc of the system. Sometimes, tradeoffs are necessary among various non-functional requirements.Future RequirementsThese are the specifications which are not provided for now in the current version of ARS but which could be collective into future versions. Some of these need advanced technologies and user ports with other systems. The ARS could be designed in future to enhance the existing capabilities or add entirely new-sprung(prenominal) ones.The assumptions and limitations of the ARS have been interspersed in the SRS to present the kindred in their proper context.1. System Objectives1.1 The Airline Reservation System (ARS) is a software application to assist an airline with transactions related to making ticket reservations, which includes blocking, reserving, canceling and rescheduling tickets.1.2 From the viewpoint of the airline 1.2.1 Minimize repetitive work done by the system administrator and reservation clerks.1.2.2 celebrate consistency among different access modes, e.g. by phone, by web, at the study desk and across different physical locations. The substance ab substance ab exploiters should be basically taken through the same steps by the system as they go through in conventional desk-reservation systems.1.2.3 Maintain customer information in case of emergency, e.g. leakage cancellation payable to inclement weather. The profile can also be used by the airline comp any(prenominal) to track user preferences and travel patterns to serve them offend, plan routes, for better marketing and efficient scheduling of charges.1.2.4 Maximize the revenue of the airline company by various means1.2.4.1 Increase awareness among frequent travelers astir(predicate) various special offers and discounts.1.2.4.2 Minimize the add of vacant seats on a pip and maximize shoot of stairs capacity utilization.1.2.4.3 Maintain the capability to adopt a flexible pricing policy. The price of the tickets should be dynamically determined based on how early, before the watch of departure, the customer deals the ticket.1.3 A survey conducted by airline companies shows that users of an existing reservation system would respond favorably to an ARS that satisfied or helped them satisfy the following objectives1.3.1 Reduce trend and frustration for travelers in scheduling a get out, especially by reducing the search effort for the flight they need to take.1.3.2 Show all possible combinations and itineraries getable for a pair of origin-destination cities.1.3.3 Reduce pleonasm in the information required from the customers in order for them to buy tickets, create user accounts etc.1.3.4 Check the validity of infix data and give a feedback to the user in case of fractures or inconsistency.1.3.5 Provide flexible access modes to users internet, telephone, PDA.1.3.6 Protect customers privacy concerns.1.3.7 Make it easy for travelers to moderate the ticket status or make changes to their faux pas.2. System Context2.1 The ARS will provide the following types of easy-to-use, interactive, and intuitive graphical and telephonic interfaces.2.1.1 The ARS will provide an easy-to-use, intuitive Graphical User embrasure (GUI) as part of the Clerk/Administrators working desktop environment.2.1.2 The ARS will also provide an interactive GUI, on the World Wide Web for the general customers.The preceding(prenominal) devil ARS interfaces shall help provide the following functionalities to the users access to the ARS to retrovert the flight schedule, availability of seats, ticket price and to block, reserve, cancel, and reschedule tickets.The ARS will also provide an easy-to-use, saucer-eyed telephonic user interface, which can be accessed by the customers through telephone or cell phone from anywhere. This interface shall provide access, only to the following functionalities, namely, check flight schedule and check ticket status including any change in the flight timings. The functionality available through this telephonic interface is limited because of gage constraints.2.2 The system and its environment and the interaction s between them are depicted in the diagram below.DB-ReservationsFlight Schedule DatabaseCustomerVia WebDB-UserDB-ScheduleINTERFACECWDB-GeographyARS softwareINTERFACE CpCustomerVia PhoneINTERFACE AAdministratorThe closed boundary higher up clearly delineates the system and the environment. The diagram shows the interactions between the ARS software and the databases inside the system. There are three databases internal to the system and which the system maintains. DB-user is the database containing all the personal information of the registered users of the ARS. This can be updated by the user by logging in to the system. Information from this database is used during transactions like charging the credit card etc. DB-schedule is a copy of the flight schedule database. The latter exists independently and is updated by a flight scheduler system which is out of scope of the ARS. DB-schedule is updated with the latest status of the flight schedule database whenever there is any change i n the latter. For example, if a flight has been added to the schedule between two cities on Tuesdays, DB-schedule gets updated with this change through a process with which we are not concerned. It is external to the system and is out of the scope of this SRS. DB-schedule also contains the base prices of tickets for various flight numbers. DB-reservations are a database containing information regarding the number of seats available on each class on different flights. It has provision for marking how many of the reserved seats have been blocked but not hitherto bought. DB-reservations should update itself using DB-schedule, for example, if a new flight is added. DB-geography is a database, which contains information about the cities and towns serviced by the airline. The distance between all cities and towns is contained in a matrix form. There are three interfaces, one for the administrator, one for the customer via web and another for the customer via phone. The administrator can update DB-schedule with any changes in the base prices of flight tickets. The system uses a pricing algorithm and dynamically determines the actual price from this base price depending on the date of reservation vis--vis date of departure. The customer interfaces (web and phone) enable multiple functions which are described in the following section section 3.3. Functional Requirements3.1 User Accounts3.1.1 The passenger, who will henceforward be called the user, will be presented with 3 extracts by the reservation system, as the stolon step in the interaction between them. A user can choose one of these and his choice would be governed by whether he is a guest or a registered user and whether he wants to check the availability of tickets or also block/buy them. The terms registered user and guest are described below.3.1.1.1 A user who has traveled by the airline earlier would have been given a user id and a password. He would have his personal information stored in the database referred to earlier in section 2 as DB-user. This personal information would be henceforth referred to as profile. Such a user with a profile in DB-user shall be called a registered user. A registered user will be able to check the availability of tickets as well as block/buy a ticket by logging into the system.3.1.1.2 A new user, on the other hand, would each have toregister himself with the system by providing personal information orlog into the system as a guest.In case of a, the new user becomes a registered user.In case of b, the new user would remain a guest.A guest can only check the availability of tickets and cannot block or buy tickets.But a registered user can also act as a guest if he only wants to check the availability of tickets. handiness of tickets always refers to viewing the flight schedule for given days, the price of tickets and any discount offers. The system shall present the user with an option to exit from the system at any time during the following proce sses.3.2 Registration and creation of user profileThe system shall require a user to register, in order to carry out any transactions with it except for checking the availability of tickets. It will ask the user for the following information at the least a user id, a password, start-off name, last name, address, phone number, email address, sex, age, preferred credit card number. The system will railway carmatically create a lurch miles field and initialize it to zippo in the users profile.3.3 Checking Availability3.3.1 After logging in a user (either a registered user or a guest), the system shall beseech him to enter the following details origin city and destination city. City is a generic term and refers to a city or town as the case may be. The origin and destination cities would be entered as text.The system shall now refer to the flight schedule database, referred to as DB-geography in section 2, and check if there is any ambiguity with the names of the cities. In case there are more than than two cities with same name as entered by the user, the system shall list all of them (with more qualifications) and ask the user to select one of them. In case, either the origin or destination cities are not listed in DB-geography as existence directly serviced by the airline, the system shall suggest the nearest city to which service is available, including the distance of the destination city from this nearest city.After the origin and destination cities are ascertained, the system shall now access the flight schedule database, referred to as DB-schedule in section 2, and checks if there is a direct operational service between the two cities. If not, the system shall suggest possible routes and transfer points using a route selection algorithm. The user shall now be presented with a choice of either selecting one of the routes. In case he selects a route, the system shall fill in the intermediate stop over points and create a multiple trip way for the u ser.3.3.4 The system shall now ask the user to enter the following details class, one-way or round trip, departure date and the number of adult passengers, children and senior(a) citizens.Class refers to business class/first class/club class/smoking/non smoking. This choice shall be made by the user through a drop down bill of fare indicating all the possible combinations of choices.One-way/round trip shall be either a drop down menu or a check box selection. Departure date refers to either a single date or a range of dates, entered through a calendar-like menu. This menu shall not show dates in the past or those dates that are too ahead in the future(as determined by the airline policy). In case, the trip is a round trip, the system shall also ask the user to enter the departure date on the return trip.Having taken all the above input from the user, the system checks for any false entries like the departure date on the return trip being earlier than the departure date on the onw ard trip. In case of incompatibility, the system shall display a suitable error message and prompt the user to enter the information correctly.Having taken all of the information as laid out above in 3.3.1 and 3.3.4, the system shall now access the flight schedule database DB-schedule and queries it using the input provided by the user.The system queries the reservation database DB-reservations to check which of the flights on the schedule have seats available. The system displays the results in a suitable form (a tabular form) with the following information depicted for each flight number the flight number, departure time in origin city, arrival time in destination city, the duration of the flight (taking into account the possibility of a change of time zone) and the number of seats available on that flight.There can be several flights between two cities and all of them will be listed for the particular date that the user wants to depart from the Origin City. In case, the user ha s entered a range of dates, the system shall display all the flights for all those dates in the range.If the user has requested a round trip, the system shall display two tables one for the onward trip and one for the return trip. There will be a check box in front of each line in the table representing a flight with available seats.The user is now asked to check one of the boxes reflecting a choice of a flight number and time. In case of a round trip, the user is asked to check one box each in the two tables.The system shall now display the price of the ticket for the trip. This will be the sum of the prices for all the members of the travel party being represented by the user.The system shall also list any rules regarding the cancellation of tickets what percentage of the price will be refunded within what date ranges. This will be displayed as a table. reservation Reservations/Blocking/Confirmation3.4.1 After having taken the user through the step 3.3, Checking Availability, Th e system will now ask the user if he wishes to block/buy the ticket. If yes, andif the user has been a guest, he will have to first register and become a registered user and then log onto the system.If the user is already a registered user, and if he has logged on already, he can block/buy the ticket, but if he has been acting as a guest, he will have to log on.Having ensured that the user is logged on validly according to 3.4.1, the system compares the departure date with the system date. If the departure date falls within 2 weeks of the system date, the system informs the user that he has no option to block the ticket and asks him if he would like to buy it.If the difference between the departure date and system date is more than 2 weeks, the system asks the user if he would like to block or buy the ticket. The system informs the user that he can block the ticket at no cost now. It also informs him that if he chooses to block the ticket, he should make a final decision before 2 we eks of the departure date. The system shall send an email to the user, 3 weeks before the departure date as a reminder, in case he decides to block the ticket now.Having taken the input from the user in 3.4.2, the system shall now proceed to update the reservation database DB-reservation. It will decrement the number of available seats on the particular flight for the particular class by the number of travelers being represented by the user.In case of a blocking, the system makes a note of it in the database to be used if the user doesnt turn up before 2 weeks of the departure date. It generates a blocking number and displays it for the user to note down.In case the user buys the ticket, the system accesses his profile and charges the price of the ticket to his credit card number. It simultaneously generates a confirmation number and displays it to the user for him to note down. The ticket has been reserved.It adds the milage of the trip (accounting for the number of travelers) to the skymiles in his profile.3.5 Confirm Ticket3.5.1 A user who has earlier blocked a ticket after going through the steps 3.2 through 3.4, is required to either confirm the ticket before two weeks of the departure date or the ticket stands cancelled.To let the user confirm a ticket, the system shall first log him on and ask for his blocking number. Then it accesses DB-reservation and removes the check mark, which so far represented a blocked seat. The seat is now affirm and reserved for the user.The system accesses DB-user and charges the price of the ticket to the credit card number of the user. It simultaneously generates a confirmation number and displays it for the user to note down. The ticket has been reserved.It adds the mileage of the trip (accounting for the number of travelers) to the skymiles in his profile.3.6 Reschedule TicketThe system shall present the user with an option to re-schedule his travel partys trip. In order to do this, the system first logs on the user a nd requests his confirmation number. It will not allow a user to reschedule a blocked ticket but only a substantiate ticket. Using this, it queries DB-reservation and presents the details of the trip to the user, including but not limited to origin city, destination city, date of departure and date of arrival (in case the trip is a round trip).The system shall now ask the user to select new dates from the calendar-menu. It now goes through step 3.3.In case, there are no available tickets for the dates entered, it displays a suitable message informing him that rescheduling to that date is not possible.In case there are tickets available, the system asks the user to select the flight number for the trip (another for the return trip if the trip is a round trip) and proceeds to update the database.The system accesses DB-reservation and decrements the number of available seats on the flight(s) by the number of members in the users travel party. It then increments the entry for the previ ous flight by the same number to reflect an increase in the available seats on it as a result of the rescheduling.The system now checks if there is any difference in the prices of the tickets. If so, it accesses DB-user and charges or credits the credit card as the case may be. The system generates a new confirmation number and displays it to the user.3.7 CancellationThe system shall also give the user an option to cancel a confirm ticket or a blocked ticket.The latter case is simpler and will be dealt with first the system shall first log on the user and request the blocking number. Then it accesses DB-reservation and updates it by incrementing the number of available seats by the number of people in the users travel party.In the former case, i.e., for a confirmed ticket, it asks for the confirmation number and accesses DB-reservation and presents the details of the trip as in step 3.6.1.It then lists the applicable rules for cancellation of tickets and depending on the system dat e and the departure date, it displays the % of the amount that would be refunded if the user cancels the ticket.After the user cancels the ticket, the system generates a cancellation number and displays it for the user to note down. It accesses DB-reservation and updates it by incrementing the number of available seats on that flight by the number of travelers in the users party. It accesses DB-user and credits the refund amount to his credit card number. The system then deducts the mileage of the trip (taking into account the number of travelers in his party) from the sky miles in his profile.3.8 Update ProfileThe system shall enable the user to update his profile at any time. Changes can be made in field including but not limited to address, phone number and preferred credit card number.3.9 View Ticket StatusThe system shall allow a user to view all information about his trip. After logging him on, it asks for his blocking number or his confirmation number. It accesses DB-reservat ion and retrieves the details of the trip and presents them to the user in a convenient format, including any last minute changes to the flight timings etc. Such changes will be highlighted.3.10 Query Flight DetailsThe system shall allow any user (registered or non registered) to access the details about the arrival and departure times of a flight by requesting the user to input the flight number and date. The system accesses DB-schedule and presents the time of arrival and departure.Telephone accessThe system shall be accessible through a touch-tone telephone. The telephonic interface shall, at the least, provide the customer with the facility to check availability of tickets and query flight details. The system shall walk the customer exactly through steps 3.3 and 3.9 respectively but through a telephonic interface.Non-functional Requirements4.1 Performance4.1.1 Response time of the Airline Reservation System should be less than 2 second most of the time. Response time refers to t he waiting time while the system accesses, queries and retrieves the information from the databases (DB-user, DB-schedule etc) (A local copy of flight schedule database is maintained as DB-schedule to reduce this access time)ARS shall be able to apportion at least 1000 transactions/inquiries per second.ARS shall show no visible deterioration in response time as the number of users or flight schedule data increases4.2 ReliabilityARS shall be available 24 hours a day, 7 days a weekARS shall always provide real time information about flight availability information.ARS shall be robust enough to have a high degree of fault tolerance. For example, if the user enters a detrimental number of passengers or a value too large, the system should not crash and shall identify the invalid input and produce a suitable error message.4.2.4 ARS shall be able to recover from hardware failures, power failures and other natural catastrophes and rollback the databases to their most recent valid state.4 .3 UsabilityARS shall provide a easy-to-use graphical interface similar to other existing reservation system so that the users do not have to learn a new style of interaction.4.3.2 The web interface should be intuitive and easily navigable Users should be able to understand the menu and options provided by ARS.4.3.3 Any notification or error messages generated by ARS shall be clear, succinct, polite and free of jargon.Integrity4.4.1 Only system administer has the right to change system parameters, such as pricing policy etc. The system should be secure and must use encryption to protect the databases.4.4.2 Users need to be authenticated before having access to any personal data.4.5 InteroperabilityARS shall minimize the effort required to couple it to another system, such as flight schedule database system.5 Future Requirements5.1 Support for waiting list functionality5.1.1. ARS shall be made more flexible in ticket reservation handling, and shall accept waiting list for reservation .5.1.2 The waiting list handling capability of ARS shall be made more advanced, by enabling it to send requests to the Flight Scheduler to schedule extra flights, depending on the demand in a particular corridor, and providing the wait listed passengers with a new flight.5.2 The telephonic interface of the ARS shall be improved to support more functionality like allowing the customers to cancel a ticket etc., by incorporating security measures.5.3 ARS shall be made more dynamic and facilitatory to the users by enabling it to send instant messages to the passengers, of a cancelled or rescheduled flight, through email, phone, fax etc., informing them about the change, and providing them with other feasible alternatives.5.4 Information about the kind of meals served in a flight and the type of entertainment offered on a flight should be incorporated into the system.Provide service integration with auto rental agencies and hotel chains.Interface for the travel agents shall be provided in the future versions with additional features like informing them of any availability of seats on a flight which was earlier booked to capacity.Choices like aisle or window seats shall be provided to the users.The ARS shall be able to handle the situation where flight services are available to multiple airports in a single city.

No comments:

Post a Comment

Note: Only a member of this blog may post a comment.