CSE2ISD Information systems development assignment
Object-Oriented Analysis for ISD
Objective
To apply object-oriented methodology and analysis for information systems development in a case study.
Background - The Take -Away Food Shop1
Amanda owns a Take-Away Food Shop. She has hired three cooks, one sale/clerk, one accountant, and one delivery person. Amanda wants to build an information system to help her management for the Take-Away Food Shop.
To minimize her costs she prefers to receive cash for all sales to avoid credit card processing fees, Nevertheless, she has made arrangement with her bank to process credit cards. In-house customers are charged a 5% service charge. Delivery orders are accepted only when the credit card has been validated. (She also adds a $3 delivery charge.)
For sales area, the customers can place their orders on different dishes either in-house or on the internet or calls. Customers can ask for delivery or pick up after the order was successful. The clerk/system records the details of each customer and calculates the total payment. To attract loyal customers a 5% discount on the total amount payment to those who have ordered more than three times at the TakeAway shop within one month period. That is, the shop offers a VIP program. Customers can pay cash or credit card in the store. For online or phone purchases, customers must pay their orders by credit cards. However, the internet users need to have their credit card validated. Amanda has heard horror stories about people who made in huge orders and never pick them up. The call or internet orders will be sending to the kitchen staff once the credit cards have been validated and paid.
The delivery person should ensure the correct address and phone number for on-time delivery. One routine may include multiple deliveries for maximum efficiency.
In food preparation area, kitchen staff will process and package orders. They should ensure that food is ready on time for various types of orders: delivery, pickup and in-house.
The product management is another important part of the daily business as well, e.g., price the food, prepare menus, and select extra dishes for specials of the day. The purchases of raw material inventory and enforce quality control of the kitchen work are also important to product management.
Amanda would like to collect buyers information (name, address, phone, email, etc.) and their preferences such as the price range and the most popular dishes. She believes that the success of her food shop depends on good planning and a growth direction that will satisfy the customers. Amanda is sure that the neighborhood will provide enough business for her to make a good living. But is not quite sure where the bulk of the business will come from: in-house customers, takeouts, or deliveries? She want to be ready for expensing and has three choices: enlarge the seating area and hire more waitstaff, hire more delivery people and buy (or lease) delivery cars, or just hire more cooks and kitchen aids.
To decide where the expansion should take place, she needs a simple accounting system that calculates revenue from in-house customers, takeouts, and deliveries separately. She likes to develop an information system that can manage her business to keep track of her sales and customer relations to help her decision making.
You are required to develop information systems for Amanda based on the above requirement.
Requirement Gathering [15 marks]
You will deliver a short document about the system requirements that can show to Amanda and her staff. You are required to:
- Create an owner’s view for the system that you can show it to stakeholders for feed back. You can make any reasonable assumptions if the case is not clearly mentions in some areas.
[10 marks]
- Identify the users of the system. [2 marks]
- Identify the major functions and related tasks. [3 marks]
Domain Analysis [15 marks]
Step 1. What would you name the system and its subsystems? You list the names of the subsystems going to be built.
Step 2. Write domain definitions and, from there, proceed to establish the domain scope for the system and each subsystem. You write down your answer in table format provided at below.
[6 marks]
Step 3. Identify the domain concepts from the domain definition and scopes. Categorize the concepts into processes, functions, roles, objects, and business rules. You need to list them in domain dictionary table such as shown below. [9 marks]
The Take -Away Food Shop | ||||
Domain Dictionary | ||||
Name |
Type |
Description | ||
.... |
.... |
............ | ||
.... |
.... |
............ | ||
.... |
.... |
............ |
Behavioral Modeling [38 marks]
After completing the domain analysis, you are ready to start use case modeling. Please make sure that you use the domain concepts that you have found in the domain analysis into the behavioral modeling stage.
- Identify stakeholders of the whole system. You need to list them in a table format and include the description. [3 marks]
The Take -Away Food Shop | |||
Stakeholders & Actors | |||
Name |
Description | ||
..... |
............... | ||
..... |
............... |
Make a list of all the use cases for one of subsystems
- You are given one system/subsystem : Sales & Order Management System for a starting point in your behavioral modeling. There have been identified four initial use cases: Process Orders (online, call-in, in-house) Organize deliveries. Process Payments.
Record Sales Details
You are required to use the above basic use cases identifying/deriving more use cases in the subsystem of Sales & Order Management System.
Summarise alluse cases of Sales & Order Management System into the following table. [6 marks]
The Take -Away Food Shop | |||||
Sales & Order Management: Use Cases Summary | |||||
ID |
Name |
Description |
Actors | ||
... |
........ |
. | |||
... |
.......... |
. | |||
... |
.......... |
. | |||
... |
.......... |
. | |||
... |
....... |
.......... |
. |
Note: There are four use cases given to you. You are required to add more use cases in Sales & Order Management System that will make your analysis stronger.
- Create a context diagram for the Sales & Order Management System. [5 marks]
- Using use case templates provided, list all detail use cases in Sales & Order Management System. You can leave some of the information blank if it is not applicable to a particular use case.
You can “include” a use case in another use case. You can create a new use case, given they are still relevant to the system. Please note, at minimum, you need to include at least one use case in a basic use case. [10 marks]
Use Case: | |
ID: |
........... |
Scope: |
........... |
Priority: |
........... |
Summary: |
....... |
Primary Actor: |
........... |
Supporting Actors: |
........ |
Stakeholders: |
........... |
Generalization: |
........ |
Include: |
........ |
Extend: |
....... |
Precondition: |
....... |
Trigger: |
........ |
Normal Flow: |
....... |
Sub-Flows |
...... |
Alternate Flow/ Exceptions: |
....... |
Post-Condition: |
...... |
Non-Behavioral Requirements: |
...... |
Open Issues: |
....... |
Source: |
....... |
Author: |
....... |
Revision & Date |
....... |
- Create a use case diagram for Sales & Order Management System. [7 marks]
- Create an activity diagram for taking order transaction. This is not a use case, but a whole workflow of an activity. You can use all use cases in Sales & Order Management System. You can also add activities that can be extended from the existing use cases. For example, “Sa Property”, etc. [7 marks]
Structural and Dynamic Modeling [32 marks]
After completing the behavioral modeling, you will continue with structural and dynamic modeling.
- Write down the scenario flows for each use case in Sales & Order Management System using the table below. Sub-flow, alternate flow, and exceptions can be left empty if you think they are not applicable. You need to underline all grammatical objects found on the flows.
Use Case: |
....... |
Normal Flow: |
........ |
Sub-Flows: |
....... |
Alternate Flow/ Exceptions: |
........ |
Next, summarize the grammatical objects you found into the table below. [6 marks]
Grammatical Objects |
Class |
Comments |
.... |
........ |
....... |
.... |
........ |
....... |
.... |
........ |
....... |
- Identify entity classes and write down their responsibilities in table format. Do not forget to report which use cases are your sources of information.
Class |
Description |
Responsibilities |
Use Case |
... |
...... |
......... |
...... |
... |
...... |
......... |
...... |
... |
...... |
......... |
...... |
Identify attributes, operations, and collaborators for each class that you have identified. [6 marks]
CLASS | |
ATTRIBUTES | |
Attribute |
Collaborators |
..... |
...... |
..... |
...... |
OPERATIONS | |
Operation |
Collaborators |
..... |
...... |
..... |
...... |
- Create a complete class diagram with associations and multiplicity information. Is there any relationship in this case study that can be described by aggregation/composition? Are there classes that can be generalized/specialized? [10 marks]
- Create one sequence diagram of “take order” for this Take -Away Food Shop case study. Once completed, you need to convert the diagram into a collaboration diagram. [10 marks]