SlideShare una empresa de Scribd logo
1 de 42
Software Engineering: A Practitioner’s Approach, 6/e Chapter 10 Architectural Design copyright © 1996, 2001, 2005 R.S. Pressman & Associates, Inc. For University Use Only May be reproduced ONLY for student use at the university level when used in conjunction with  Software Engineering: A Practitioner's Approach. Any other reproduction or use is expressly prohibited.
Why Architecture? The architecture is not the operational software. Rather, it is a representation that enables a software engineer to:  (1) analyze the effectiveness of the design in meeting its stated requirements,  (2) consider architectural alternatives at a stage when making design changes is still relatively easy, and  (3) reduce the risks associated with the construction of the software.
Why is Architecture Important? ,[object Object],[object Object],[object Object]
Data Design ,[object Object],[object Object],[object Object],[object Object],[object Object]
Data Design ,[object Object],[object Object],[object Object],[object Object],[object Object]
Data Design—Component Level 1.  The systematic analysis principles applied to function and behavior should also be applied to data.  2.  All data structures and the operations to be performed on each should be identified.  3.  A data dictionary should be established and used to define both data and program design.  4.  Low level data design decisions should be deferred until late in the design process.  5.  The representation of data structure should be known only to those modules that must make direct use of the data contained within the structure.  6.  A library of useful data structures and the operations that may be applied to them should be developed.  7.  A software design and programming language should support the specification and realization of abstract data types.
Architectural Styles ,[object Object],[object Object],[object Object],[object Object],[object Object],Each style describes a system category that encompasses: (1) a  set of components  (e.g., a database, computational modules) that perform a function required by a system, (2) a  set of connectors  that enable “communication, coordination and cooperation” among components, (3)  constraints  that define how components can be integrated to form the system, and (4)  semantic models  that enable a designer to understand the overall properties of a system by analyzing the known properties of its constituent parts.
Data-Centered Architecture
Data Flow Architecture
Call and Return Architecture
Layered Architecture
Architectural Patterns ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Architectural Design ,[object Object],[object Object],[object Object],[object Object],[object Object]
Architectural Context
Archetypes
Component Structure
Refined Component Structure
Analyzing Architectural Design 1.  Collect scenarios.  2.  Elicit requirements, constraints, and environment description.  3.  Describe the architectural styles/patterns that have been chosen to address the scenarios and requirements: •  module view •  process view •  data flow view 4.  Evaluate quality attributes by considered each attribute in isolation.  5.  Identify the sensitivity of quality attributes to various architectural attributes for a specific architectural style.  6.  Critique candidate architectures (developed in step 3) using the sensitivity analysis conducted in step 5.
An Architectural Design Method "four bedrooms, three baths, lots of glass ..." customer requirements architectural design
Deriving Program Architecture Program Architecture
Partitioning the Architecture ,[object Object]
Horizontal Partitioning ,[object Object],[object Object],function 1 function 3 function 2
Vertical Partitioning: Factoring ,[object Object],[object Object],workers decision-makers
Why Partitioned Architecture? ,[object Object],[object Object],[object Object],[object Object]
Structured Design ,[object Object],[object Object],[object Object],[object Object],[object Object]
Flow Characteristics Transform flow Transaction flow
General Mapping Approach isolate incoming and outgoing flow  boundaries; for transaction flows, isolate  the transaction center working from the boundary outward, map DFD transforms into corresponding modules add control modules as required refine the resultant program structure using effective modularity concepts
Transform Mapping
Factoring
First Level Factoring main  program controller input controller processing controller output controller
Second Level Mapping
Transaction Flow T incoming flow action path
Transaction Example operator commands process operator  commands fixture setting report  robot control fixture servos display screen robot control software in reality, other  commands would also be shown assembly record
Refining the Analysis Model write an English language processing narrative  for the level 01 flow model apply noun/verb parse to isolate processes, data  items, store and entities develop level 02 and 03 flow models create corresponding data dictionary entries refine flow models as appropriate ... now, we're ready to begin design! 1. 2. 3. 4. 5.
Deriving Level 1 Processing narrative for " process operator commands" Process operator command software reads operator commands from  the cell operator. An error message is displayed for invalid commands.  The command type is determined for valid commands and appropriate  action is taken. When fixture commands are encountered, fixture  status is analyzed and a fixture setting is output to the fixture servos.  When a report is selected, the assembly record file is read and  a  report is generated and displayed on the operator display screen.  When robot control switches are selected, control values are sent to  the robot control system.  Processing narrative for " process operator commands" Process operator command software  reads operator  commands from  the cell  operator . An  error message is  displayed for  invalid commands .  The  command type is  determined for  valid commands and appropriate  action is  taken . When  fixture commands are  encountered ,  fixture  status is  analyzed and a  fixture setting is  output to the  fixture servos .  When a  report is  selected , the  assembly record file is  read and  a  report is  generated and  displayed on the operator  display screen .  When  robot control switches are  selected ,  control value s  are  sent to  the  robot control system.  noun-verb parse
Level 1 Data Flow Diagram
Level 2 Data Flow Diagram
Transaction Mapping Principles isolate the incoming flow path define each of the action paths by looking for  the "spokes of the wheel" assess the flow on each action path define the dispatch and control structure map each action path flow individually
Transaction Mapping
Isolate Flow Paths
Map the Flow Model
Refining the Structure Chart

Más contenido relacionado

La actualidad más candente

Software Prototyping in Software Engineering SE8
Software Prototyping in Software Engineering SE8Software Prototyping in Software Engineering SE8
Software Prototyping in Software Engineering SE8koolkampus
 
Software Process in Software Engineering SE3
Software Process in Software Engineering SE3Software Process in Software Engineering SE3
Software Process in Software Engineering SE3koolkampus
 
Quality attributes in software architecture
Quality attributes in software architectureQuality attributes in software architecture
Quality attributes in software architectureHimanshu
 
Chapter 08
Chapter 08Chapter 08
Chapter 08guru3188
 
Lecture 12 requirements modeling - (system analysis)
Lecture 12   requirements modeling - (system analysis)Lecture 12   requirements modeling - (system analysis)
Lecture 12 requirements modeling - (system analysis)IIUI
 
Building systems from off the shelf components
Building systems from off the shelf componentsBuilding systems from off the shelf components
Building systems from off the shelf componentsHimanshu
 
Ch 14 s.e use case diagrams
Ch 14 s.e use case diagramsCh 14 s.e use case diagrams
Ch 14 s.e use case diagramsBadar Waseer
 
Unit3 Software engineering UPTU
Unit3 Software engineering UPTUUnit3 Software engineering UPTU
Unit3 Software engineering UPTUMohammad Faizan
 
Lecture 5 software process model (3)
Lecture 5   software process model (3)Lecture 5   software process model (3)
Lecture 5 software process model (3)IIUI
 
15 object orienteddesign
15 object orienteddesign15 object orienteddesign
15 object orienteddesignrandhirlpu
 
Quality Attribute: Testability
Quality Attribute: TestabilityQuality Attribute: Testability
Quality Attribute: TestabilityPranay Singh
 
Reusibility vs Extensibility in OOAD
Reusibility vs Extensibility in OOADReusibility vs Extensibility in OOAD
Reusibility vs Extensibility in OOADShivani Kapoor
 
PRESCRIPTIVE PROCESS MODEL(SOFTWARE ENGINEERING)
PRESCRIPTIVE PROCESS MODEL(SOFTWARE ENGINEERING)PRESCRIPTIVE PROCESS MODEL(SOFTWARE ENGINEERING)
PRESCRIPTIVE PROCESS MODEL(SOFTWARE ENGINEERING)IrtazaAfzal3
 
Ch 02 s.e software process models 1
Ch 02 s.e software process models   1Ch 02 s.e software process models   1
Ch 02 s.e software process models 1Badar Waseer
 
Aspect Oriented Software Development
Aspect Oriented Software DevelopmentAspect Oriented Software Development
Aspect Oriented Software DevelopmentJignesh Patel
 
Design Issue(Reuse) in Software Engineering SE14
Design Issue(Reuse) in Software Engineering SE14Design Issue(Reuse) in Software Engineering SE14
Design Issue(Reuse) in Software Engineering SE14koolkampus
 

La actualidad más candente (20)

Slides chapter 10
Slides chapter 10Slides chapter 10
Slides chapter 10
 
Slides chapters 6-7
Slides chapters 6-7Slides chapters 6-7
Slides chapters 6-7
 
Slides chapter 3
Slides chapter 3Slides chapter 3
Slides chapter 3
 
Software Prototyping in Software Engineering SE8
Software Prototyping in Software Engineering SE8Software Prototyping in Software Engineering SE8
Software Prototyping in Software Engineering SE8
 
Software Process in Software Engineering SE3
Software Process in Software Engineering SE3Software Process in Software Engineering SE3
Software Process in Software Engineering SE3
 
Quality attributes in software architecture
Quality attributes in software architectureQuality attributes in software architecture
Quality attributes in software architecture
 
Chapter 08
Chapter 08Chapter 08
Chapter 08
 
Lecture 12 requirements modeling - (system analysis)
Lecture 12   requirements modeling - (system analysis)Lecture 12   requirements modeling - (system analysis)
Lecture 12 requirements modeling - (system analysis)
 
Building systems from off the shelf components
Building systems from off the shelf componentsBuilding systems from off the shelf components
Building systems from off the shelf components
 
Ch 14 s.e use case diagrams
Ch 14 s.e use case diagramsCh 14 s.e use case diagrams
Ch 14 s.e use case diagrams
 
Unit3 Software engineering UPTU
Unit3 Software engineering UPTUUnit3 Software engineering UPTU
Unit3 Software engineering UPTU
 
Lecture 5 software process model (3)
Lecture 5   software process model (3)Lecture 5   software process model (3)
Lecture 5 software process model (3)
 
15 object orienteddesign
15 object orienteddesign15 object orienteddesign
15 object orienteddesign
 
Quality Attribute: Testability
Quality Attribute: TestabilityQuality Attribute: Testability
Quality Attribute: Testability
 
Reusibility vs Extensibility in OOAD
Reusibility vs Extensibility in OOADReusibility vs Extensibility in OOAD
Reusibility vs Extensibility in OOAD
 
1 introduction of OOAD
1 introduction of OOAD1 introduction of OOAD
1 introduction of OOAD
 
PRESCRIPTIVE PROCESS MODEL(SOFTWARE ENGINEERING)
PRESCRIPTIVE PROCESS MODEL(SOFTWARE ENGINEERING)PRESCRIPTIVE PROCESS MODEL(SOFTWARE ENGINEERING)
PRESCRIPTIVE PROCESS MODEL(SOFTWARE ENGINEERING)
 
Ch 02 s.e software process models 1
Ch 02 s.e software process models   1Ch 02 s.e software process models   1
Ch 02 s.e software process models 1
 
Aspect Oriented Software Development
Aspect Oriented Software DevelopmentAspect Oriented Software Development
Aspect Oriented Software Development
 
Design Issue(Reuse) in Software Engineering SE14
Design Issue(Reuse) in Software Engineering SE14Design Issue(Reuse) in Software Engineering SE14
Design Issue(Reuse) in Software Engineering SE14
 

Destacado

WMIC Final Paper
WMIC Final PaperWMIC Final Paper
WMIC Final PaperSheila Keen
 
English Process Writing Final
English Process Writing FinalEnglish Process Writing Final
English Process Writing FinalCarol Tang
 
Teacher, I blew up the lab. I am glad it was only a game. [PDF
Teacher, I blew up the lab. I am glad it was only a game. [PDFTeacher, I blew up the lab. I am glad it was only a game. [PDF
Teacher, I blew up the lab. I am glad it was only a game. [PDFRoger Tavares
 
白雲心語 白雲禪師(4)
白雲心語 白雲禪師(4)白雲心語 白雲禪師(4)
白雲心語 白雲禪師(4)foonkok
 
How to Upload or Save Files to Dropbox (Windows Desktop) for Beginners
How to Upload or Save Files to Dropbox (Windows Desktop) for BeginnersHow to Upload or Save Files to Dropbox (Windows Desktop) for Beginners
How to Upload or Save Files to Dropbox (Windows Desktop) for BeginnersYuhanne Te - Natividad
 
Mod 3 moviment ode-particulasnumfluido-parte3
Mod 3 moviment ode-particulasnumfluido-parte3Mod 3 moviment ode-particulasnumfluido-parte3
Mod 3 moviment ode-particulasnumfluido-parte3Fersay
 
1 destilaçâo-tecnologia quimica
1 destilaçâo-tecnologia quimica1 destilaçâo-tecnologia quimica
1 destilaçâo-tecnologia quimicaFersay
 
10 4 презентациядетского постельного белья
10 4 презентациядетского постельного белья10 4 презентациядетского постельного белья
10 4 презентациядетского постельного бельяkolesikmixer
 
1 8 презентация ДИСАВИ
1 8 презентация ДИСАВИ1 8 презентация ДИСАВИ
1 8 презентация ДИСАВИkolesikmixer
 
7 презентация антилия
7 презентация антилия7 презентация антилия
7 презентация антилияkolesikmixer
 

Destacado (15)

01 e
01 e01 e
01 e
 
Foro
ForoForo
Foro
 
WMIC Final Paper
WMIC Final PaperWMIC Final Paper
WMIC Final Paper
 
English Process Writing Final
English Process Writing FinalEnglish Process Writing Final
English Process Writing Final
 
Teacher, I blew up the lab. I am glad it was only a game. [PDF
Teacher, I blew up the lab. I am glad it was only a game. [PDFTeacher, I blew up the lab. I am glad it was only a game. [PDF
Teacher, I blew up the lab. I am glad it was only a game. [PDF
 
Energy
EnergyEnergy
Energy
 
白雲心語 白雲禪師(4)
白雲心語 白雲禪師(4)白雲心語 白雲禪師(4)
白雲心語 白雲禪師(4)
 
Bitacoras
Bitacoras Bitacoras
Bitacoras
 
How to Upload or Save Files to Dropbox (Windows Desktop) for Beginners
How to Upload or Save Files to Dropbox (Windows Desktop) for BeginnersHow to Upload or Save Files to Dropbox (Windows Desktop) for Beginners
How to Upload or Save Files to Dropbox (Windows Desktop) for Beginners
 
Mod 3 moviment ode-particulasnumfluido-parte3
Mod 3 moviment ode-particulasnumfluido-parte3Mod 3 moviment ode-particulasnumfluido-parte3
Mod 3 moviment ode-particulasnumfluido-parte3
 
1 destilaçâo-tecnologia quimica
1 destilaçâo-tecnologia quimica1 destilaçâo-tecnologia quimica
1 destilaçâo-tecnologia quimica
 
BiomoléC
BiomoléCBiomoléC
BiomoléC
 
10 4 презентациядетского постельного белья
10 4 презентациядетского постельного белья10 4 презентациядетского постельного белья
10 4 презентациядетского постельного белья
 
1 8 презентация ДИСАВИ
1 8 презентация ДИСАВИ1 8 презентация ДИСАВИ
1 8 презентация ДИСАВИ
 
7 презентация антилия
7 презентация антилия7 презентация антилия
7 презентация антилия
 

Similar a Ch10

Design Model & User Interface Design in Software Engineering
Design Model & User Interface Design in Software EngineeringDesign Model & User Interface Design in Software Engineering
Design Model & User Interface Design in Software EngineeringMeghaj Mallick
 
Unit_4_Software_Design.pptx
Unit_4_Software_Design.pptxUnit_4_Software_Design.pptx
Unit_4_Software_Design.pptxtaxegap762
 
Chapter 3_Software Design sunorganisedASE_BW_finalised.ppt
Chapter 3_Software Design sunorganisedASE_BW_finalised.pptChapter 3_Software Design sunorganisedASE_BW_finalised.ppt
Chapter 3_Software Design sunorganisedASE_BW_finalised.pptBule Hora University
 
Software engineering
Software engineeringSoftware engineering
Software engineeringStella526835
 
Software enginnering
Software enginneringSoftware enginnering
Software enginneringIshucs
 
Slides 6 design of sw arch using add
Slides 6 design of sw arch using addSlides 6 design of sw arch using add
Slides 6 design of sw arch using addJavid iqbal hashmi
 
Object oriented sad-5 part i
Object oriented sad-5 part iObject oriented sad-5 part i
Object oriented sad-5 part iBisrat Girma
 
Pattern oriented architecture for web based architecture
Pattern oriented architecture for web based architecturePattern oriented architecture for web based architecture
Pattern oriented architecture for web based architectureshuchi tripathi
 
Constructing Enterprise Applications
Constructing Enterprise  ApplicationsConstructing Enterprise  Applications
Constructing Enterprise ApplicationsGem WeBlog
 
Visualizing Software Architecture Effectively in Service Description
Visualizing Software Architecture Effectively in Service DescriptionVisualizing Software Architecture Effectively in Service Description
Visualizing Software Architecture Effectively in Service DescriptionSanjoy Kumar Roy
 

Similar a Ch10 (20)

Design Model & User Interface Design in Software Engineering
Design Model & User Interface Design in Software EngineeringDesign Model & User Interface Design in Software Engineering
Design Model & User Interface Design in Software Engineering
 
Unit_4_Software_Design.pptx
Unit_4_Software_Design.pptxUnit_4_Software_Design.pptx
Unit_4_Software_Design.pptx
 
architectural.ppt
architectural.pptarchitectural.ppt
architectural.ppt
 
Software architecture
Software architectureSoftware architecture
Software architecture
 
DESIGN CONCEPTS
DESIGN CONCEPTSDESIGN CONCEPTS
DESIGN CONCEPTS
 
Design engineering
Design engineeringDesign engineering
Design engineering
 
Design engineering
Design engineeringDesign engineering
Design engineering
 
SA_UNIT_1.pptx
SA_UNIT_1.pptxSA_UNIT_1.pptx
SA_UNIT_1.pptx
 
Unit-3.doc
Unit-3.docUnit-3.doc
Unit-3.doc
 
Chapter 3_Software Design sunorganisedASE_BW_finalised.ppt
Chapter 3_Software Design sunorganisedASE_BW_finalised.pptChapter 3_Software Design sunorganisedASE_BW_finalised.ppt
Chapter 3_Software Design sunorganisedASE_BW_finalised.ppt
 
Architectural design of software
Architectural  design of softwareArchitectural  design of software
Architectural design of software
 
Software engineering
Software engineeringSoftware engineering
Software engineering
 
software Design.ppt
software Design.pptsoftware Design.ppt
software Design.ppt
 
Software enginnering
Software enginneringSoftware enginnering
Software enginnering
 
Slides 6 design of sw arch using add
Slides 6 design of sw arch using addSlides 6 design of sw arch using add
Slides 6 design of sw arch using add
 
06 fse design
06 fse design06 fse design
06 fse design
 
Object oriented sad-5 part i
Object oriented sad-5 part iObject oriented sad-5 part i
Object oriented sad-5 part i
 
Pattern oriented architecture for web based architecture
Pattern oriented architecture for web based architecturePattern oriented architecture for web based architecture
Pattern oriented architecture for web based architecture
 
Constructing Enterprise Applications
Constructing Enterprise  ApplicationsConstructing Enterprise  Applications
Constructing Enterprise Applications
 
Visualizing Software Architecture Effectively in Service Description
Visualizing Software Architecture Effectively in Service DescriptionVisualizing Software Architecture Effectively in Service Description
Visualizing Software Architecture Effectively in Service Description
 

Último

Cyber Security Training in Office Environment
Cyber Security Training in Office EnvironmentCyber Security Training in Office Environment
Cyber Security Training in Office Environmentelijahj01012
 
Entrepreneurship lessons in Philippines
Entrepreneurship lessons in  PhilippinesEntrepreneurship lessons in  Philippines
Entrepreneurship lessons in PhilippinesDavidSamuel525586
 
Ten Organizational Design Models to align structure and operations to busines...
Ten Organizational Design Models to align structure and operations to busines...Ten Organizational Design Models to align structure and operations to busines...
Ten Organizational Design Models to align structure and operations to busines...Seta Wicaksana
 
Innovation Conference 5th March 2024.pdf
Innovation Conference 5th March 2024.pdfInnovation Conference 5th March 2024.pdf
Innovation Conference 5th March 2024.pdfrichard876048
 
Darshan Hiranandani [News About Next CEO].pdf
Darshan Hiranandani [News About Next CEO].pdfDarshan Hiranandani [News About Next CEO].pdf
Darshan Hiranandani [News About Next CEO].pdfShashank Mehta
 
TriStar Gold Corporate Presentation - April 2024
TriStar Gold Corporate Presentation - April 2024TriStar Gold Corporate Presentation - April 2024
TriStar Gold Corporate Presentation - April 2024Adnet Communications
 
(Best) ENJOY Call Girls in Faridabad Ex | 8377087607
(Best) ENJOY Call Girls in Faridabad Ex | 8377087607(Best) ENJOY Call Girls in Faridabad Ex | 8377087607
(Best) ENJOY Call Girls in Faridabad Ex | 8377087607dollysharma2066
 
Unlocking the Future: Explore Web 3.0 Workshop to Start Earning Today!
Unlocking the Future: Explore Web 3.0 Workshop to Start Earning Today!Unlocking the Future: Explore Web 3.0 Workshop to Start Earning Today!
Unlocking the Future: Explore Web 3.0 Workshop to Start Earning Today!Doge Mining Website
 
1911 Gold Corporate Presentation Apr 2024.pdf
1911 Gold Corporate Presentation Apr 2024.pdf1911 Gold Corporate Presentation Apr 2024.pdf
1911 Gold Corporate Presentation Apr 2024.pdfShaun Heinrichs
 
8447779800, Low rate Call girls in Kotla Mubarakpur Delhi NCR
8447779800, Low rate Call girls in Kotla Mubarakpur Delhi NCR8447779800, Low rate Call girls in Kotla Mubarakpur Delhi NCR
8447779800, Low rate Call girls in Kotla Mubarakpur Delhi NCRashishs7044
 
8447779800, Low rate Call girls in New Ashok Nagar Delhi NCR
8447779800, Low rate Call girls in New Ashok Nagar Delhi NCR8447779800, Low rate Call girls in New Ashok Nagar Delhi NCR
8447779800, Low rate Call girls in New Ashok Nagar Delhi NCRashishs7044
 
Call Us 📲8800102216📞 Call Girls In DLF City Gurgaon
Call Us 📲8800102216📞 Call Girls In DLF City GurgaonCall Us 📲8800102216📞 Call Girls In DLF City Gurgaon
Call Us 📲8800102216📞 Call Girls In DLF City Gurgaoncallgirls2057
 
MAHA Global and IPR: Do Actions Speak Louder Than Words?
MAHA Global and IPR: Do Actions Speak Louder Than Words?MAHA Global and IPR: Do Actions Speak Louder Than Words?
MAHA Global and IPR: Do Actions Speak Louder Than Words?Olivia Kresic
 
APRIL2024_UKRAINE_xml_0000000000000 .pdf
APRIL2024_UKRAINE_xml_0000000000000 .pdfAPRIL2024_UKRAINE_xml_0000000000000 .pdf
APRIL2024_UKRAINE_xml_0000000000000 .pdfRbc Rbcua
 
Call US-88OO1O2216 Call Girls In Mahipalpur Female Escort Service
Call US-88OO1O2216 Call Girls In Mahipalpur Female Escort ServiceCall US-88OO1O2216 Call Girls In Mahipalpur Female Escort Service
Call US-88OO1O2216 Call Girls In Mahipalpur Female Escort Servicecallgirls2057
 
Investment in The Coconut Industry by Nancy Cheruiyot
Investment in The Coconut Industry by Nancy CheruiyotInvestment in The Coconut Industry by Nancy Cheruiyot
Investment in The Coconut Industry by Nancy Cheruiyotictsugar
 
Church Building Grants To Assist With New Construction, Additions, And Restor...
Church Building Grants To Assist With New Construction, Additions, And Restor...Church Building Grants To Assist With New Construction, Additions, And Restor...
Church Building Grants To Assist With New Construction, Additions, And Restor...Americas Got Grants
 
Organizational Structure Running A Successful Business
Organizational Structure Running A Successful BusinessOrganizational Structure Running A Successful Business
Organizational Structure Running A Successful BusinessSeta Wicaksana
 

Último (20)

Cyber Security Training in Office Environment
Cyber Security Training in Office EnvironmentCyber Security Training in Office Environment
Cyber Security Training in Office Environment
 
Entrepreneurship lessons in Philippines
Entrepreneurship lessons in  PhilippinesEntrepreneurship lessons in  Philippines
Entrepreneurship lessons in Philippines
 
Ten Organizational Design Models to align structure and operations to busines...
Ten Organizational Design Models to align structure and operations to busines...Ten Organizational Design Models to align structure and operations to busines...
Ten Organizational Design Models to align structure and operations to busines...
 
Innovation Conference 5th March 2024.pdf
Innovation Conference 5th March 2024.pdfInnovation Conference 5th March 2024.pdf
Innovation Conference 5th March 2024.pdf
 
Darshan Hiranandani [News About Next CEO].pdf
Darshan Hiranandani [News About Next CEO].pdfDarshan Hiranandani [News About Next CEO].pdf
Darshan Hiranandani [News About Next CEO].pdf
 
TriStar Gold Corporate Presentation - April 2024
TriStar Gold Corporate Presentation - April 2024TriStar Gold Corporate Presentation - April 2024
TriStar Gold Corporate Presentation - April 2024
 
(Best) ENJOY Call Girls in Faridabad Ex | 8377087607
(Best) ENJOY Call Girls in Faridabad Ex | 8377087607(Best) ENJOY Call Girls in Faridabad Ex | 8377087607
(Best) ENJOY Call Girls in Faridabad Ex | 8377087607
 
Unlocking the Future: Explore Web 3.0 Workshop to Start Earning Today!
Unlocking the Future: Explore Web 3.0 Workshop to Start Earning Today!Unlocking the Future: Explore Web 3.0 Workshop to Start Earning Today!
Unlocking the Future: Explore Web 3.0 Workshop to Start Earning Today!
 
Enjoy ➥8448380779▻ Call Girls In Sector 18 Noida Escorts Delhi NCR
Enjoy ➥8448380779▻ Call Girls In Sector 18 Noida Escorts Delhi NCREnjoy ➥8448380779▻ Call Girls In Sector 18 Noida Escorts Delhi NCR
Enjoy ➥8448380779▻ Call Girls In Sector 18 Noida Escorts Delhi NCR
 
1911 Gold Corporate Presentation Apr 2024.pdf
1911 Gold Corporate Presentation Apr 2024.pdf1911 Gold Corporate Presentation Apr 2024.pdf
1911 Gold Corporate Presentation Apr 2024.pdf
 
8447779800, Low rate Call girls in Kotla Mubarakpur Delhi NCR
8447779800, Low rate Call girls in Kotla Mubarakpur Delhi NCR8447779800, Low rate Call girls in Kotla Mubarakpur Delhi NCR
8447779800, Low rate Call girls in Kotla Mubarakpur Delhi NCR
 
8447779800, Low rate Call girls in New Ashok Nagar Delhi NCR
8447779800, Low rate Call girls in New Ashok Nagar Delhi NCR8447779800, Low rate Call girls in New Ashok Nagar Delhi NCR
8447779800, Low rate Call girls in New Ashok Nagar Delhi NCR
 
Call Us 📲8800102216📞 Call Girls In DLF City Gurgaon
Call Us 📲8800102216📞 Call Girls In DLF City GurgaonCall Us 📲8800102216📞 Call Girls In DLF City Gurgaon
Call Us 📲8800102216📞 Call Girls In DLF City Gurgaon
 
MAHA Global and IPR: Do Actions Speak Louder Than Words?
MAHA Global and IPR: Do Actions Speak Louder Than Words?MAHA Global and IPR: Do Actions Speak Louder Than Words?
MAHA Global and IPR: Do Actions Speak Louder Than Words?
 
APRIL2024_UKRAINE_xml_0000000000000 .pdf
APRIL2024_UKRAINE_xml_0000000000000 .pdfAPRIL2024_UKRAINE_xml_0000000000000 .pdf
APRIL2024_UKRAINE_xml_0000000000000 .pdf
 
Call US-88OO1O2216 Call Girls In Mahipalpur Female Escort Service
Call US-88OO1O2216 Call Girls In Mahipalpur Female Escort ServiceCall US-88OO1O2216 Call Girls In Mahipalpur Female Escort Service
Call US-88OO1O2216 Call Girls In Mahipalpur Female Escort Service
 
No-1 Call Girls In Goa 93193 VIP 73153 Escort service In North Goa Panaji, Ca...
No-1 Call Girls In Goa 93193 VIP 73153 Escort service In North Goa Panaji, Ca...No-1 Call Girls In Goa 93193 VIP 73153 Escort service In North Goa Panaji, Ca...
No-1 Call Girls In Goa 93193 VIP 73153 Escort service In North Goa Panaji, Ca...
 
Investment in The Coconut Industry by Nancy Cheruiyot
Investment in The Coconut Industry by Nancy CheruiyotInvestment in The Coconut Industry by Nancy Cheruiyot
Investment in The Coconut Industry by Nancy Cheruiyot
 
Church Building Grants To Assist With New Construction, Additions, And Restor...
Church Building Grants To Assist With New Construction, Additions, And Restor...Church Building Grants To Assist With New Construction, Additions, And Restor...
Church Building Grants To Assist With New Construction, Additions, And Restor...
 
Organizational Structure Running A Successful Business
Organizational Structure Running A Successful BusinessOrganizational Structure Running A Successful Business
Organizational Structure Running A Successful Business
 

Ch10

  • 1. Software Engineering: A Practitioner’s Approach, 6/e Chapter 10 Architectural Design copyright © 1996, 2001, 2005 R.S. Pressman & Associates, Inc. For University Use Only May be reproduced ONLY for student use at the university level when used in conjunction with Software Engineering: A Practitioner's Approach. Any other reproduction or use is expressly prohibited.
  • 2. Why Architecture? The architecture is not the operational software. Rather, it is a representation that enables a software engineer to: (1) analyze the effectiveness of the design in meeting its stated requirements, (2) consider architectural alternatives at a stage when making design changes is still relatively easy, and (3) reduce the risks associated with the construction of the software.
  • 3.
  • 4.
  • 5.
  • 6. Data Design—Component Level 1. The systematic analysis principles applied to function and behavior should also be applied to data. 2. All data structures and the operations to be performed on each should be identified. 3. A data dictionary should be established and used to define both data and program design. 4. Low level data design decisions should be deferred until late in the design process. 5. The representation of data structure should be known only to those modules that must make direct use of the data contained within the structure. 6. A library of useful data structures and the operations that may be applied to them should be developed. 7. A software design and programming language should support the specification and realization of abstract data types.
  • 7.
  • 10. Call and Return Architecture
  • 12.
  • 13.
  • 18. Analyzing Architectural Design 1. Collect scenarios. 2. Elicit requirements, constraints, and environment description. 3. Describe the architectural styles/patterns that have been chosen to address the scenarios and requirements: • module view • process view • data flow view 4. Evaluate quality attributes by considered each attribute in isolation. 5. Identify the sensitivity of quality attributes to various architectural attributes for a specific architectural style. 6. Critique candidate architectures (developed in step 3) using the sensitivity analysis conducted in step 5.
  • 19. An Architectural Design Method "four bedrooms, three baths, lots of glass ..." customer requirements architectural design
  • 20. Deriving Program Architecture Program Architecture
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.
  • 26. Flow Characteristics Transform flow Transaction flow
  • 27. General Mapping Approach isolate incoming and outgoing flow boundaries; for transaction flows, isolate the transaction center working from the boundary outward, map DFD transforms into corresponding modules add control modules as required refine the resultant program structure using effective modularity concepts
  • 30. First Level Factoring main program controller input controller processing controller output controller
  • 32. Transaction Flow T incoming flow action path
  • 33. Transaction Example operator commands process operator commands fixture setting report robot control fixture servos display screen robot control software in reality, other commands would also be shown assembly record
  • 34. Refining the Analysis Model write an English language processing narrative for the level 01 flow model apply noun/verb parse to isolate processes, data items, store and entities develop level 02 and 03 flow models create corresponding data dictionary entries refine flow models as appropriate ... now, we're ready to begin design! 1. 2. 3. 4. 5.
  • 35. Deriving Level 1 Processing narrative for " process operator commands" Process operator command software reads operator commands from the cell operator. An error message is displayed for invalid commands. The command type is determined for valid commands and appropriate action is taken. When fixture commands are encountered, fixture status is analyzed and a fixture setting is output to the fixture servos. When a report is selected, the assembly record file is read and a report is generated and displayed on the operator display screen. When robot control switches are selected, control values are sent to the robot control system. Processing narrative for " process operator commands" Process operator command software reads operator commands from the cell operator . An error message is displayed for invalid commands . The command type is determined for valid commands and appropriate action is taken . When fixture commands are encountered , fixture status is analyzed and a fixture setting is output to the fixture servos . When a report is selected , the assembly record file is read and a report is generated and displayed on the operator display screen . When robot control switches are selected , control value s are sent to the robot control system. noun-verb parse
  • 36. Level 1 Data Flow Diagram
  • 37. Level 2 Data Flow Diagram
  • 38. Transaction Mapping Principles isolate the incoming flow path define each of the action paths by looking for the "spokes of the wheel" assess the flow on each action path define the dispatch and control structure map each action path flow individually
  • 41. Map the Flow Model