0% found this document useful (0 votes)
6 views5 pages

Structural Models

Structural models illustrate the components of a system and their relationships, aiding in system architecture, code organization, and implementation. Key types include class diagrams, component diagrams, and entity-relationship diagrams, each serving specific purposes in design and planning. Context models define system boundaries and external interactions, improving communication and understanding of dependencies.

Uploaded by

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

Structural Models

Structural models illustrate the components of a system and their relationships, aiding in system architecture, code organization, and implementation. Key types include class diagrams, component diagrams, and entity-relationship diagrams, each serving specific purposes in design and planning. Context models define system boundaries and external interactions, improving communication and understanding of dependencies.

Uploaded by

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

What Are Structural Models?

Structural models describe the components of a system and how they are related.
They represent the architecture of the software, showing the internal structure
and the relationships between system parts, such as modules, classes, and objects.
They help in visualizing:

• The system components (e.g., classes, packages),


• Relationships like inheritance, association, aggregation, and
composition, • Data organization, such as data models or
schemas. How data is stored or linked

Purpose of Structural Models

1. Define the architecture of a system.


2. Show how parts are connected and depend on each other.
3. Help in code organization and reusability.
4. Provide a foundation for system implementation.

Give a base for building the actual system.

Key Concepts in Structural Modeling


1. Class Diagrams (UML)

• The most commonly used structural model.


• Show classes, attributes, methods, and relationships (like inheritance and
associations).
• Useful for object-oriented design.

Example:

[Person]
- name

- age

+ getDetails()
[Student] → inherits from → [Person]
2. Component Diagrams (UML)

• Show how a system is split divided into logical components or modules.


• Emphasize interface dependencies between components.
• Used for modular software design and deployment planning.

• o Focus on how these parts depend on each other


• o Useful for planning large systems

3. Package Diagrams (UML)

• Group related classes or components into packages.


• Show package dependencies and organization.
• Show how packages are organized and connected
Useful in big projects.

4. Deployment Diagrams

• Represent hardware components (nodes) and how software components are


deployed on them.

• Useful in network or distributed systems


• Show the hardware (like servers or computers)
• Show where software runs or is installed

5. Entity-Relationship Diagrams (ERD)

• Used in database design.


• Show entities, their attributes, and relationships.
• Important for data modeling and storage structure.

Relationship
Type Description
Association A general link between classes
Aggregation A "whole-part" relationship where parts can exist
independently
Stronger "whole-part" relationship where parts cannot exist
Composition
without the whole
Inheritance One class inherits attributes and methods from another
Dependency One element depends on another to function

Benefits of Structural Models


Improve modularity and maintainability.

Provide a blueprint for implementation and future development.

• Help us clearly see the structure of the software.

• Make it easier to divide the system into smaller parts (modularity) and keep it
updated (maintainability).

• Support the design of object-oriented programs (using classes and objects).

• Help in planning databases and system components.

Comparison: Structural vs. Behavioral Models

Feature Structural Models Behavioral Models

Static structure (parts, Dynamic behavior (actions,


Focus
layout) flows)

Class, Component, ER Sequence, Activity, State


Examples
diagrams diagrams

Connections and Events, changes, and


Show
structure interactions

Process/business logic
Used For Code/database design
design

What Are Context Models?


A context model represents the boundaries and external influences of a system. It
shows:

Who or what interacts with the system (external entities like people or other systems)
What data or information flows between the system and these entities,
The operational environment, including hardware, software, and organizational
structures. Where the system works

A context model is a simple diagram that shows how a system connects with the outside
world. These models are very useful when planning a new system. They help developers
and other people clearly understand what the system will do and how it will connect with
other things

Purpose of Context Modeling

1. Define System Boundaries – Helps to clarify what is inside and outside the
system.
2. Identify Interfaces – Shows inputs to and outputs from the system.
3. Understand Dependencies – Recognizes the system’s dependencies on
external components.
4. Improve Communication – Provides a simple visual or conceptual tool for
discussions between stakeholders.

Types of Context Models


1. Context Diagrams (Data Flow Diagrams - Level 0)

Most common type of context model.

Shows the whole system as one process in the center. External people or systems
are shown around it. Arrows indicate data flow between the system and external
entities.

Example: [User] → (Library System) → [Book Database]

2. Operational Context Models

• Describe the physical and technical environment where the system operates.
• Include devices, sensors, actuators, networks, and physical locations.
• Often used in embedded systems and IoT applications.
3. Organizational Context Models

• Represent the system's place within an organization.


• Identify departments, roles, regulations, and policies that influence the system.
• Help in understanding business processes and workflow integration.
Tools and Notations Used
• UML Use Case Diagrams – To show actors and their interactions with the
system.
• Data Flow Diagrams (DFDs) – To model data movement between the system
and environment.
• System ML Block Diagrams – For system-level modeling.
• BPMN (Business Process Modeling Notation) – For modeling business
context.

Benefits of Using Context Models


• Clear understanding of system boundaries and scope.
• Identifies external dependencies early in development.
• Prevents confusion or adding extra features later scope creep

Make it easier for developer and stakeholders to communicate.


Helps in planning how the system will connect with other systems.

You might also like