Structured Analysis & Structured Design (SAD)
Complete Notes · DFD · Data Dictionary · Coupling · Cohesion · Transform & Transaction Analysis · 50 Interactive MCQs
What is Structured Analysis (SA)?
Structured Analysis is a software engineering technique used to analyze what a system should do before it is designed.
🎯 Focus: "What the system does"
Structured Analysis helps identify:
- Business processes
- Data movement
- User requirements
- Functional requirements
Tools of Structured Analysis
1. Data Flow Diagram (DFD)
A Data Flow Diagram (DFD) represents the movement of data within a system.
| Symbol | Meaning |
|---|---|
| ○ | Process |
| ➝ | Data Flow |
| ▭ | External Entity |
| ║║ | Data Store |
Levels of DFD
- Context Diagram (Level 0) — Highest-level DFD showing system boundaries
- Level 1 DFD — Breaks down the system into major processes
- Level 2 DFD — Further breakdown of processes
📌 Important GATE Rule: Every lower-level DFD must balance with its parent DFD (inputs and outputs must match).
2. Data Dictionary
A Data Dictionary stores detailed information about:
- Data elements
- Data flows
- Data stores
- Data structures
📝 Example:
Student = Student_ID + Name + Course
It acts as the metadata repository of the system.
3. Process Specification (Mini-Spec)
Process Specification explains the internal logic of each DFD process using:
- Structured English
- Decision Table
- Decision Tree
What is Structured Design (SD)?
Structured Design converts the analyzed requirements into a software architecture.
🎯 Focus: "How the system will be built"
The goal is to design software that is:
- Modular
- Easy to maintain
- Reusable
- Reliable
Objectives of Structured Design
- High Cohesion
- Low Coupling
- Modular Design
- Easy Testing
- Easy Maintenance
Structure Chart
A Structure Chart shows the hierarchy of software modules.
It represents:
- Module hierarchy
- Function calls
- Data passed
- Control information
📌 Key Difference: Unlike DFD, a Structure Chart focuses on software modules instead of data movement.
Coupling
Coupling measures the dependency between modules.
✅ Rule: Lower coupling is always better.
Types of Coupling (Worst to Best)
- Content Coupling — One module directly accesses the internal content of another.
- Common Coupling — Modules share global data.
- Control Coupling — One module controls the logic of another.
- Stamp Coupling — Modules share data structures.
- Data Coupling — Modules communicate using simple data.
Content → Common → Control → Stamp → Data
Cohesion
Cohesion measures how closely related the tasks inside a module are.
✅ Rule: Higher cohesion is always better.
Types of Cohesion (Worst to Best)
- Coincidental — Tasks are unrelated.
- Logical — Tasks are of the same type.
- Temporal — Tasks are related by time.
- Procedural — Tasks follow a procedure.
- Communicational — Tasks share the same data.
- Sequential — Output of one becomes input to the next.
- Functional — All tasks contribute to a single function.
Coincidental → Logical → Temporal → Procedural → Communicational → Sequential → Functional
Transform Analysis
Transform Analysis is used when the DFD follows the pattern:
📐 Pattern: Input → Transform → Output
It produces a transform-centered software design.
Transaction Analysis
Transaction Analysis is used when one input can trigger multiple processing paths.
🏧 Example: ATM
Request
|
--------------------
| | |
Balance Withdraw Deposit
Structured Analysis vs Structured Design
| Structured Analysis | Structured Design |
|---|---|
| Focuses on what the system should do | Focuses on how the system will be built |
| Uses DFD | Uses Structure Chart |
| Requirement phase | Design phase |
Important DFD Rules
- Every process must have at least one input and one output.
- External entities cannot communicate directly with each other.
- Data stores cannot communicate directly with other data stores.
- Every data flow should have a meaningful name.
- Every process should be uniquely numbered.
Data Dictionary Symbols
| Symbol | Meaning |
|---|---|
| = | Consists of |
| + | And |
| () | Optional |
| {} | Repetition |
| [] | Either/Or |
📝 Example:
Address = HouseNo + City + PIN
Advantages of Structured Analysis
- Better understanding of requirements
- Improved communication
- Early error detection
- Better documentation
- Higher user involvement
Advantages of Structured Design
- Modular software
- Easier testing
- Reusable modules
- Easier maintenance
- Better reliability
GATE, UGC NET & NIELIT Quick Revision One-Liners
- 📌 Structured Analysis = What the system should do.
- 📌 Structured Design = How the system should be built.
- 📌 DFD represents the flow of data.
- 📌 Structure Chart represents module hierarchy.
- 📌 Data Dictionary stores metadata.
- 📌 Mini-Spec describes process logic.
- 📌 High Cohesion is desirable.
- 📌 Low Coupling is desirable.
- 📌 Transform Analysis follows Input → Process → Output.
- 📌 Transaction Analysis handles multiple action paths.
Conclusion
Structured Analysis and Structured Design form the foundation of software engineering and are among the most important topics for GATE CSE, UGC NET Computer Science, NIELIT Scientist, and university examinations. Understanding DFDs, Structure Charts, Coupling, Cohesion, Transform Analysis, and Transaction Analysis will help you answer conceptual as well as objective questions with confidence.
Revise the one-liners, remember the memory tricks, and practice previous years' questions to maximize your score.
परिणाम
बहुत अच्छा!
ऊपर 'पुनः प्रयास' बटन से दोबारा प्रयास करें