Software Requirements Specification for Hotel Reservation Prepared by: Preet Singh(214CS3385) Dept. of Computer Science & Engineering - Software Engineering, NIT Rourkela 04/09/2017 Software Requirements Specification for Hotel Reservation Page ii Table of Contents Table of Contents ..................................................................................................................... ii Revision History ....................................................................................................................... ii 1. Introduction ......................................................................................................................... 1 1.1 1.2 1.3 1.4 1.5 Purpose................................................................................................................................... Document Conventions ........................................................................................................... Intended Audience and Reading Suggestions .......................................................................... Product Scope ......................................................................................................................... References .............................................................................................................................. 1 1 1 1 1 Books: ......................................................................................................................................... 2 Schaum's Outline of UML (Schaum's Outline Series) .................................................................. 2 2. Overall Description ............................................................................................................. 2 2.1 2.2 2.3 2.4 2.5 2.6 2.7 Product Perspective ................................................................................................................ Product Functions ................................................................................................................... User Classes and Characteristics ............................................................................................. Operating Environment ........................................................................................................... Design and Implementation Constraints .................................................................................. User Documentation ............................................................................................................... Assumptions and Dependencies .............................................................................................. 3. External Interface Requirements ....................................................................................... 3.1 3.2 3.3 3.4 2 2 3 3 3 4 4 4 User Interfaces ........................................................................................................................ Hardware Interfaces ................................................................................................................ Software Interfaces ................................................................................................................. Communications Interfaces ..................................................................................................... 4 4 4 5 4. System Features ................................................................................................................... 5 4.1 4.2 4.3 4.4 4.5 4.6 4.7 4.8 Registration ............................................................................................................................ Login ...................................................................................................................................... Make Reservation (Passenger) ................................................................................................ Issue Command ( Driver/Travel Agent) .................................................................................. Make payment ........................................................................................................................ Plan Journey ........................................................................................................................... Cancel Reservation(Passenger) ............................................................................................... Update Service (Driver/Travel Agent) .................................................................................... 5. Other Nonfunctional Requirements ................................................................................. 5.1 5.2 5.3 5.4 Performance Requirements ................................................................................................... Safety Requirements ............................................................................................................. Security Requirements .......................................................................................................... Software Quality Attributes .................................................................................................. Revision History Name Date Reason For Changes Version 5 6 6 7 8 8 9 9 10 10 10 10 10 Software Requirements Specification for Hotel Reservation Page 1 1. Introduction 1.1 Purpose The SRS will provide the detailed description of online Hotel Reservation System. The main aim of the Online Hotel Reservation is to automate the process of day to day activities of Hotel like reservation of room, registration of a new customer, assign a room according to customer’s demand, checkout of a customer, and releasing the room and finally compute the bill and provide to the customer etc. 1.2 Document Conventions MS SQL: Microsoft Structured Query Language CMS: Hotel Reservation System 1.3 Intended Audience and Reading Suggestions This document is intended for readers belonging to groups of developers, project managers, marketing staff, users, testers and documentation writers. The SRS describes the stakeholders involved in the project, scope of the product, the functional and non-functional requirements, the interface used for user-interaction and method for maintenance of the system. 1.4 Product Scope CarMatch is a company that is being set up to promote car sharing.Car sharing schemes offer one short-term way of reducing traffic and aim at reducing the carbon footprint of each individual.CarMatch seeks to promote car sharing and to provide a service to potential car sharers by matching up people who both live and work near one another. While many people who work together share transport informally, it is more difficult for people who work near one another to find a suitable person to share transport with, and in some very large organizations, even people who work on the same site may not know one another. Hence, a product is developed with an aim to bring together such corporate employees, drivers and travel agents who are aim at involving in car sharing. Payments made by the passengers aim at making money for the product as well as including the salaries for the involved workers. On an average, this project helps reducing crowd and pollution. 1.5 References Web Addresses: http://en.wikipedia.org/wiki/Carpool http://www.carpooling.com/us/ http://www.carpooling.in/ https://www.ridingo.com/ Software Requirements Specification for Hotel Reservation Page 2 Books: Schaum's Outline of UML (Schaum's Outline Series) 2. Overall Description 2.1 Product Perspective Projects similar to this have been developed beforehand. This project aims at attending to some newer requirements and provides more specific functionalities to the users, for example, women passengers can have an option to share cars with women only (for safety purposes), passengers would have an option to choose the type of vehicle (car/van) etc. This software is a standalone product that interfaces with a bank to handle the transactions made for registration, salary payment & renting purpose. It also requires interaction with the passengers, drivers and the travel agencies who rent their cars. This communication helps providing a suitable place-vehiclepassenger combination. Passenger Bank User Driver CarMatch System Travel Agent 2.2 Product Functions The major functions that should be allowed by the CarMatchSystem are enlisted here. This product should: · Allow Administrator to manage location-passenger-driver relation. · Allow a certain fee amount to be collected from passenger. · Allow salary to be transferred for the work completed. · Allow users to register in the module for a chosen role (passenger/driver/travel agent) by providing their personal details, their preferred source-destination etc. · Allow passengers to make/delete/modify reservation · Allow drivers to apply for/resign from the job · Allow directions & commands for the chosen drivers · Allow travel agents to put/withdraw their vehicles for/from rent · Allow user to choose the language for communication with the interface Software Requirements Specification for Hotel Reservation Page 3 2.3 User Classes and Characteristics The various user classes who can use this product include the administrator, corporate employees who will pose as passengers, drivers, travel agents who are interested to rent their vehicles for the purpose of carpooling. Each user is required to have a basic knowledge of compute & net browser. Each user should have a basic knowledge of English/Hindi Administrator: · Approve the users and maintain the registers of each along with their pre-requisites · Generate unique User ID for each class of users · Provide password-enabled login into the system · Keep track of the payments made · Improve the product based on feedback from users Corporate Employees (Passenger): · Register into the CMS. · Choose to join an existing pool · Create a new pool Driver: · · · Register into the CarMatch System. Have work experience Have knowledge of the location of the city’s offices Travel Agent: · Register into the CMS · Provide the vehicle specifications, legal registration documents & identification number that are to be put up for rent. · Specify the rental charge of each vehicle. Highest priority is given to the passengers. 2.4 Operating Environment The CarMatch is a website and can work perfectly in any internet browser, preferably if its IE it should be of version 6.0 or more. Any operating system can support the functioning of this website. 2.5 Design and Implementation Constraints The information of all users must be stored in a database that is accessible by the website. · MS SQL Server will be used as SQL engine and database. · The CMS should be functional 24 hours a day. · Users may access CMS from any computer that has Internet browsing capabilities and an Internet connection. · Users must have their correct usernames and passwords to enter into their online accounts and do actions. Software Requirements Specification for Hotel Reservation Page 4 2.6 User Documentation On-line help facility is enabled in the website to help different classes of user to work with the CMS. It also has demo login-registration- reservation videos to provide a visual tutorial for each user. Registered users have the facility to post doubts and feedback in case of any difficulty. 2.7 Assumptions and Dependencies The product needs the following third party products . ·Microsoft Access or MySQL server to store the database. · Java to develop the product The success of this system depends on · Existence of an Internet service to all the interested users. · Website interface must be friendly and easy to use. · The search mechanism should be simple and fast. · The benefits and concept of the CMS should be known among a good number of people. · Advertisement 3. External Interface Requirements 3.1 User Interfaces The individuals who need to share the vehicle for transportation , drivers and the people who offer their vehicles for sharing interact with the system. For registration of the users, the system administrator needs to create a new entry having attributes of the individual such as his name, identification number and other required data as per the requirements. The database then needs to be updated with the new entry. 3.2 Hardware Interfaces No such hardware requirement is necessary. 3.3 Software Interfaces The database used for this product is MSAccess or MySQL operating on Windows 7. The system was coded in Java environment. Software Requirements Specification for Hotel Reservation Page 5 3.4 Communications Interfaces The product requires network server communications for interaction between the administrator and logged in users and their reservation requests. Various software components transfer data in the form of matrices of intensities or bits. The communication standard followed is FTP. Standard security measures are also incorporated. 4. System Features 4.1 Registration 4.1.1 Description and Priority This is to allow new users to get themselves registered in the CMS. The users provide their details and their role in the CMS as either one of a passenger/driver/travel agent. This function then provides the user with an unique ID and password for further login purpose. 4.1.2 Stimulus/Response Sequences · · · · · · User enters into the registration form. Specifies its role as Passenger/ Driver/Travel Agent Provides the personal details Provides any pre-requisite conditions (in case of a passenger) Provides vehicle details(Travel Agent) System saves the information and generates a Unique User ID and password which is sent to the registered contact number/address 4.1.3 Functional Requirements 4.1.3.1:EnterInfo: Input: The user enters name, user role in the CMS and other personal details as requested by the form. It is required to enter a valid contact number or email-id for authentication purpose. Bank account number and other details are to be entered. Output:Saves the form to database and invokes GenerateID. 4.1.3.2: GenerateID: Input: The system generates a unique User Id and password which is sent to the contact number and email- address which serves the authentication purpose for future login Output: The user is successfully registered. Error Condition: In case of invalid emailed/contact number the registration fails and asks the user to re-enter the required form detail again. Software Requirements Specification for Hotel Reservation Page 6 4.2 Login 4.2.1 Description and Priority This is to allow registered Passengers to login into the CMS. 4.2.2 Stimulus/Response Sequences · · · · User enters his User ID CMS checks if it is a valid User ID Enter password to login CMS checks if valid password. · Opens the profile window of the user for further actions 4.2.3 Functional Requirements 4.2.3.1:Login: Input: Enter User ID and Password Output: If both the inputs are valid a new window corresponding to the profile of the user opens up with options available for further actions. Error Condition: In case of invalid User ID/password, login fails and asks the user to re-enter the login form detail again. 4.3 Make Reservation (Passenger) 4.3.1 Description and Priority This is to allow the logged-in users to make reservations for themselves in a pool of their choice and convenience. The users can join existing pools, create new pools, make specifications regarding their choices of vehicles and pay the rent. 4.3.2 Stimulus/Response Sequences · · · · · · · · User log into his profile. Enters the source (home address) ,destination (workplace) and time (working hours) Clicks on “Search Pool” button. Search results reveal those vehicles in the specified area of service which have vacancy for an extra passenger. Else, the passenger creates a new pool. Submits the reservation Payment is made in advance on monthly basis. Logs Out 4.3.3 Functional Requirements 4.3.3.1:SpecifySrcDest(): Software Requirements Specification for Hotel Reservation Page 7 Input: User enter the details of the source and destination for which he is interested in sharing car to the workplace on daily basis. Output: CMS checks if the place names are valid. If they are valid, it is checked if they are within the service area of the CarMatch Company. If both the inputs are valid a new window corresponding to the profile of the user opens up with options available for further actions. Error Condition: In case of invalid place name, user is required to re-enter the names. Else, if the places are not under the service area of the company then he may wait until those are included for a month or two until included or he cannot make a reservation. 4.3.3.2: SearchPool() Input:Valid places are filled into the form and timings of working hours are mentioned. Output:Database is searched to get results for pools with matching criteria as specified by the user. The results only display the details of those vehicles which have a vacancy. Else new pools need to be created. 4.3.3.3:CreatePool() Input:Enter source, destination, timing and a unique name for the pool to be created. Output:A new pool is created to operate in the places specified by the user and a unique pool ID is generated. The pool comes into operation when it has atleast4 passengers to hail it and then a driver is allocated to the pool. 4.3.3.4:JoinPool() Input:Select the pool of choice from the search results and join the pool. Output:The details of the pool i.e the vehicle details, driver’ s personal and experience details and details of co-passengers are mailed to the user. 4.4 Issue Command ( Driver/Travel Agent) 4.4.1 Description and Priority This is to assign work to the driver in the specified pool at particular timing i.e the office timings of the pool he is assigned into. The driver must be informed beforehand about the schedule. 4.4.2 Stimulus/Response Sequences Software Requirements Specification for Hotel Reservation Page 8 · User logs into his profile and checks for “Work Assigned”. · Gets the details where he/ his vehicle will be visiting. · Logs out 4.4.3 Functional Requirements 4.4.3.1:WorkDetails(): Input:Log into the profile and click on “Work Assigned”. Output: Details of places he needs to visit for pick-up and drop are mentioned along with the sequence in which he needs to travel. The timing of his service hours are also mentioned. 4.5 Make payment 4.5.1 Description and Priority This is to make payments to the drivers for their service and the travel agents for the rent of their vehicle. 4.5.2 Stimulus/Response Sequences · Admin retrieves bank account number from the database for the specific driver & travel agent · Transfers the negotiated amount of salary from the CMS bank account into those of the workers · Receives a statement for successful transaction made 4.5.3 Functional Requirements 4.5.3.1:Pay(): Input: Admin selects the bank account number of the driver/travel agent output to work for that day. Admin enters the rent amount. Output: Payment made successfully. 4.6 Plan Journey 4.6.1 Description and Priority This function aims at determining the sequence of places the driver needs to visit within its pool of service. This also helps to determine which all places can come under a single pool 4.6.2 Stimulus/Response Sequences ------------requires no user interaction (designed by admin on the basis of city map)------------ 4.6.3 Functional Requirements Software Requirements Specification for Hotel Reservation Page 9 4.6.3.1:Plan(): Input:The localities and places within 10-20 km of radius which can be generalized as belonging to same source/destination. Output:An efficient time-saving sequence in which the different places can be visited to help the pick-up & drop services. It generates a map that helps he diver of the concerned pool to operate efficiently. 4.7 Cancel Reservation(Passenger) 4.7.1 Description and Priority This function allows the passenger to cancel any reservation made. 4.7.2 Stimulus/Response Sequences · · · · User logs into his profile. User cancels the reservation. CMS removes the user from the pool. User logs out. 4.7.3 Functional Requirements 4.7.3.1:Cancel(): Input: The user cancels the reservation. Output: The user is removed from the pool and the details of drivers and passengers sent to his profile are no longer visible. Error Condition: If the user tries to cancel reservation within 24 hours of service to be received, it cannot be allowed. It is needed that cancellation can take place before 24 hours of the service time. 4.8 Update Service (Driver/Travel Agent) 4.8.1 Description and Priority This function is for travel agents and driver who can withdraw their service. It is allowed only at end of a month to facilitate the payment procedure between 20.00 hrs to 0.00 hours. 4.8.2 Stimulus/Response Sequences · User logs into his profile. · User withdraws his service/provides a different vehicle. · CMS removes the user from the pool. · User logs out. 4.8.3 Functional Requirements 4.8.3.1:CancelUpdate(): Software Requirements Specification for Hotel Reservation Page 10 Input: The driver can withdraw service. The travel agent can withdraw service or change the vehicle it is providing for sharing purpose. Output: The driver is removed from the pool. The travel agent ’s vehicle is removed from a pool & if new vehicle is available then it can be allocated to a new pool. 5. Other Nonfunctional Requirements 5.1 Performance Requirements The website would be functional for 24 hours a day to enable user interaction at any point of time. 5.2 Safety Requirements The database should be carefully maintained by the administrator any loss may lead to chaos. Prevention of Fake IDs 5.3 Security Requirements The Administrator password must be highly confidential. The User ID must be confidential. 5.4 Software Quality Attributes Adaptability: New changes can be easily accommodated Availability: 24*7 availability of services. Interoperability: Each interface makes use of information provided by the other. Flexibility: Provides highly flexible services to the users. Portability: Not dependent on particular OS. 6. Goal of Implementation This project aims at reducing traffic and pollution by allowing people going from nearby places to close-by workplaces a common means of transport at their time of convenience.