Requirements Analysis

Page 1 of 5
CMPS411 Software Engineering
– Group Project –
Milestone-2: Requirements Analysis (7%)
This is a compulsory project. If you do not submit this, your grade will be 0 in this course.
Submission Due: April 25 2013 (Thursday)
Spring 2013
Mr. Mohammed Ali, the owner of Doha Star Hotel (DSH), has accepted your previous
submission of
Milestone-1: Project Planning. He has decided that your team should be
assigned this project to develop it further. This time Mr. Ali wants that you do the
requirements analysis of the system. This document contains the following items: (i) Your
tasks, (ii) Project description same as in Milestone-1, (iii) Use case specification template, and
(iv) Preliminary study by Golden Software Solution.
Your Tasks
Milestone 2: Requirements Analysis
This project concentrates on the technical aspects of the software engineering process, and
hence focuses on the analysis of systems requirements during the process. The emphasis of
this Milestone-2 is on the requirements analysis to produce the Use case model, Activity
diagrams, and the Domain Model using the Unified Modeling Language (UML) and Visual
Paradigm tools. The body of your Milestone 2: Requirements Analysis will consist of the
following deliverables:
1. A complete use case diagram covering all major functionalities of the system
and actors. You can use the functions proposed by Golden Software Solution,
in that case, you may add additional functions or remove some.
2. Propose Use case specification for most complex and key 6 use cases
selected from your use case diagram. Your proposed use case specification
should include
brief description, primary actor(s), trigger, main success
scenario, pre-condition(s), post-condition(s), normal scenario with actor
action- system response, alternative flows (if any) of each use case
. Use the
template available from this document.
3. Activity diagram with swim-lanes for four of the six use cases proposed in
Task 2.
4. A domain model. For each conceptual class you should define the attributes
and their data types. For associations, you should define the association
names and the multiplicities on both ends, as well as association names (i.e.
roles) where applicable.
Provide justifications for any assumptions you made in this milestone.
Your submitted components will be evaluated for
accuracy, clarity, relevancy,
justification and completeness
(especially among components and among artifacts) of
your document.

Page 2 of 5
Please upload your solution of Milestone-2 to Blackboard and provide a hard copy to Ms.
Rana Mahas.
Your must call the file: Group?-Milestone-2.doc (Group? is your Group
Number) . Example:
You must submit also a hardcopy to Ms. Rana Malhas by the due date. You can drop
your hardcopy to one of her following two mailboxes:
Male campus, Corridor 5 (Ground floor), Department of Computer Sc. and Engg.
Female Science building (Second floor), Section B.
Grading scheme for Milestone-2: Requirements Analysis

Deliverables Grading %
Use case diagram 10
Six use case specifications using template (6 x 6 = 36 marks) 36
Four activity diagrams with swim lanes (4 x 7 = 28 marks) 28
Domain model 20
Assumptions, and for document accuracy, clarity, relevancy, completeness 6
Total 100

Submission requirements
Your assignment group MUST comply with the following submission requirements:
1. You continue this milestone with the same group as you did in Milestone-1.
2. Make sure that the entire team submits only one copy of the project (
a hardcopy
and only once Blackboard uploading). The cover page must contain the following
[Each member of the group will be required to submit a peer group evaluation with an
estimate of the contribution from each member to the project. Write the percentage
contribution made by each team member so that it adds up to 100%. This evaluation
may be
used to adjust the marks awarded to each team member. Also write the name of your class
instructor (either
Dr. Khaled Khan or Dr. Khaled Shaban) beside each student]
Course number: CMPS411
Milestone No.________________
Submission date______________
Effort distribution of the student:
SID:___STUDENT NAME: ______Effort given_____%…Instructor_______
SID:___STUDENT NAME: ______Effort given_____%…Instructor_______
SID:___STUDENT NAME: ______Effort given_____%…Instructor_______
DECLARATION: We hereby certify that no part of this project or product has
been copied from any other student’s work or from any other sources except
where due acknowledgement is made in the project. No part of this
project/product has been written/produced for us by any other persons.
Signature (student 1) Signature (student 2) Signature (student 3)
NOTE: Only in the hardcopy, each student must sign. The electronic copy dot not require any
signature. Be aware of:
Submitted work must be students’ own work
You cannot copy the project from other groups.
Submission Due: April 25, 2013 (Thursday).
Page 3 of 5
System Description of Doha Star Hotel (DSH)
(Same description as in Milestone-1)
“The hotel has total 64 rooms. Each room has a room number and a fixed daily rate depending on
its type. DSH has three types of room:
standard – daily rate QR. 650; executive – daily rate QR.
820; and
superior – daily rate QR.1250. Each room is equipped with three accessories: an
electrical iron
, a hair dryer, and a coffee maker. These accessories are controlled by a sensor
installed in each room, and recorded in the hotel system. If an accessory is taken out of the room,
the sensor immediately detects this, and the system updates the database of the room accordingly.
Once an accessory is taken into the room, the sensor also detects this, and the hotel system updates
the database. The system knows if a room has all 3 accessories, or some of them are missing.
The hotel has two types of customers: corporate customers and individual customers. To make a
reservation, customers first contact the reservation staff of the hotel. They can reserve a room for a
particular period. The staff enters the customer details such as name, phone number, credit card
details if the customer is new, and the reservation information such as room type, check-in and
check-out dates, and the number of guest to the system. For the corporate customer, credit card
details are not required, instead, the name of the company should be provided. The hotel provides
10% discount to its corporate customers. The hotel also provides airport shuttle services for its
customer. It keeps track which customer should be picked up from the airport and when.
Similarly, it knows which customer should be dropped at the airport and when. The rate of the
airport shuttle is fixed. Customer could request for the shuttle service either during their
reservation or later after check-in.
The system starts processing of room reservation once it receives the reservation request. The
system searches for the available room(s), and makes the reservation for the customer if room(s) is
available. The system registers the customer details into the system by creating an account if the
customer is new to the hotel. If the customer already exists, it simply proceeds for the reservation
by retrieving the customer account without creating a new account. For the individual customer,
the system then automatically verifies the credit card validity and the availability of the required
funds from the issuing bank of the credit card. The bank sends an “approve” message if
everything goes fine. The system then confirms the reservation, creates a reservation portfolio, a
reservation number is assigned, and the room(s) becomes unavailable for that period to other
customers. A customer may have more than one reservation portfolio, that is, one portfolio for
each reservation, but he/she will have only one account regardless the number of reservation
he/she makes. For the corporate customers, no bank approval is required. However, if the bank
sends a “declined” message, the system does not make any reservation for the individual
customer. In either case, the system produces a message regarding the outcome of the reservation
process (confirmed or declined reservation). The staff then forwards this message to the customer.
When the customer checks in, the hotel desk staff finds the reservation by either entering the
reservation number or the customer name. The desk staff then enters the scanned copy of the
customer identity card or passport into the system, and includes this with the reservation portfolio.
The system then checks if the allocated room has all three accessories. If any accessory is missing,
the system produces a message to the room service staff to supply the missing accessory in the
room immediately. It then prints a
room access card for the customer, and records the room
number in the reservation portfolio along with a note that the customer has checked in. The
reservation portfolio includes the room number, time and date of the check-in, and the access card
When a customer checks out, the hotel desk staff either enters the room number or the reservation
number into the system. The system then finds the reservation portfolio, checks if any accessory
has been taken out of the room, finds the room rate and the total number of days the customer
stayed, computes the total cost of the reservation, and prepares an invoice (bill). For the missing
accessory, the system automatically finds the price, and includes it in the invoice. During the
check-out, the invoice also includes the shuttle service fee if the customer has used the service,
and any unpaid bill from the restaurant. The system can retrieve this information from the
reservation portfolio. The system releases the room.
Once the invoice is prepared, it is attached with the reservation portfolio and the customer account
is updated accordingly. Corporate customers have the choice to make the payment later. Individual

Page 4 of 5
customer pays the invoice at the time of check-out. The payment can be made either by cash or by
credit card. Once the payment is made by credit card, the system gets the approval from the card
issuing bank by automatic connecting with the bank, and the customer account as well as the
reservation portfolio are updated with the payment information accordingly. Finally, it generates a
The service manager manages its two shuttle buses and room services of the hotel. Every day the
service manager checks for the requests already made for the shuttle services. Based on this
information, she prepares a schedule and assigns drivers to the shuttle buses based on the service
requests. The system knows which driver is using which shuttle bas and when. Drivers are
permanent-staff of the hotel. Their salary is based on yearly salary rate. The hotel has two types of
cleaning staff: daily-staff and permanent-staff. The service manager also prepares schedule for
cleaning, and assigns rooms to each cleaning staff in a monthly roster. She checks periodically
every day through the system which room needs servicing urgently. Based on this information, she
also schedules urgent service for the room. The system keeps track which cleaning staff of the
hotel cleans which room and which day. Based on the number of rooms a daily-staff cleans per
day, their salary is calculated weekly. Their salary rate is based on per room they clean. However,
for the permanent-staff of the hotel, the salary is based on the yearly salary rate, but the system
records which rooms a permanent staff cleans and on which day. At the end of each month the
cleaning staff and drivers get their salary slips. The salary slip includes all information such as
total salary amount, days worked, yearly salary, or room cleaning rate, etc.
The general manager of the hotel can generate various summary reports. The system can produce
a summary report on average occupancy rate of a room each month, total customers in the hotel in
a day/week, average occupancy rate per room, average shuttle requests per day/week, total number
of missing accessories each week/month, etc.
The proper function of the system is very important for the hotel reputation. If the system fails, it
may loss its business. The response time of the system must very high. The security of customer
data is confidential, and should be protected. Hotel staff should find the system easy to learn and
use. The connection with the bank must be fast and secure. The system should be completed as
soon as possible, the delivery time is crucial. The technology is to be used in the system should be
advanced and robust. It is essential that the project team employs competent personnel for this
project. The system should be flexible enough for future expansions of functionalities.

Template for the Use Case Specification:

Use case Name:
Primary actors:
Main Success Scenario:
Normal scenario
Actor Action
System Response
Alternative flows (if any):

Page 5 of 5
Golden Software Solution
456 Good Street
March 28, 2013
Our initial study on the DSH reservation system has provided the following output.
Overview Statement
The purpose of the development project for DSH is to create a computer based
information system to be used in the management and control of room reservation
functions of the hotel.
The client (and sponsor) for this project is DSH.
Some Identified Functions with additional information:
We have identified that the system should have following major functions with some
specific characteristics:
1) Reserve room
2) Manage check-in
3) Organize check-out
4) Handle payment (by cash, by card)
5) Administer shuttle services
6) Prepare schedule for drivers and cleaning staff
7) Manage customer accounts
8) Manage room services
9) Prepare summary report.
– End of the document –