UNIT – III:
Structured Analysis, UML & System Modelling
1. Concept and need of Structured Analysis
Structured Analysis is a systematic approach used by system analysts to understand and
analyse an existing system logically. It focuses on what the system does, rather than how it
is implemented. This method breaks a complex system into smaller, manageable
components to improve clarity and accuracy.
Structured Analysis uses graphical and textual tools to represent system processes and data
flow. It follows a top-down approach, starting from a high-level overview and gradually
moving to detailed analysis. It is independent of hardware and software platforms, making it
easy to understand by both technical and non-technical users.
Key Features of Structured Analysis
Logical rather than physical representation
Uses diagrams and structured tools
Divides the system into smaller processes
Improves communication between users and analysts
Structured Analysis Tools
Structured Analysis uses several standard tools to document and analyse system
requirements:
Data Flow Diagrams (DFD)
Data Dictionary
Decision Trees
Decision Tables
Structured English
Pseudocode
These tools help in accurate requirement analysis, reduce ambiguity, and improve system
documentation.
1. Data Flow Diagram (DFD)
A Data Flow Diagram (DFD) is a graphical representation that shows how data moves
through a system. It illustrates data inputs, processes, data storage, and outputs using
standardized symbols.
DFD helps analysts understand the logical flow of data and identify system boundaries. It is
one of the most important tools used during system analysis and design.
Objectives of DFD
To show how data flows within the system
To identify system processes and data storage
To improve system understanding and communication
Components of Data Flow Diagram
A DFD consists of four basic components:
1. Entity
Represents source or destination of data
Shown using a rectangle
Example: Customer, Supplier
2. Process
Represents operations performed on data
Shown using a circle or rounded rectangle
Example: Process Order
3. Data Store
Represents storage of data
Shown using parallel lines
Example: Student Database
4. Data Flow
Shows movement of data
Represented by arrows
Indicates direction of data movement
Types of Data Flow Diagram
a) Logical DFD
Focuses on what the system does
Shows business processes and data flow
Independent of hardware and software
Used for requirement analysis
b) Physical DFD
Focuses on how the system is implemented
Includes hardware, software, files, and people
Used during system design
Context Diagram
A Context Diagram is the highest-level DFD. It represents the entire system as a single
process and shows interactions with external entities.
Importance of Context Diagram
Defines system boundaries
Shows external entities and data flow
Provides overall system overview
Rules for Drawing DFD
Data cannot flow directly between two entities
Data cannot flow directly between two data stores
A process must have at least one input and output
Data flows should not cross each other
Every data store must be connected to a process
2. Data Dictionary
A Data Dictionary is a centralized repository of data definitions used in the system. It stores
detailed information about data elements, data flows, data stores, and processes.
Purpose of Data Dictionary
Ensures data consistency
Improves communication
Supports database design
Acts as system documentation
Types of Data Dictionary
Active Data Dictionary – Automatically updated by DBMS
Passive Data Dictionary – Updated manually
Data Dictionary – Library Management System
A Data Dictionary is a centralized repository that describes data elements, data flows, data
stores, and structures used in a system.
1. Data Elements
Data Element Description Type Size
Unique identification number of
Student_ID Numeric 10
student
Student_Name Name of the student Alphabetic 50
Book_ID Unique identification number of book Numeric 10
Book_Title Title of the book Alphanumeric 100
Issue_Date Date on which book is issued Date –
Return_Date Date on which book is returned Date –
Data Element Description Type Size
Fine_Amount Fine charged for late return Numeric 6
2. Data Flows
Data Flow Name Description Source Destination
Request for library
Membership_Request Student Library Management System
membership
Book_Issue_Request Request to issue a book Student Library Management System
Book_Issue_Details Issued book information System Student
Fine_Details Fine information System Accounting System
New_Book_Info Details of new books Supplier System
3. Data Stores
Data Store Description Data Stored
Stores student membership
Member_Records Student_ID, Student_Name
details
Book_Inventory Stores book details Book_ID, Book_Title, Status
Student_ID, Book_ID, Issue_Date,
Book_Loan_Database Stores issued book records
Return_Date
4. Data Structures
Structure Name Composition
Student_Record Student_ID + Student_Name
Book_Record Book_ID + Book_Title
Loan_Record Student_ID + Book_ID + Issue_Date + Return_Date
Fine_Record Student_ID + Book_ID + Fine_Amount
5. Example Representation (Standard Format)
STUDENT_RECORD = STUDENT_ID + STUDENT_NAME
BOOK_RECORD = BOOK_ID + BOOK_TITLE
LOAN_RECORD = STUDENT_ID + BOOK_ID + ISSUE_DATE + RETURN_DATE
FINE_RECORD = STUDENT_ID + BOOK_ID + FINE_AMOUNT
6. Importance of Data Dictionary
Ensures data consistency and accuracy
Helps in database design
Improves communication between developers and users
Acts as permanent system documentation
3. Decision Tree
It is a graphical representation of decision logic that shows different conditions and the
actions taken for each combination of conditions.
It is shaped like a tree:
Nodes → represent decisions or conditions
Branches → represent possible values (Yes/No, True/False)
Leaves → represent actions or outcomes
Purpose in SAD
To model complex decision logic.
To show sequential decision-making.
To make business rules easy to understand visually.
Components
1. Decision Node (usually a square or circle)
2. Branches (condition outcomes)
3. Action Nodes (final result)
Example (Loan Approval System)
Conditions:
Is income > 50,000?
Is credit score > 700?
Tree Flow:
If income > 50,000
o If credit score > 700 → Approve Loan
o Else → Review Manually
Else
o Reject Loan
Advantages
✔ Easy to understand visually
✔ Good for sequential decisions
✔ Shows all possible paths
Disadvantages
✖ Becomes complex for many conditions
✖ Difficult to modify if large
4. Decision Table
A Decision Table is a tabular representation of decision logic that shows all possible combinations of
conditions and corresponding actions.
It is more structured than a decision tree.
Conditions Rule 1 Rule 2 Rule 3 Rule 4
Income > 50k Y Y N N
Credit Score > 700 Y N Y N
Action Approve Review Review Reject
Purpose in SAD
Used when there are multiple conditions.
Ensures no combination of conditions is missed.
Useful for business rule validation.
Types of Decision Tables
1. Limited Entry Table – Only Yes/No values
2. Extended Entry Table – Multiple values possible
Advantages
✔ Covers all combinations
✔ Easy to verify completeness
✔ Good for complex business logic
Disadvantages
✖ Can become very large
✖ Not very visual
5. Structured English
Structured English is a method of writing process logic using simple English statements
combined with programming control structures.
It uses:
IF–THEN–ELSE
DO–WHILE
CASE
REPEAT–UNTIL
But it avoids technical programming syntax.
Purpose in SAD
To describe process logic clearly.
To communicate between analysts and programmers.
Used in system documentation.
Rules
Use capitalized keywords (IF, THEN, ELSE).
Use indentation.
Use clear and simple sentences.
Avoid ambiguous language.
Example (Loan System)
IF income > 50000 THEN
IF credit_score > 700 THEN
Approve Loan
ELSE
Send for Manual Review
ENDIF
ELSE
Reject Loan
ENDIF
Advantages
✔ Easy to understand
✔ Close to programming logic
✔ Good for documentation
Disadvantages
✖ Not executable
✖ Can become lengthy
6. Pseudocode
Pseudocode is an informal, high-level description of a program’s logic written in a style
similar to programming language but without strict syntax rules.
It is more technical than Structured English.
Purpose in SAD
Used during system design.
Helps programmers understand algorithm logic.
Bridge between analysis and coding.
Example (Loan System)
START
INPUT income
INPUT credit_score
IF income > 50000 THEN
IF credit_score > 700 THEN
PRINT "Loan Approved"
ELSE
PRINT "Manual Review"
ENDIF
ELSE
PRINT "Loan Rejected"
ENDIF
END
Characteristics
Uses structured programming logic.
No strict syntax rules.
Easy to convert into actual code.
Advantages
✔ Easy to convert to program code
✔ Improves logic clarity
✔ Useful for algorithm design
Disadvantages
✖ Not standardized
✖ Different formats used by different analysts
Difference Between All Four
Feature Decision Decision Table Structured Pseudocode
Tree English
Format Graphical Tabular Text-based Programming-
like
Best For Sequential Multiple condition Process Algorithm
decisions combinations description design
Complexity Moderate High Moderate High
Handling
Used In Analysis Analysis Analysis & Design
Design
In System Analysis and Design:
Decision Trees & Decision Tables → Used in the Analysis Phase to represent
business rules.
Structured English → Used to describe system processes clearly.
Pseudocode → Used in the Design Phase before coding.
These tools help:
Reduce ambiguity
Improve system documentation
Ensure logical completeness
Make communication between analyst and programmer easier
7. Unified Modeling Language (UML)
Unified Modeling Language (UML) is a standardized modeling language used to visualize,
specify, construct, and document software systems. UML is widely used in object-oriented
system analysis and design.
UML provides a common visual language that improves understanding among developers,
analysts, and users.
Importance of UML
Improves system visualization
Supports object-oriented design
Enhances documentation quality
Reduces development errors
8. UML Diagrams
1. Use Case Diagram
Represents interaction between users and system
Shows system functionality from user perspective
Helps in requirement analysis
2. Class Diagram
Represents system classes and relationships
Shows attributes, methods, and associations
Used for system design
3. Sequence Diagram
Shows interaction between objects over time
Helps understand system behavior
Emphasizes message sequence
4. Activity Diagram
Represents workflow of activities
Similar to flowcharts
Useful for modeling business processes
9. Comparison of DFD and UML
DFD UML
Process-oriented Object-oriented
Focuses on data flow Focuses on objects & behavior
Used in structured analysis Used in OOAD
Logical system representation Detailed system modeling
10. Importance of System Modeling
System modeling helps in:
Better requirement understanding
Error detection at early stages
Improved communication
Reduced development cost and risk