Professional Documents
Culture Documents
A Coursework Report On
1
The University of Greenwich DISTRIBUTED SYSTEM
TABLE OF CONTENT
I. System Objectives and Guidelines ......................................................... 3
II. Introduction ............................................................................................ 8
III. Assumption ........................................................................................... 9
IV. System Design ...................................................................................... 10
1. Entity Relationship Diagram ....................................................... 10
2. Database Relational Schema ...................................................... 10
3. Database Table Design ................................................................ 11
4. Use Case Diagram ...................................................................... 15
5. Class Diagram ............................................................................. 45
6. Deployment Diagram .................................................................. 48
V. System Implementation ......................................................................... 50
1. Login ............................................................................................. 50
2. Food/ Beverage Management ....................................................... 51
3. Room Management ...................................................................... 56
4. Customer Management ................................................................. 59
5. Staff Management ......................................................................... 64
6. Invoice Management .................................................................... 68
7. Report Management ..................................................................... 73
VI. Student Conclusion..................................................................... 76
VII. References ................................................................................. 76
2
The University of Greenwich DISTRIBUTED SYSTEM
3
The University of Greenwich DISTRIBUTED SYSTEM
4
The University of Greenwich DISTRIBUTED SYSTEM
Choose Browse to navigate to the package need to add the software library
5
The University of Greenwich DISTRIBUTED SYSTEM
We have two packages which need to add the addition library, pick any of it
to process the next state. You are required to do the process again to pick the other.
I choose the
RM.Local first. Then you
click “Upgrade”
6
The University of Greenwich DISTRIBUTED SYSTEM
When it finish importing the DevExpress Library, click “Finish” and you are
all done. The final step is to run the project.
Remember to repeat the whole process with another package name
RM.National as I have mentioned above. We need the two package with supported
library to run.
7
The University of Greenwich DISTRIBUTED SYSTEM
II. Introduction
The coursework has placed a situation wherein the developer is required to
build a resort management distributed system. As stated in the case study that this
company has three resorts in various places. The main purpose of distributed
system here is that National resort, hosted by one of these three resorts will be able
to run the other reports by connecting to each of the local resort’s provided service.
There are also requirements to each of the local resort in the purpose of managing.
The system consists of three kind of staff: Sales Staff, Local Manager and
National Manager. Each of them own the right to be able to run a series of system
functions. That means there are some functions that are required the higher staff
role. The work is as follow:
- Sales staff, local manager, national manager
o Manage the sales of room (booking, payment)
o Manage the sales of food/ beverage (booking, payment)
- Local manager, national manager
o Produce weekly/ monthly local report of room occupancy
o Produce weekly/ monthly local report of the staff sales statistics
o Produce weekly/ monthly local report of the food/ beverage and room
sales.
- National manager
o Produce weekly/ monthly national report of room occupancy
o Produce weekly/ monthly national report of the staff sales statistics
o Produce weekly/ monthly national report of the food/ beverage and
room
8
The University of Greenwich DISTRIBUTED SYSTEM
III. Assumption
The sales staff is only able to access several fields as follows:
o Food/ Beverage and Room invoice management (create, edit invoice)
o Food/ Beverage and Room payment management (edit payment)
o Food/ Beverage and Room management (create, edit item)
o Customer Management (create, edit customer)
Local Manager does not have the right in Staff Management due to the
developer rule and policy. They have the same access like the sales staff
and plus one more right is that to access the local report field.
The National Manager get all the rights in any resort. They have one unique
account in each resort with the highest priority.
- There might include multiple items within an individual invoice. Each item
is a complete process of creating, so that user is expected to choose just one
Staff Code during the process of generate a complete invoice.
- Those payments with their status of “Waiting” can be edited to “Paid”
9
The University of Greenwich DISTRIBUTED SYSTEM
10
The University of Greenwich DISTRIBUTED SYSTEM
Quantity Email
FITotal Phone
RoomInvoice
FoodBeverageStatus
RIId
StatusId
RoomId
Invoice
SDescription InvoiceId
InvoiceId
CustId
StaffId
PaymentMethod
Staff DateIn
PaymentDate
StaffId Dateout
Total
StaffCd RITotal
StatusId
UserName
Role TypeId
Password
RoleId
FullName
RoleName
DOB Room
RoleDescription
RoomId
Email
Phone
Name InvoiceType
StatusId TypeId
Price TypeName
StaffRole
StaffRoleId InvoiceStatus
RoomStatus
StaffId StatusId
StatusId
RoleId SDescription
SDescription
11
The University of Greenwich DISTRIBUTED SYSTEM
Table Room
Table Invoice
12
The University of Greenwich DISTRIBUTED SYSTEM
Table Staff
13
The University of Greenwich DISTRIBUTED SYSTEM
Table Role
14
The University of Greenwich DISTRIBUTED SYSTEM
The Use Case begins when the actor indicates to access the login
section of system.
1. System requires actor to fill up all login fields (username and
password).
2. Actor inputs username and password onto appropriate field
mentioned above and choose to login.
3. System starts to authenticate the required fields, making sure that
the inputs match with a unique account in the system, and both
username and password is correct.
4. The actor will be navigated to appropriate destination and is
indicated that is currently signed in by the system specific
displayed content.
5. The use case ends.
Alternate Path
Field(s) is left System warns actor with red message that require them to have to input
blank enough fields before clicking Login button.
Wrong System shows error login screen to actor with message about the failure of
Username or their input information. System then prompts actor to do the login process
Password again.
Exception Path
Failure in Login System does not allow actor to do any login process within 10 minutes.
over 5 times
Exception Path
16
The University of Greenwich DISTRIBUTED SYSTEM
17
The University of Greenwich DISTRIBUTED SYSTEM
18
The University of Greenwich DISTRIBUTED SYSTEM
19
The University of Greenwich DISTRIBUTED SYSTEM
20
The University of Greenwich DISTRIBUTED SYSTEM
21
The University of Greenwich DISTRIBUTED SYSTEM
Missing some System notifies actor with providing enough information to the required
required fields fields for the create process to be accomplished.
Exception Path
23
The University of Greenwich DISTRIBUTED SYSTEM
- Search by Name
- Search by Price
- Search by Status
3. System performs appropriate food/ beverage base on the actor
provided information.
4. Actor receive the necessary information
5. The use case ends.
Alternate Path
None
Exception Path
None
24
The University of Greenwich DISTRIBUTED SYSTEM
26
The University of Greenwich DISTRIBUTED SYSTEM
- Search by Status
3. System performs appropriate room base on the actor provided
information.
4. Actor receive the necessary information
5. The use case ends.
Alternate Path
None
Exception Path
None
27
The University of Greenwich DISTRIBUTED SYSTEM
Flow of events
Basic Path
The Use Case begins when actor indicates to create a new customer
added to the list of it.
1. The system navigates to the section used to create a
customer
2. Actor provide information of the new item
- Full Name
- Date of Birth (DOB)
- Email
- Phone
3. Actor choose to create the new customer.
4. System records the added customer and performs it on the list to
the actor.
5. The use case ends.
Alternate Path
Missing some System notifies actor with providing enough information to the required
required fields fields for the create process to be accomplished.
Exception Path
28
The University of Greenwich DISTRIBUTED SYSTEM
29
The University of Greenwich DISTRIBUTED SYSTEM
information.
9. Actor receive the necessary information
10. The use case ends.
Alternate Path
None
Exception Path
None
30
The University of Greenwich DISTRIBUTED SYSTEM
31
The University of Greenwich DISTRIBUTED SYSTEM
None
Exception Path
None
32
The University of Greenwich DISTRIBUTED SYSTEM
- Other Room
- Other Staff Code
- Other Date In, Date Out
3. System updates the chosen item with new information and
performs to the actor
4. Actor receive the necessary information
5. The use case ends.
Alternate Path
Actor choose to In this case the chosen item will be delete from the current room invoice.
delete a specific The system updates the invoice and performs to actor.
item instead of
edit it
Exception Path
Actor choose to In this case, the system does not change any of the invoice information
cancel the
process of edit
the invoice
33
The University of Greenwich DISTRIBUTED SYSTEM
None
34
The University of Greenwich DISTRIBUTED SYSTEM
35
The University of Greenwich DISTRIBUTED SYSTEM
The Use Case begins when actor indicates to view the list of all
Staff of the resort
1. System navigates to the section used to perform this list
2. Actor receive the information
3. The use case ends.
Alternate Path
The list might In this case, actor is expected to reload the current page.
not be loaded
Exception Path
none
36
The University of Greenwich DISTRIBUTED SYSTEM
37
The University of Greenwich DISTRIBUTED SYSTEM
Exception Path
38
The University of Greenwich DISTRIBUTED SYSTEM
39
The University of Greenwich DISTRIBUTED SYSTEM
none
Exception Path
none
Exception Path
none
40
The University of Greenwich DISTRIBUTED SYSTEM
Exception Path
none
Exception Path
none
41
The University of Greenwich DISTRIBUTED SYSTEM
42
The University of Greenwich DISTRIBUTED SYSTEM
Exception Path
none
Exception Path
none
43
The University of Greenwich DISTRIBUTED SYSTEM
Exception Path
none
Exception Path
none
44
The University of Greenwich DISTRIBUTED SYSTEM
5. Class Diagram
- Entities Class Diagram
45
The University of Greenwich DISTRIBUTED SYSTEM
46
The University of Greenwich DISTRIBUTED SYSTEM
47
The University of Greenwich DISTRIBUTED SYSTEM
6. Deployment Diagram
Data Tier: or called database server, contains the external data source. As in
here we use the Microsoft SQL Server.
Logical Tier: contains two inner sub layers: the Data Access Layer and the
Service Layer.
- We use the technology of WCF Data Service which include the entity
framework as place to state all accessing method to the Data Tier. The
Data Access Tier is used to store the entity framework library as well
as the data from database server.
48
The University of Greenwich DISTRIBUTED SYSTEM
- The Service layer defines services that retrieve data from the data
access tier in order to avoid connection from the Presentation Layer to
the Data Access Layer.
Presentation Tier: define the connection to the public services from the
Logical Tier.
49
The University of Greenwich DISTRIBUTED SYSTEM
V. System Implementation
1. Login
Case of success:
System navigates user to the default web page wherein display the
content of Generating Invoice process.
System performs username of the current accessing user account at
the top left of the screen as shown in the picture.
50
The University of Greenwich DISTRIBUTED SYSTEM
Case of failure:
System warns user with information about wrong inputting account
username or password.
User are expected to do the login again.
2. Food/Beverage Management
Main active screen
System performs a list of all foods and beverages within each resort. The sale
staff base on the food and beverage status (Available or
Unavailable) to inform Customer with their order.
As user chooses to sort the list by status, system returns
only food and beverages that are suitable with the selected state.
51
The University of Greenwich DISTRIBUTED SYSTEM
52
The University of Greenwich DISTRIBUTED SYSTEM
Case of success: system updates the food/beverage list with new item
which user has already successfully created.
53
The University of Greenwich DISTRIBUTED SYSTEM
Case of success:
Before
After
Case of failure:
System will notifies user if the
item Name and Price are left blank
during the update process.
54
The University of Greenwich DISTRIBUTED SYSTEM
User types the name of the item that are looking for and the list will be
appropriately filtered like shown on the above picture.
User can also merge three types of search into one in order to look for an
exact item with the name, price and status are as expected.
55
The University of Greenwich DISTRIBUTED SYSTEM
3. Room Management
Main active screen
System performs a list of all rooms within the resort. As the interface and
management solutions here are quiet the same as they are in Food/Beverage
section. User can refer to Food/Beverage Management section to understand
clearly how to use this Room Management section.
Create new room
56
The University of Greenwich DISTRIBUTED SYSTEM
Before
After
57
The University of Greenwich DISTRIBUTED SYSTEM
58
The University of Greenwich DISTRIBUTED SYSTEM
NOTICE: There is no term that calls remove room. Each room here carries
itself a specific state:
Available: room in service
Unavailable: room out of service
4. Customer Management
Main active screen
59
The University of Greenwich DISTRIBUTED SYSTEM
System performs a list of all customers who have purchased room or food or
both in the past. The information of customers is stored for reusability if they come
back to use the resort services in the future.
View Customer Detail Information
By clicking the “Detail” link at the beginning of each record, user is able to
view Customer detail information
Once in the customer detail
page, user can choose to edit the
information as well as go back to the
previous list.
The “Edit” sign is also located
next to the “Detail” on the Customer
“Main active screen”.
Case of success
Before
60
The University of Greenwich DISTRIBUTED SYSTEM
After
Create a New Customer
By clicking “Create” link located on the top left of the list, user is able to
create a new Customer for further contact and support
After complete filling in all required fields, user click “Create” for the system to
record that new customer
Case of success
61
The University of Greenwich DISTRIBUTED SYSTEM
Search by Name
62
The University of Greenwich DISTRIBUTED SYSTEM
Search by Birthday
Search by Email
63
The University of Greenwich DISTRIBUTED SYSTEM
5. Staff Management
Main active screen
Case of success
64
The University of Greenwich DISTRIBUTED SYSTEM
Case of failure
65
The University of Greenwich DISTRIBUTED SYSTEM
Edit staff
Case of success
Case of failure
66
The University of Greenwich DISTRIBUTED SYSTEM
67
The University of Greenwich DISTRIBUTED SYSTEM
6. Invoice Management
Invoice management is the most important feature of the whole resort
system. As in here, we provide a proper way to maintain and monitor the
Food/Beverage and Room invoice.
Food/Beverage Invoice
Main active screen
68
The University of Greenwich DISTRIBUTED SYSTEM
Each invoice of this kind can contain from one to many kind of foods and
beverages.
Each food/beverage invoice is associated with only 1 customer and 1 staff
To create a new food/beverage invoice, first to select the customer
If the customer has used the resort service before, there will be customer’s
detail information stored on the system. User only need to select customer name as
the owner of the invoice. Otherwise, user clicks on “Create” located under the
Customer box to store a new one.
Secondly, user click on “New” to start ordering the food and beverage.
There is a rule as mentioned above that, each invoice contains one or many items
but is only belonged to 1 customer and 1 staff who place it.
69
The University of Greenwich DISTRIBUTED SYSTEM
After that, user adjusts the item quantity incase the customer wants more
than just one for each item. System will immediately perform the total of this item
as shown below.
User then selects his/her staff code as the one who is in charge of the
current invoice.
70
The University of Greenwich DISTRIBUTED SYSTEM
Normally, the customer will order more than an item one time, and that
means user is expected to repeat the process again to add one or more items to the
current invoice.
By click on the “New”
located at the beginning of
each item row, user can
achieve the purpose. User can
also choose “Edit” to adjust
the quantity of the item, or
simply choose “Delete” to
remove the chosen item out of
the current invoice.
The picture on the left
shown that, the current food/
beverage invoice has 5 items.
It is belongs to a customer
name “Todd Nguyen” and the
staff who is in charge of
placing it has the code “S005”
71
The University of Greenwich DISTRIBUTED SYSTEM
Room Invoice
It is quite the same of Room Invoice to the one of Food/ Beverage. User then
needs to adjust the time that customer need to use the room service. The “NoD”
indicates the number of days from the time customer move in to the time move out
Once User click on “Create” the invoice (Food/ Beverage or Room) will be
exported into “Payment” section.
72
The University of Greenwich DISTRIBUTED SYSTEM
Those invoices which are already Paid cannot be modified, the remains
waiting invoices can be changed with information about Date, Payment Method
and Status.
7. Report Management
There are 4 kinds of report that we design for the system to perform.
73
The University of Greenwich DISTRIBUTED SYSTEM
User base on the total number of item displayed on the report to calculate the
occupancy rate by dividing it to the total number of owned room and multiply with
100%. The process of calculating will be made manually as we did not provide to
the system.
74
The University of Greenwich DISTRIBUTED SYSTEM
The National manager can access to any resort system belongs to that resort
brand. So that they can easily manage the information of customer, staff, food and
room as well as the sales statistic. Base on the national resort system, national
manager does not have to login into other system to get report. It is the primary
function that allow the manager to get those report right at one place and one time
conveniently.
75
The University of Greenwich DISTRIBUTED SYSTEM
VII. References
http://www.codeproject.com/Articles/434282/A-N-Tier-Architecture-
Sample-with-ASP-NET-MVC-WCF
76