SlideShare a Scribd company logo
1 of 28
Chapter 9 Design Engineering Software Engineering: A Practitioner’s Approach, 6th edition by Roger S. Pressman
Analysis    Design
Design Concepts ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Abstraction et al. ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Data Abstraction door implemented as a data structure manufacturer model number type swing direction inserts lights type number weight opening mechanism
Procedural Abstraction open implemented with a "knowledge" of the  object that is associated with enter details of enter  algorithm
Architecture “ The overall structure of the software and the ways in which that structure provides conceptual integrity for a system.” [SHA95a] Structural properties.   This aspect of the architectural design representation defines the components of a system (e.g., modules, objects, filters) and the manner in which those components are packaged and interact with one another. For example, objects are packaged to encapsulate both data and the processing that manipulates the data and interact via the invocation of methods  Extra-functional properties.   The architectural design description should address how the design architecture achieves requirements for performance, capacity, reliability, security, adaptability, and other system characteristics. Families of related systems.   The architectural design should draw upon repeatable patterns that are commonly encountered in the design of families of similar systems. In essence, the design should have the ability to reuse architectural building blocks.
Patterns ,[object Object]
Patterns Design Pattern Template Pattern name —describes the essence of the pattern in a short but expressive name  Intent —describes the pattern and what it does Also-known-as —lists any synonyms for the pattern Motivation —provides an example of the problem  Applicability —notes specific design situations in which the pattern is applicable Structure —describes the classes that are required to implement the pattern Participants —describes the responsibilities of the classes that are required to implement the pattern Collaborations —describes how the participants collaborate to carry out their responsibilities Consequences —describes the “design forces” that affect the pattern and the potential trade-offs that must be considered when the pattern is implemented Related patterns —cross-references related design patterns
Design Patterns ,[object Object],[object Object],[object Object],[object Object]
Patterns ,[object Object],[object Object],[object Object]
Modular Design
Modularity: Trade-offs What is the "right" number of modules  for a specific software design? optimal number of modules cost of software number of modules module integration cost module development cost
Information Hiding module controlled interface "secret" •  algorithm •  data structure •  details of external interface •  resource allocation policy clients a specific design decision
Why Information Hiding? ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Stepwise Refinement open walk to door; reach for knob; open door; walk through; close door. repeat until door opens turn knob clockwise; if knob doesn't turn, then take key out; find correct key; insert in lock; endif pull/push door move out of way; end repeat
Functional Independence
Refactoring ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Design Classes ,[object Object],[object Object],[object Object],[object Object],[object Object]
Well-formed Design Class ,[object Object],[object Object],[object Object],[object Object]
The Design Model
Design Model Elements ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Interface Elements
Component Elements
Deployment Diagram
Design Principles ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],From Davis [DAV95]
Design and Quality ,[object Object],[object Object],[object Object]
Quality Guidelines ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]

More Related Content

What's hot

Chapter 08
Chapter 08Chapter 08
Chapter 08
guru3188
 

What's hot (20)

Lecture 12 requirements modeling - (system analysis)
Lecture 12   requirements modeling - (system analysis)Lecture 12   requirements modeling - (system analysis)
Lecture 12 requirements modeling - (system analysis)
 
Design notation
Design notationDesign notation
Design notation
 
Software Engineering
Software EngineeringSoftware Engineering
Software Engineering
 
Software Engineering Layered Technology Software Process Framework
Software Engineering  Layered Technology Software Process FrameworkSoftware Engineering  Layered Technology Software Process Framework
Software Engineering Layered Technology Software Process Framework
 
Software Engineering : Requirement Analysis & Specification
Software Engineering : Requirement Analysis & SpecificationSoftware Engineering : Requirement Analysis & Specification
Software Engineering : Requirement Analysis & Specification
 
Lecture 1 introduction to software engineering 1
Lecture 1   introduction to software engineering 1Lecture 1   introduction to software engineering 1
Lecture 1 introduction to software engineering 1
 
Software Engineering (Software Configuration Management)
Software Engineering (Software Configuration Management)Software Engineering (Software Configuration Management)
Software Engineering (Software Configuration Management)
 
Slides chapters 26-27
Slides chapters 26-27Slides chapters 26-27
Slides chapters 26-27
 
Chapter 08
Chapter 08Chapter 08
Chapter 08
 
Slides chapters 6-7
Slides chapters 6-7Slides chapters 6-7
Slides chapters 6-7
 
Design engineering
Design engineeringDesign engineering
Design engineering
 
Software Measurement and Metrics.pptx
Software Measurement and Metrics.pptxSoftware Measurement and Metrics.pptx
Software Measurement and Metrics.pptx
 
Component based software engineering
Component based software engineeringComponent based software engineering
Component based software engineering
 
Cyclomatic complexity
Cyclomatic complexityCyclomatic complexity
Cyclomatic complexity
 
Software development life cycle (sdlc) phases.pdf
Software development life cycle (sdlc) phases.pdfSoftware development life cycle (sdlc) phases.pdf
Software development life cycle (sdlc) phases.pdf
 
Introduction to software engineering
Introduction to software engineeringIntroduction to software engineering
Introduction to software engineering
 
Software requirements specification
Software requirements specificationSoftware requirements specification
Software requirements specification
 
Modules and modularization criteria
Modules and modularization criteriaModules and modularization criteria
Modules and modularization criteria
 
Defining the Problem - Goals and requirements
Defining the Problem - Goals and requirementsDefining the Problem - Goals and requirements
Defining the Problem - Goals and requirements
 
Analysis modeling
Analysis modelingAnalysis modeling
Analysis modeling
 

Viewers also liked

software engineering
software engineeringsoftware engineering
software engineering
ramyavarkala
 
Software testing ari force institute of tech.
Software testing ari force institute of tech.Software testing ari force institute of tech.
Software testing ari force institute of tech.
Sanjith Ml
 
07 software design
07   software design07   software design
07 software design
kebsterz
 
software Ch01
software Ch01software Ch01
software Ch01
liincn
 
Maintenance: the cost for software vendors and what it means to your organiza...
Maintenance: the cost for software vendors and what it means to your organiza...Maintenance: the cost for software vendors and what it means to your organiza...
Maintenance: the cost for software vendors and what it means to your organiza...
nick_hans
 
Chapter 13 solutions_to_exercises (engineering circuit analysis 7th)
Chapter 13 solutions_to_exercises (engineering circuit analysis 7th)Chapter 13 solutions_to_exercises (engineering circuit analysis 7th)
Chapter 13 solutions_to_exercises (engineering circuit analysis 7th)
Maamoun Hennache
 
Software Engineering - Ch12
Software Engineering - Ch12Software Engineering - Ch12
Software Engineering - Ch12
Siddharth Ayer
 

Viewers also liked (20)

Slides chapter 8
Slides chapter 8Slides chapter 8
Slides chapter 8
 
Slides chapter 11
Slides chapter 11Slides chapter 11
Slides chapter 11
 
Slides chapter 12
Slides chapter 12Slides chapter 12
Slides chapter 12
 
Slides chapter 5
Slides chapter 5Slides chapter 5
Slides chapter 5
 
Slides chapters 24-25
Slides chapters 24-25Slides chapters 24-25
Slides chapters 24-25
 
Slides chapters 13-14
Slides chapters 13-14Slides chapters 13-14
Slides chapters 13-14
 
software engineering
software engineeringsoftware engineering
software engineering
 
Flowers Album
Flowers AlbumFlowers Album
Flowers Album
 
Software testing ari force institute of tech.
Software testing ari force institute of tech.Software testing ari force institute of tech.
Software testing ari force institute of tech.
 
Planning-ness 2013: How to Turn Data into Design
Planning-ness 2013: How to Turn Data into DesignPlanning-ness 2013: How to Turn Data into Design
Planning-ness 2013: How to Turn Data into Design
 
Ch09
Ch09Ch09
Ch09
 
07 software design
07   software design07   software design
07 software design
 
Chapter06
Chapter06Chapter06
Chapter06
 
Chapter05
Chapter05Chapter05
Chapter05
 
software Ch01
software Ch01software Ch01
software Ch01
 
Security chapter6
Security chapter6Security chapter6
Security chapter6
 
SYSTEM MODELLING
SYSTEM MODELLINGSYSTEM MODELLING
SYSTEM MODELLING
 
Maintenance: the cost for software vendors and what it means to your organiza...
Maintenance: the cost for software vendors and what it means to your organiza...Maintenance: the cost for software vendors and what it means to your organiza...
Maintenance: the cost for software vendors and what it means to your organiza...
 
Chapter 13 solutions_to_exercises (engineering circuit analysis 7th)
Chapter 13 solutions_to_exercises (engineering circuit analysis 7th)Chapter 13 solutions_to_exercises (engineering circuit analysis 7th)
Chapter 13 solutions_to_exercises (engineering circuit analysis 7th)
 
Software Engineering - Ch12
Software Engineering - Ch12Software Engineering - Ch12
Software Engineering - Ch12
 

Similar to Slides chapter 9

Pressman_ch_9_design_engineering.ppt
Pressman_ch_9_design_engineering.pptPressman_ch_9_design_engineering.ppt
Pressman_ch_9_design_engineering.ppt
MotherTheresa2
 

Similar to Slides chapter 9 (20)

Design engineering
Design engineeringDesign engineering
Design engineering
 
Ch09
Ch09Ch09
Ch09
 
Design Engineering is a topic of software engineering of second year fourth s...
Design Engineering is a topic of software engineering of second year fourth s...Design Engineering is a topic of software engineering of second year fourth s...
Design Engineering is a topic of software engineering of second year fourth s...
 
Software design
Software designSoftware design
Software design
 
DESIGN CONCEPTS
DESIGN CONCEPTSDESIGN CONCEPTS
DESIGN CONCEPTS
 
Unit 5 design engineering ssad
Unit 5 design engineering ssadUnit 5 design engineering ssad
Unit 5 design engineering ssad
 
Software design
Software designSoftware design
Software design
 
06 fse design
06 fse design06 fse design
06 fse design
 
Design Concepts in Software Engineering-1.pptx
Design Concepts in Software Engineering-1.pptxDesign Concepts in Software Engineering-1.pptx
Design Concepts in Software Engineering-1.pptx
 
Unit_4_Software_Design.pptx
Unit_4_Software_Design.pptxUnit_4_Software_Design.pptx
Unit_4_Software_Design.pptx
 
Chapter 08
Chapter 08Chapter 08
Chapter 08
 
CS8494 SOFTWARE ENGINEERING Unit-3
CS8494 SOFTWARE ENGINEERING Unit-3CS8494 SOFTWARE ENGINEERING Unit-3
CS8494 SOFTWARE ENGINEERING Unit-3
 
CHAPTER12.ppt
CHAPTER12.pptCHAPTER12.ppt
CHAPTER12.ppt
 
Oose unit 4 ppt
Oose unit 4 pptOose unit 4 ppt
Oose unit 4 ppt
 
OOSE Unit 4 PPT.ppt
OOSE Unit 4 PPT.pptOOSE Unit 4 PPT.ppt
OOSE Unit 4 PPT.ppt
 
Software Patterns
Software PatternsSoftware Patterns
Software Patterns
 
Pressman_ch_9_design_engineering.ppt
Pressman_ch_9_design_engineering.pptPressman_ch_9_design_engineering.ppt
Pressman_ch_9_design_engineering.ppt
 
3 analysis and design overview
3 analysis and design overview3 analysis and design overview
3 analysis and design overview
 
rEFUP.pdf
rEFUP.pdfrEFUP.pdf
rEFUP.pdf
 
Design engineering
Design engineeringDesign engineering
Design engineering
 

More from Priyanka Shetty (9)

Slides chapters 21-23
Slides chapters 21-23Slides chapters 21-23
Slides chapters 21-23
 
Slides chapter 19
Slides chapter 19Slides chapter 19
Slides chapter 19
 
Slides chapter 17
Slides chapter 17Slides chapter 17
Slides chapter 17
 
Slides chapter 16
Slides chapter 16Slides chapter 16
Slides chapter 16
 
Slides chapter 15
Slides chapter 15Slides chapter 15
Slides chapter 15
 
Slides chapter 3
Slides chapter 3Slides chapter 3
Slides chapter 3
 
Slides chapter 1
Slides chapter 1Slides chapter 1
Slides chapter 1
 
Slides chapters 28-32
Slides chapters 28-32Slides chapters 28-32
Slides chapters 28-32
 
Personal Hygiene
Personal HygienePersonal Hygiene
Personal Hygiene
 

Recently uploaded

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 

Recently uploaded (20)

A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 

Slides chapter 9

  • 1. Chapter 9 Design Engineering Software Engineering: A Practitioner’s Approach, 6th edition by Roger S. Pressman
  • 2. Analysis  Design
  • 3.
  • 4.
  • 5. Data Abstraction door implemented as a data structure manufacturer model number type swing direction inserts lights type number weight opening mechanism
  • 6. Procedural Abstraction open implemented with a "knowledge" of the object that is associated with enter details of enter algorithm
  • 7. Architecture “ The overall structure of the software and the ways in which that structure provides conceptual integrity for a system.” [SHA95a] Structural properties. This aspect of the architectural design representation defines the components of a system (e.g., modules, objects, filters) and the manner in which those components are packaged and interact with one another. For example, objects are packaged to encapsulate both data and the processing that manipulates the data and interact via the invocation of methods Extra-functional properties. The architectural design description should address how the design architecture achieves requirements for performance, capacity, reliability, security, adaptability, and other system characteristics. Families of related systems. The architectural design should draw upon repeatable patterns that are commonly encountered in the design of families of similar systems. In essence, the design should have the ability to reuse architectural building blocks.
  • 8.
  • 9. Patterns Design Pattern Template Pattern name —describes the essence of the pattern in a short but expressive name Intent —describes the pattern and what it does Also-known-as —lists any synonyms for the pattern Motivation —provides an example of the problem Applicability —notes specific design situations in which the pattern is applicable Structure —describes the classes that are required to implement the pattern Participants —describes the responsibilities of the classes that are required to implement the pattern Collaborations —describes how the participants collaborate to carry out their responsibilities Consequences —describes the “design forces” that affect the pattern and the potential trade-offs that must be considered when the pattern is implemented Related patterns —cross-references related design patterns
  • 10.
  • 11.
  • 13. Modularity: Trade-offs What is the "right" number of modules for a specific software design? optimal number of modules cost of software number of modules module integration cost module development cost
  • 14. Information Hiding module controlled interface "secret" • algorithm • data structure • details of external interface • resource allocation policy clients a specific design decision
  • 15.
  • 16. Stepwise Refinement open walk to door; reach for knob; open door; walk through; close door. repeat until door opens turn knob clockwise; if knob doesn't turn, then take key out; find correct key; insert in lock; endif pull/push door move out of way; end repeat
  • 18.
  • 19.
  • 20.
  • 22.
  • 26.
  • 27.
  • 28.