The document outlines requirements for a bed and breakfast management system according to IEEE standards. It includes sections on introduction, overall description, and specific requirements. The introduction defines the purpose and scope of the software, which will be called the Bed and Breakfast Management System. It will include functional requirements like searching for vacancies and non-functional requirements like acting as an independent calendar. The overall description breaks down the key functions and constraints. Specific requirements include external interface requirements, classes/objects in the system, and state transition diagrams.
2. Main Contents in SRS Document According to
IEEE standard
Table of Contents
1. Introduction
2. Overall Description
3. Specific Requirements
Appendixes
3. 1. Introduction
1.1 Purpose
The purpose of this document is to create a set of requirements that
define development for a management system used in tracking
reservations and payments for a small bed-and-breakfast establishment.
This document is specifically developed for the developers of the
management software.
1.1.1 Scope
The management software will be named Bed and Breakfast Management
System, or BBMS.
4. 1.1.1.1 Functional Requirements
Search for vacancies in a date range
Input a guests’ information
Assign a guest to a reservation
Assign a reservation to a date range
Save a reservation
Drop a reservation
Save customer information
Delete customer information
1.1.1.2 Non-Functional Requirements
Act as an independent calendar application
Act as a financial calculator for all aspects of the business
Store information beyond guests, room vacancies, reservations, and payments
5. 1.1.2 Objectives
This software is designed to act as an enabler for a small business. In this respect, the scope of the
application and its intended functionality should be kept small and specific to the problem set. By tracing
vacancies from a calendar view, determining vacancies exist and are either guaranteed until a specific date or
first payment, and direct input of a guests’ information, the effective management of the bed and breakfast
can be made more efficient with a simple workflow.
1.2 Definitions
Reservation – A room that has been guaranteed to a guest for a specific date range.
1.3 References
1.4 Overview
This document contains the following artifacts:
Architectural context diagram (ACD)
Data Flow Diagram (DFD)
Entity Relationship Diagram
Activity Diagram
Use Case Diagram
State Diagram
6. 2. Overall Description
2.1 Product perspective
The BBMS is an isolated system making use of file-system storage and embedded logic.
Due to the nature of its isolation, dependencies on other applications, infrastructure or
components is extremely limited. This helps in the portability of the application, as
well as speed of access to the user.
2.1.1 System interfaces
2.1.2 Memory constraints and Operations
2.1.3 Site adaptation requirements
7. 2.2 Product functions
Product functionality can be decomposed into the following areas:
1.Calendar-Based Reservation Lookups
2.Reservation Entry
3.Reservation Removal
4.Non-paid Reservation Guarantee Checks
5.Guest Information Entry
6.Payment Processing
2.3 User characteristics
The primary users of the BBMS are managers of small bed and breakfast
establishments. These managers, or owners, provide a level of service to customers
based on a small number of rooms, and reservation of those rooms. In addition, basic
financial information must also be accounted for to ensure the efficient monitoring of
both profit and expense within the establishment. More specific information regarding
user characteristics can be seen in Appendix F (Use Case / Scenario Diagrams).
8. 2.4 Constraints
Based on the requirements for small businesses, and efficient workflow and financial tracking,
constraints on the BBMS are minimal to none.
2.5 Assumptions and dependencies
In order for the BBMS to operate, these basic assumptions are made:
The business provides a workstation onto which the software can be installed
The business provides a telephone services to communicate with guests, and provide the entry
point for data into the system.
The business provides adequate infrastructure (power, etc.) for the software to be used.
3. Specific Requirements
3.1 External interface requirements
These are requirements specific to the interaction between the software, user, and other
components of the entirety of the system.
9. 3.1.1 User interfaces
Main menu – Displays choices to see guests, calendar, reservations, and finances
Calendar – Shows a weekly calendar of reservations and vacancies, and allows the user to
change the date range
Reservations – Shows a list of reservations, and the ability to add, change, or remove a
reservation
Finances – Shows a list of payments, expenses, and the total net gain or loss of profit.
10. Reservation
date endDate
double price
date startDate
boolean isGuaranteed
date guaranteeDate
int guestId
int roomId
setStartDate()
getStartDate()
setEndDate()
getEndDate()
setPrice()
getPrice()
toggleGuaranteed()
isGuaranteed()
setGuaranteeDate()
getGuaranteeDate()
setGuestId()
getGuestId()
setRoomId()
setPaymentId()
Room
int id
int roomNumber
int id
boolean vacant
getId()
getId()
isVacant()
getRoomNumber()
setRoomNumber()1
1
Payment
int id
double paid
getId()
makePayment()
double total
setTotal()
getTotal()
int paymentId
1
1
Guest
int id
string address
string lastName
getId()
getLastName()
setLastName()
string firstName
int creditCardNumber
string phoneNumber
getFirstName()
setFirstName()
getAddress()
setAddress()
getPhoneNumber()
setPhoneNumber()
getCreditCardNumber()
setCreditCardNumber()
int guestId
getGuestId()
setGuestId()
1
1
Finances
double money
Payment[] payments
profit()
expense()
n
1
getRoomId()
getPaymentId()
toggleVacancy()
3.2 Classes/Objects
The following represents a decomposition of attributes and methods associated with each class of the BBMS.
11. Appendixes
Store Data
Bed and Breakfast
Management
System (BBMS)
Out: Record
Guest
Reservation
In: Reservation
Calendar
Lookup
Out: startDate, endDate / In: Room
Make
Payment
In: payment
Take Guest
Information
In: Guest
Room
Reservation
Out: roomNumber, In: isVacant
Architectural Context Diagram (ACD)
12. Level 1 Data Flow Diagram (DFD)
Store Data
Guest
Reservation
Calendar
Lookup
Make
Payment
Take Guest
Information
Room
Reservation
4.0 Create
Payment
6.0 Save
Payment
new Payment()
Payment
Payment
8.0 Assign
Payment
2.0 Create
Guest
Guest data (see 3.2.1.1)
7.0 Save Guest
Information
Guest
Payment
paymentId
New Guest()
1.0 Room
Lookup
3.0 Create
Reservation
Room
startDate, endDate
guestId
Guest
Reservation data
(see 3.2.2.1)
5.0 Save
Reservation
Reservation
Reservation
Reservation
paymentId
9.0 Assign
Guest
Guest
guestId
10.0 Assign
Room
Room
roomId
13. State Transition Diagrams
State Diagram 1: Reservation RequestReservation Request
Check Calendar
isVacant
Get Dates
startDate
endDate
No Vacancies
Customer Information
firstName
lastName
address
phoneNumber
creditCardNumber
Has Vacancy
Find Room
roomNumber
Create Reservation
startDate
endDate
price
Assign Guest
setGuestId()
Create Payment
paid
total
Assign Room
setRoomId()
Assign Guest
setGuestId()
Made Payment
Assign
Guarantee Date
guaranteeDate
No Payment
14. State Diagram 2: Checking Guarantee Dates
Check Guarantee Date
Reservation
getGuaranteeDate()Guarantee Date is
after current date
Delete Reservation
~Reservation()
Guarantee Date is
current date
Get Reservation
15. Importance of SRS
SRS is an official statement of what the system developers should
implement.
Users can get idea abut system using SRS document.
Requirements documents are essential when an outside contractor is
developing
the software system.
It help to communicate requirements and introduce system to customers.
SRS document can be use to get idea about system when maintenance is
needed.