1 / 21

EEE 243B Applied Computer Programming

EEE 243B Applied Computer Programming. Modeling II. What does the context diagram show us? What does the events list give us? In data flow diagrams: At a lower level of abstraction in the data flow diagram, can we create new data flows (arrows)?

Download Presentation

EEE 243B Applied Computer Programming

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. EEE 243BApplied Computer Programming Modeling II

  2. What does the context diagram show us? What does the events list give us? In data flow diagrams: At a lower level of abstraction in the data flow diagram, can we create new data flows (arrows)? Should we keep all the data flows from the higher abstraction in lower level abstractions? Review Maj JGA Beaulieu & Capt MWP LeSauvage

  3. Outline • Models • Decomposition of Data Flow Diagrams (DFD) • Data Dictionary (DD) • Entity Relationship Diagram (ERD) Maj JGA Beaulieu & Capt MWP LeSauvage

  4. Decomposition of DFD • As we have seen in the last lecture, decomposition applies to transformations (bubbles in the dataflow diagrams) in the same manner as we have seen for functions and modules “I only have a very small head and must live with it.” E. Dijkstra • But when do we stop drawing transformation bubbles? Maj JGA Beaulieu & Capt MWP LeSauvage

  5. Decomposition of DFD • At the bottom level of the decomposition for a DFD, we find a transformation or process specification. • This specification is written in terms of pre and post conditions • A bubble is either separated by lower level diagrams or a transformation specification; not both Maj JGA Beaulieu & Capt MWP LeSauvage

  6. Decomposition of DFD remove item information confirmation Remove Item 3.4.2 Inventory item catalogue descriptions Inventory items Product photos Maj JGA Beaulieu & Capt MWP LeSauvage

  7. Decomposition of DFD Specification 3.4.2: Remove item precondition 1: REMOVE-ITEM-INFORMATION occurs precondition 2: the item must exist postcondition 1: no matching PRODUCT-PHOTO exists no matching CATALOGUE-DESCRIPTION exists no matching INVENTORY-ITEM exists postcondition 2: if the item was found CONFIRMATION is positive if it was not found CONFIRMATION is an error Maj JGA Beaulieu & Capt MWP LeSauvage

  8. Data dictionary • The data flow arrows represent information that flows between transformations and data stores • Each data flow has a name, but there is no description of how the information is composed • Are we dealing with a complex data structure or bitwise information? • The Data Dictionary (DD) provides the information breakdown that is not available on the DFD Maj JGA Beaulieu & Capt MWP LeSauvage

  9. Data dictionary • The concept: Data dictionary a = … Data flow diagram b = … c = … … f = … b a e f c d Maj JGA Beaulieu & Capt MWP LeSauvage

  10. Data dictionary • Data dictionary defines the data items that are on the DFD • Describes the meaning of flows and stores • Specify the composition of complex data • Specify the range or values the data can take; this is later used in the software to perform error detection • Specify units that is represented by the data (mostly by comments in the DD) Maj JGA Beaulieu & Capt MWP LeSauvage

  11. Data dictionary • Although data composition in DD can be expressed in any format you wish, it is common and highly recommended to use the following symbols to make your DD clear: = is composed of + and { } collection (or iteration) [..|..] select one of (enumerated type) ( ) optional field @ “part of” identifier for a store * * comments delimiter to emphasise use of data Maj JGA Beaulieu & Capt MWP LeSauvage

  12. Data dictionary • Example: remove-item-information = item-id + item-catalogue-number inventory item = * an item is one element in the store Inventory items * @item-id + item-description + (UPC) Inventory-items = {item} * a collection of item * confirmation = [found | error] Maj JGA Beaulieu & Capt MWP LeSauvage

  13. Entity Relationship Diagram • So far our models to perform detailed designs of our structured programs are: • Context diagram – models the environment around our system; • Events list – gives us some high level sequencing of processes; • DFDs shows us where data goes in a system; • DDs provide information about the composition of this data; and • Specifications show how this information is used inside the transformation to go from pre to post conditions Maj JGA Beaulieu & Capt MWP LeSauvage

  14. Entity Relationship Diagram • But how does all this information relate to each other? • What is the relationship between a patient, a treatment and a drug? • What is the relationship between a generic test, a blood test, a toxicity test or a drug concentration test • The Entity Relationship Diagram provides us with a view of the static relationships that exist between our data Maj JGA Beaulieu & Capt MWP LeSauvage

  15. Entity Relationship Diagram • An ERD is composed of: Object types … Relationships patient drug is treated with patient drug Maj JGA Beaulieu & Capt MWP LeSauvage

  16. Entity Relationship Diagram • An ERD is composed of: Associative object type patient drug Medicated Treatment Maj JGA Beaulieu & Capt MWP LeSauvage

  17. Entity Relationship Diagram • An ERD is composed of: Supertype indicator Test Drug concentration test Blood test Toxicity test Maj JGA Beaulieu & Capt MWP LeSauvage

  18. Entity Relationship Diagram • Example: A doctor schedules a blood test for a patient Patient is Scheduled for Doctor Blood test Maj JGA Beaulieu & Capt MWP LeSauvage

  19. Entity Relationship Diagram • Example: A doctor treats a patient with a drug Drug is treated with Doctor Patient Maj JGA Beaulieu & Capt MWP LeSauvage

  20. Entity Relationship Diagram • ERDs are read from each relationship: Drug Test Doctor is treated with is Scheduled for Blood test Patient Maj JGA Beaulieu & Capt MWP LeSauvage

  21. Quiz Time • Can a DFD be decomposed into a specification and other sub-transformations • An ERD represents the __________ relationships of our data Maj JGA Beaulieu & Capt MWP LeSauvage

More Related