Recent Question/Assignment

1
CSE2DES/CSE5DES – Assignment 1
Due Date: 10 am Monday 22nd September 2014
Assessment: This assignment 1 is worth 15% of the final mark for CSE2DES/CSE5DES.
This is an individual assignment.
Copying, Plagiarism: Plagiarism is the submission of somebody else’s work in a manner that
gives the impression that the work is your own. The Department of Computer Science and
Computer Engineering treats plagiarism very seriously. When it is detected, penalties are
strictly imposed. Students are referred to the Department of Computer Science and Computer
Engineering's Handbook and policy documents with regard to plagiarism.
No extensions will be given: Penalties are applied to late assignments (5% of total
assignment mark given is deducted per day, accepted up to 5 days after the due date only). If
there are circumstances that prevent the assignment being submitted on time, an application
for special consideration may be made. See the departmental Student Handbook for details.
Note that delays caused by computer downtime cannot be accepted as a valid reason for a late
submission without penalty. Students must plan their work to allow for both scheduled and
unscheduled downtime.
Assignments submitted more than 5 days late (i.e. after 10 AM on Monday 6 October 2014)
will receive the mark of 0.
Return of Assignments: Students are referred to the departmental Student Handbook for
details.
Objectives: To learn to identify and specify the relevant use-cases and develop an object
oriented domain model as part of the applications development process.
Problem Statement - Standing Orders Management System
A distribution company supplies various kinds of products to customers on a daily basis
according to the standing orders placed by the customers.
The company wants to set up a system to maintain information about the products that the
company can supply, its customers, the standing orders, together with information about
deliveries, invoices, and payments.
Products
Products are identified by product ID. Each product has a short description which is to be
recorded.
Customers
Customers are identified by customer ID. Each customer has a name and one or more delivery
addresses. Each delivery address has a contact person, whose name and phone number are
recorded. Note that the names of the contact persons may not be unique. In addition, each
delivery address is given a system-wide unique ID.2
Standing Orders
Standing orders are identified by standing order ID. Each standing order is for one product to
be supplied to one customer on an agreed price for the standing order. The standing order
states the quantity required for each day of the week. Each standing order has a date initiated
and termination date. When a standing order is first created, it has the status of being “active”.
The status is changed to “closed” when the termination date is past or when the customer
cancels the order.
Deliveries
Deliveries are made on each day to satisfy orders for that day. Each delivery is identified by a
delivery number, made to one particular delivery address of a customer, and can include
products from more than one standing order for the customer.
A delivery docket (identified by the delivery number) is made out at each delivery. It contains
delivery date, the day of the week, the quantity delivered for each product, together with the
standing order number for that product. The quantity delivered for a standing order on a
particular day is usually equal to the quantity specified in the standing order, but occasionally
it may be different. In later case, a star (*) is marked against it.
Invoices
Every week an invoice is prepared and sent to the customers. The invoice consists of all the
deliveries made up to the Friday of the previous week to one customer. A sketch of the
invoice is given below.
Invoice Number: ____________
Customer ID: _______________
Week Ending: ______________
Delivery St. Order Product. Qty Price Cost
Nr. Nr. ID
____ ____ _____ _____ _____ _____
____ ____ _____ _____ _____ _____
____ ____ _____ _____ _____ _____
Amount due: __________
Payments
Customers pay by direct debit. Once the payment is made and confirmed, the date on which
the direct debit is made is recorded against the invoice as payment date. A debit account has
an account number, the business name and the name of the authorization person.3
Results of an analysis of the required behavior of the system
An analysis of the behavior of the system has been carried out. As a result, a number of use
cases have been identified. More specifically, the following use cases – at least – have been
identified as use cases that need to be supported by the system.
1. Add a new product
2. Remove a product - provided there are no standing orders for this product.
3. Add a new customer. At least one delivery address and one standing order need to be
added for the new customer.
4. Add a delivery address to an existing customer.
5. Remove a delivery address, provided no deliveries have been made to this address.
6. Add a standing order to an existing customer.
7. Close a standing order – when the end-date is reached or when the customer cancels the
order.
8. List standing orders that need to be filled for a particular date, sorted by customer name
and, within a name, by id.
9. Add a delivery.
10. Generate a delivery docket.
11. List all the customers who have delivery for a particular week, given the ending date of
the week.
12. Add an invoice for a customer.
The system is capable of automatically generating all the invoices for deliveries made in
a given week. This capability is envisaged as part of the functionality of the final system.
However, for the initial development of the system, this capability is put on hold. Instead,
as part of the core functionality provided by the system, a simpler use case is considered.
It is the use case which adds, to the system’s information base, the details of an invoice
for a customer for deliveries in a particular week. The invoice number is generated by the
system.
13. Generate an invoice document, given the invoice number.
14. Record the payment for an invoice.4
Your Tasks
You are required to
Task 1 (60 marks out of 100 marks for Assignment 1)
Describe the use cases identified above.
If there are other use cases you think would be needed to support the aforementioned use
cases, point out these additional use cases and specify them.
NOTE ON MARKING: You are required to describe all the use cases, but about 4 use
case descriptions will be selected to mark in detail.
Task 2 (40 marks)
Construct the structural domain model
Clearly state any assumptions you make.
What to submit
? Hard copy of the use case descriptions and the structural domain model is to be submitted
to the labeled submission box on the first floor of the Beth Gleeson Building (behind
BG139).
? Electronic copy of the use case descriptions and the structural domain model to latcs6
using the submit DES directory or filename command (Note that the
submission is not through LMS). The file must be in either pdf or MS Word format.
Assignments without any of surname, given names, student ID, username, or subject
code will have 5% of the mark deducted.
?

Looking for answers ?