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

Phased life cycle model
Phased life cycle modelPhased life cycle model
Phased life cycle modelStephennancy
 
Chapter 22- Software Configuration Management.ppt
Chapter 22- Software Configuration Management.pptChapter 22- Software Configuration Management.ppt
Chapter 22- Software Configuration Management.pptTanzinAhammad
 
Software Engineering - Ch2
Software Engineering - Ch2Software Engineering - Ch2
Software Engineering - Ch2Siddharth Ayer
 
Design Concept software engineering
Design Concept software engineeringDesign Concept software engineering
Design Concept software engineeringDarshit Metaliya
 
Software Testing Strategies
Software Testing StrategiesSoftware Testing Strategies
Software Testing StrategiesNayyabMirTahir
 
Software Engineering - chp3- design
Software Engineering - chp3- designSoftware Engineering - chp3- design
Software Engineering - chp3- designLilia Sfaxi
 
Formal Specification in Software Engineering SE9
Formal Specification in Software Engineering SE9Formal Specification in Software Engineering SE9
Formal Specification in Software Engineering SE9koolkampus
 
Chapter 08
Chapter 08Chapter 08
Chapter 08guru3188
 
Ch5- Software Engineering 9
Ch5- Software Engineering 9Ch5- Software Engineering 9
Ch5- Software Engineering 9Ian Sommerville
 
1.1 The nature of software.ppt
1.1 The nature of software.ppt1.1 The nature of software.ppt
1.1 The nature of software.pptJAYAPRIYAR7
 
source code metrics and other maintenance tools and techniques
source code metrics and other maintenance tools and techniquessource code metrics and other maintenance tools and techniques
source code metrics and other maintenance tools and techniquesSiva Priya
 
Software Engineering Process Models
Software Engineering Process Models Software Engineering Process Models
Software Engineering Process Models Satya P. Joshi
 
Ch8-Software Engineering 9
Ch8-Software Engineering 9Ch8-Software Engineering 9
Ch8-Software Engineering 9Ian Sommerville
 
Software Quality Attributes
Software Quality AttributesSoftware Quality Attributes
Software Quality AttributesHayim Makabee
 
Fundamental design concepts
Fundamental design conceptsFundamental design concepts
Fundamental design conceptssrijavel
 

What's hot (20)

Slides chapters 6-7
Slides chapters 6-7Slides chapters 6-7
Slides chapters 6-7
 
Phased life cycle model
Phased life cycle modelPhased life cycle model
Phased life cycle model
 
Software testing ppt
Software testing pptSoftware testing ppt
Software testing ppt
 
Chapter 22- Software Configuration Management.ppt
Chapter 22- Software Configuration Management.pptChapter 22- Software Configuration Management.ppt
Chapter 22- Software Configuration Management.ppt
 
Software process
Software processSoftware process
Software process
 
Software Engineering - Ch2
Software Engineering - Ch2Software Engineering - Ch2
Software Engineering - Ch2
 
Design Concept software engineering
Design Concept software engineeringDesign Concept software engineering
Design Concept software engineering
 
Software Testing Strategies
Software Testing StrategiesSoftware Testing Strategies
Software Testing Strategies
 
Software Engineering - chp3- design
Software Engineering - chp3- designSoftware Engineering - chp3- design
Software Engineering - chp3- design
 
Formal Specification in Software Engineering SE9
Formal Specification in Software Engineering SE9Formal Specification in Software Engineering SE9
Formal Specification in Software Engineering SE9
 
Chapter 08
Chapter 08Chapter 08
Chapter 08
 
Ch5- Software Engineering 9
Ch5- Software Engineering 9Ch5- Software Engineering 9
Ch5- Software Engineering 9
 
1.1 The nature of software.ppt
1.1 The nature of software.ppt1.1 The nature of software.ppt
1.1 The nature of software.ppt
 
source code metrics and other maintenance tools and techniques
source code metrics and other maintenance tools and techniquessource code metrics and other maintenance tools and techniques
source code metrics and other maintenance tools and techniques
 
Software Engineering Process Models
Software Engineering Process Models Software Engineering Process Models
Software Engineering Process Models
 
Ch7
Ch7Ch7
Ch7
 
Ch8-Software Engineering 9
Ch8-Software Engineering 9Ch8-Software Engineering 9
Ch8-Software Engineering 9
 
Ch5 system modeling
Ch5 system modelingCh5 system modeling
Ch5 system modeling
 
Software Quality Attributes
Software Quality AttributesSoftware Quality Attributes
Software Quality Attributes
 
Fundamental design concepts
Fundamental design conceptsFundamental design concepts
Fundamental design concepts
 

Viewers also liked

software engineering
software engineeringsoftware engineering
software engineeringramyavarkala
 
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
 
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 DesignErik Brown
 
07 software design
07   software design07   software design
07 software designkebsterz
 
software Ch01
software Ch01software Ch01
software Ch01liincn
 
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 - Ch12Siddharth 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

Similar to Slides chapter 9 (20)

Design engineering
Design engineeringDesign engineering
Design engineering
 
Design engineering
Design engineeringDesign engineering
Design engineering
 
Ch09
Ch09Ch09
Ch09
 
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

More from Priyanka Shetty (11)

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 2
Slides chapter 2Slides chapter 2
Slides chapter 2
 
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
 
Slides chapters 26-27
Slides chapters 26-27Slides chapters 26-27
Slides chapters 26-27
 
Personal Hygiene
Personal HygienePersonal Hygiene
Personal Hygiene
 

Recently uploaded

Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
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 organizationRadu Cotescu
 

Recently uploaded (20)

Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
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
 

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.