1 / 25

Tutorial 6 DFDs vs. Use Case Diagrams (Textbook Chapter 7 & Appendix)

Tutorial 6 DFDs vs. Use Case Diagrams (Textbook Chapter 7 & Appendix). Learning Objectives. Practice more DFDs Practice more Use Case Diagrams Understand commonalities and differences between the two types of diagrams. Consider the following narrative:. Part 1.

ramona
Download Presentation

Tutorial 6 DFDs vs. Use Case Diagrams (Textbook Chapter 7 & Appendix)

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Tutorial 6 DFDs vs. Use Case Diagrams (Textbook Chapter 7 & Appendix)

  2. Learning Objectives • Practice more DFDs • Practice more Use Case Diagrams • Understand commonalities and differences between the two types of diagrams

  3. Consider the following narrative: Part 1 Ch. 7 Ex. 12 and Ch. 7 App, Ex. 1 • Maximum Software is a developer and supplier of software products to individuals and businesses. As part of their operations, Maximum provides a help desk line for software purchased form Maximum. An operator enquires about the nature of incoming calls. Calls that do not require help desk functions are directed to other company units. Help desk consultants are organised by product. The operator directs the call to a consultant skilled on the software that the caller needs help with. Some calls need to be put on a queue. Once a consultant answers the call, the consultant determines if this is the first call from this customer. If so, the consultant creates a new call report to keep track of all information about the problem. If it is not the first call about a problem, the consultant asks the customer about the call report number and retrieves the open call report to determine the status of the enquiry.

  4. Ch. 7 Ex. 14 and Ch. 7 App, Ex. 1 (cont.) If the caller does not know the call report number, the consultant collects other identifying information such as caller’s name, the software involved etc in order to conduct a search for the appropriate call report. If a resolution of the customer’s problem has been found, the consultant informs the client as to what the resolution is, indicates on the report that the customer has been notified, and closes out the report. If resolution has not been discovered, the consultant finds out if the consultant handling this problem is on duty and if so, the call is transferred to that consultant, who records any new information from the client. For new and continuing problems, the consultant tries to find the solution by using the relevant software and looking up information in reference manuals. If the consultant knows how to solve the problem, he / she tells the customer how to deal with the problem and closes the report. Else the consultant files the report for continued research and tells the customer that someone at Maximum software will get back to him / her and if the customer discovers new information he / she should call quoting the report number.

  5. Ch. 7 Ex. 12 and Ch. 7 App, Ex. 1 (cont.) • Decisions to make • What is to be represented, i.e. what level of detail to show? Keep Level-0 DFD uncluttered, 7-9 processes (max). DFD can be subsequently further decomposed. Unless further information becomes available, assumptions may be necessary to further decompose.

  6. Ch. 7 Ex. 12 and Ch. 7 App, Ex. 1 (cont.) • Decisions to make (cont.) • What is part of the system and what is an external entity / agent?One option is to consider the processes performed by the consultants and operators as sub-systems within the system rather than as external entities (sources/sinks). This adds detail; however, it allows bottlenecks in these processes to be corrected. So, it depends on the scope of the problem (and what the client wants to pay for)

  7. Ch. 7 Ex. 12 and Ch. 7 App, Ex. 1 (cont.) Help Desk System Context Data Flow Diagram

  8. Ch. 7 Ex. 12 and Ch. 7 App, Ex. 1 (cont.) • Decisions to make (cont.) • Decision logic is not shown on the DFDs. How do we cope with that?a) show the data flows in / out of processes that correspond to all possible decisionsb) simulate some rudimentary decision logic on the DFDs

  9. Option a) Information necessary to make the decision If the Order is not filled, then the doctor is contacted. The doctor responds …etc etc Hospital PharmacyPartial Level-0 Diagram

  10. 3.0 Determine if first call 4.0 Create Call Report Option b) E.g.: “…the consultant determines if this is the first call from this customer. If so, the consultant creates a new call report […]. If it is not the first call about a problem, the consultant […] retrieves the open call report to determine the status of the enquiry. 5.0 Previous Call Information Determine problem status First Call Information Call Report Call Report Information D1 Call Report File

  11. New Problem Data Call 1 Enquiry on Nature of Call Inquiry on Nature of Call Call Report # or Other Data Client 9 Receive Final Call Resolution Nature of Call Call Close Call Report D1 Call Queue Call Closed Call Problem New Information Resolution Help Desk Information Call Information on Problem Closed Call 2 Indication 5 8 Determine 3 Previous Determine Direction Research H elp Desk Call Problem Determine of Call Problem Call Information Information Status if First Call Call Non - Help Report Desk Call Problem First Call Open Call Information Data Information Information Call Report File D2 4 New Other Problem Create Call Report Unit Call Queue D1 Data Call Information 6 Report 7 Transfer Open CallInformation Record Call Problem New Information Information Interim Problem Status Help Desk System Level-0 Data Flow Diagram

  12. Place Call Directthe Call Operator Answer Call Customer <<includes>> <<includes>> Knowledgebase lookup Retrieveproblem report Consultant Refer to original consultant Update call report <<extends>> Close call report Help Desk System Use Case Diagram

  13. Can this system be improved? • A customer may have to explain their problem and/or question over and over to multiple people: an operator and possibly several consultants. Has this happened to you? • Why not let the initial operator have access to the customer problem database so that the caller is handed off to a consultant and the customer’s already opened problem file goes along with him. Does this happen in the GU system ?

  14. Can this system be improved? (cont.) • The operator could have sufficient information and the option to direct the call to the proper consultant. • Clients could call the assigned consultant directly on follow-up calls to an initial call for help. • Why should clients not be called back by consultants with updates on the problem or the resolution, rather than the client having to call back to check?

  15. Can this system be improved? (cont.) General areas of improvement for DFDs are: • processes that simply collect and pass on information rather than transforming data • collecting the same information into several processes • placing untransformed data into data stores thus causing unknown delays in processing this data • cycles or loops that have no apparent termination.

  16. Same Observations as in previous tutorial: There is substantially less detail on the use case diagram than in the narrative The missing detail will be completed when writing the use cases at intermediate and detailed levels. Decision logic is not shown on the Use Case diagrams. It is described in the written Use Cases and/or Activity Diagrams and/or Sequence Diagrams (the latter can also show timing)

  17. Part 2 Case Study: Pine Valley Furniture (PVF) • Review the Case Study DFD and the ‘corresponding’ Use Case Diagram described in Tutorial Wk 5

  18. Level-0 data flow diagram for the PVF WebStore

  19. Model the functionality of Pine Valley Furniture Webstore Application with a use case diagram. Six high-level functions identified to be included in the use case diagram. The functions represent the “work” or “action” parts of the Website. Case Study: PVF (cont.):

  20. BrowseCatalog Maintain Account Login Customer Shipping Clerk Place Order Fill Order Check Order Case Study: PVF (cont.): WebStore use case diagram

  21. Case Study: PVF (cont.): • The functionality should now be further detailed using written use cases as shown in the lecture. E.g. for the Place Order use case: Place Order Brief Description Customer connects to PVF WebStore and links to Order page. System checks customer information and creates a new order. Customer searches catalog, adds items / makes changes to the order, checks out assisted by the system. Customer requests payment screen, makes payment assisted by system. System sends e-mail confirmation and finalizes order.

  22. Case Study: PVF (cont.): • Possible Intermediate level description: PVF Source: (Satzinger et al., 2008)

  23. Case Study: PVF (cont.): • Possible fully developed description – adds triggering event, actors, related use cases, stakeholders and pre- and post-conditions: PVF Source: (Satzinger et al., 2008)

  24. Case Study: PVF (cont.): • Possible fully developed description (cont.): PVF Source: (Satzinger et al., 2008)

  25. Summary • In this tutorial you learned how to: • Practice DFDs • Practice Use case Diagrams • Understand commonalities and differences between the two types of diagrams

More Related