Deepanshu Verma SE
Deepanshu Verma SE
SE LAB
BCA-
274
Practical File
Submitted By Submitted To
PROGRAM NO. 2
AIM: Analyze requirement for a system and develop Software
Requirement Specification Sheet (SRS) for suggested system.
Analysis of Requirements:
Based on the problem statement, the following requirements have been identified for the
real-time system for Hotel Management System;
1. Online Reservation System
2. Streamlined Check-in and Check-out
3. Integrated Property Management System (PMS)
4. Inventory Management
5. Customer Relationship Management (CRM)
6. Online Reputation Management
7. Staff Scheduling and Communication
Introduction
1.1 Purpose
The purpose of this document is to provide a detailed description of the requirements for the
Hotel Management System. It outlines the functionalities and features that the system should
possess.
1.2 Scope
The Hotel Management System aims to automate and streamline various operations within a
hotel, including reservation management, guest check-in/check-out, room allocation, billing,
and reporting. The system will be used by hotel staff, managers, and guests to enhance
efficiency and improve overall customer experience.
1.3 Definitions, Acronyms, and Abbreviations
General Description
2.1 Product Perspective
The Hotel Management System will be a standalone software application designed to integrate
with existing hotel infrastructure, including the front desk, room management, and billing
systems.
2.2 Product Features
The key features of the Hotel Management System include:
Appendices
Note: This SRS is a general guideline and may require customization to fit specific hotel
management system requirements.
PROGRAM NO. 3
AIM: To create the function-oriented diagram: Data Flow Diagram
(DFD).
Data Flow Diagram for Hotel Management
System:
Name: Hotel Management System Component Diagram
UML
Component Diagram
Diagram:
Tools Used: Diagraming Tools that have UML Component Diagram Symbols
Designer: ITSourceCode.com
The DFD for Hotel Management System is an overall flow of how the
data moves through a system, describing its inputs and outputs process
within the entire system.
The importance of the data flow diagram (DFD) for Hotel Management system is to show
the devel- opers the actual happenings in the system. This is done by visualizing the system’s
data management at various levels.
Furthermore, the DFD levels were used to discuss the Hotel Management system data flow.
These lev- els have their part in expounding the system’s data flow structure details. It is
then ap-
plied in creating for Hotel Management system ER Diagram
The Advantages of the Hotel Management System Data Flow Diagram are as follows:
A thorough explanation is provided for the example data flow diagram for Hotel
Management System This example emphasizes the three DFD levels (DFD Levels 0, 1,
and 2) .
Moreover, the hotel management system use cases include the project
functions using use cases, actors, and their connections. This explains the
complex functions of a system.
Class diagram is a type of UML diagram which shows the properties and relationships among
various objects.
Class :
The classes used in this system are,
Hotel Management : This class depicts the entire hotel and says whether the hotel is
opened or closed.
Employees : It contains the details of the Employee. There are two kinds of employees,
Server and the chef. This employee class is the parent class of two subclass – Server and
Chef
Server : It contains the details of the server, the table to which they are assigned, the order
which is currently serving, etc.
Chef : It contains the details of the chef working on a particular order.
Customer : It contains the details of the customer.
Table : It contains the table details like table number and the server who are assigned to
that table.
Menu : Menu contains all the food items available in the restaurant, their availability,
prize, etc.
Order : Order depicts the order associated with a particular table and the customer.
Bill : Bill is calculated using the order and menu.
Payment : This class is for doing payment. The payment can be done in two ways either
cash or card. So payment is the parent class and cash and card are subclasses.
Cash : Payment can be done by cash
Card : Payment can be done by card or online
Attributes :
Hotel Management – HotelName, NumberOfEmployees
Employees – EmployeeId, EmployeeName, EmployeeSalary
Server – ServerId, OrderId
Chef – Chef_Id, OrderId
Customer – CustomerId, CustomerName, Bill_Id, OrderId, PaymentId
Table – TableNumber, OccupiedStatus, ServerId, CustomerId
Menu – ItemId, ItemName, Amount
Order – OrderId, ItemId, ItemName, Quantity, CustomerId, ServerId
Bill – Bill_Id, OrderId, TotalBill
Payment – PaymentId, Bill_Id
Methods :
1. Hotel Management :
open() -This is used to indicate if the hotel is functioning or not.
2. Employees :
employee details() – This method contains the details of the employee.
3. Customer :
customer_details() – This depicts the details of the customer.
ordered_items() – This method contains the items which are ordered by the customer.
payment_status() -This says whether the customer paid or not.
4. Table :
table_details() – This method contains the details of the table along with the customer and
no of seats.
availability_status() – This method says whether the table is occupied or not.
5. Menu :
items() – This method displays the menu items, their availability and their price.
6. Order :
order_items() – This method orders the items selected by the user from the menu.
7. Bill :
calculate_bill() – This method calculates the bill for a particular table.
8. Payment :
ispaid() – It shows whether payment is successful or not.
Relationships :
Inheritance :
Inheritance is “is a relationship”. It has a parent class and its corresponding child classes. The child
class inherits the methods and attributes which are required for it from the parent class.
Here, Employee is parent class Server and Chef are child classes because server is a employee and
chef is a employee.
Association :
In Association, both classes are related to each other but are not physically contained with one
another. It is known as “using” relation. In association relation, consider we have two classes A and
B where class A calls class B and Class B also calls class A.
Here,
Employee and customer
Server and table
Customer and payment
Chef and order
follows association relationships.
Composition :
It is also called as “Has a” relationship where class A has an instance of class B, Class B is
composed inside class A and cannot exist independently without class A. So in composition one
class is entirely dependent on another class and is physically contained inside it.
Here,
Menu and Order
Order and Bill
Bill and Payment
follows composition relation
Order cannot exist without Menu, Bill cannot exist without order and payment cannot exist
without bill. So here order is contained inside the menu, bill is contained inside the order and
payment is contained inside the bill.
Aggregation :
It is also called as “Has a” relationship where class A has an instance of class B, but class B is not
composed inside class A and can exist independently without class A. So in aggregation, both the
classes depend on each other and use each other but none of them are contained inside one another.
Here,
Customer and Server
Chef and Server
follows Aggregation relation
Server is associated with the customer but can exist without the customer as well, Likewise Chef
is associated with the server but can exist without the server as well.
Notations :
Class Diagram :
PROGRAM NO. 6
AIM: To draw the behavioral view diagram: State-chart diagram or
Activity diagram.
State Transition Diagram are also known as Dynamic models. As the name suggests, it is a type of diagram
that is used to represent different transition (changing) states of a System. It is generally used to
graphically represent all possible transition states a system can have and model such systems. It is very
essential and important and right for object-oriented modeling from the beginning. The System consists of
various states that are being represented using various symbols in the state transition diagram.
The symbols and their description are given below:
Now let us see the State Transition Diagram of Hotel Management System.
PROGRAM NO. 7
AIM: To perform the behavioral view diagram for the suggested system:
Sequence diagram
Sequence Diagram of Hotel Management System
A sequence diagram for a hotel management system is a graphical representation of the
collaboration and communication between objects in a system. It outlines how activities are
coordinated to achieve a desired result. These diagrams are useful for identifying any existing
gaps in an existing business process or for developing a brand new process. It shows the
sequence of activities, the objects that are involved in each activity and the messages that are
exchanged between them. This makes hotel management easier to understand, maintain and
modify.
PROGRAM NO. 8
AIM: Draw the component
diagram.
A component diagram in the (UML) Unified Modeling Language shows how parts are wired
together to explain the parts of hotel systems. They are used to show the structure of any
kind of system.
The UML component diagram shows how a hotel management system will be made up of a
set of deployable components, such as dynamic-link library (DLL) files, executable files, or
web services. Using well-defined interfaces, these parts communicate with each other and
keep their internal details hidden from each other and the outside world.
This hotel management system deployment diagram is one of the UML models that
describes the system’s execution architecture. It can be used to determine how the system
will be installed on the hardware to ensure the system’s proper functionality
PROGRAM NO. 10
AIM: Perform Measurement of complexity with Halstead Metrics for
chosen system.
To perform a measurement of complexity using Halstead Metrics for a hotel management
system, we need to analyze the code or software implementation of the system. Since I
don't have access to the specific code of your hotel management system, I can provide
you with an example of how to calculate Halstead Metrics using a hypothetical scenario.
Let's consider a specific functionality of the hotel management system: adding a new
guest to the system. We'll calculate the Halstead Metrics for this particular function.
2. Vocabulary (n):
- This is the total number of distinct operators and operands in the program.
- Example: n = n1 + n2, where n1 is the total number of distinct operators and n2 is the
total number of distinct operands.
4. Difficulty (D):
- This measures the difficulty level of understanding the program.
- Example: D = (n1 / 2) * (N2 / n2), where N2 is the total number of operands.
5. Effort (E):
- This represents the amount of effort required to understand and implement the
program.
- Example: E = D * V
Let's assume the following values for our hypothetical hotel management system:
n1 = 12 (distinct operators)
n2 = 6 (distinct operands)
From the code implementation, we count the occurrences of each operator and operand
and determine the following values:
E = D * V = 40 * 90.585 ≈ 3623.4
These values provide a measurement of complexity and effort required for the specific
functionality of adding a new guest to the hotel management system.
Please note that this is just an example, and the actual calculation and values may differ
based on the specific code and implementation of your hotel management system.