SlideShare ist ein Scribd-Unternehmen logo
1 von 37
Chapter 8
TOPICS TO BE COVERED:
Abstraction
Architecture
Aspects
Cohesion
Data Design
Design Process
Functional independence
Good design
Information Hiding
Modularity
Object Oriented Design
Pattern
Quality Attributes
Quality Guidelines
 Refactoring
Separation of concern
Software design
Stepwise Refinements
DESIGN CONCEPTS?
“Idea behind design”
SOME QUICK QUESTIONS:
•Design?
•What is it?
•Who does it?
•Why is it important?
•What is design in software engineering?
Quick answers !
• “A PLAN OR DRAWING”.
• According to Dr. Mitch Kapur in DOBBS Journal “It’s where you stand
with a foot in two worlds—the world of technology and the world of people
and human purposes—and you try to bring the two together”. Design is the
place where software quality is established.
• Software engineers.
• Design allows you to model the system or product that is to be built.
• Software design is the process of implementing software solutions to one or
more sets of problems
TRANSLATING THE ANALYSIS MODEL INTO
THE DESIGN MODEL
DESIGN PROCESS:
• Software design is an iterative process through which requirements are translated
into a “blueprint” for constructing the software
• During the design process the software requirements model is transformed into
design models that describe the details of the data structures, system architecture,
interface, and components
QUALITYATTRIBUTES OFAGOOD DESIGN:
Good software design should exhibit:
• Firmness: A program should not have any bugs that inhibit its function.
• Commodity: A program should be suitable for the purposes for which it was intended
• Delight: The experience of using the program should be pleasurable one
QUALITY GUIDELINES
• A design should be modular; that is, the software should be logically partitioned into
elements or subsystems.
• A design should contain distinct representations of data, architecture, interfaces, and
components
• A design should lead to data structures that are appropriate for the classes to be
implemented and are drawn from recognizable data patterns.
• A design should lead to components that exhibit independent functional characteristics.
• A design should lead to interfaces that reduce the complexity of connections between
components and with the external environment.
• A design should be derived using a repeatable method that is driven by information
obtained during software requirements analysis.
• A design should be represented using a notation that effectively communicates its
meaning.
FUNDAMENTAL DESIGN CONCEPTS:
 Abstraction
 Architecture
 Patterns
 Separation of concerns
 Modularity
 Information hiding
 Functional independence
 Refinement
 Aspects
• Refactoring
 Object-oriented Design concepts
 Design classes
• Permits one to concentrate on a problem at some level of abstraction
without regard to low level detail
Abstraction:
Architecture:
• Overall structure of the system
Patterns:
• General reusable solution which can be used again and again.
Separation of concerns:
• Any complex problem can be more easily handled if it is sub-divided into
pieces.
Modularity:
• Single attribute of software that allows a program to be intellectually
manageable.
MODULARITY AND SOFTWARE COST
Information Hiding:
• The way of hiding the unnecessary details
Functional Independence:
• Achieved by developing modules with “single minded” function and low
coupling.
• It can be measured using two criteria:
-Cohesion
-Coupling
• A process of elaboration of details of abstraction.
• Stepwise refinement is a top-down design strategy.
• Abstraction and refinement are complementary concepts.
Refinement:
• An aspect is a representation of a cross-cutting concern.
• Consider two requirements, A and B. Requirement A crosscuts
requirement B “if a software refinement has been chosen in which B
cannot be satisfied without taking A into account.
Aspects:
• restructuring (rearranging) code…
• “changing the structure of a program so that the functionality is not
changed”
Refactoring:
“Design system using self-contained objects and object classes”
• Objects are abstractions of real world or system entities and manage
themselves
• Objects are independent and encapsulate state and represent
information
• System functionality is expressed in terms of object services
• Shared data are eliminated. Objects communicate by message passing
Object Oriented Design Concepts:
• The requirements model defines a set of analysis classes
• Set of design classes that refine the analysis classes by providing
design detail that will enable the classes to be implemented, and
implement a software infrastructure that supports the business
solution.
• Characteristics of Design Classes
Design Classes:
DESIGN CLASS FOR FLOORPLAN AND COMPOSITE
AGGREGATION FOR THE CLASS
DIMENSIONS OF THE DESIGN MODEL
DESIGN MODEL ELEMENTS:
• Data Design Elements
• Architectural Design Elements
• Interface Design Elements
• Component-Level Design Elements
• Deployment-Level Design Elements
• Data-model  Data structures
• Data-model  Database architecture
1.Data Design Elements
The architectural model [sha96] is derived from three sources:
• Information about the application domain for the software to be built
• Specific requirements model elements such as data flow diagrams of analysis classes,
their relationship and collaborations for the problems at hand
• The availability of architectural patterns and styles
2.Architectural Design Elements
There are three important elements of interface design:
• User interface (UI)
• External interfaces to other systems, devices, networks, or other producers or
consumers of information
• Internal interfaces between various design components
3. Interface Design Elements
INTERFACE REPRESENTATION FOR CONTROL PANEL
• The component-level design for software fully describes the internal detail of each
software component
• The component-level design defines data structures for all local data objects and
algorithmic detail for all processing that occurs within a component and an interface
that allows access to all component operations
4.Component-level Design Elements
5.DEPLOYMENT-LEVEL DESIGN ELEMENTS
• Deployment-level design elements indicate how software functionality and
subsystems will be allocated within the physical computing environment that will
support the software
A UML COMPONENT DIAGRAM
A UML deployment diagram
Nahi Nahi…
Any Question ?
Design concepts

Weitere ähnliche Inhalte

Was ist angesagt?

Software quality assurance
Software quality assuranceSoftware quality assurance
Software quality assuranceAman Adhikari
 
Software architecture design ppt
Software architecture design pptSoftware architecture design ppt
Software architecture design pptfarazimlak
 
Unit iii-Architecture in the lifecycle
Unit iii-Architecture in the lifecycleUnit iii-Architecture in the lifecycle
Unit iii-Architecture in the lifecycleDhivyaa C.R
 
component based development model
component based development modelcomponent based development model
component based development modelMuneeba Qamar
 
Software design, software engineering
Software design, software engineeringSoftware design, software engineering
Software design, software engineeringRupesh Vaishnav
 
Architectural Styles and Case Studies, Software architecture ,unit–2
Architectural Styles and Case Studies, Software architecture ,unit–2Architectural Styles and Case Studies, Software architecture ,unit–2
Architectural Styles and Case Studies, Software architecture ,unit–2Sudarshan Dhondaley
 
An Introduction to Software Architecture
An Introduction to Software ArchitectureAn Introduction to Software Architecture
An Introduction to Software ArchitectureRahimLotfi
 
Design Concept software engineering
Design Concept software engineeringDesign Concept software engineering
Design Concept software engineeringDarshit Metaliya
 
Chapter 3 software engineering.pptx
Chapter 3 software engineering.pptxChapter 3 software engineering.pptx
Chapter 3 software engineering.pptx02LabiqaIslam
 
Architectural Design
Architectural DesignArchitectural Design
Architectural DesignJay Thakkar
 
unit 5 Architectural design
 unit 5 Architectural design unit 5 Architectural design
unit 5 Architectural designdevika g
 
Design and Implementation in Software Engineering
Design and Implementation in Software EngineeringDesign and Implementation in Software Engineering
Design and Implementation in Software EngineeringKourosh Sajjadi
 
Object oriented-systems-development-life-cycle ppt
Object oriented-systems-development-life-cycle pptObject oriented-systems-development-life-cycle ppt
Object oriented-systems-development-life-cycle pptKunal Kishor Nirala
 

Was ist angesagt? (20)

Software quality assurance
Software quality assuranceSoftware quality assurance
Software quality assurance
 
Software architecture design ppt
Software architecture design pptSoftware architecture design ppt
Software architecture design ppt
 
Unit iii-Architecture in the lifecycle
Unit iii-Architecture in the lifecycleUnit iii-Architecture in the lifecycle
Unit iii-Architecture in the lifecycle
 
component based development model
component based development modelcomponent based development model
component based development model
 
Software design, software engineering
Software design, software engineeringSoftware design, software engineering
Software design, software engineering
 
Software design
Software designSoftware design
Software design
 
Architectural Styles and Case Studies, Software architecture ,unit–2
Architectural Styles and Case Studies, Software architecture ,unit–2Architectural Styles and Case Studies, Software architecture ,unit–2
Architectural Styles and Case Studies, Software architecture ,unit–2
 
An Introduction to Software Architecture
An Introduction to Software ArchitectureAn Introduction to Software Architecture
An Introduction to Software Architecture
 
Design Concept software engineering
Design Concept software engineeringDesign Concept software engineering
Design Concept software engineering
 
Chapter 3 software engineering.pptx
Chapter 3 software engineering.pptxChapter 3 software engineering.pptx
Chapter 3 software engineering.pptx
 
Architectural Design
Architectural DesignArchitectural Design
Architectural Design
 
Software Architecture
Software ArchitectureSoftware Architecture
Software Architecture
 
unit 5 Architectural design
 unit 5 Architectural design unit 5 Architectural design
unit 5 Architectural design
 
Ooad unit – 1 introduction
Ooad unit – 1 introductionOoad unit – 1 introduction
Ooad unit – 1 introduction
 
Design Process
Design ProcessDesign Process
Design Process
 
Ch 6
Ch 6Ch 6
Ch 6
 
Design and Implementation in Software Engineering
Design and Implementation in Software EngineeringDesign and Implementation in Software Engineering
Design and Implementation in Software Engineering
 
Software Architecture
Software ArchitectureSoftware Architecture
Software Architecture
 
Object oriented-systems-development-life-cycle ppt
Object oriented-systems-development-life-cycle pptObject oriented-systems-development-life-cycle ppt
Object oriented-systems-development-life-cycle ppt
 
Case Study Uml
Case Study UmlCase Study Uml
Case Study Uml
 

Andere mochten auch

Architectural Design Concept
Architectural Design ConceptArchitectural Design Concept
Architectural Design ConceptNiteesh Patel
 
Concept design slides 10 6-15
Concept design slides 10 6-15Concept design slides 10 6-15
Concept design slides 10 6-15DCPublicLibrary
 
Generating Architectural Concepts & Design Ideas
Generating Architectural Concepts & Design IdeasGenerating Architectural Concepts & Design Ideas
Generating Architectural Concepts & Design IdeasWan Muhammad / Asas-Khu™
 
Concept in engineering design
Concept in engineering designConcept in engineering design
Concept in engineering designSiddharth Sharma
 
Architect presentation
Architect  presentationArchitect  presentation
Architect presentationimpianharta
 
Architectural Design Concepts Approaches - كونسيبت التصميم المعمارى و الفكرة ...
Architectural Design Concepts Approaches - كونسيبت التصميم المعمارى و الفكرة ...Architectural Design Concepts Approaches - كونسيبت التصميم المعمارى و الفكرة ...
Architectural Design Concepts Approaches - كونسيبت التصميم المعمارى و الفكرة ...Galala University
 

Andere mochten auch (10)

Concepts in Architecture
Concepts in ArchitectureConcepts in Architecture
Concepts in Architecture
 
Computer Aided Software Engineering Nayab Awan
Computer Aided Software Engineering Nayab AwanComputer Aided Software Engineering Nayab Awan
Computer Aided Software Engineering Nayab Awan
 
Concept Design
Concept DesignConcept Design
Concept Design
 
Architectural Design Concept
Architectural Design ConceptArchitectural Design Concept
Architectural Design Concept
 
Concept design slides 10 6-15
Concept design slides 10 6-15Concept design slides 10 6-15
Concept design slides 10 6-15
 
Generating Architectural Concepts & Design Ideas
Generating Architectural Concepts & Design IdeasGenerating Architectural Concepts & Design Ideas
Generating Architectural Concepts & Design Ideas
 
Concept in engineering design
Concept in engineering designConcept in engineering design
Concept in engineering design
 
Architect presentation
Architect  presentationArchitect  presentation
Architect presentation
 
Architectural Design Concepts Approaches - كونسيبت التصميم المعمارى و الفكرة ...
Architectural Design Concepts Approaches - كونسيبت التصميم المعمارى و الفكرة ...Architectural Design Concepts Approaches - كونسيبت التصميم المعمارى و الفكرة ...
Architectural Design Concepts Approaches - كونسيبت التصميم المعمارى و الفكرة ...
 
Product design concept
Product design conceptProduct design concept
Product design concept
 

Ähnlich wie Design concepts

Different approaches to software design
Different approaches to software designDifferent approaches to software design
Different approaches to software designSandeep Kumar Nayak
 
Design Engineering and Design concepts
Design Engineering and Design conceptsDesign Engineering and Design concepts
Design Engineering and Design conceptsJigyasaAgrawal7
 
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.pptxKarthigaiSelviS3
 
Unit 5 design engineering ssad
Unit 5 design engineering ssadUnit 5 design engineering ssad
Unit 5 design engineering ssadPreeti Mishra
 
Chapter 1 - Software Design - Introduction.pptx
Chapter 1 - Software Design - Introduction.pptxChapter 1 - Software Design - Introduction.pptx
Chapter 1 - Software Design - Introduction.pptxHaifaMohd3
 
B19CA4020_SE_Unit3.pptx
B19CA4020_SE_Unit3.pptxB19CA4020_SE_Unit3.pptx
B19CA4020_SE_Unit3.pptxDrPreethiD1
 
UNIT-4design-concepts-se-pressman-ppt.PPT
UNIT-4design-concepts-se-pressman-ppt.PPTUNIT-4design-concepts-se-pressman-ppt.PPT
UNIT-4design-concepts-se-pressman-ppt.PPTmalathijanapati1
 
Pressman_ch_9_design_engineering.ppt
Pressman_ch_9_design_engineering.pptPressman_ch_9_design_engineering.ppt
Pressman_ch_9_design_engineering.pptMotherTheresa2
 
Software design principles
Software design principlesSoftware design principles
Software design principlesRitesh Singh
 

Ähnlich wie Design concepts (20)

Different approaches to software design
Different approaches to software designDifferent approaches to software design
Different approaches to software design
 
unit 3 Design 1
unit 3 Design 1unit 3 Design 1
unit 3 Design 1
 
Chapter 6 design
Chapter 6 designChapter 6 design
Chapter 6 design
 
Ch 9-design-engineering
Ch 9-design-engineeringCh 9-design-engineering
Ch 9-design-engineering
 
Software Design Concepts
Software Design ConceptsSoftware Design Concepts
Software Design Concepts
 
Design Engineering and Design concepts
Design Engineering and Design conceptsDesign Engineering and Design concepts
Design Engineering and Design concepts
 
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 5 design engineering ssad
Unit 5 design engineering ssadUnit 5 design engineering ssad
Unit 5 design engineering ssad
 
Design engineering
Design engineeringDesign engineering
Design engineering
 
Software design
Software designSoftware design
Software design
 
Unit4
Unit4Unit4
Unit4
 
Chapter 1 - Software Design - Introduction.pptx
Chapter 1 - Software Design - Introduction.pptxChapter 1 - Software Design - Introduction.pptx
Chapter 1 - Software Design - Introduction.pptx
 
B19CA4020_SE_Unit3.pptx
B19CA4020_SE_Unit3.pptxB19CA4020_SE_Unit3.pptx
B19CA4020_SE_Unit3.pptx
 
UNIT-4design-concepts-se-pressman-ppt.PPT
UNIT-4design-concepts-se-pressman-ppt.PPTUNIT-4design-concepts-se-pressman-ppt.PPT
UNIT-4design-concepts-se-pressman-ppt.PPT
 
Pressman_ch_9_design_engineering.ppt
Pressman_ch_9_design_engineering.pptPressman_ch_9_design_engineering.ppt
Pressman_ch_9_design_engineering.ppt
 
Software design principles
Software design principlesSoftware design principles
Software design principles
 
DESIGN CONCEPTS
DESIGN CONCEPTSDESIGN CONCEPTS
DESIGN CONCEPTS
 
rEFUP.pdf
rEFUP.pdfrEFUP.pdf
rEFUP.pdf
 
CHAPTER12.ppt
CHAPTER12.pptCHAPTER12.ppt
CHAPTER12.ppt
 
Architectural design
Architectural designArchitectural design
Architectural design
 

Kürzlich hochgeladen

3D Printing And Designing Final Report.pdf
3D Printing And Designing Final Report.pdf3D Printing And Designing Final Report.pdf
3D Printing And Designing Final Report.pdfSwaraliBorhade
 
Untitled presedddddddddddddddddntation (1).pptx
Untitled presedddddddddddddddddntation (1).pptxUntitled presedddddddddddddddddntation (1).pptx
Untitled presedddddddddddddddddntation (1).pptxmapanig881
 
办理学位证(NUS证书)新加坡国立大学毕业证成绩单原版一比一
办理学位证(NUS证书)新加坡国立大学毕业证成绩单原版一比一办理学位证(NUS证书)新加坡国立大学毕业证成绩单原版一比一
办理学位证(NUS证书)新加坡国立大学毕业证成绩单原版一比一Fi L
 
原版美国亚利桑那州立大学毕业证成绩单pdf电子版制作修改#毕业文凭制作#回国入职#diploma#degree
原版美国亚利桑那州立大学毕业证成绩单pdf电子版制作修改#毕业文凭制作#回国入职#diploma#degree原版美国亚利桑那州立大学毕业证成绩单pdf电子版制作修改#毕业文凭制作#回国入职#diploma#degree
原版美国亚利桑那州立大学毕业证成绩单pdf电子版制作修改#毕业文凭制作#回国入职#diploma#degreeyuu sss
 
Call Girls Satellite 7397865700 Ridhima Hire Me Full Night
Call Girls Satellite 7397865700 Ridhima Hire Me Full NightCall Girls Satellite 7397865700 Ridhima Hire Me Full Night
Call Girls Satellite 7397865700 Ridhima Hire Me Full Nightssuser7cb4ff
 
定制(RMIT毕业证书)澳洲墨尔本皇家理工大学毕业证成绩单原版一比一
定制(RMIT毕业证书)澳洲墨尔本皇家理工大学毕业证成绩单原版一比一定制(RMIT毕业证书)澳洲墨尔本皇家理工大学毕业证成绩单原版一比一
定制(RMIT毕业证书)澳洲墨尔本皇家理工大学毕业证成绩单原版一比一lvtagr7
 
办理卡尔顿大学毕业证成绩单|购买加拿大文凭证书
办理卡尔顿大学毕业证成绩单|购买加拿大文凭证书办理卡尔顿大学毕业证成绩单|购买加拿大文凭证书
办理卡尔顿大学毕业证成绩单|购买加拿大文凭证书zdzoqco
 
原版1:1定制堪培拉大学毕业证(UC毕业证)#文凭成绩单#真实留信学历认证永久存档
原版1:1定制堪培拉大学毕业证(UC毕业证)#文凭成绩单#真实留信学历认证永久存档原版1:1定制堪培拉大学毕业证(UC毕业证)#文凭成绩单#真实留信学历认证永久存档
原版1:1定制堪培拉大学毕业证(UC毕业证)#文凭成绩单#真实留信学历认证永久存档208367051
 
Abu Dhabi Call Girls O58993O4O2 Call Girls in Abu Dhabi`
Abu Dhabi Call Girls O58993O4O2 Call Girls in Abu Dhabi`Abu Dhabi Call Girls O58993O4O2 Call Girls in Abu Dhabi`
Abu Dhabi Call Girls O58993O4O2 Call Girls in Abu Dhabi`dajasot375
 
PORTAFOLIO 2024_ ANASTASIYA KUDINOVA
PORTAFOLIO   2024_  ANASTASIYA  KUDINOVAPORTAFOLIO   2024_  ANASTASIYA  KUDINOVA
PORTAFOLIO 2024_ ANASTASIYA KUDINOVAAnastasiya Kudinova
 
How to Empower the future of UX Design with Gen AI
How to Empower the future of UX Design with Gen AIHow to Empower the future of UX Design with Gen AI
How to Empower the future of UX Design with Gen AIyuj
 
Call Girls Aslali 7397865700 Ridhima Hire Me Full Night
Call Girls Aslali 7397865700 Ridhima Hire Me Full NightCall Girls Aslali 7397865700 Ridhima Hire Me Full Night
Call Girls Aslali 7397865700 Ridhima Hire Me Full Nightssuser7cb4ff
 
PORTFOLIO DE ARQUITECTURA CRISTOBAL HERAUD 2024
PORTFOLIO DE ARQUITECTURA CRISTOBAL HERAUD 2024PORTFOLIO DE ARQUITECTURA CRISTOBAL HERAUD 2024
PORTFOLIO DE ARQUITECTURA CRISTOBAL HERAUD 2024CristobalHeraud
 
办理学位证(SFU证书)西蒙菲莎大学毕业证成绩单原版一比一
办理学位证(SFU证书)西蒙菲莎大学毕业证成绩单原版一比一办理学位证(SFU证书)西蒙菲莎大学毕业证成绩单原版一比一
办理学位证(SFU证书)西蒙菲莎大学毕业证成绩单原版一比一F dds
 
Dubai Calls Girl Tapes O525547819 Real Tapes Escort Services Dubai
Dubai Calls Girl Tapes O525547819 Real Tapes Escort Services DubaiDubai Calls Girl Tapes O525547819 Real Tapes Escort Services Dubai
Dubai Calls Girl Tapes O525547819 Real Tapes Escort Services Dubaikojalkojal131
 
Call Girls in Ashok Nagar Delhi ✡️9711147426✡️ Escorts Service
Call Girls in Ashok Nagar Delhi ✡️9711147426✡️ Escorts ServiceCall Girls in Ashok Nagar Delhi ✡️9711147426✡️ Escorts Service
Call Girls in Ashok Nagar Delhi ✡️9711147426✡️ Escorts Servicejennyeacort
 
Design principles on typography in design
Design principles on typography in designDesign principles on typography in design
Design principles on typography in designnooreen17
 
MT. Marseille an Archipelago. Strategies for Integrating Residential Communit...
MT. Marseille an Archipelago. Strategies for Integrating Residential Communit...MT. Marseille an Archipelago. Strategies for Integrating Residential Communit...
MT. Marseille an Archipelago. Strategies for Integrating Residential Communit...katerynaivanenko1
 
办理学位证(TheAuckland证书)新西兰奥克兰大学毕业证成绩单原版一比一
办理学位证(TheAuckland证书)新西兰奥克兰大学毕业证成绩单原版一比一办理学位证(TheAuckland证书)新西兰奥克兰大学毕业证成绩单原版一比一
办理学位证(TheAuckland证书)新西兰奥克兰大学毕业证成绩单原版一比一Fi L
 
Pharmaceutical Packaging for the elderly.pdf
Pharmaceutical Packaging for the elderly.pdfPharmaceutical Packaging for the elderly.pdf
Pharmaceutical Packaging for the elderly.pdfAayushChavan5
 

Kürzlich hochgeladen (20)

3D Printing And Designing Final Report.pdf
3D Printing And Designing Final Report.pdf3D Printing And Designing Final Report.pdf
3D Printing And Designing Final Report.pdf
 
Untitled presedddddddddddddddddntation (1).pptx
Untitled presedddddddddddddddddntation (1).pptxUntitled presedddddddddddddddddntation (1).pptx
Untitled presedddddddddddddddddntation (1).pptx
 
办理学位证(NUS证书)新加坡国立大学毕业证成绩单原版一比一
办理学位证(NUS证书)新加坡国立大学毕业证成绩单原版一比一办理学位证(NUS证书)新加坡国立大学毕业证成绩单原版一比一
办理学位证(NUS证书)新加坡国立大学毕业证成绩单原版一比一
 
原版美国亚利桑那州立大学毕业证成绩单pdf电子版制作修改#毕业文凭制作#回国入职#diploma#degree
原版美国亚利桑那州立大学毕业证成绩单pdf电子版制作修改#毕业文凭制作#回国入职#diploma#degree原版美国亚利桑那州立大学毕业证成绩单pdf电子版制作修改#毕业文凭制作#回国入职#diploma#degree
原版美国亚利桑那州立大学毕业证成绩单pdf电子版制作修改#毕业文凭制作#回国入职#diploma#degree
 
Call Girls Satellite 7397865700 Ridhima Hire Me Full Night
Call Girls Satellite 7397865700 Ridhima Hire Me Full NightCall Girls Satellite 7397865700 Ridhima Hire Me Full Night
Call Girls Satellite 7397865700 Ridhima Hire Me Full Night
 
定制(RMIT毕业证书)澳洲墨尔本皇家理工大学毕业证成绩单原版一比一
定制(RMIT毕业证书)澳洲墨尔本皇家理工大学毕业证成绩单原版一比一定制(RMIT毕业证书)澳洲墨尔本皇家理工大学毕业证成绩单原版一比一
定制(RMIT毕业证书)澳洲墨尔本皇家理工大学毕业证成绩单原版一比一
 
办理卡尔顿大学毕业证成绩单|购买加拿大文凭证书
办理卡尔顿大学毕业证成绩单|购买加拿大文凭证书办理卡尔顿大学毕业证成绩单|购买加拿大文凭证书
办理卡尔顿大学毕业证成绩单|购买加拿大文凭证书
 
原版1:1定制堪培拉大学毕业证(UC毕业证)#文凭成绩单#真实留信学历认证永久存档
原版1:1定制堪培拉大学毕业证(UC毕业证)#文凭成绩单#真实留信学历认证永久存档原版1:1定制堪培拉大学毕业证(UC毕业证)#文凭成绩单#真实留信学历认证永久存档
原版1:1定制堪培拉大学毕业证(UC毕业证)#文凭成绩单#真实留信学历认证永久存档
 
Abu Dhabi Call Girls O58993O4O2 Call Girls in Abu Dhabi`
Abu Dhabi Call Girls O58993O4O2 Call Girls in Abu Dhabi`Abu Dhabi Call Girls O58993O4O2 Call Girls in Abu Dhabi`
Abu Dhabi Call Girls O58993O4O2 Call Girls in Abu Dhabi`
 
PORTAFOLIO 2024_ ANASTASIYA KUDINOVA
PORTAFOLIO   2024_  ANASTASIYA  KUDINOVAPORTAFOLIO   2024_  ANASTASIYA  KUDINOVA
PORTAFOLIO 2024_ ANASTASIYA KUDINOVA
 
How to Empower the future of UX Design with Gen AI
How to Empower the future of UX Design with Gen AIHow to Empower the future of UX Design with Gen AI
How to Empower the future of UX Design with Gen AI
 
Call Girls Aslali 7397865700 Ridhima Hire Me Full Night
Call Girls Aslali 7397865700 Ridhima Hire Me Full NightCall Girls Aslali 7397865700 Ridhima Hire Me Full Night
Call Girls Aslali 7397865700 Ridhima Hire Me Full Night
 
PORTFOLIO DE ARQUITECTURA CRISTOBAL HERAUD 2024
PORTFOLIO DE ARQUITECTURA CRISTOBAL HERAUD 2024PORTFOLIO DE ARQUITECTURA CRISTOBAL HERAUD 2024
PORTFOLIO DE ARQUITECTURA CRISTOBAL HERAUD 2024
 
办理学位证(SFU证书)西蒙菲莎大学毕业证成绩单原版一比一
办理学位证(SFU证书)西蒙菲莎大学毕业证成绩单原版一比一办理学位证(SFU证书)西蒙菲莎大学毕业证成绩单原版一比一
办理学位证(SFU证书)西蒙菲莎大学毕业证成绩单原版一比一
 
Dubai Calls Girl Tapes O525547819 Real Tapes Escort Services Dubai
Dubai Calls Girl Tapes O525547819 Real Tapes Escort Services DubaiDubai Calls Girl Tapes O525547819 Real Tapes Escort Services Dubai
Dubai Calls Girl Tapes O525547819 Real Tapes Escort Services Dubai
 
Call Girls in Ashok Nagar Delhi ✡️9711147426✡️ Escorts Service
Call Girls in Ashok Nagar Delhi ✡️9711147426✡️ Escorts ServiceCall Girls in Ashok Nagar Delhi ✡️9711147426✡️ Escorts Service
Call Girls in Ashok Nagar Delhi ✡️9711147426✡️ Escorts Service
 
Design principles on typography in design
Design principles on typography in designDesign principles on typography in design
Design principles on typography in design
 
MT. Marseille an Archipelago. Strategies for Integrating Residential Communit...
MT. Marseille an Archipelago. Strategies for Integrating Residential Communit...MT. Marseille an Archipelago. Strategies for Integrating Residential Communit...
MT. Marseille an Archipelago. Strategies for Integrating Residential Communit...
 
办理学位证(TheAuckland证书)新西兰奥克兰大学毕业证成绩单原版一比一
办理学位证(TheAuckland证书)新西兰奥克兰大学毕业证成绩单原版一比一办理学位证(TheAuckland证书)新西兰奥克兰大学毕业证成绩单原版一比一
办理学位证(TheAuckland证书)新西兰奥克兰大学毕业证成绩单原版一比一
 
Pharmaceutical Packaging for the elderly.pdf
Pharmaceutical Packaging for the elderly.pdfPharmaceutical Packaging for the elderly.pdf
Pharmaceutical Packaging for the elderly.pdf
 

Design concepts

  • 1.
  • 3. TOPICS TO BE COVERED: Abstraction Architecture Aspects Cohesion Data Design Design Process Functional independence Good design Information Hiding Modularity Object Oriented Design Pattern Quality Attributes Quality Guidelines  Refactoring Separation of concern Software design Stepwise Refinements
  • 5. SOME QUICK QUESTIONS: •Design? •What is it? •Who does it? •Why is it important? •What is design in software engineering?
  • 6. Quick answers ! • “A PLAN OR DRAWING”. • According to Dr. Mitch Kapur in DOBBS Journal “It’s where you stand with a foot in two worlds—the world of technology and the world of people and human purposes—and you try to bring the two together”. Design is the place where software quality is established. • Software engineers. • Design allows you to model the system or product that is to be built. • Software design is the process of implementing software solutions to one or more sets of problems
  • 7. TRANSLATING THE ANALYSIS MODEL INTO THE DESIGN MODEL
  • 8. DESIGN PROCESS: • Software design is an iterative process through which requirements are translated into a “blueprint” for constructing the software • During the design process the software requirements model is transformed into design models that describe the details of the data structures, system architecture, interface, and components
  • 9. QUALITYATTRIBUTES OFAGOOD DESIGN: Good software design should exhibit: • Firmness: A program should not have any bugs that inhibit its function. • Commodity: A program should be suitable for the purposes for which it was intended • Delight: The experience of using the program should be pleasurable one
  • 10. QUALITY GUIDELINES • A design should be modular; that is, the software should be logically partitioned into elements or subsystems. • A design should contain distinct representations of data, architecture, interfaces, and components • A design should lead to data structures that are appropriate for the classes to be implemented and are drawn from recognizable data patterns. • A design should lead to components that exhibit independent functional characteristics. • A design should lead to interfaces that reduce the complexity of connections between components and with the external environment. • A design should be derived using a repeatable method that is driven by information obtained during software requirements analysis. • A design should be represented using a notation that effectively communicates its meaning.
  • 11. FUNDAMENTAL DESIGN CONCEPTS:  Abstraction  Architecture  Patterns  Separation of concerns  Modularity  Information hiding  Functional independence  Refinement  Aspects • Refactoring  Object-oriented Design concepts  Design classes
  • 12. • Permits one to concentrate on a problem at some level of abstraction without regard to low level detail Abstraction:
  • 14. Patterns: • General reusable solution which can be used again and again.
  • 15. Separation of concerns: • Any complex problem can be more easily handled if it is sub-divided into pieces.
  • 16. Modularity: • Single attribute of software that allows a program to be intellectually manageable.
  • 18. Information Hiding: • The way of hiding the unnecessary details
  • 19. Functional Independence: • Achieved by developing modules with “single minded” function and low coupling. • It can be measured using two criteria: -Cohesion -Coupling
  • 20. • A process of elaboration of details of abstraction. • Stepwise refinement is a top-down design strategy. • Abstraction and refinement are complementary concepts. Refinement:
  • 21. • An aspect is a representation of a cross-cutting concern. • Consider two requirements, A and B. Requirement A crosscuts requirement B “if a software refinement has been chosen in which B cannot be satisfied without taking A into account. Aspects:
  • 22. • restructuring (rearranging) code… • “changing the structure of a program so that the functionality is not changed” Refactoring:
  • 23. “Design system using self-contained objects and object classes” • Objects are abstractions of real world or system entities and manage themselves • Objects are independent and encapsulate state and represent information • System functionality is expressed in terms of object services • Shared data are eliminated. Objects communicate by message passing Object Oriented Design Concepts:
  • 24. • The requirements model defines a set of analysis classes • Set of design classes that refine the analysis classes by providing design detail that will enable the classes to be implemented, and implement a software infrastructure that supports the business solution. • Characteristics of Design Classes Design Classes:
  • 25. DESIGN CLASS FOR FLOORPLAN AND COMPOSITE AGGREGATION FOR THE CLASS
  • 26. DIMENSIONS OF THE DESIGN MODEL
  • 27. DESIGN MODEL ELEMENTS: • Data Design Elements • Architectural Design Elements • Interface Design Elements • Component-Level Design Elements • Deployment-Level Design Elements
  • 28. • Data-model  Data structures • Data-model  Database architecture 1.Data Design Elements
  • 29. The architectural model [sha96] is derived from three sources: • Information about the application domain for the software to be built • Specific requirements model elements such as data flow diagrams of analysis classes, their relationship and collaborations for the problems at hand • The availability of architectural patterns and styles 2.Architectural Design Elements
  • 30. There are three important elements of interface design: • User interface (UI) • External interfaces to other systems, devices, networks, or other producers or consumers of information • Internal interfaces between various design components 3. Interface Design Elements
  • 32. • The component-level design for software fully describes the internal detail of each software component • The component-level design defines data structures for all local data objects and algorithmic detail for all processing that occurs within a component and an interface that allows access to all component operations 4.Component-level Design Elements
  • 33. 5.DEPLOYMENT-LEVEL DESIGN ELEMENTS • Deployment-level design elements indicate how software functionality and subsystems will be allocated within the physical computing environment that will support the software
  • 34. A UML COMPONENT DIAGRAM
  • 35. A UML deployment diagram