Systems Diagrams & Visualization

Systems Diagrams & Visualization
Systems Diagrams & Visualization (UML & Data Flow)
Example
Fast Food Restaurant
System Diagrams & Visualization Example - Fast Food Restaurant • Create Data Flow and UML Diagrams to show the process of ordering
food at a Fast-Food Restaurant. • Who are the players in the process (customer, clerk, cooks...)?
• What automated systems are used in the process?
• What activities work well, and which do not?
• What changes have you noticed over the years to make the processes better (for the customer and for the business)?
• What changes would you make to improve the processes and performance?
• What data can be stored and used to analyze the performance of the systems (i.e. how can Analytics be used)?
FastFood - Use Case Diagram
Customer
Cashier
Place Order
Pay Order
Deliver Order
The Use Case diagram is a high-level diagram that identifies an Actor’s interactions with a system. It is not meant to get into details. Details are covered in other types of diagrams.
A Customer places an order with a Cashier (or Kiosk) and then pays the Cashier (or via the Kiosk). The Cashier then delivers the order to the Customer.
Notice this does not try to show the different between a drive-in transaction versus a walk-in; Or a person or a kiosk (like Taco Bell or McDonalds)
FastFood Activity Diagram Cashier Order System Payment System Cook
Process Payment
Process Order
Request Payment
Refund Difference
Enter Order
Display Order & Total
Process Payment
Confirm Payment & Refund
Cook ItemsProcess Order
Stage Items
Order Complete?
NO
YES
Deliver Order
Stage Order
Receive Order
The Activity diagram provides details on the activities of a process using “Swim Lanes”. In this case, the customer places the order with the Cashier who enters the order and receives details from the Order system and enters the payment and receives details from the Payment system.
Note in this diagram that the actual order is not transmitted to the Cook until the transactions are processed.
How might this diagram be different if the customer used a Kiosk rather than a Cashier?
FastFood - Sequence Diagram
returnRefund (refund)
placeOrder (orderList, exceptions)
enterOrder (orderList, exceptions)
displayOrder (orderList, exceptions, totalCost)
confirmOrder (orderList, exceptions, totalCost)
payBill (payment)
processPayment (payment)
confirmPayment (payment, refund)
processOrder (orderList, exceptions)
stageOrder (preparedItems)
deliverOrder (packagedItems)
x x
Customer Cashier Order
System
Payment System
The Sequence diagram shows the sequence of activities. The Customer places an order as a list of items (with exceptions) and the Cashier enters them into the Order system. The order is displayed back. The Customer makes a payment which triggers the order to the Cook and to the Payment system. The payment is displayed back, and the Cashier refunds any overpayment. The Cook stages the order items, and the Cashier gives them to the Customer when complete.
Notice bars that extend down and represent the approximate time needed to satisfy an action. The X’s at the bottom represent the last actions. These just happen to end at the same time.
Payment System
Cook
FastFood - Communication Diagram
:: orderSystem:: paymentSystem
1. Place Order
5. Pay Bill
2. Enter Order
3. Display Order
8. Confirm Payment
10. Stage Order
Customer
Cashier
Cook6. Process Order
4. Confirm Order
9. Refund
11. Deliver Order
7. Process Payment
The Communication diagram shows the interaction of the actors/systems. Notice the numbers represent the sequence.
Notice the symbols used to represent a system.
FastFood Data Flow Diagram Level 0
1
Place Order
2
Calculate Bill
3
Pay Bill
4
Prepare Order
5
Package Order
6
Deliver Order
Customer
Refund
Item Price
Payment Amount
Total Bill
Order List & Exceptions
Packaged Order
Prepared Items
D1 Temp Data Store Order List & Exceptions
Payment
The Data Flow diagram shows how data flows within the process.
This is Level 0 which is the highest level.
A Temp Data Store is shown and could be incorporated in the next levels.
FastFood - Statechart Diagram
Pending Order
Customer Places Order
Confirmed Order
Payment Made
Staged Order
Cooked Items placed in Bin
Packaged Order
Items placed in Bag
Order given to Customer
Request Payment
Customer Notified of Cost
Cook Order
Order sent to Cook for Processing
The Statechart diagram shows states (i.e. waiting for something) within the process.
Once the Customer places the order, it is ‘pending’ approval (awaiting cashier data entry and system response). Once the Customer is told the cost, it is ‘pending’ customer acceptance and payment. Once payment is made, it is ‘pending’ acceptance by the cashier or card processor. Etc.
Notice the loops indicating that all items are not finished cooking at the same time and are bagged as they are ready and discovered by the Cashier.
FastFood - Class Diagram
Cashier
orderList
exceptions
totalCost
payment
refund
preparedItems
packagedOrder Cook
orderList
exceptions
preparedItems
Order System
orderList
exceptions
totalCost
Payment System
payment
refund
Customer places Order Order delivered to Customer
Enter into Confirms to
Processes a Confirmed to
The Class diagram shows the structure of a system. The top box provides the name of the class. The middle box contains the attributes (fields) of the class. The bottom box contains the operations the class can execute.
Lines connect and describe the actions taken (Cashier processes a Payment and the Payment is confirmed by the Cashier); etc.
receiveCustomerOrder()
deliverOrderToCustomer()
enterOrderInOrderSystem()
placeOrderWithCook()
receiveCustomerPayment()
processPaymentInPaySystem()
returnRefundToCustomer()
processOrder()
displayOrder()
processPayment()
confirmPayment()
cookOrder()
stageOrder()
Systems Diagrams and Visualization Project
Create the following UML diagrams to visualize the process of completing the IT project from the previous exercise (providing IT services for a new building):
• Use Case diagram
• Activity diagram
• Communications diagram
• Data Flow diagram
Assume the following basic processes:
1. Procurement of all resources.
2. Setup of PCs and network servers.
3. Deployment and Testing of resources to the IT Area/Office.
4. Deployment and Testing of resources to the Administrative Area.
5. Deployment and Testing of resources to the Conference Room.
6. Deployment and Testing of resources to the Meeting Room.
7. Deployment and Testing of resources to the Individual Offices.
8. Deployment and Testing of resources to the Computer Labs.
9. Testing of all Other Locations.
• Create a Use Case diagram to show all actors and the basic processes above
o Procurement, Setup, Deployment & testing of each major location.
• Create an Activity diagram to show the deployment and testing of resources into the Computer Labs
o Network connectivity testing requires interaction between the PC and Network Specialist
o Projector connectivity testing requires interaction between the PC and AV Specialist.
• Create a Communications diagram to show collaboration between the PC Specialist, the Network Specialist and the AV Specialist during deployment and testing of resources into the Computer Labs.
o If network connectivity issues arise, the PC Specialist will communicate with the Network Specialist.
o If projector connectivity issues arise, the PC Specialist will communicate with the AV Specialist.
• Create a Data Flow diagram to show the Procurement of all resources, based on this additional information:
o The PC Specialist enters all purchases into the Purchase Application system once the resources are purchased.
o The PC Specialists closes all purchases in the Purchase Application system once the resources are received.

-
Rating:
5/
Solution: Systems Diagrams & Visualization