DU, AIS, Process Model and Data Model
DU, AIS, Process Model and Data Model
Illustrates the activities that are performed and how data moves
among them
Process models are diagrams that map the movement of data between
processes. It is used to organize and document a system’s processes.
Flow of data through processes
Logic
Policies
Procedures
Process modeling – graphically representing processes that capture,
manipulate, store, and distribute data between a system and
components within a system.
Deliverables for Process Modeling
Abstract this system to show how new system should meet users
requirements
Data Flow Diagrams (DFDs)
Data flow diagram (DFD) – a process model used to
depict the flow of data through a system and the work or
processing performed by the system. Synonyms are
bubble chart, transformation graph, and process model.
The DFD has also become a popular tool for business
process redesign.
Despite their name, data flow diagrams are not primarily
concerned with data (entity/relationship diagrams)
• DFDs are concerned with where and what data flows
into, within, and out of the system, but more particularly
with how it is processed along the way
Data Flow Diagrams (DFDs)
Source/Sink:
H. Data cannot move directly from a source to a sink. It must be moved by a
process if the data are of any concern to our system. Otherwise, the data flow
is not shown on the D F D.
I. A source/sink has a noun phrase label.
Rules Governing Data Flow
Diagramming
Rules Governing Data Flow Diagramming
Data Flow:
J. A data flow has only one direction of flow between symbols. It may flow in both directions
between a process and a data store to show a read before an update. The latter is usually
indicated, however, by two separate arrows because these happen at different times.
K. A fork in a data flow means that exactly the same data goes from a common location to two
or more different processes, data stores, or sources/sinks (this usually indicates different
copies of the same data going to different locations).
L. A join in a data flow means that exactly the same data come from any of two or more
different processes, data stores, or sources/sinks to a common location.
M. A data flow cannot go directly back to the same process it leaves. There must be at least
one other process that handles the data flow, produces some other data flow, and returns the
original data flow to the beginning process.
N. A data flow to a data store means update (delete or change).
O. A data flow from a data store means retrieve or use.
P. A data flow has a noun phrase label. More than one data flow noun phrase can appear on a
single arrow as long as all of the flows on the same arrow move together as one package.
Incorrect and Correct Ways to
Draw DFDs
Differences Between Sources/Sinks and
Processes (An Improperly Drawn DFD
Showing a Process as a Source/Sink)
Differences Between Sources/Sinks and
Processes (A DFD Showing Proper Use of a
Process)
Developing DFDs
Make a list of business activities and use it to determine various
External entities
Data flows
Processes
Data stores
Check for errors and make sure the labels you assign to
each process and data flow are meaningful.
Develop a physical data flow diagram from the logical data
flow diagram. Distinguish between manual and automated
processes, describe actual files and reports by name, and
add controls to indicate when processes are complete or
errors occur.
Partition the physical data flow diagram by separating or
grouping parts of the diagram in order to facilitate
programming and implementation.
Developing DFDs
(Context Diagram)
Balancing
Decomposition of DFDs
(Level-1 Diagram)
following tasks:
1. Receive customer order
The system has three processes: Verify availability (1.0), Enroll student (2.0), and
Confirm registration (3.0). The name and content of each of the data flows appear
adjacent to each arrow. There is one external entity in this system: the student.
There are two data stores: the student master file and the course file.
An Example
The boundary:
– From the description of the system
purpose it seems reasonably clear that
customers and taxi drivers are outside
the system
– Other actors (e.g. staff who accept
customer requests) are inside the system
Taxi Allocation System:
Context Diagram
Taxi Allocation System:
Level 0 DFD
Taxi Allocation System –
Problem?
• Feedback Blank
analysis
Most organizations today do conceptual data
repository
The Conceptual Data Modeling
Process
1. What are the subjects/objects of the business? What types of people, places, things,
materials, events, etc. are used or interact in this business, about which data must be
maintained? How many instances of each object might exist?—data entities and their
descriptions
2. What unique characteristic (or characteristics) distinguishes each object from other
objects of the same type? Might this distinguishing feature change over time or is it
permanent? Might this characteristic of an object be missing even though we know the object
exists?—primary key
3. What characteristics describe each object? On what basis are objects referenced, selected,
qualified, sorted, and categorized? What must we know about each object in order to run the
business?—attributes and secondary keys
4. How do you use these data? That is, are you the source of the data for the organization, do
you refer to the data, do you modify it, and do you destroy it? Who is not permitted to use
these data? Who is responsible for establishing legitimate values for these data?—security
controls and understanding who really knows the meaning of data
5. Over what period of time are you interested in these data? Do you need historical trends,
current “snapshot” values, and/or estimates or projections? If a characteristic of an object
changes over time, must you know the obsolete values?—cardinality and time dimensions of
data
Requirements Determination
Questions for Data Modeling
6. Are all instances of each object the same? That is, are there special kinds of each object
that are described or handled differently by the organization? Are some objects summaries or
combinations of more detailed objects?—supertypes, subtypes, and aggregations
7. What events occur that imply associations among various objects? What natural
activities or transactions of the business involve handling data about several objects of the
same or a different type?—relationships and their cardinality and degree
8. Is each activity or event always handled the same way or are there special
circumstances? Can an event occur with only some of the associated objects, or must all
objects be involved? Can the associations between objects change over time (for example,
employees change departments)? Are values for data characteristics limited in any way?—
integrity rules, minimum and maximum cardinality, time dimensions of data
Introduction to E-R Modeling
An attribute definition:
States what the attribute is and possibly why it is important
included
Contains any aliases or alternative names
Types of attributes:
Required versus Optional Attributes
Simple versus Composite Attribute
Single-Valued versus Multivalued
Attribute
Derived Attributes
Identifier Attributes
Required vs. Optional Attributes
Required – must have a value for every Optional – may not have a value for
entity (or relationship) instance with every entity (or relationship) instance
which it is associated with which it is associated
Simple vs. Composite
Attributes
Simple
When an attribute is not possible to divided into
subparts. Each entity has a single atomic value for the
attribute. For example, city, country.
Composite
Composite attributes can be divided into subparts i.e.
other attributes. The attribute may be composed of
several components. For example:
Address(Apt#, House#, Street, City, State, ZipCode, Country),
or
Name(FirstName, MiddleName, LastName).
Example of a composite
attribute
Composition
may form a
hierarchy
where some
components
are
themselves
composite.
Single-Valued versus Multivalued
Attribute
Explain reason for any explicit maximum cardinality other than many
Explain whether an entity instance involved in a relationship instance can transfer participation
Rational (IBM) Rational Rose UML Modeling & application generation in C++/JAVA
Resolution Ltd. Xcase Conceptual modeling up to code maintenance
Sybase Enterprise Application Suite Data modeling, business logic modeling
Visio Visio Enterprise Data modeling, design/reengineering Visual Basic/C++
The COMPANY Conceptual Schema in
UML Class Diagram Notation
Human Resource Schema
Thank
You