INM312 Systems Specifications
Shipment Management System (SMS) Dr Peter T. Popov
October 18th 2017
There is one piece of coursework for INM312 worth 30% of the total mark for the module. You are asked to analyze a scenario and then develop a set of UML models related to the specification of the system described in the scenario.
Please note that although this coursework has been released in Week 3, the coursework tests your knowledge of topics that will be taught in subsequent weeks, and you will not be able to answer all the questions until the end of Week 5, unless you read ahead in the text book on class and sequence diagrams.
The coursework is not due in until the end of November, but you should be able to answer the first question already. Hence, you are advised to start working on the coursework as soon as possible.
The deadline for this coursework is 23:55 on 30th November 2017, and all work must be submitted electronically in accordance with the guidelines below.
Shipment Management System (SMS)
You’ve been approached by Shipment R Us (SRU), an innovative start up firm, willing to develop Shipment Management System software and sell it to logistics companies.
The application must automate the business process of shipment and be used by the employees and the clients of the logistics companies. The provided services are categorized as follows:
An “offer section” is provided as well, where the marketing manager can add limited- time offers. These offers are applied to the shipment process.
The customers must be registered with the shipment company before they can use its services. The system is open for use to individuals (private customers) and to businesses.
During the registration, private customer (i.e. members of the public) must provide:
First and Last names Date of Birth Address
of a business customer, the registration details required are:
Company Name Address
Email address Vat number
Upon registration completion the system will send the customer a confirmation email with the customer login details – a username and a password.
Each user of the system – customers and staff – must log in through username and password.
Parcels are delivered to the warehouse by the customers (or their representatives), the parcel is accepted by the warehouse staff for shipment. Shipment requires both the sender’s and the receiver’s address. The sender’s address comes from the customer’s file, if the customer has previously registered. Customers who use the service for the first time will be registered by the Warehouse staff. The receiver’s details (name and address) must be provided by the customer.
The shipment price consists of a basic price and may also include additional charges. The basic price depends on the parcel’s weight, size and distance to destination. Weight is expressed in kg, size is either “small” or “large” and the distance is “domestic delivery” or “overseas delivery”. A basic price per kg is 5 euros for “small” parcels and 10 euros for “large” parcels. The customer can choose between “standard” and
“express” delivery. The “standard” delivery takes up to 7 working days, the “express” delivery is completed within 2 working days. The price of “express” delivery would incur a 10% surcharge in comparison with the “standard delivery”.
The customer is offered a number of options to pay. The payment can be immediate or deferred. A shipment is confirmed only when a full payment has been received. Until then, the parcel is held in the warehouse. Confirmed shipments are assigned a unique identification number and an email is sent to the customer.
Tracing allows the customer to check on-line the progress of the delivery. The parcel can be (1) in the warehouse, (2) en route, or (3) delivered. The warehouse staff updates the status by typing in the time of arrival and departure of the parcels to/from the warehouse. The forwarding agent updates the parcel status to “delivered” once the parcel has reached the receiver.
Method of Payment and Invoice
A shipment payment can be made by:
The customer is given an invoice, which is issued in electronic form (sent to the customer’s email address), and may, upon request, be printed.
The marketing manager can apply a special offer for a shipment class (standard/express, small/large domestic/overseas) in the form of a discount from 5% to 10% on the final price (including surcharges). Every offer only applies to the particular shipment class. Offers are time-limited (up to date/time) and once specified in the system, are automatically applied by the system when payment amount is calculated.
The system must save in a database all the information about: registered customers, offers, and shipments. Each customer should be able to access on-line their shipment history.
You are expected to develop a set of models on SMS and answer the following questions.
Question 1 – Use Case Diagram
a) Develop a use case diagram for SMS, showing the primary and secondary actors, the use cases and the relationships between them. Pay attention to all actors, including the secondary actors.
b) Develop use-case specifications for the use case “SubmitParcelForShipment” and any related use-cases (i.e. such that have <<include>>/<<extend>> or generalisation relationships with the use case “SubmitParcelForShipment”). The specifications should cover all the options listed in the statement of requirements (i.e. by customers already registered with the services and by customers who use the service for the first time, and with immediate and deferred payment) and should:
spell out the interaction between the actors and the system related to submitting a parcel for shipment,
generating an invoice (sent as an email and optionally printed),
the important exceptional circumstances (alternative flows) that might
occur (e.g. card payment may fail).
Make plausible simplifying assumptions if/when needed.
Question 2: Analysis class diagram
Develop an analysis class diagram for SMS. Concentrate on the problem domain classes, showing their attributes and important operations and the associations between the classes.
There is no need to include type information, get and set methods, or constructors.
Consider a minimal set of boundary and control classes that might be needed for use case realization.
o Use associations in your models and include association or role names, as appropriate, direction arrows, and multiplicities, but don’t worry about navigability.
o Use generalization where appropriate.
o Don’t bother with dependency relationships
(30 marks) b) Substantiate your answer using one or more of the taught techniques for
identifying classes and their relationships: noun/verb analysis procedure, CRC cards, robustness analysis. You may use more than one technique in order to improve your diagram, e.g. by discovering new classes, attributes or operations, but using more than one analysis method will not necessarily get you extra marks.
Question 3: Use case realization (sequence diagram)
Draw a sequence diagram that realizes the use case “SubmitParcelForShipment”. The diagram should cover all possible branches (extensions and alternative flows), loops that are documented in the use case specifications you develop in your answer to Q1b. Make sure that your sequence diagram is consistent with the class diagram you develop in your answer to Q2 and with the use case specifications you develop in your
answer to Q1b.
1) Submissions can only be made electronically via Moodle, using the coursework submission area for the INM312 module.
2) The deadline for submission is 23.55 on the 30th of November 2017.
3) Moodle will adhere to the cut-off date/time and automatically prevent you from
attempting to submit your work after the deadline.
4) I suggest that you do not even attempt to work right up to the deadline and instead recommend that you get your submission in well before the cut-off time. The last thing you need is the stress and worry of watching the clock tick and then encountering a problem that delays you. It can and does happen!
Late submission policy
In accordance with the usual policy on coursework submission, late submission will receive 0% unless there are extenuating circumstances with supporting evidence, which must be notified to Anita Grant in advance of the deadline.
General feedback will be provided during the revision lecture in Week 11. We will aim to get coursework marked and returned to you within 3 weeks of submission. You will receive individual feedback and a provisional mark via the grade book in Moodle once the marking is completed.
All UML diagrams must be created using a UML tool and exported as images for subsequent inclusion in the submission document. Diagrams drawn without a tool will be penalized by deducting 20% from the awarded mark.
Your coursework must be submitted as a single PDF file. Export your diagrams from the UML tool you have used as images, and then assemble all your answers, text and diagrams, in a single word processor file and convert to PDF. Make sure you diagrams are eligible.
If in doubt whether your diagrams are eligible, you can submit the entire project, e.g. as a Visual Paradigm file (.vpp).
UML tools are available on the PCs in the laboratories, and you can also download a copy for your personal machine (Windows, Mac, or Linux) by following the instructions provided on Moodle.
Note that you may come across variations in UML syntax on websites and within certain textbooks. This is of no consequence for the purposes of this coursework.
Originally posted 2017-11-13 03:07:19.