Sei sulla pagina 1di 26

Software Requirements Specification

Table of Contents

1. Introduction 1.1 1.2 1.3 1.4 1.5 Purpose Scope Definitions, Acronyms and Abbreviations References Overview

2. Overall Description 2.1 Product Perspective 2.2 Product Functions 2.3 2.4 2.5 User Characteristics Constraints Assumptions and Dependencies

3. Specific Requirements: 3.1 External Interface Requirements 3.1.1 3.1.2 3.1.3 3.1.4 3.2 3.2.1 3.2.2 3.2.3 3.2.4 3.2.5 3.2.6 3.2.7 3.2.8 3.2.9 User Interface Requirements Hardware Interface Requirements Software Interface Requirements Communication Interface Requirements Usability Reliability Availability Mean Time Between Failures (MTBF) Mean Time to Repair (MTTR) Accuracy Maximum Bugs or Defect Rate Access Reliability Performance 3.2.10 Response Time Administrator/Librarian Response Throughput Capacity

Software Product Features

Resource Utilization

3.2.11 3.2.12 3.3 3.4 3.5

Supportability Internet Protocols

Performance Requirements Design Constraint Software System Attributes 3.5.1 3.5.2 3.5.3 Security Maintenance Portability


Logical Database requirements

3.7 Other Requirements 4. Software Development Life cycle 4.1 Analysis

Introduction This document defines and confines the aim of the Software Development Project Online Hotel Management System. Efforts have been made to define the requirements exhaustively and accurately. The final product will be having only features mentioned in the document and assumption of any additional functionality should not be made by any party during development/testing/using the software. In case of need of additional features a request should be raised which led to development of software in form of a new release. 1.1. Purpose This specification document describes the capabilities that will be Provided by the software application. It also states the various required constraints by which the system will abide. This document is intended for the following group of people: i) Hotel Manager (Administrator) with full access. ii) Data Up-gradation Manager for changes in online reservation. iii)Server Manager for online reservation.

1.2. Scope The software application will be an MIS and Reporting application that will be used for online reservation and management of different online services provided by the Hotel. The application will manage the information about the various guests registering in the hotel online under one database, the services offered during the stay in the hotel, the guests choices for opting different types of rooms . Online Reservation of Rooms involving request for confirmation on mail Id with a payment gateway for those guests who wish to pay bills online.The application will greatly simplify and speed up the result preparation and management process.

1.3. Definitions Internet An interconnected system of networks that connects computers around the world via the TCP/IP protocol DBA - Database Administrator SRS - Software Requirements Specification 1.4. References Software Engineering by- K.K.Aggarwal 1.5 Overview The rest of this SRS describes the various system requirements, interfaces, features and functionalities in detail.

2. Overall Description Hotel reservation software is a software tool that easily helps in the efficient management of hotels and motels. It comprises of various modules like the internet reservation software, the guest management system, reservation system, billing system, maintain check in and check- out records, maintaining customer database that is required at the time of accounting for hotels and motels along with a number of advanced features. These modules are easily customizable according to the needs of every hotel. Since the requirements of all the clients are not the same, it is important to know them well before going in for such an investment. It also depends on the number of guests and the scale of operations of the hotel or the motel. Hotel reservation software helps to make hotel management easy. For instance keeping the day to day records is much easier now. It can keep track of the guests checking in and checking out along with facilitating in the computing of the final bill. This hotel reservation software has become quite popular in a short span of time. Internet has eased our lives in a variety of ways. Internet reservations could get you the hotel of your choice at the click of a mouse in any part of the world. It not only saves money but also energy and time. It has made the process of accessing information and also its management much more comfortable for both the customers and the service providers. This software is not a very expensive one to be installed. It could even be used by small business houses or hotels and motels to improve their operational efficiency. Its overall management is easy and customer friendly. Various security measures could be incorporated in order to keep the confidential information safe. The operator must be well versed by its operations, security features, password management system, troubleshooting mechanism and so on. Any kind of tampering with customer information may prove fatal for the business thereby even hampering future customer responses. Thus, it has simplified the work of the accountants thereby saving a lot of time. The result easy check in and checkout of guests within minutes. 2.1 2.1.1 Product Perspective Software under development is purely independent and don't depend upon any other software. this software is the easiest and most flexible online for keeping record of guests and track their reservation status. Procedure is easy to use and fast in nature. This software provides real time statistics of the guests staying in Hotel. Many times unauthorized attempt of login will send email and sms to user mobile. System Interface

Administrator Rights should be given to Hotel Officials only.


User Interface Hotel needs three login identities One is for Administrator which has full access to the reservation management system including creation and deletion of guests profile. Other is for Data Up-gradation Manager which can change the details in a profile Third is for Server manager which can only enter and change the reservation status of the guests. Guest login will be there if one want to book/cancel room or get details of the services. Online Publish of services and hotel details can be accessed by anyone.

2.1.3 Hardware Interface Screen resolution of at least 800x600 required for perfect viewing of screen. Support for printer-which printer drivers are installed and a printer can be plugged. Network based system-possible to run the software o different computer simultaneously. Client I.e. Guest need at least 64 Mb RAM and a JAVA enabled browser. Keyboard and Mouse (compatible Pointing device). PC with 300 megahertz or higher processor clock speed recommended.

2.1.4 Software Interface Any window/Linux based operating system. MYSQL as the Database Management System for database which can be upgradable if any new released will be there. Online result management will be handed by 'WEBMASERS'. C/C++, Java and PHP for developing and coding the software. Microsoft ASP.NET 2.0 Internet Explorer or any other web browser to access the online account. Java JDK platform for software use. Java Servlet JSP engine for software login system.

2.1.5 2.1.6

Communication Interface Communication can be possible using Local Area Network and IPV4/5 Protocol. The system will employ dial-up POS with the central server for low cost communication. The communication protocol used shall be TCP4/IP. Protocol used for data transfer shall be File Transfer Protocol. (FTP). Memory Constraints

At least 128 MB and 4 GB space on hard disk will be required for running the application. 2.1.7 Operations

Product will not keep any housekeeping aspect of the Database except deletion of profile after 5 years of check out from The Hotel. 2.1.8 Site Adaption Requirements

The terminal at the host site will have to support the Hardware and software interface specified in the above section.

2.2 Product Function Major function of Online Hotel Reservation Management System is following: Creating a Profile of New Guest- Includes Generation and allotment of Randomly Generated Guest_Id ,Accept Personal Details like Name, Sex, Address, Fathers Name, No of Days of stay. Room Details-every Reservation has Details like reservation id. Editing and Updating the existing Profile- it may also be done by Guest too if permission is granted to him/her by administrator on the request of Guest. Deleting the existing Profile-After 5 years of check-Out. Reservation Management-Each Guest Selects different services and these are managed by the reservation management system Secure Online Account Management: The user is provided with a unique account and encrypted password only provided to the user and the administrator. The various functions that can performed by the user with his/her account are as follows: Notification: The user can activate notifications options to allow the software to notify the user about confirmation of booking. Secure Account: Each user account will we kept secure and their private detail will not be given to anyone except administrator when asked by them. Many times unauthorized login will send user email and sms on their phone about this unauthorized login.

2.3 User Characteristics There are different kinds of users that will be interacting with the system. The intended user of the software is as follows: Guests who will be using the above features by accessing their individual Accounts. Hotel Officials who will be acting as the controller and they will have all the privileges of an administrator.

2.4 Operating Environment The product will be operating in windows environment. Also it will be compatible with the IE 6.0. Most of the features will be compatible with the Mozilla Firefox & Opera 7.0 or higher version. The only situational requirement to use this online product would be the internet connection. 2.5 Design and Implementation Constraints The Product is developed using ASP. The backend database for this SQL Server. The product is accomplished with login facility so that specific function is available to specific Guest. 2.6 Constraints The major constraints that the project has are as follows: Only one user will have access to the unique id provided to the user to login his/her account. The number of invalid login attempts must not exceed the limit of 4. If so happen the administrator will be notified and an automatic electronic mail will appear in the email address provided by the registered user also sms will be send to user on his mobile The software should have a Java(TM) database. The software is operational in Java platform requires Java(TM) 5. The software will have secured direct link access to the bank credit card transaction page to carry out Rechecking Request transaction.

2.7 Assumptions and Dependencies The users have sufficient knowledge of computers. The computer in Hotel should have Inter connection via Local Area Network and Internet server capabilities.

3. SPECIFIC REQUIREMENTS 3.1 External Interface Requirements 3.1.1 User Interface Requirements The user interface provided should be very user-friendly one and it should provide an optional interactive help for each of the service listed. The interface provided is a provided a menu driven one and the following screens will be provided. Login Screen: This will be first screen that will be displayed. It will allow user to access different screens based on users role. Various role provided on this screen will be User ID: Alphanumeric length up to 10 characters.

Password: Alphanumeric length up to 10 characters. Role: Will have following various different roles for user and administrator.

3.2 Software Product Features 3.2.1 Usability: The system will allow the users to access the system from the Internet using HTML or its derivative technologies. The system uses a web browser as an interface. Since all users are familiar with the general usage of browsers, no specific training is required. The system is user friendly and self-explanatory.

3.2.2 Reliability The system will be very reliable due to the importance of data and the damages incorrect or incomplete data can do.

3.2.3 Availability The system is available 100% for the user and is used 24 hrs. a day and 365 days a year. The system shall be operational 24 hours a day and 7 days a week. 3.2.4 Mean Time Between Failures (MTBF) The system will be developed in such a way that on crash data does not get erased and it kept safe. 3.2.5 Mean Time to Repair (MTTR) Even if the system crash, the system will be recovered back up within 10 minutes or less. 3.2.6 Accuracy The accuracy of the system is limited by the accuracy of the speed at which the employees of the library and users of the library use the system.

3.2.7 Maximum Bugs or Defect Rate Not specified.

3.2.8 Access Reliability The system shall provide 100% access reliability. 3.2.9 Performance Response Time The Splash Page or Information page should be able to be downloaded within a minute using a 56K modem. The information is refreshed every two minutes. The access time for a mobile device should be less than a minute. The system shall respond to the member in not less than two seconds from the time of the request submittal. The system shall be allowed to take more time when doing large processing jobs. Administrator Response The system shall take as less time as possible to provide service to the administrator. Throughput The number of transactions is directly dependent on the number of users. The users may be the Manager, Hotel Employees, Guests. Capacity The system is capable of handling 250 users at a time.

3.2.10 Resource Utilization The resources are modified according the user requirements and also according to the Reservation requested by the users. 3.2.11 Supportability The system designers shall take in to considerations the following supportability and technical limitations. 3.2.12 Internet Protocols The system shall be comply with the TCP/IP protocol standards and shall be designed accordingly 3.3 Performance Requirements None 3.4 Design Constraint None 3.5 Software System Attributes 3.5.1 Security This application will be password protected. Users will have to enter correct username and password to access this application.

3.5.2 Maintenance This application will be designed in a maintenance manner. It will be easy to incorporate new requirements in the individual modules. 3.5.3 Portability This application will be easily portable on any OS with a web browser to access to the web to update its data base real time 3.6 Logical Database requirements: The following information will be placed in database. 3.7 Other Requirements: None

4.1 SOFTWARE DEVELOPMENT LIFE CYCLE System Development Life Cycle (SDLC) is the overall process of developing information systems through a multi-step process from investigation of initial requirements through analysis, design, implementation and maintenance.

Project planning, feasibility study: Establishes a high-level view of the intended project and determines its goals. Systems analysis, requirements definition: Refines project goals into defined functions and operation of the intended application. Analyzes end-user information needs. Systems design: Describes desired features and operations in detail, including screen layouts, business rules, process diagrams, pseudo-code and other documentation. Implementation: The real code is written here. Integration and testing: Brings all the pieces together into a special testing environment, then checks for errors, bugs and interoperability. Acceptance, installation, deployment: The final stage of initial development, where the software is put into production and runs actual business. Maintenance: What happens during the rest of the software's life: changes, correction, additions, moves to a different computing platform and more. This, the least glamorous and perhaps most important step of all, goes on seemingly forever.

4.1.1 Feasibility study A feasibility study is defined as an evolution or analysis of the potential impact of a proposed project and program. It is conducted to assist decision maker in determining whether or not to implement a project/program. It is based on extensive research on both the current practices and the proposed project or program and its impact on the system as a whole. It should also contain extensive data analysis related to financial and operational impact. If the feasibility study is to serve as a decision document, it must answer three questions: Is there a new and better way to do a job that will benefit the user? What are the costs and savings of the alternatives? What is recommended? Feasibility Considerations:

There are three key considerations to the feasibility study: 1) Economic 2) Technical 3) Behavioral Feasibility analysis of the system Economic Feasibility: Economic analysis is the most frequently used method for evaluating the effectiveness of a candidate system. More commonly known as cost/benefit analysis, the procedure is to determine the benefits and savings that are expected from a candidate system and compare them with cost. Technical Feasibility: Technical feasibility centers around the existing computer system (hardware, software etc) and to what extent it can support the proposed addition. It involves financial consideration to accommodate technical enhancement. If the budget is a serious constraint, then the project is judged not feasible. Behavioral Feasibility: People are inherently resistant to change, and computers have been known to facilitate change. An estimate should be made of how strong a reaction the user staff is likely to have toward the development of a computerized system. It is common knowledge that computer installations have something to do with turnover, transfers, retraining and changes in employee job status. 4.1.2 Analysis Analysis is a detailed study of the various operations performed by a system and their relationships within and outside of the system. One aspect of analysis is defining the boundaries of the system and determining whether or not a candidate system should consider other related systems. During analysis, data are collected on the available files, decision points, and transactions handled by the present system. It is also important to analyze and find out whether the application being developed suits the current hardware and software platform available or not. The application should be developed well within time and should meet the specified requirements. If the application is being developed for commercial purposes then a cost-benefit analysis becomes must to find out the real value of the software product.

To develop the required application the waterfall life cycle model for software development will be used. An Object-Oriented approach will be followed to develop the application because the data or information to be displayed and the user who will view that information are more important here than the process flow of the system. This methodology will also make the development process more efficient, effective and easy. The application thus developed will be more user friendly and can be easily extended or modified whenever required.





The Waterfall Life Cycle

Techniques used for analysis On-Site Observations: This is one of the main tools for gathering information. It is a process of recognizing and noticing people, objects and occurrences to obtain information. The major objective of this tools is to get as close as possible to the real system being studies. For this reason it is extensively used by the system analyst during the development of a particular system. Guidelines for onsite observations: What kind of system is it? Who are the important people in the system? Who runs the system? Apart from its formal function, what kind of system is it in comparison with other systems in the organization? Is it primary or secondary contributor to the organization? Types of observation methods: Natural method: A natural observation occurs in a setting such as the users workplace. Obtrusive method: An obtrusive observation takes place when the respondent knows he/she is being observed. Direct method: A direct observation takes place when the analyst actually observes the subject or the system at work. Structured and Unstructured method: In case of structured method, the observer looks for and records a specific action. While in case of unstructured method the observer is placed in a situation to observe whatever might be pertinent at that time

4.1.3 Use Case Analysis: Use Case Analysis is an object-oriented method for designing information systems by breaking down requirements into user functions. Each case is a transaction or sequence of events performed by user. Use cases are studied to determine what objects are required to accomplish them and how they interact with other objects. Goals of Use Case Analysis: Design system from users perspective. Communicate system behaviour in users terms. Characteristics of Use Case Analysis: USE-CASE: The specific ways in which the system is used. Each use case expresses a complete thought or end-to-end transaction. Some key components of Use Case Analysis: ACTORS: Entities that use or are used by system, typically people, but could be other systems or devices as long as long as they are outside the system being specified. CONNECTIONS: Connections from actors to use cases. RELATIONSHIPS: Relationships between actors or between use cases. Use Case Diagram: A use is a description of a systems behaviour as it responds to a request that originates from outside of that system. The use case technique is used in software and system engineering to capture the functional requirements of a system. Use cases describe the interaction between a primary actor- the initiator of the interaction- and the system itself, represented as a sequence of simple steps. Actors are something or someone which exists outside the system under study, and that takes part in a sequence of activities in a dialogue with a system, to achieve some goal: they may be end users, other systems, or hardware devices. Each use case is a complete series of events, describes from the point view of the actor.

Use Case Name: A use case name provides unique identifiers for the use case. It should be written in verb-noun format, should describe an achievable goal and should be sufficient for the end user to understand what the use case is about. Goal: Without a goal a use case is useless. There is no need for a use case when there is no need for any actor to achieve a goal. A briefly describes what the user intends to achieve with this use case. Actors: An actor is someone or something outside the system that either acts on the system- a primary actor or is acted on by the system- a secondary actor. An actor may be a person, a device, another system, or time. Actors represent the different roles that something outside has in its relationship with the system whose functional requirements are being specified. An individual in the real world can be represented by several actors if they have different roles and goals in regards to a system. Preconditions: A preconditions section defines all the describes the state of the system) for the initiation of the use case. That preconditions, the behaviour of the use Post conditions: The post conditions section describes what the change in the state of the system will be after the use case completes. Post conditions are guaranteed to be true when the use case ends. condition that must be true (i.e., the trigger to meaningfully cause is, if the state describes in the case is indeterminate.


4.2 PHYSICAL DESIGN Data Flow Diagram DFDs show the flow of data through a system. The system may be a company, an organization, a set of procedures, a computer hardware system, a software system, or any combination of the preceding. The dfd is also known as a data flow graph or a bubble chart. There are four symbols that are used: 1. Squares representing external entities, which are sources or destinations of data.

2. Circles representing processes, which take data as input, do something to it, and output it.

3. Arrows representing the data flows, which can either be electronic data or physical items.

4. Open-ended rectangles representing data stores, including electronic stores such as databases or XML files and physical stores such as or filing cabinets or stacks of paper.

There are several common modelling rules that are followed while creating DFDs: 1. All processes must have at least one data flow in and one data flow out. 2. All processes should modify the incoming data, producing new forms of outgoing data. 3. Each data store must be involved with at least one data flow. 4. Each external entity must be involved with at least one data flow. 5. A data flow must be attached to at least one process.

Registered User

Hotel Booking





Book Hotel


USER Check Status




Check My Account


Registered agent

Registered User





B_id Date Hotel name




Card no rooms


gender dob utype pass

Email id



hname hid rate





ER Diagram ERD is a detailed logical representation of the data for an organization and uses three main constructs i.e. data entities, relationships and three associated attributes. Entity: entity has its own identity, which distinguishes it from each other entity. Relationship: a relationship is a reason for associating two entity types. Attributes: an attribute is a property or characteristics of an entity that is of interest to the organization.