Structured Design in Software Engineering
1.
Definition
Structured Design
is a software design technique that divides a large software system into
smaller, manageable modules. Each module performs a specific task.
Example: A College
Management System can be divided into Student Management, Faculty Management,
Examination Management, and Library Management.
2. Diagram of Structured Design

3. Principles of Structured Design
1.
Modularity: Dividing software into smaller modules.
Example: A banking system can be divided into account management, deposit,
withdrawal, and transaction modules.
2.
High
Cohesion: Each module focuses on one
related task.
3.
Low Coupling: Modules have minimal dependency on one another.
4.
Functional
Independence
Each
module should perform one well-defined function.
Modules
should depend as little as possible on other modules.
Functional
independence is achieved through high cohesion and low coupling.
5.
Top-Down
Design: Designing the main system first
and then breaking it into smaller modules.
6.
Simplicity: Making the software easy to understand and maintain.
7.
Abstraction: Focus
on the essential features of a system while hiding unnecessary details.
Describes what a module does rather than how it does it.
Example: A user withdraws money from an ATM without knowing the internal
processing details.
8.
Information Hiding: Each module should hide its internal data
and implementation details.
Other modules should interact with it through clearly defined
interfaces.
Example: A bank account module hides the account
balance implementation and provides
functions to check or update it.
4. Advantages
·
Easy to develop and test.
·
Easy to maintain and modify.
·
Reduces software complexity.
·
Supports code reuse.
·
Makes debugging easier.
5. Disadvantages
·
Requires careful planning.
·
Changes affecting several modules
may be difficult to manage.
·
Less suitable for some highly
dynamic or object-oriented designs.
6. Short Answer for Exams
Structured Design is a systematic approach to software design in
which a large system is divided into smaller modules. It improves modularity,
maintainability, testing, and software quality.
Remember: Structured Design = Large System → Smaller Modules.
UML Diagrams-
UML Diagrams in Software Engineering
1.
Definition
UML (Unified
Modeling Language) is a standard visual language used to design, visualize, and
document a software system.
It helps
developers understand the structure and behaviour of a system before
implementation.
2.
Types of UML Diagrams
UML diagrams are
divided into two main categories.
Structural
Shows the
structure of a system.
1. Class Diagram
2. Object Diagram
3. Component
Diagram
4. Deployment
Diagram
5. Package
Diagram
Behavioral
Shows the
behaviour of a system.
1. Use Case
Diagram
2. Activity
Diagram
3. State Machine
Diagram
4. Sequence
Diagram*
5. Communication
Diagram*
*Sequence and
Communication diagrams are interaction diagrams, a subgroup of behavioral
diagrams.
UML 2.x defines
14 diagram types.
3.
Important UML Diagrams with Examples
No comments:
Post a Comment