Download as:
Rating : ⭐⭐⭐⭐⭐
Price: $10.99
Language:EN

Relationships and the chosen navigation directions

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.

Figure 1 – Design Class Diagram Showing Classes for Domain Objects

NOTE: Though the associations from Delivery to Customer and Address can be derived, they are shown in the diagram. These shown associations serve to express the constraint that each delivery is for one customer to one address only.

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. 

8. List standing orders that need to be filled for a particular date, sorted by customer name and, within a name, by the customer id. 

9. Add a delivery. 

13. Generate an invoice document, given the invoice number.

14. Record the payment for an invoice.

2. Add a new customer.

According to the original requirement, at least one delivery address and one standing order need to be added for the new customer. For the sake of simplicity, we will relax this condition, and require only that one delivery address is to be added together with a new customer. In other words, the new customer must have a delivery address, but does not (yet) have a standing order.

In an operational system, we should generate all the deliveries for a particular data and then, if necessary, adjust the actual quantity delivered. In this prototype, to keep it simple, we simply “mimic” part of this process by entering a delivery manually.

Atomic Use Cases

4. Add a standing order to an existing customer.

Date is implemented as an integer. The quantities, as can be seen by the design model, are maintained as a list of integers (which can be implemented in Java as an array or a List). The first number in the list is the quantity for Mondays; the second is that for Tuesdays, and so on.

Note the following points:

 Your specifications must be based on the given structural design model.

2. Electronic copy of the atomic use case specifications in Word or PDF format.

Task 2 – Prototyping (40 marks)

Arrange your classes as follows. The first class in the listing is the class StandingOrderSystem, followed by the “domain” classes in alphabetical order of the class names.

2. Electronic copy of all the classes.

What to submit for Part2

1. Hardcopy of the code listing of the StandingOrderSystemTester class.

public class StandingOrderSystemTester

{

testInit();

testUC1();

// test creation of new system

public static void testInit() throws Exception

}

// test add product

StandingOrderSystem sos = new StandingOrderSystem();

// then add a product

}

// test add customer

// then add enough data for your testing purpose

StandingOrderSystem sos = new StandingOrderSystem();

"A1", "1 Street-1", "Suburb-1","John","1111",

"ORD1", "P1", "Coke", 1.5, quantities, 1, 100);

Copyright © 2009-2023 UrgentHomework.com, All right reserved.