Transcript Lecture12

Karolina Muszyńska
Based partly on: http://www.csun.edu/~dn58412/IS431/IS431_SP13.html

Model-driven Analysis
• Structured analysis
• Information engineering
• Object-oriented analysis

Accelerated Systems Analysis
• Discovery prototyping
• Rapid Architected Analysis
2
Model-driven Analysis emphasizes the drawing
of graphical system models to document and
validate both existing and/or proposed systems.
Ultimately, the system model becomes the
blueprint for designing and constructing an
improved system.
3



Structured Analysis: a PROCESS-centered technique to
analyze an existing system and define business
requirements for a new system. The models illustrate the
system’s components: processes (functions, tasks) and
their associated inputs, outputs, and files
Information Engineering (IE): a DATA-centered, but
process-sensitive technique to plan, analyze, and design
information systems. IE illustrate and synchronize the
system’s data and processes.
Object-oriented Analysis (OOA): a technique that integrates
data and process concerns into constructs called OBJECTS.
OOA illustrate the system’s objects from various
perspectives such as structure and behavior.
4
Within structured analysis we have the
following phases:
 Requirements definition
 Requirements structuring
◦ Process modeling with Data Flow Diagrams (DFD)
◦ Data modeling with Entity Relationship Diagram
(ERD)
◦ Logic modeling with Decision Tables/Trees and
State-transition Diagrams/Tables

Generating alternative solutions and selecting
the best one
5




A system is about taking input from the
environment, transforming (processing) this
input, and releasing an output
A system may be decomposed into subsystems
A subsystem has its own input and output
Output of one subsystem may become the input
of other subsystems
6
INPUT
OUTPUT
7
8
9
10
Process Modeling is a technique for organizing
and documenting the structure and flow of data
through system processes, and the logic,
policies, and procedures to be implemented by
the systems processes.
Data Flow Diagram (DFD) is a graphical tool to
depict the flow of data through a system and
the work or processing performed by that
system.
11



DFD documents a business function/activity/task
of a system as a process
DFD describes how data is manipulated within
and at the boundaries of the system
DFD shows detail of the interdependency among
processes of the system, movements of data or
info among the processes
12
DE MARCO & YOURDON
NOTATIONS
GANE & SARSON
NOTATIONS
External Entity
Data Flow
3
Process
Pay Bill
Data Store
13
SUPPLIER




An External Entity is a provider (source) or
receiver (sink) of data and info of the system but
is NOT part of the system
An external entity defines a person, organization
unit, or other organization that lies outside of
the scope of the system but that interacts with
the system being studied
A Data Store is a storage/inventory of data: it
contains information
A data store is “data at rest” compared to a data
flow that is “data in motion”
D1 Accounts Receivable
14
DELIVERY DATA





A Data Flow represents a movement of data
among processes or data stores
A data flow does NOT represent a document or a
physical good: it represents the exchange of
information in the document or about the good
A data flow represents an input of data to a
process, or the output of data from a process
A Process is a work or action performed on input
data flow to produce an output data flow
A process must have at least one input data flow
and at least one output data flow
3
Pay Bill
15

Context diagram
◦ Defines the boundary of the system
◦ Identifies external entities and external data flows
◦ Shows no detail on processes and data stores of the system

Level-0 diagram
◦ Identifies the processes (functions of the system)
◦ Identifies external data flows between external entities and
processes
◦ Identifies information storages for reference/record
keeping (data stores)
◦ Identifies internal data flows between processes and data
stores

Level-1 diagram
◦ Shows sub-processes (activities or tasks) of Level-0
processes
◦ ….
16
Context DFD for Food Ordering System
17
Level-0 DFD for Food Ordering System
18
Level-1 DFD for ”Receive and Transform
Customer Food Order” process
19
Data Modeling (database modeling, information
modeling) is a technique for organizing and
documenting a system’s data in a model.
Entity Relationship Diagram (ERD) depicts data
in terms of the entities and relationships
described by the data.
ERD is a conceptual model of data entities (things
of interest), their attributes (characteristics of
interest), and their relationships in an information
system (technical independent)
20



An entity is a group of attributes
corresponding to the same conceptual object
about which we need to capture and store
data (objects, persons, places, events,
concepts)
Entity is a set of occurrences (instances) of
the object that it represents
Entity must have a unique name, unique
identifier and at least one attribute (the
identifier itself)
21
An attribute is a descriptive property or
characteristic of interest of an entity (also
called element, property and field)
 The data type for an attribute defines what
type of data can be stored in that attribute
 The domain of an attribute defines what
values an attribute can take on
 The default value for an attribute is the value
that will be recorded if not specified by the
user

22
 A key is an attribute, or a group of attributes, that
assumes a unique value for each entity instance
 A group of attributes that uniquely identifies an
instance of an entity is called a composite key.
 A candidate key is a “candidate to become the
primary key” of instances of an entity (StudentID,
DriverLicenseNo)
 A primary key (identifier) is that candidate key that
will most commonly be used to uniquely identify a
single entity instance (StudentID)
 Any candidate key that is not selected to become the
primary key is called an alternate key
(DriverLicenseNo)
23



A relationship documents an association between
one, two, or more entities
It must have a name (and may carry data)
Degree of Relationship - defines how many
entities are involved in a relationship
◦
◦
◦
◦

Recursive (Unary) - only one entity involved
Binary – two entities involved
Ternary – three entities involved
…
Cardinality of Relationship - documents how
many occurrences/instances of one entity can
relate to a single occurrence/instance of another
entity in a relationship (one-to-one, one-tomany, many-to-many)
24


Generalization is a technique wherein the
attributes that are common to several types of an
entity are grouped into their own entity, called a
supertype. An entity subtype is an entity whose
instances inherit some common attributes from
an entity supertype and then add other attributes
that are unique to an instance of the subtype.
Dependency – a kind of relationship showing that
instances of one entity are closely related with
instances of other entity (are part of/consists of)
25
Title publication system
26
Project management system
27
Logic modeling involves representing the internal
structure and functionality of the processes shown
on DFDs.
The primary deliverables from logic modeling are
structured descriptions and diagrams that outline
the logic contained within each DFD process as well
as diagrams that show the temporal dimension of
systems (when processes or events occur and how
these events change the state of the system).
The techniques used for modeling process decision
and temporal logic are: decision tables, decision
trees and state-transition diagrams and statetransition tables.
28
A decision table is a diagram of process logic where
all of the possible choices and conditions the
choices depend on are represented in a tabular
form. In a decision table we have:
 condition stubs - the part that lists the
conditions relevant to the decision,
 action stubs - the part that lists the actions that
result for a given set of conditions, and
 rules - the part that specifies which actions are
to be followed for a given set of conditions
29
30
A decision tree is a graphical technique that depicts a
decision or a choice situation as a connected series of
nodes and branches. Decision trees have two main
components:
 decision points, which are represented by nodes, and
 actions, which are represented by ovals.
Each path leaving a node corresponds to one of the
options for that choice. For each node there are at least
two paths that lead to the next step, which is either
another decision point or an action. Each rule is
represented by tracing a series of paths from the root
node down the paths to the next node, until an action
oval is reached.
31
32
State-transition diagrams/tables are diagrams/ tables
that illustrate how processes are related to each other in
time. They illustrate the states a system component can
have and the events that cause change from one state to
another. They are useful for systems where time is
important, such as on-line and real-time applications.
A state can be thought of as a mode or condition of
existence for a process or other system component, as
determined by current circumstances. Transitions from
one state to another are caused by stimuli we refer to as
events. Once a new state is entered an action associated
with the state takes place. An event then triggers a
transition to a new state and causes an action to occur.
33
34
35