0% found this document useful (0 votes)
11 views63 pages

Chap7 System Design

The document outlines the tools and techniques for process specification in systems analysis and design, emphasizing modular design with sequence, selection, and iteration structures. It details various methods for process specification, including process narratives, structured English, action diagrams, decision tables, and decision trees, each with their advantages and disadvantages. Additionally, it discusses the importance of system modeling, which integrates various tools into coherent models representing current and new systems.

Uploaded by

sarahpatricia465
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
11 views63 pages

Chap7 System Design

The document outlines the tools and techniques for process specification in systems analysis and design, emphasizing modular design with sequence, selection, and iteration structures. It details various methods for process specification, including process narratives, structured English, action diagrams, decision tables, and decision trees, each with their advantages and disadvantages. Additionally, it discusses the importance of system modeling, which integrates various tools into coherent models representing current and new systems.

Uploaded by

sarahpatricia465
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 63

System Design

(Process Specification)

CSC 2202 Systems Analysis and Design 1


Process Description Tools and
Techniques
Process description tools and techniques
document a function in a precise and concise
way using modular design.
Modular design uses three logical structures
 Sequence

 Selection

 Iteration
 Processes are defined in terms of the above
structures
CSC 2202 Systems Analysis and Design 2
Process Specification

Each Function(bottom level bubble) in


a set of DFDs needs a Process
Specification (or Process Description
or Transform Description)
This Process Description specifies the
processing rules required to convert
incoming data flow(s) to outgoing data
flow(s)
CSC 2202 Systems Analysis and Design 3
Process Specification techniques

A process specification may be achieved using:


1. Process Narratives
2. Structured English
3. Action Diagram
4. Decision Table
5. Decision Tree

CSC 2202 Systems Analysis and Design 4


CSC 2202 Systems Analysis and Design 5
Process Narrative
Use of words and sentences to describe a process.
should be brief and specific as possible
It should Include special timing requirements,
system constraints/ conditions
Complex processes (many conditions) are difficult
to represent in narrative
- use another format
Problems with narrative:
- imprecise, wordy, redundant
-hard to modify

CSC 2202 Systems Analysis and Design 6


Structured English
Structured English
- It is based on structured logic, or instructions
organized into nested and grouped procedures
written using simple English statements such
as add, multiply, move e.t.c.. it describes
logical processes precisely and concisely.
- It uses a series of informal English
statements

CSC 2202 Systems Analysis and Design 7


Structured English
Relies on a small, selected vocabulary
Provides effective communication between
users and programmers
Users generally more comfortable with
these English statements
Sufficiently precise to avoid
misinterpretation

CSC 2202 Systems Analysis and Design 8


Structured English control structures

Three control structures exist in


the format of Structured English:
sequence,

selection

and iteration

CSC 2202 Systems Analysis and Design 9


Sequence, Selection and Iteration
constructs
SEQUENCE
- one statements after another, no
indentation
SELECTION
a) If... Else ...
 Two (or one) options
 Use indentation

CSC 2202 Systems Analysis and Design 10


Avoiding Ambiguous process
description
A “casually” expressed
process description can be
very ambiguous / difficult to
understand

CSC 2202 Systems Analysis and Design 11


Sequence, Selection and Iteration
constructs
SELECTION
(b) Case ...
 Three or more options
 Use indentation

ITERATION ...
 Repeat a group of statements many times
 Use indentation

CSC 2202 Systems Analysis and Design 12


Avoiding Ambiguous process
description
Several alternatives exist to explicitly
show the scope of each control
structure (order of preference):
use INDENTATION
use hierarchical numbering system
use end labels e.g. end-if, end-while
draw a box around each control
structure
CSC 2202 Systems Analysis and Design 13
Structured English - style
Keep statements brief
Use small group of words
e.g. If, Then, Else, Select, For Each, While
Use strong, action-oriented verb with an object
e.g. Compute, Print, Copy, Update, Validate
Objects should be defined in the data dictionary
e.g. name of data flow or store or element
Structured English should NOT be as rigorous
as a programming language

CSC 2202 Systems Analysis and Design 14


Structured English -
example
If speed is not critical
If employee grade 5 and below
Take a bus
Else (employee above grade 5)
something
Else (speed is critical)
If local travel
Use company car
Else (if intercity travel)
Use domestic airline

CSC 2202 Systems Analysis and Design 15


Action Diagrams
Is and improved presentation Structured
English
Statements grouped with “long” square brackets [
i.e. long vertical lines to group related statements
SEQUENCE - simple bracket [
SELECTION - bracket with 3 horizontal lines
to show beginning and end of IF .... and
ELSE More than 3 horizontal lines for CASE
ITERATION - bracket with double bar
(horizontal lines) at the top
CSC 2202 Systems Analysis and Design 16
Action diagram

CSC 2202 Systems Analysis and Design 17


Action Diagrams - automated
using Word
Action Diagrams can be readily
automated
Word is unique among many word
processors in that it provides a vertical
bar drawing facility
This vertical bar acts in a way “similar”
to setting tabs

CSC 2202 Systems Analysis and Design 18


Action Diagrams -
automated using Word
Standard templates can be created for:
SEQUENCE, SELECTION, CASE and
ITERATION
Templates can be copied and pasted as
needed
Templates can be quickly accessed
using the Work entry on the menu bar

CSC 2202 Systems Analysis and Design 19


Pseudocode
Pseudocode is similar to but more
formal than Structured English
Tends to look like the target
programming language

CSC 2202 Systems Analysis and Design 20


Decision Tables
Decision Tables
It is a tabular description of a
selection structure. It is a graphic
method for describing the logic of
decisions. It provides a means of
documenting procedures in which
several complex decisions have to be
made.

CSC 2202 Systems Analysis and Design 21


Decision tables (Cont)
A decision table is a matrix (table) form of
expressing processing logic
Decision tables are well suited to handling
complex processes - with many conditions
(decisions) and many actions (outcomes)
Table shows action(s) to be taken for every
possible combination of conditions
A decision table must be cross-referenced to
the data dictionary - transform description
entry

CSC 2202 Systems Analysis and Design 22


Decision Table diagram
Decision table is made up of 4
quadrants:
Condition Decision rules
List (statement)

Action
Selected Action
List (statement)

CSC 2202 Systems Analysis and Design 23


Decision Tables
 Condition List/Statement
 – identify relevant conditions. One row per
condition
 Decision rules
 – identify which value if any apply/associated to a
particular condition.
 Action List/Statement
 – list all the steps that can be taken when a certain
condition occurs. One row per action
 Selected Actions
 – identifies what specific actions in the set to take
when selected conditions or combinations of
conditions are taken.
CSC 2202 Systems Analysis and Design 24
Decision Table- 4 quadrants
A decision rule is a column of the decision table
Frequently conditions are expressed as
questions requiring YES or NO answer
This is a limited-entry decision table:
Alternatively conditions can use decision
variables
This is an extended-entry decision table:

CSC 2202 Systems Analysis and Design 25


Decision Table- example

CSC 2202 Systems Analysis and Design 26


Example 2: Insurance
Application Process
Instructions to an insurance clerk reads as
follows:
Policy type 22 may be issued if the applicant has been
issued with policy type 19 and is a married male or has
been issued with policy type 19 and is married and
under 25years. Alternatively if the applicant has not
been issued with policy type 19 and is married female,
policy 22 may be issued. The policy may also be issued
to a male under 25 years, or married person who is 25
years or over. All other applicants are refused.

CSC 2202 Systems Analysis and Design 27


Example 2: Insurance
Application Process
Rule Else
Condition Stub 1 2 3 4 5

Has policy type 19? Y Y N . .

Married? Y Y Y . Y
Male? Y . N Y .
Under 25? . Y . Y N
Action Stub
Issue policy type 22 X X X X X

Reject X

CSC 2202 Systems Analysis and Design 28


Decision Tables

Advantages of Decision Tables


 Is concise, unambiguous, clearly conveying the
logic involved, hence less danger of omitting a
logical possibility.
 Enhanced communication with action separated

from conditions.
 Easier to draw and they’re easily understood.

 Produces an automatic compact program

documentation.

CSC 2202 Systems Analysis and Design 29


Decision Tables

 Its
format is highly standardized.
 Can be checked mathematically for

completeness and that all test


combinations have been considered.
Disadvantage
– however, they don’t show the sequence of
decisions.

CSC 2202 Systems Analysis and Design 30


Decision Tables - using Excel
Excel is well suited to drawing decision tables
Many rows and columns
Features:
 Variable width/height rows and columns
 Text formatting and alignment - wrap around
 Systematic generation of values - using copy and
paste
 Borders and shading
 Ease of maintenance changes e.g. add new
condition
CSC 2202 Systems Analysis and Design 31
Decision Trees
Decision Tree is a graphic representation of
a selection structure.
It is in a form of a tree with the roots at the left
and the branches to the right.
It shows a decision table’s conditions,
actions, and rules
Logic structure is shown horizontally
Easy to construct and understand
CSC 2202 Systems Analysis and Design 32
Decision Trees
Are an alternative to Decision Tables
Present decisions in the form of a tree
Appropriate to use when each rule has a
single action
Root represents the first decision variable
Outcomes (values e.g. Y, N) are shown as
branches
Decision table is better in complex
situations

CSC 2202 Systems Analysis and Design 33


Decision Tree Diagram
*
condition Action

condition
condition Action

condition Action
condition
condition Action

CSC 2202 Systems Analysis and Design 34


Decision Tree

CSC 2202 Systems Analysis and Design 35


Decision
Bank loan Tree
policy
“clearly”
expressed
using a
Decision Tree

CSC 2202 Systems Analysis and Design 36


Decision Trees - description

Each node on the tree represents a


decision point
Leaves of the tree represent the actions
A path from the root to a leaf is
associated with a specific sequence of
decisions
- each path represents a decision rule

CSC 2202 Systems Analysis and Design 37


Constructing a Decision Tree
Identify all decision variables, and the possible values
for each variable
Generate the tree systematically (left to right)
 Draw one branch from the root for each value of the

first decision variable - label each branch


 The right end of each branch is now a decision point

 At each decision point, draw one branch for each

value of the next decision variable - label each


branch
 Repeat until no more decisions

CSC 2202 Systems Analysis and Design 38


Constructing a Decision Tree
(cont)
Identify the independent actions, and
label each leaf with the action(s) to be
taken
Formulate questions for users, to
resolve omissions, ambiguities etc

Revise and complete the decision tree

CSC 2202 Systems Analysis and Design 39


Decision Table or Decision
Tree?
Major advantage of Decision Table is
the guaranteed consideration of ALL
combinations of conditions and their
resultant actions
Most Users prefer the graphic nature of
a
decision tree
Which should be used?
CSC 2202 Systems Analysis and Design 40
Guidelines for using Decision
Table or Decision Tree
Use a Decision Table when there are many
decision variables
Use a Decision Table when decision rules
require combinations of actions
Use a Decision Tree when there are few
decision variables and only one action per rule
Use a Decision Table as a working tool when
need to check all combinations of conditions
- present the policy as a decision tree, if it
satisfies the above
CSC 2202 Systems Analysis and Design 41
Example of A Decision Tree for a Discount
Authorization process
Condition 1 Condition 2 Action
Pay within 10 Size of order Take 3%
days over 10.000/= discount from
invoice total
Pay within 10 5000 – Take 2%
days 10000/= discount from
invoice total
Pay within 10 < 5000/= Pay full
days invoice
amount

CSC 2202 Systems Analysis and Design 42


Example - Discount Authorization
Process
*
Over 10.000 --- 3%Discount

Pay within 5.000 – 10.000 --- 2%Discount


10 days
Discount
Authorization
<5.000 --- pay full amount
Process
Pay after ----- No discount, pay
10 days Invoice amount

CSC 2202 Systems Analysis and Design 43


System Modeling

CSC 2202 Systems Analysis and Design 44


System Modeling
So far, we have been discussing
individual tools like DFDs, the data
dictionary, process description, etc.
Now, we need to put all of these
together into integrated system
models.

CSC 2202 Systems Analysis and Design 45


System Modeling
Four system models:
 current physical model – what we now have.
 current logical model – eliminates physical

characteristics that could change with a new


system.
 new logical model – adds in any new (logical)

functions that we want in the new system.


 new physical model – shows how to implement

the new system physically.

CSC 2202 Systems Analysis and Design 46


4 step process from Current Physical
to New Physical System (via Logical)

CSC 2202 Systems Analysis and Design 47


Transition through Physical
and Logical Models
Existing New
System System

Physical 1 4
Model

Technical &
Operational
Business Requirements
Requirements

Logical
Model 2 3
CSC 2202 Systems Analysis and Design 48
System Modeling
Analysis phase:
represents the
Four system models:
current system.
 current physical model
 current logical model
 new logical model
Design phase:
 new physical model
adds the new
stuff.

CSC 2202 Systems Analysis and Design 49


System Modeling
We work from
Four system models: the physical,
 current physical model
 current logical model to the logical,
 new logical model
and back to the
 new physical model physical.

CSC 2202 Systems Analysis and Design 50


Current Physical Model
What we now have.
Information gathering: system as it currently
exists.
Why do we bother to look at the current
system?
 To start partitioning with something concrete,
rather than the abstraction of a future system.
 To be able to build upon the strengths of the

existing system, while eliminating its weaknesses.

CSC 2202 Systems Analysis and Design 51


Current Physical Model
This model looks very much like the
DFDs you have been doing, except it
may have more physical details such as
the names of processors (anything,
person or machine, capable of doing
work).
When this model is complete, walk
through it with the users.
CSC 2202 Systems Analysis and Design 52
Current Logical Model
Eliminates physical characteristics that
could change with a new system.
So, eliminate any reference to printing,
for example.

CSC 2202 Systems Analysis and Design 53


Current Logical Model
For this model, we retain the essential
activities and delete the custodial
activities.
To build this model:
 Create one huge DFD of 30 or more
bubbles.
 Startwith overview and replace all bubbles with
the lower-level bubbles.
 Remove custodial activities.
CSC 2202 Systems Analysis and Design 54
New Logical Model
Adds in any new (logical) functions that we
want in the new system.
Still a logical model.
Still using fragments.
Two ways to incorporate the new functions:
 A new fragment on the overview, with all
necessary lower-level diagrams.
 Modifying an existing fragment to include the new

function, such as a report.


CSC 2202 Systems Analysis and Design 55
New Physical Model
Shows how to implement the new
system physically.
 Put in physical functions like writes and
edits.
 Divide the work among processors.

 Called the incarnation (physical model) of

the system.

CSC 2202 Systems Analysis and Design 56


New Physical Model
Design the general hardware and
software specs for the system.
 Avoid being too specific quite yet.
 Include cost/benefit analysis of the

solutions.

CSC 2202 Systems Analysis and Design 57


New Physical Model
Actually, we develop multiple New
Physical Models.
 We develop a “menu” of possible solutions
to the problem.
 All should be viable options.

 Who chooses among the options?

CSC 2202 Systems Analysis and Design 58


Alternative models for new
physical system
The analyst may put forward 2 or more
alternatives for the proposed new system
This can be represented by the following
diagram
(which appear in the following slides)
In the real world, shortcuts do get taken from
this idealised 4 step logical/physical approach

CSC 2202 Systems Analysis and Design 59


New Physical Model
Management chooses!
 This is a business decision that affects the bottom
line of the organization, not just an IT decision.
 If management chooses, they have a vested

interest in providing the support you need to make


the system successful.
 Spread the responsibility around – management

gets paid to make big $ decisions, you don’t.

CSC 2202 Systems Analysis and Design 60


New Physical System -
alternatives

CSC 2202 Systems Analysis and Design 61


Review Questions
• Explain the role of data flow diagrams in the
systems development process.
• Explain the difference between logical and
physical data flow diagrams - use an
example.
• Explain the role of modelling tools in the
systems development process.
• Describe each of the four components of a
data flow diagram.

CSC 2202 Systems Analysis and Design 62


Review question
1. What is structured English and why is it
used?
2. What are the differences between
structured English and pseudo code?
3. Describe when you would use a decision
table instead of a decision tree clearly
justifying your response.
4. What is a data dictionary. What is its role in
the systems development process.

CSC 2202 Systems Analysis and Design 63

You might also like