software Engineering practical file 3
software Engineering practical file 3
AIM-
Explain UML and all its type. Design an ATM class using star UML
SOFTWARE USED-
Star UML
THEORY-
UML DIAGRAM-
UML stands for Unified Modeling Language. It’s a rich language to model software
solutions, application structures, system behavior and Business Processes.
1. Structure diagrams
• Class Diagram
• Component Diagram
• Deployment Diagram
• Object Diagram
• Package Diagram
• Profile Diagram
• Composite Structure Diagram
2. Behavioral diagrams
Class Diagram
Class diagram are the backbone of almost every object-oriented method, including
UML. They describe the static structure of a system.
Package Diagram
Package diagrams are a subset of class diagrams, but developers sometimes treat
them as a separate technique. Package diagrams organize elements of a system into
related groups to minimize dependencies between packages.
Object Diagram
Object diagrams describe the static structure of a system at a particular time. They can
be used to test class diagrams for accuracy.
Use case diagrams model the functionality of a system using actors and use cases.
Activity Diagram
Activity diagrams illustrate the dynamic nature of a system by modeling the flow of
control from activity to activity. An activity represents an operation on some class in the
system that results in a change in the state of the system.
Sequence Diagram
Timing Diagram
Communication Diagram
State Diagram
State chart diagrams, now known as state machine diagrams and state diagrams
describe the dynamic behavior of a system in response to external stimuli. State
diagrams are especially useful in modeling reactive objects whose states are triggered
by specific events
OUTPUT-
EXPERIMENT-2
AIM:
Write down the problem statement for library management system and design the
system using UML diagram on Star UML.
Software Used: Star UML
Theory:
Collaboration diagram: This diagram is a polymorphic form of the sequence diagram in which
the representation is different but application is the same. If we are able to create one
sequence diagram, then its very simple to create its collaboration diagram with a single key
click that varies from to software. There can be many number of collaboration diagrams per
each activity being done because there can be many number of sequence diagrams.
Activity diagram: This diagram denotes the structural flow of the activities in the form of flow
chart with decision boxes enhanced and hence is also used for troubleshooting like raising
exceptions when a particular action is done and the alternative to be done when something
abnormal is done. There can be only one activity diagram for the entire system including all the
activities that a system can perform.
Component diagram: Component diagram represents the components in which the particular
application needs to be installed or implemented on. It also shows the type of relation that
exists among the various components that are represented. Hence, only a single component
diagram representing all the components and their relations is needed for the entire system.
SEQUENCE
DIAGR
COLLABORATION DIAGRAM
ACTIVITY DIAGRAM
COMPONENT DIAGRAM
DEPLOYMENT DIAGRAM
Experiment: 4
Aim: To perform the function orientation diagram: ER diagram
Theory:
An entity relationship diagram (ERD) shows the relationships of entity sets stored in a
database. An entity in this context is an object, a component of data. An entity set is a
collection of similar entities. These entities can have attributes that define its properties.
By defining the entities, their attributes, and showing the relationships between
them, an ER diagram illustrates the logical structure of databases.
ER diagrams are used to sketch out the design of a database.
• Actions, which are represented by diamond shapes, show how two entities
share information in the database. In some cases, entities can be self-linked.
For example, employees can supervise other employees.
salary.
• Connecting lines, solid lines that connect attributes to show the relationships
of entities in the diagram.
• Cardinality specifies how many instances of an entity relate to one instance of
another entity. Ordinality is also closely linked to cardinality. While
cardinality specifies the occurrences of a relationship, ordinality describes
the relationship as either mandatory or optional. In other words, cardinality
specifies the maximum number of relationships and ordinality specifies the
absolute minimum number of relationships.
Software Requirements
Specification
for
1. Introduction
The regular hotel management system project entirely in an android app. This android application
allows the hotel manager to handle all hotel activities in his android phone. Interactive guy and the
ability to manage various hotel bookings and rooms from an android phone makes this hotel
management system very flexible and convenient. The hotel is a very busy person and does not
have the time to sit and manage the entire thing sitting at a single computer. This application gives
him the power and flexibility to manage the entire system from a single android phone. Hotel
management android project provides room booking, staff management and other necessary hotel
management features top make it a complete portable hotel management solution.
1.1 Purpose
The Software Requirements Specification (SRS) will provide a detailed description of the
requirements for the Hotel Management System (HMS). This SRS will allow for a complete
understanding of what is to be expected from the newly introduced system which is to be
constructed. The clear understanding of the system and its’ functionality will allow for the correct
software to be developed for the end user and will be used for the development of the future stages
of the project. This SRS will provide the foundation for the project. From this SRS, the Hotel
Management System can be designed, constructed, and finally tested.
This SRS will be used by the system development team which is constructing the HMS and the
hotel end users. The Project team will use the SRS to fully understand the expectations of this HMS
to construct the appropriate software. The hotel end users will be able to use this SRS as a “test” to
see if the constructing team will be constructing the system to their expectations. If it is not to their
expectations the end users can specify how it is not to their liking and the team will change the SRS
to fit the end users’ needs.
Software Requirements Specification for Hotel Management System
The document is prepared using Microsoft Word 2016 and has used the font type 'Times New
Roman'. The fixed font size that has been used to type this document is 12pt with 1.5 line spacing. It
has used the bold property to set the headings of the document. Use case scenario is written
according to Alistair Cockburn’s template. UML diagrams have been created according to UML 2.0
standards. Standard IEEE template is the template used to organize the appearance of the document
and its flow.
The Hotel Management System’s objectives is to provide a system to manage a hotel that has
increased in size to a total of 100 rooms. Without automation the management of the hotel has
become an unwieldy task. The end users’ day-to-day jobs of managing a hotel will be simplified by
a considerable amount through the automated system. The system will be able to handle many
services to take care of all customers in a quick manner. The system should be user appropriate,
easy to use, provide easy recovery of errors and have an overall end user high subjective
satisfaction.
Software Requirements Specification for Hotel Management System
1.4 References
Books References:
1. lanSommerville, Software Engineering 8th edition.
2. ElmasriNavthe, Foundation of database system 3rd edition.
3. RaguRamakrishnan/johnesGehrke, Database management system 3rd edition.
4. Gerald W. Latin, Modern hotel management, W.H. Freeman 2011.
5. Michael J. O'Fallon, Denney G. Rutherford, Hotel Management and Operations illustrated
edition John Wiley & Sons, 2001
Internet References:
1. www.softwareadvice.com /hotel management
2. http://ww.high-level-software.com /features
3. ” Hotel Management Case Study”, March.6, 2010. [Online]. Available:
http://www.scribd.com/doc/27927992/Hotel-Management-Case-Study, [Accessed: June.28,
2014]
4. ” High-Level-Software Features”, [Online]. Available:
http://www.high-level-software.com/features/, [Accessed: June.25, 2014]
5. Lauesen, S, (2003), Task Descriptions as Functional Requirements, IEEE Computer Society,
Retrieved from http://www.itu.dk/~slauesen/Papers/IEEEtasks.pdf
2. Overall Description
2.1 Product Perspective
The Hotel Management System is a new self-contained software product which will be produced by
the project team in order to overcome the problems that have occurred due to the current manual
system. The newly introduced system will provide an easy access to the system and it will contain
user friendly functions with attractive interfaces. The system will give better options for the
Software Requirements Specification for Hotel Management System
problem of handling large scale of physical file system, for the errors occurring in calculations and
all the other required tasks that has been specified by the client. The outcome of this project will
increase the efficiency of almost all the tasks done at the Hotel in a much convenient manner.
1. Owner
2. Manager
3. Receptionist
Owner: -
Hotel owner has the privilege of Monitoring and authorization of all the tasks handle by the system.
He can access every function performed by the system. Owner of the company as well as the system
can access to the administration panel which is consider the core of the system. As the main
authorized person of the company owner gets the ability to manage the other users including their
user levels and privileges. Taking backups of the system and restoring system can also be done by
the Owner. Meanwhile he will be able to take all the kinds of reports available in the system. As the
owner of the system and the company he has the power to set room rates as well. Hotel owner has
the sole right of deleting a staff member from the system database.
Manager:
Manager is responsible for managing resources available in hotel management system. Manager
also has most of the privileges mentioned above except the things regarding the payment handling.
The reason for using a Manager is to reduce the workload done by the owner that cannot be
assigned to the receptionist, as those tasks seem much responsible. The user level, Manager has the
authority to take all the reports available in the system but here also except the reports related to
Software Requirements Specification for Hotel Management System
financial stuff, hotel income. Manager has other abilities that receptionist, user level has. Such as,
adding new staff member to the system, modifying them or removing them, adding new guests to
the system, modifying them and removing them from the system, adding new inventory to the
system, modifying them and removing them. Adding new room types to the system, modifying
them and removing them.
Receptionist:
As a hotel receptionist, he or her role will be to attain the goals of bookings and to ensure that all
guests are treated with a high standard of customer service. Hierarchically receptionist role has the
least accessibility to the system functions. Receptionist plays the boundary role of the system. He or
she can perform limited functions such as registering new guest to the system, make reservations,
Sending e-mail reminders to clients for booking confirmation. Management of hotel will prefer to
hire receptionist who have a good standard of general education and possibly in subjects such as
English, math and IT.
Software: -
1. Software is designed to run on any platform above Microsoft Windows 7 (32bit).
2. Microsoft .NET Frameworks 4.0 or above.
3. Microsoft SQL Server Management Studio Express 2010.
Software Requirements Specification for Hotel Management System
Software development crew provides their best effort in developing the system. In order to maintain
the reliability and durability of system, some design and implementation constraints are applied.
Availability of an android app for hotel management system could make the system portable but
due to time constraint it is not possible. System will need a minimum memory of 512MB. But it is
recommended to have a memory of 1GB. When designing interfaces of system, we had the
capability of work with new tools such as Dev Express. Considering the client’s budget, we decided
to create those interfaces in a simple realistic manner using affordable technology.
3. System Features
1. Sometimes it happens that the rooms get booked soon when one visits the place therefore
user can make advance booking using this system.
2. It saves user time in search of rooms.
3. The system is useful as it calculates an exact cost for requested number of days.
4. It saves organization resources and expenses.
5. This system is effective and saves time and cost of users.
6. The system is portable i.e. cab ne used from anywhere.
7. Easy registration.
1. Make Reservation
2. Search Room
Software Requirements Specification for Hotel Management System
3. Add Payment
4. Issue Bills
5. Manage Guest (Add, Update Guest)
6. Manage Room Detail (Add, Update, Delete)
7. Manage Inventory (Add, Edit, Delete)
8. Manage Staff (Add, Update, Delete, View)
9. Set Rates
10. Retrieves reports (Staff payment, Income)
11. Manage Users (Add, Update, Delete)
12. Taking Backups
13. Email notification
4. Data Requirements
The logical database requirements include the retention of the following data elements. This list is
not a complete list and is designed as a starting point for development.
1. Booking/Reservation System
2. Customer first name
3. Customer last name
4. Customer address
5. Customer phone number
6. Number of occupants
7. Assigned room
8. Default room rate
9. Rate description
10. Guaranteed room (yes/no)
11. Credit card number
12. Confirmation number
13. Automatic cancellation date
Software Requirements Specification for Hotel Management System
Login interface is used to login to the system using username and password for three different
users.
Copyright © 2019
Software Requirements Specification for Hotel Management System
A specific computer must match with the above-mentioned requirements in order to gain the
maximum benefits from the system in an efficient manner.
Reservation alerts will be sent to the one of the members of hotel staff as an e-mail notification. So,
there is a need of broadband internet connection. Client should able to keep a stable internet
connection. A laser printer will be needed when printing bills and several reports
When a specific reservation reserved at the same time an e-mail notification will be sent to both
relevant staff member’s e-mail account and guest’s account. Guest will be notified in the check-out
date. To achieve that functionality, it requires having a stable internet connection. Mostly a
broadband connection with the client’s computer will provide the efficient service.
View Profile
& Gallery
User Login
Check Room
Availability
Make
Booking
Make
Payment
Cancel
Booking
Customer
Check in
Time
Check out
Time
Recipients
Admin Login
Manage and
Update
Database
Copyright © 2019
Software Requirements Specification for Hotel Management System
Copyright © 2019
Software Requirements Specification for Hotel Management System
6. Quality Attributes
1. Availability: - The system shall be available during normal hotel operating hours
2. Correctness: - extent to which program satisfies specifications, fulfills user’s mission
objectives
3. Efficiency: - How much less number of resources and time are required to achieve a
particular task through the system.
4. Flexibility: - Ability to add new features to the system and handle them conveniently.
5. Integrity: - How the system would insecure the information in the system and how it avoids
the data losses. Referential integrity in database tables and interfaces
6. Maintainability: - How easy is to keep the system as it is and correct defects with making
changes.
7. Portability: - The Hotel Management System shall run in any Microsoft Windows
environment
8. Reliability: - Specify the factors required to establish the required reliability of the software
system at time of delivery. Mean time between failures and mean time to recovery
9. Reusability: - What is the ability to use the available components of the system in other
systems as well.
10. Testability: - Effort needed to test to ensure performs as intended
11. Usability: - How easily a person can be taken the benefits of the system and the user
friendliness.
12. Robustness: – Strength of the system to handle system functions accurately and maintain
the database without facing to unexpected failures
13. Maintainability: – What design, coding standards must be adhered to exclusions created
Software Requirements Specification for Hotel Management System
7. Other Requirements
When the system is completely developed and submitted to the client, few sessions will be required
to make the users of the system understand about the functionality of it and some time to adapt to
the system. After those sessions, it’s required that a member from the development team should
spend sometime in the system background for an agreed time period. That time period will be used
in identifying new bugs that could not be reached in the earlier phases of the development process.
Client should have a valid e-mail account in order to receive reservation e-mail notifications.
Appendix A: Glossary
Check-out – settle one’s hotel bill before leaving
Check-in – the process whereby a guest announces their arrival at the hotel
Experiment-6
AIM
SOFTWARE USED
THOERY
Function Oriented Design is an approach to software design where the design is decomposed into a
set of interacting units where each unit has a clearly defined function.
A data flow diagram (DFD) maps out the flow of information for any process or system. It uses defined
symbols like rectangles, circles and arrows, plus short text labels, to show data inputs, outputs, storage
points and the routes between each destination.
0-level DFDM
It is also known as fundamental system model, or context diagram represents the entire software
requirement as a single bubble with input and output data denoted by incoming and outgoing arrows.
Then the system is decomposed and described as a DFD with multiple bubbles. Parts of the system
represented by each of these bubbles are then decomposed and documented as more and more detailed
DFDs.
1-level DFD
In 1-level DFD, a context diagram is decomposed into multiple bubbles/processes. In this level, we
highlight the main objectives of the system and breakdown the high-level process of 0-level DFD into
subprocesses.
2-Level DFD
2-level DFD goes one process deeper into parts of 1-level DFD. It can be used to project or record the
specific/necessary detail about the system's functioning.
Experiment-7
AIM
Software used
StarUML
Theory
Behavioral Diagrams
A behavioral diagram shows how the system works ‘in motion’, that is how the system interacts with external entities and
users, how it responds to input or event and what constraints it operates under.
It describes a system’s functional requirements in terms of use cases that enable you
Use Case Diagram
to relate what you need from a system to how the system delivers on those needs.
It shows the discrete behavior of a part of a designed system through finite state
State Machine Diagram
transitions.
It shows the sequence of messages exchanged between the objects needed to carry
Sequence Diagram
out the functionality of the scenario.
Interaction Overview Diagram It depicts a control flow with nodes that can contain other interaction diagrams.
It shows interactions when the primary purpose of the diagram is to reason about time
Timing Diagram
by focusing on conditions changing within and among lifelines along a linear time axis.
State chart diagram is one of the five UML diagrams used to model dynamic nature of a system. They
define different states of an object during its lifetime. And these states are changed by events. So State
chart diagrams are useful to model reactive systems. Reactive systems can be defined as a system that
responds to external or internal events.
State chart diagram describes the flow of control from one state to another state. States are defined as
a condition in which an object exists and it changes when some event is triggered. So the most
important purpose of State chart diagram is to model life time of an object from creation to termination.
Statechart diagrams are also used for forward and reverse engineering of a system. But the main
purpose is to model reactive system.
Following are the main purposes of using Statechart diagrams:
Result