System Analysis and Design Lecture Notes
System Analysis and Design Lecture Notes
Lecture 5
Introduction
a subsystem name
1.0
2.1
Payment Detail
D1 Accounts
Post Invoice Detail Receivable
Payment
D1 Students
1.0
Order
CUSTOMER Invoice
Verify
Order
- Context diagram – is an
overview 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.
Bus
Mechanical Fixed
problem mechanical
to be repaired problems
Repair Supervisor
Helper Labor Bus summary
Repair
Process List of
System parts used Inventory
Labor Management
Labor, System
parts cost
details
Mechanic
Accounting
Diagram 0 DFD (Level-0 diagram)
- Diagram 0 (zero) provides an
overview of all the components
that interact to form the overall
system.
- It zooms in on the system and
shows major internal processes,
data flows, and data stores.
For example:
- An auto parts store inventory record might include part number,
description, supplier code, minimum and maximum stock levels,
cost, and list price.
Functions and parts of a data dictionary
Details about the data element in data processing systems, such as the
length of the data item in characters, whether it is numeric alphabetic or
another data type, and what logical files include the data item.
The security level attached to the element in order to control access.
The total storage requirement.
The validation rules for each element (e.g. acceptable values).
Details of the relationship of the data items to others.
Cont…
Data Dictionary
Documenting the Data Flows
- The typical attributes are as follows
o Data flow name or label
o Description
o Alternate name(s)
o Origin
o Destination
o Record
o Volume and frequency
Benefits of a DDS
Benefits of a DDS are mainly due to the fact that it is a central store of information
about the database. Benefits include:
Improved documentation and control
Consistency in data use
Easier data analysis
Reduced data redundancy
Simpler programming
The enforcement of standards
Better means of estimating the effect of change.
Types of Data Dictionary
1) Independent (free-standing, standalone)
- Necessary to make entry in DD after change to DB
- May lead to inconsistency
2) Integrated (interfaced, dependant)
- Stored and managed by the DBMS
3) Embedded (active)
- DD is fully functional part of the DBMS
Process Description Tools
- A process description documents the details of a functional primitive
and represents a specific set of processing steps and business logic.
- Typical process description tools include:
Structured English,
Decision tables, and
Decision trees.
Logical Versus Physical Models
A logical model shows what the system must do, regardless of
how it will be implemented physically.
A physical model describes how the system will be
constructed.
Structured analysis tools are used to develop both logical and
physical models
DFDs do not show the logic inside the processes, Logic
modeling can be used to show when processes on a DFD occur
Logic Modeling
Logic modeling involves representing internal structure and functionality
of processes depicted on a DFD
Deliverables and Outcomes
Structured English
Decision Tables
Decision Trees
State-transition diagrams
Sequence diagrams
Activity diagrams
Modeling Logic with Structured English
Structured English - is a modified form of English used to
specify the logic of information processes
Uses a subset of English
•Action verbs
• Noun phrases
• No adjectives or adverbs
No specific standards
Modeling Logic with Structured English
Similar to programming language
o If conditions
o Case statements
o Psudocode
Example: Structured English
The VERIFY
ORDER process
description
includes logical
rules and a
structured
English version
of the policy.
Structured English (Cont…)
Modeling Logic with Decision Tables
Decision table: A matrix representation of the logic of a
decision
Specifies the possible conditions and the resulting actions
Best used for complicated decision logic
Modeling Logic with Decision Tables
Consists of three parts
Condition stubs
- Lists condition relevant to decision
Action stubs
- Actions that result from a given set of conditions
Rules
- Specify which actions are to be followed for a given set of
conditions
Modeling Logic with Decision Tables
Indifferent Condition
- Condition whose value does not affect which action is taken for two or more rules
Standard procedure for creating decision tables
- Name the condition and values each condition can assume
- Name all possible actions that can occur
- List all rules
- Define the actions for each rule
- Simplify the table
Complete decision table for payroll system example
Modeling Logic with Decision Trees
Decision Tree: is a graphical representation of a decision situation
Decision situation points are connected together by arcs and terminate in
ovals
Two main components
- Decision points represented by nodes
- Actions represented by ovals
Modeling Logic with Decision Trees
Read from left to right
Each node corresponds to a numbered choice on a legend
All possible actions are listed on the far right
Decision tree representation of the decision logic in the Payroll
system decision table, with only two choices per decision point
Alternative decision tree representation of salary decision,
with multiple choices per decision point
Decision tree representation of the decision logic in the decision tables,
with multiple choices per decision point
Choosing a Structured Decision Analysis Technique
The following guidelines provide you with a way to choose one of the three techniques for a
particular case:
1. Use structured English when
a. There are many repetitious actions,
OR b. Communication to end users is important.
2. Use decision tables when
a. Complex combinations of conditions, actions, and rules are found,
OR b. You require a method that effectively avoids impossible situations, redundancies,
and contradictions.
3. Use decision trees when
a. The sequence of conditions and actions is critical,
OR b. When not every condition is relevant to every action (the branches are different).
Deciding Among Structured English, Decision Tables
and Decision Trees
Criteria Structured Decision Decision
English Tables Trees
Determining Second Best Third Best Best
Conditions and
Actions
Transforming Best Third Best Best
Conditions and
Actions into
Sequence
Checking Third Best Best Best
Consistency and
Completeness
Summary
Several methods of logic modeling
Structured English
- Primarily communication technique for analysts and users
Decision Tables
- Conditions are listed in condition stubs
- Possible actions are listed in action stubs
- Rules link conditions with actions
- Lists all possible rules
Summary
Decision Trees
- Conditions are portrayed by decision points
- Values are represented by paths between decision points and
ovals that contain actions
Summary
Comparison of Structured English, Decision Tables and Decision
Trees
- Most studies show that decision trees are best for many criteria
- There is no best technique
- Analyst must be proficient in all three
Questions?
a) Draw a decision tree to show the noncash purchase approval action for
a department store
i) Draw a context DFD for the above example with at least 1 process
b) The IT manager has asked you to develop a decision table that will
reflect the promotional rules that a programmer will use. She wants you
to show all possibilities, and then to simplify the results to eliminate any
combinations that would be unrealistic or redundant.