0% found this document useful (0 votes)
31 views23 pages

Unit 3 Archiectural Design Model

The document outlines the design model in software engineering, focusing on the design process, quality, and various design elements such as data, architectural, interface, component-level, and deployment-level designs. It emphasizes the two dimensions of the design model: process and abstraction, and discusses the iterative refinement of UML diagrams from analysis to design. Additionally, it highlights the importance of architectural styles, patterns, and the structured approach to interface and component-level design.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
31 views23 pages

Unit 3 Archiectural Design Model

The document outlines the design model in software engineering, focusing on the design process, quality, and various design elements such as data, architectural, interface, component-level, and deployment-level designs. It emphasizes the two dimensions of the design model: process and abstraction, and discusses the iterative refinement of UML diagrams from analysis to design. Additionally, it highlights the importance of architectural styles, patterns, and the structured approach to interface and component-level design.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPTX, PDF, TXT or read online on Scribd
You are on page 1/ 23

B.Tech II year II semester R22 Regulation.

Course code : 22CS254

SOFTWARE ENGINEERING
Topic: Design model

Dr. M. Swami Das


Associate Professor
Dept. of CSE
CVR COLLEGE OF ENGINEERING (AUTONOMOUS)
HYDERABAD

03/04/2025 SOFTWARE ENGINEERING by Dr. M Swami Das 1


UNIT -III
Unit - III
Design Engineering: Design process and design quality, design concepts, the
design model. Creating an architectural design: software architecture, data
design, architectural styles and patterns, architectural design, conceptual
model of UML, basic structural modeling, class diagrams, sequence diagrams,
collaboration diagrams, use case diagrams, component diagrams.

03/04/2025 IV B Tech WSCC- CVRCE - by Dr. M Swami Das 2


Design Model
Data Design Elements
8.4.2 Architectural Design Elements
8.4.3 Interface Design Elements
8.4.4 Component-Level Design Elements
8.4.5 Deployment-Level Design Elements

03/04/2025 SOFTWARE ENGINEERING by Dr. M Swami Das 3


• The design model has two dimensions:
1.Process Dimension – Represents the evolution of the design model as
design tasks progress in the software process.
2.Abstraction Dimension – Indicates the increasing level of detail as
analysis model elements are transformed into design equivalents and
refined iteratively.
• The transition from analysis to design can be either distinct or
gradual, depending on the project. UML diagrams used in analysis are
refined in design to include more implementation details,
architectural structure, components, and interfaces.
03/04/2025 SOFTWARE ENGINEERING by Dr. M Swami Das 4
Dimensions of the design model
•h

03/04/2025 SOFTWARE ENGINEERING by Dr. M Swami Das 5


Software design Model

03/04/2025 SOFTWARE ENGINEERING by Dr. M Swami Das 6


• Model elements along the horizontal axis are not always developed
sequentially. Typically, architectural design comes first, followed by
interface and component-level design, which often proceed in
parallel. The deployment model is usually addressed later.
• Design patterns can be applied at any stage, helping to solve domain-
specific problems by leveraging established design knowledge.

03/04/2025 SOFTWARE ENGINEERING by Dr. M Swami Das 7


8.4.1 Data Design Elements
• Data design, or data architecting, creates a high-level data model based on user
needs, which is then refined into implementation-specific forms for processing.
The structure of data significantly influences software architecture.
• At different levels:
• Program Component Level – Designing data structures and algorithms ensures
high-quality applications.
• Application Level – Converting data models into databases supports business
objectives.
• Business Level – Organizing disparate data into a data warehouse enables data
mining and knowledge discovery, impacting business success.
• Data design is a critical aspect of software engineering
03/04/2025 SOFTWARE ENGINEERING by Dr. M Swami Das 8
Three tier architecture

03/04/2025 SOFTWARE ENGINEERING by Dr. M Swami Das 9


03/04/2025 SOFTWARE ENGINEERING by Dr. M Swami Das 10
8.4.2 Architectural Design Elements
• Architectural design in software is similar to a house floor plan, providing an
overall view of the system’s structure, components, and their relationships.
• The architectural model is derived from three sources:
1.Application Domain Knowledge – Understanding the context of the software.
2.System Requirements – Defining necessary structural elements and behaviors.
3.Architectural Styles & Patterns – Using established design approaches for
efficiency.
• The architecture is typically represented as interconnected subsystems, often
based on analysis packages from the requirements model. Each subsystem may
have its own architecture, such as a dedicated structure for a graphical user
interface
03/04/2025 SOFTWARE ENGINEERING by Dr. M Swami Das 11
8.4.3 Interface Design Elements
• Interface design in software is like detailed drawings for a house’s doors,
windows, and utilities, defining how information flows into, out of, and
within the system.
• Key elements of interface design:
1.User Interface (UI) – Focuses on usability, aesthetics, ergonomics, and
technical aspects. It is often a distinct subsystem in the architecture.
2.External Interfaces – Connects the system to other devices, networks, or
applications. Requires thorough requirements gathering and security/error
handling.
3.Internal Interfaces – Enables communication between software
components, ensuring proper messaging and data flow.
03/04/2025 SOFTWARE ENGINEERING by Dr. M Swami Das 12
Interface representation for control
panel

03/04/2025 SOFTWARE ENGINEERING by Dr. M Swami Das 13


Interface Example.ATM.

03/04/2025 SOFTWARE ENGINEERING by Dr. M Swami Das 14


• Interfaces in UML define publicly visible operations of a class without
specifying internal structure.
• For example, in a security system, a ControlPanel class implements a
KeyPad interface, allowing interaction via devices like a mobile phone
or PDA.
• UML notation shows this relationship using realization, meaning a
class provides defined interface operations to other components

03/04/2025 SOFTWARE ENGINEERING by Dr. M Swami Das 15


8.4.4 Component-Level Design Elements
Component-level design in software is like detailed room specifications in a house,
defining wiring, plumbing, and every functional detail.
It fully describes each software component’s internal structure, including:
•Data structures for local data objects.
•Algorithmic details for component processing.
•Interfaces that provide access to component operations.
In object-oriented design, components are represented in UML. For example, the
SensorManagement component in a security system manages sensors and
connects to a Sensor class.
Different levels of abstraction can model component details, such as:
•UML activity diagrams for processing logic.
•Pseudocode or flowcharts for procedural flow.
•Programming language-based modeling for data structures.
These ensure structured andSOFTWARE
03/04/2025 efficient software
ENGINEERING by Dr. M Swamidesign.
Das 16
ATM component diagram

• ex

03/04/2025 SOFTWARE ENGINEERING by Dr. M Swami Das 17


UML component diagram

03/04/2025 SOFTWARE ENGINEERING by Dr. M Swami Das 18


UML deployment diagram

03/04/2025 SOFTWARE ENGINEERING by Dr. M Swami Das 19


03/04/2025 SOFTWARE ENGINEERING by Dr. M Swami Das 20
8.4.5 Deployment-Level Design
Elements
• Deployment-level design defines how software functionality is distributed
across the physical computing environment. For example, the SafeHome
system operates within a home PC, a control panel, and a remote server.
• A UML deployment diagram is created and refined to illustrate:
• Computing environments (e.g., PC, control panel, server).
• Subsystems housed within each environment (e.g., security, surveillance,
communications).
• The initial diagram is in descriptor form, showing general computing
environments without specifying hardware details. Later, in instance form,
specific configurations (e.g., Mac, Windows PC, Linux server) are defined as
design progresses.
03/04/2025 SOFTWARE ENGINEERING by Dr. M Swami Das 21
ATM class diagram

03/04/2025 SOFTWARE ENGINEERING by Dr. M Swami Das 22


ATM sequence diagram

03/04/2025 SOFTWARE ENGINEERING by Dr. M Swami Das 23

You might also like