Systems Requirement Specification
1. TIMELINES AND EXPECTATIONS
Due date: Sunday, Week 6, 11:55pm.
Weighting: 15%, maximum mark: 100.
Minimum time expectation: 30 hours.
Your assignment will be assessed by your tutor or lecturer if your lecturer is also your tutor. You will receive your mark and written feedback via Moodle two weeks after the due date or submission, whichever is later.
You have been hired as a systems analyst to work with two other analysts. Your task is to document the functional requirements of Amazon, an online retail system, using UML. In a typical learning environment, assignments are often based on hypothetical case studies, like those in the tutorials. Such case studies, however, are limiting because you have little opportunity to investigate how real systems work, thus making it difficult to appreciate the complexity of a real system, the need of analysis and the usefulness analysis tools. We hope that by investigating a real system you will appreciate the importance of analysis and the role of UML as a communication and analysis tool.
During the analysis stage, UML is used to specify systems requiremets, which will be used to design a computer system. In this assignment, we will use UML to document a system that has already been computerised – like reverse engineering a system (from an existing computer system to specification). This has another advantage in that you can evaluate if your specification is close enough to the real system. However, be careful when reverse engineering so you do not also include the design decisions – please see your lecturer when you are unsure – we are more than happy to give you feedback.
Please note that the case study provided here is incomplete and you need to investigate
Amazon in order to complete the assignment, such as by visiting their website or following Amazon development in the news. You may also come up with functionality that do not exist in Amazon but would add values to the business, but please discuss with your lecturer first.
Section 3 describes the motivation behind the design of this assignment; Section 4 provides information on how and what to submit (note that Moodle has been setup so there is only one submission from each group). The case study can be found in Section 5. Section 6 describes the tasks for individual and group work.
The purpose of the assignment is to ensure that you know:
1. How to document functional requirements using three tools widely used in the IT industry: brief use case description, use case diagram and domain model class diagram. The use case and domain model class diagrams are part of the Unified Modelling Language (UML).
2. How different stakeholders contribute to definition of requirements.
The assignment addresses the following learning outcomes:
K1. Explain how models are used to assist in analysing and modifying existing business systems;
K2. Define various roles involved in the processes of system analysis;
K3. Describe techniques used to gather required information for system analysis;
K4. Explain the various stages of the system development life cycle;
S1. Identify appropriate models for given scenarios;
S2. Develop various models using a professional CASE tool;
S4. Perform Object Oriented Analysis and Design to construct various object models used to communicate the scope and requirements of the project.
A1. Write integrated reports, using appropriate models, providing detailed analysis of given textual scenarios.
4. WHAT AND HOW TO SUBMIT
1. Moodle has been set up so each group submits only one document – anyone from a team can submit.
2. Submit a Word or text document which has the link to a GoogleDoc document which has the group work and individual work. This GoogleDoc document must be complete (please upload and share the template file in Moodle). After uploading, you must share the GoogleDoc with your lecturer and tutor.
5. CASE STUDY
The assignment is based on the online shopping system www.amazon.com.au. Some functionality or processes may have been simplified or modified to meet certain learning criteria. We will investigate three subsystems in Amazon: Fullfilment by Amazon (FBA), Customer Support and Warehouse. These three subsystems are described in the following sections.
5.1 Fullfillment by Amazon (FBA) Subsystem
FBA is a business model where sellers leave their merchandice at Amazon warehouses and Amazon ships the products on behalf of the sellers. An overview of FBA can be found here https://sellercentral.amazon.com/gp/help/external/201023020?language=enUS&ref=efph_201023020_cont_201021850
Before resellers can use FBA, they must create a list of items they want to sell under FBA, they then ship the products to Amazon by creating a shipping plan. To create a shipping plan, Amazon needs to know:
- which product and the quantity of each product that will be sent.
- the location where the items will be sent from, which could be the address of your warehouse, home or supplier.
- whether the resellers want Amazon to prepare the product for shipment to customers. Amazon charge per-item fee for each item it prepares on behalf of resellers.
- whether the resellers want Amazon to label the products. Amazon also charge labelling per item. Resellers who want to label the product themselves print the labels and affix them to the products (make sure that each product has appropriate barcode).
Finally, Amazon displays the fullfillment center(s) your products will be assigned to.
Is it worth selling with FBA? Anyone should be able to evaluate this –is FBA worth it? Once you have signed up as an FBA reseller, you would use a different tool for evaluating this decision.
For the shipped products to appear on Amazon, resellers have to register the products on
Amazon online shop. Information required is product name, the image(s) of the product, SKU, dimension, weight, price, FNSKU, UPC/EAN and ASIN. Resellers also need to specify the categories, subcategories which may have multiple levels and some optional description specific to the categories. For example, to sell a watch, you need to specify the type of band. Resellers can upload information of the products individually or in bulk.
FBA resellers can review their inventory to identify slow moving stocks. They can also launch a campaign to promote selective products from within Amazon using Lightning Deal. To create a Lightning Deal, specify how many units are available for the deal and the price during the deal, which is valid for 24 hours. The original price must stay the same, so Amazon can display the original price and the special price.
Amazon shoppers can view the deal when they click on “Today’s Deals” on the top menu as in Figure 1 on the next page. Resellers may offer further incentives such as free shhipping to further entice consumers.
Figure 1. A snapshop of a section of an Amazon website. Customers click on “Today’s Deals” to list products under this deal.
We have looked at how resellers use Amazon’s FBA. Next we will look at what Amazon’s management need from the FBA system. A manager need a way to evaluate the effectiveness of the FBA offering, so the system must produce reports which will help the management monitor the performance of FBA.
This conclude the discussion on the FBA subsystem. The next section describes the Customer Support and Returns subsystem. Note that each student work with only one subsystem.
5.2 Customer Support and Returns Subsystem
The Amazon support team provides support via live chat or telephone only. A human agent will then be assigned to the live chat or telephone call.
For a telephone call, the customer will be prompted to enter their invoice number and placed on a queue. The system will then inform customers how far they are in the queue and the average waiting time. They will also be given a dial back option without losing their place on the queue. If customers prefer the dial back option, then the system reads current number out and ask if they want to be rung back on that number. If the system is unable to read customer’s number, then it simply asks for the number. In any case, the system must confirm the number before terminating the call. The phone call is then assigned to the next available support agent and the customer being served will be removed from the queue. A ticket is then created and the system must keep track of who support the customer and the detail of the conversation. At then end of the conversation, a request is marked for closed, follow-up or escalated. When the status is escalated, the support agent must choose the team required to resolve the issue.
In some cases, customers want to ask for a refund or replacement. If this is the case, they must articulate why they need a refund or replacement. If a replacement or refund is approved, the support agent will then send an electronic return label so customers to be affixed to the return package. The label has the customer name, customer address, phone number, invoice number and a system generated return ID.
As an online store in Australia, Amazon and its resellers must comply with the return/refund law. Further information in relation to Australian law can be found from https://www.consumer.vic.gov.au/products-and-services/online-shopping/buying-from-anaustralian-seller-online. Amazon also have their own refund policies. In any case, when a customer returns a product, you must process it in accordance to the online shop return/refund policies without breaking the legal obligation. If the product is faulty, then you are required to either refund or replace the products. If the customer wants a replacement product, then you must send a replacement without incurring cost to the customers. You can also reject return/refund requests. Some customers are difficult to deal with and insists on a return/refund without valid grounds. Such cases need to be escalated to supervisors and the agent must specify the team who will contact the customer.
Apart from handling returns from customers, the return department must also support refund requests from FBA resellers.
Other than operational tasks, the customer support and return subsystem must also support management. Managers of the system need to review the performance of customer support. Useful reports include average waiting time, time spent for each customer and first contact resolution rate (calls are closed without follow-up or escalation).
Warehousing is a big part of Amazon and maintaining high efficiency is important so products can be shipped as soon as possible. Here is a quick overview of an Amazon warehouse https://www.digitaltrends.com/home/amazon-warehouse-tour/. Note that although Amazon has used robots in the warehouse, but at this point, we do not consider the robots as part of the system specification. The decision to use robots is essentially a design decision.
When orders are received, the system prepares a packing list. When all the items are picked, they will be packed following the packing guideline for the product. When an order is ready to ship, the system must update the status of the order from “received” to “ready for shipping”, so customers are aware of the progress. When the products are finally shipped, the system updates the status to “shipped”.
To ensure that orders can be shipped as soon as possible, the manager of the warehouse needs to be able to predict the number of staff to hire to cater for seasonal variation (such as Christmas or other festivities). The manager also needs a costing analysis report to make appropriate financial decision. You may assume that all packers at Amazon are casual or on shift. There are two shifts in a day, 7:00 am to 3:00pm and 3:00pm to 11pm. A packer is assigned to one of the shift but never both on the same day. However, a packer may be assigned to one night shift and one morning shift on the following day.
Occasionally, manufacturers issue a recall and the manager responds by creating a recall request so the recalled products can be returned to the manufacturers. The recall requests also apply to products from FBA resellers and the system must notify the resellers.
In the warehouse, sometimes it is necessary to replace or add new shelves, so the system must allow managers to remove and add shelves. The system must record the date and time it was added, who has added it and the dimension of the shelves. Similarly, when a shelf is deleted, the system must record who has deleted it as well as the date and time it was deleted.
6. ASSESSMENT TASKS
This assignment has a group work and individual work components. Please note although we require only one report for the group and individual components, we will be able to track your contribution in the group work component.
For diagramming (use case diagram and domain model class diagram), you may use any tools you are comfortable with – popular web based tools include draw.io and Lucid Charts. If you use Lucid Chart, then please sign up as a student - a student account has a higher maximum chart limit. If you use draw.io, there is no need to sign up. However, it will be easier as a group if all members within the group use the same tools for creating the domain model class diagram, so you can copy and paste from one diagram to another during consolidation.
The following sections describe the tasks for the group and individual work and the distribution of marks.
Task 1 - Individual work [70 marks]
1 5 marks – Stakeholders.
List four stakeholders of your subsystem, outline their roles, and indicate whether they are internal or external, operational or executive.
2 25 marks – Brief use case description.
Ten brief use case texts for your subsystem – each use case description must have actor(s), use case name and use case description. The written case study provides at least six use cases for each subsystem, so you need to add four more new use cases. The new use cases must fit in with the case study and your subsystem– for example, the case study is based on Amazon; therefore, a use case for booking a car is irrelevant.
You must include an actor for each use case. Each use case must also apply these three concepts:
• perfect technology assumption (week 3).
• elementary business processes – EBP (week 3).
• can be computerised.
For each subsystem, make sure you include at least one use case that is only visible to the staff (not customers), because in assignment 2, you will be designing the screens for one use case.
3 10 marks – use case diagram.
A use case diagram based on the brief use case description you have created.
4 30 marks – class diagram for each subsystem.
A class diagram for your subsystem. The class diagram must support all the use cases identified.
Task 2 - Group work [30 marks]
5 5 marks – Consolidated report
The report must clearly list each student’s name and ID and which subsystem each member is responsible for.
6 20 marks – Consolidated class diagram.
Consolidate all the class diagrams from your team members into a single class diagram.
7 5 marks - A table which lists from which subsystem the class or attribute comes from.
This will greatly ensure that you have included all classes, relationships and attributes from all subsystem and help you and the markers in checking the consistency of the consolidated domain model class diagram.
End of Assignment One Specification