0% found this document useful (0 votes)
37 views

Assignment 1 Subhan Moin Zain

Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
37 views

Assignment 1 Subhan Moin Zain

Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 10

<-----------------Group Members------------------>

Name Id
Muhammad Subhan Hussnian F2022065230
Muhammad Moin ud din Zafar F2022065224
Muhammad Zain Abbas F2022065203

1. Case Study Information Movie/Game DVD Rental System


A new video store offers rentals of movie/game DVDs to the wider public. Its suppliers provide
their own DVD ordering web services that the store can use to search and order movie/game DVDs
online via internet. In order to run the business more efficiently, the store asks you to develop a new
movie/game DVD rental system with SOA so that the new system can be integrated with the supplier
web services.

The new system is to store 1,500 movie/game DVDs initially and then will be extended with
additional DVDs in future. The DVD inventory has already been ordered from suppliers who are
generally able to supply movie/game DVDs within one week from the order date. But the price is
changed day by day. Each supplier DVD ordering web service can receive various requests (e.g. get
current price of DVDs) from its client systems (e.g. Movie/Game DVD Rental System) and then returns
data values requested (e.g. current price of DVDs) to the client systems. Such web services usually
provide a list of service endpoints (methods/API) that their client systems can find out from the web
service inventory over internet. They have three common methods “GetNewDVDCatelogue()”,
“GetDVDPrice(DVDCode, DVDTitle)” and “OrderDVD(OrderForm)”. If the web service receives a
request “GetNewCatelogue()” or “GetDVDPrice(DVDCode, DVDTitle)” from a client system, it will get a
copy of current DVD catalogue or the current price of a DVD from its data store and returns it to the
client system. If the web service receive a request “OrderDVD(OrderForm)” with an order form from a
client system, it will process the order form with the supplier and then return the result of the order
to the client system. This means that the Movie/Game DVD Rental system has to interact with supplier
DVD ordering web services dynamically over internet as shown in the following diagram:

Movie/Game DVD Rental Suppliers’ DVD ordering web


System on the video store services on the supplier web
machine server

The rental system needs to record the supplier contact information including their name,
address, phone number, and email address. So that the store manager can find the information of
suppliers from the system. The store manager needs to use the system to fill a DVD order form online
for ordering new DVDs and to select a supplier for the order from a list of suppliers stored in the system.
When the store manager uses the system to order DVDs, an online order form is shown on the
computer screen for the manager to fill. Top of the form shows an order number, order date, store
name, address, telephone number and email address. The manager needs to add order lines to the

1
middle of the order form. Each order line shows a DVD item to be ordered and is filled with the DVD
title, release year, copy price, the number of copies of this DVD to be purchased, and the subtotal cost
of this DVD item. The subtotal cost of each item is also added to the total cost of the order on the
bottom of the order form. When the order form is fully filled, the store manager saves it in the system,
selects a supplier from a supplier list box provided by the system, and submits the order form and the
selected supplier to the system. The system then sends the “OrderDVD(OrderForm)” request with the
order form to the DVD ordering web service of the selected supplier. When the web service receives
the request, it executes its “OrderDVD(OrderForm)” method. If the order is accepted, the web service
sends a success notification to the rental system. Then the system changes the status of the order form
to “success”. If the order is rejected, the web service sends a failure notification including the reason
to the rental system. Then the system changes the status of the order form to “failure” with the reason.
The store manager can find out the result of the order form from its status value.

The store wants the new system to be connected with a scanning machine as part of the
system. So that the store clerk can use the machine to scan DVDs when processing DVD rentals and
returns. To support this facility, new arrived DVDs will be barcoded using the system before being put
on the store shelves. The system stores a record of each of DVDs with its barcode, title, producer, selling
price, rental price and the number of its copies in a data store. A DVD can have multiple copies held in
the store so that different customers can rent the same DVD in the same period. The system records
each copy of the same DVD with a copy number and its current status that is either ‘out’ or
‘in’.
A customer card will be issued for the new customer by the store clerk in terms of the system.
The card has a unique card number that is used to link the card to the card holder (customer) in the
system. The system keeps a record of individual customers with the customer’s name, home address,
telephone number and email address. The store can notify customers new arrived DVDs or remind to
return overdue DVDs using their record information.

When a customer gets in the store, the customer either picks up DVDs from the store shelves
and take them to a store clerk, or gets reserved DVDs from a store clerk. The clerk gets the customer
card from the customer and uses the scanning machine to scan the customer card. If the system
accepts the card, the clerk clicks the RENTAL button to get an online rental form from the system to fill
for the customer. The clerk fills the form with a form number, issue date and return date (30 days from
the issue date) and the customer card number. Then the clerk uses the scanning machine to scan DVDs
one by one. For each scan, the system validates the scanned barcode against the barcodes stored in
the system. If the scanned barcode does not match any stored barcode, the system rejects the DVD.
Otherwise, the system adds a new rental line to the middle of the rental form with the DVD’s barcode,
title and rental price. The rental price is also added to the total rental cost on the bottom of the rental
form. If the customer rents multiple DVDs, this scanning process is repeated till all of DVDs have been
scanned. Then the clerk tells the customer the total rental cost to be paid.
The customer can pay the total rental cost by either cash or a bank card. If the bank card is
used in the first time, the clerk clicks the Bank Card button to record the bank card with the card
number, bank name and expire date and sets up a link between the bank card and the customer card
in the system. This helps the customer to use the same bank card for future rentals. The clerk then
processes the payment manually without the system. If the payment is invalid, the clerk rejects the
rental and clicks the Cancel Button to cancel the rental form. Otherwise, the clerk clicks the COMPLETE
button to save it in the system. Then the system changes the status of each of rented DVDs from “in”

2
to “out”, and shows the message “This rental is completed successfully”. The clerk inputs his/her staff
number in the system so that the system can link the clerk record to the rental form for an auditing
purpose.

Rented DVDs are usually returned to the store before the return date. When a clerk gets
returned DVDs from a customer, the clerk clicks the RETURN button and scans returned DVDs one by
one. For each scan, the system validates the scanned barcode against stored barcodes. If the scanned
barcode does not match any stored barcode, the system rejects the DVD. Otherwise, the system
changes the status of the DVD from “out” to “in”. The system searches for overdue DVDs every day and
notifies the store to contact the customers who must return DVDs immediately.

The store allows customers to reserve a DVD that either has not been returned or are on order.
They have to pay a deposit for each reservation. But they are allowed to cancel the reservation and get
the refund of the deposit. The store wants the system to record reservations with reservation date,
customer card number, DVD barcode and title. When a reserved DVD is returned by a customer or is
delivered by a supplier, the store will get the customer information from the system and use the
information to contact the customer that is on the top of the reservation list.

The store expects a lot of enquiries from its customers as well as its staff, e.g. availability of a
DVD (in stock or on order) and how many copies of a DVD are currently available for rental. The system
needs to response to such enquiries interactively with customers and staff.

------------------------------------------ End of Case Study Information ------------------------------------------

3
a. Create a business context diagram showing the business context
model for the Movie/Game DVD Rental System.

4
b. Create a UML activity diagram with horizontal swimlanes
showing the high-level business process model of the
Movie/Game DVD Rental System.

5
Create a UML use case diagram showing the functionality of the
Movie/Game DVD Rental System.

6
c. Create a UML activity diagram with vertical swimlanes showing
the scenario of the use case “Rent DVDs” in the use case
diagram created for Q3 in the above.

7
d. Create a UML class diagram showing the information model of
the Movie/Game DVD Rental System.

e. Create a service interaction diagram (shown in a UML class


diagram) showing service interactions meant by the UML
activity diagram created for Q4 in the above.

8
f. Create a service interface diagram (shown in a UML class
diagram) showing the service definition meant by the UML
activity diagram created for Q4 in the above.

9
1. Other Points to Consider When Creating the assignment
Please ensure that your report complies with the following quality considerations:

• Professional appearance and presentation of your report should also be a priority, including fonts,
colours, general organisation, consistency in all written and drawn elements, and so on. Don’t
forget to put page numbers.
• You can use StarUML or other drawing software such as draw.io and Lucidchart as long as you use
standard models from UML. Non-standard diagrams will not be marked!
• Your diagrams must be high-quality and must be readable. If you put low-quality/low-resolution
images, then they will not be marked!
• You must not distort the diagram images when resizing them to fit the page. If unreadable, then
will not be marked!
• You must avoid pasting screenshot of your entire screen, which makes it impossible to read the
diagram details. Please be professional!
• You can use landscape page orientation for some of your drawing to make it fit better, but not for
the entire report!

2. How You Must Submit Your Report


Please follow the following instructions for submitting your work:

• You must submit the report via UMT LMS


• Only one person in the group should submit the report. (3 members in one group)
• Name your file with this format:
• Penalties for Late submission:
o Received by the deadline: No Penalty.
o Received after deadline: The coursework will not be assessed, and a zero mark will be
awarded.

3. Plagiarism
Plagiarism is a serious violation of academic ethic and requires disciplinary action and penalty. Your
submission for this coursework should be your own work. Submissions that are similar to each other
or reported with high similarity by Turnitin will be treated with suspicion and will be passed to the
school plagiarism panel for further investigation.

1
0

You might also like