ITM 311 Exam 2
DFD's...
...provide a key, contextualized way to model the system in terms of its business processes, outside environment, and the interaction between the processes and the data 'Conceptual Process Model' in SDLC
Entity Instance
A single occurrence of an entity type that is a member of the entity group
Candidate Key
Has no unnecessary attribute, uniquely identifies an entity
Multi-Valued Attribute
Repeating attribute or group of attributes It's redundant and complex Consider creating a new (weak) entity
DFD Grammar Conventions
- Process labels: Active Verb + Direct Object - Data stores refer to entity types on data model; Label: Noun phrase from data model - Data flows refer to an attribute or set of attributes from data model; Label: Noun phrase - Source/sink label: noun phrase
DFD Rules
- Processes have at least 1 inflow and 1 outflow - Processes have to transform data - Data flows must start or end with a process - Data flows are uni-directional - Data flows are not recursive - Data flows can only fork when all prongs are the same data flow
DFD Completeness
- The extent to which all necessary components of a DFD have been included. - All parts connected within the rules. - Describe each part in the CASE (Computer Aided Software Engineering) repository (name, description, connections, notes)
Entity Type
A collection of entities that all have the same attribute, e.g., persons, cars, customers
Context Diagram
A data flow diagram of the scope of an organizational system that shows the system boundaries, external entities that interact with the system, and the major information flows between the entities and the system.
Level 0 DFD
A data flow diagram that represents a system's major processes, data flows, and data stores at a high level of detail.
Explain the difference between a relationship and an associative entity
Associative entities should be a M-M relationship and have an attribute Relationships can't have attributes
Identifier
Cannot be changed, cannot be null
Explain what a CRUD Matrix is and how it is created from a DFD
Create, Read, Update, Delete - shows the links between processes and data Select design strategy, then move from the logical process and data models to the physical ones
Unary Relationship
Degree 1, recursive relationship One-to-One One-to-Many Many-to-Many
Binary Relationship
Degree 2 One-to-One: both ends are 1-1 or 0-1 One-to-Many: one end is 1-1 or 0-1, one end is 1-many or 0-many Many-to-Many: ends are 1-many or 0-many
Ternary Relationship
Degree 3
Attribute
Describes one aspect of an entity type An entity can have more than one attribute as an identifier (composite identifier)
Optionality
Has to be vs. may or may not be
Use of DFDs in Business Process Engineering
IBM Credit Corporation 6 business days to finance item DFD allows you to see the process details, analyze the weaknesses
Decision Tables
Matrix with condition and actions (rows), and business rules (columns); good at portraying complex logic, compact, easy to manipulate
Repeating Group
Multivalued attributes, stored differently in structured models than in relational models
DFD Parts
Process: Rounded box Data flow: ---> External Agent (Source/Sink): square box Data Store: rectangle without right side
Associative Entity
Relationships that masquerade as entities (verb-y entities, event-ish entities) Chen's ER Modeling Technique (relationships can have attributes, but for ITM 311 turn them into entities and add cardinality-optionality)
Entity
Type, instance
Explain the difference between the three degrees of relationship (unary, binary, and ternary)
Unary - both participants are the same entity Binary - two entities Ternary - three entities
Steps for creating Context Diagram
1. Decide the scope of the system and who/what department "owns" the system (this establishes the Point of View, determining what is inside/outside the system) 2. Decide on a good name for the system; draw and label the process box 3. Decide what the outside entities are; draw and label them 4. Identify an element of data that flows to/from OEs and process box; draw and label it 5. Identify another data flow (DF); draw and label it (continue until no more are found) 6. Re-read the scenario to ensure everything there is properly represented 7. Make sure no rule violations exist
Steps for a Decision Table
1. Identify actions 2. Identify conditions and value 3. Compute maximum number of rules (condition 1 values x condition 2 values) 4. Construct table 5. Verify 6. Simplify; eliminate impossible rules, collapse indifferent conditions or override conditions
Steps for creating DFD
1. Think of ways to decompose the process box into 3-5 two-word phrases (in Verb-Direct Object form); write them down. Analyze your choices to see if they cover everything the system does. 2. Sequentially order the 3-5 phrases; draw the process boxes in left-to-right sequential order. 3. Draw the same outside entities as you had on the Context Diagram 4. Draw the same DFs that connected with the OEs on the CD, but now link them each to/from the most appropriate level-0 process box. 5. Identify data flows that occur between processes; draw and label them 6. Identify data stores; draw and label them 7. Identify data flows between processes and data stores; draw and label them 8. Make sure no rule violations exist
Subtype-Supertype
A mandatory one going in one direction, and optional one going the other ( || ISA 0| ) Subtypes must contain their supertype's attribute (Like ID)
Explain how ER diagrams and DFDs complement each other
ER diagrams complement DFDs by detailing the things the system stores data about (entities, attributes, relationships)
Balancing (not need to know)
The conservation of inputs and outputs to a DFD process when that process is decomposed to a lower level.
DFD Consistency
The extent to which information contained on one level of a set of nested DFDs is also included on other levels (relates to Balancing)
Primitive DFD
The lowest level of decomposition for a data flow diagram.
Cardinality
The maximum number of times an instance in one entity can be associated with instances in the related entity E.g. the number: one or many
Degree
The number of participating entity types
Describe how ERs are used in the overall SA&D process
They illustrate the logical structure of databases
