4.structured Analysis
4.structured Analysis
Analysts use various tools to understand and describe the information system. One of the ways
is using structured analysis.
It is logical rather than physical i.e., the elements of system do not depend on vendor or hardware.
Types of DFD
Data Flow Diagrams are either Logical or Physical.
Logical DFD - This type of DFD concentrates on the system process, and flow of data in the
system.For example in a Banking software system, how data is moved between different entities.
Physical DFD - This type of DFD shows how the data flow is actually implemented in the system. It
is more specific and close to the implementation.
DFD Components
DFD can represent Source, destination, storage and flow of data using the following set of
components -
Entities - Entities are source and destination of information data. Entities are represented by a
rectangles with their respective names.
Process - Activities and action taken on the data are represented by Circle or Round-edged rectangles.
Data Storage - There are two variants of data storage - it can either be represented as a rectangle with
absence of both smaller sides or as an open-sided rectangle with only one side missing.
Data Flow - Movement of data is shown by pointed arrows. Data movement is shown from the base
of arrow as its source towards head of the arrow as destination.
Levels of DFD
Level 0 - Highest abstraction level DFD is known as Level 0 DFD, which depicts the entire
information system as one diagram concealing all the underlying details. Level 0 DFDs are also
known as context level DFDs.
Level 1 - The Level 0 DFD is broken down into more specific, Level 1 DFD. Level 1 DFD
depicts basic modules in the system and flow of data among various modules. Level 1 DFD also
mentions basic processes and sources of information.
Level 2 - At this level, DFD shows how data flows inside the modules mentioned in Level 1.
Higher level DFDs can be transformed into more specific lower level DFDs with deeper level of
understanding unless the desired level of specification is achieved.
Data Dictionary
A data dictionary is a structured repository of data elements in the system. It stores the
descriptions of all DFD data elements that is, details and definitions of data flows, data stores,
data stored in data stores, and the processes.
A data dictionary improves the communication between the analyst and the user. It plays an
important role in building a database. Most DBMSs have a data dictionary as a standard feature.
For example, refer the following table −
1 TITLE Title 60
Decision Trees
Decision trees are a method for defining complex relationships by describing decisions and
avoiding the problems in communication. Thus, it depicts which conditions to consider first,
second, and so on.
Decision trees depict the relationship of each condition and their actions. A square node
indicates an action and a circle indicates a condition. It forces analysts to consider the sequence
of decisions and identifies the actual decision that must be made. It is a single representation of
the relationships between conditions and actions. A decision tree is a structure that includes a
root node, branches, and leaf nodes. Each internal node denotes a test on an attribute, each
branch denotes the outcome of a test, and each leaf node holds a class label. The topmost node
in the tree is the root node.
The decision tree example are as follows
Decision Tables
Decision tables are a method of describing the complex logical relationship in a precise manner which is
easily understandable. It is useful in situations where the resulting actions depend on the occurrence of
one or several combinations of independent conditions. It is a matrix containing row or columns for
defining a problem and the actions.
To create the decision table, the developer must follow basic four steps:
Regular Customer - Y N -
ACTIONS
Give 5% discount X X - -
Give no discount - - X X
Structured English
Structure English is derived from structured programming language which gives more
understandable and precise description of process. It is based on procedural logic that uses
construction and imperative sentences designed to perform operation for action.
It is best used when sequences and loops in a program must be considered and the problem needs
sequences of actions with decisions.
It does not have strict syntax rule. It expresses all logic in terms of sequential decision structures and
iterations.
Example:
Procedure finds factorial (A)
Factorial = 1
for value = 1 to A
Factorial =factorial * value
ENDFOR
DISPLAY factorial
END PROCEDURE