SlideShare a Scribd company logo
Object Design & Mapping
onto Code
By Dr. Maryam Kausar
Object Design
• Purpose of object design:
• Prepare for the implementation of the analysis model based on
system design decisions
• Transform analysis and system design models
• Investigate alternative ways to implement the analysis model
• Use design goals: minimize execution time, memory and other
measures of cost.
• Object Design serves as the basis of implementation
1-2
Terminology: Naming of Design
Activities
1-3
System Development as a Set of
Activities
1-4
1-5
1-6
Object Design consists of 4
Activities
1. Reuse: Identification of existing solutions
• Use of inheritance
• Off-the-shelf components and additional solution objects
• Design patterns
2. Interface specification
• Describes precisely each class interface
3. Object model restructuring
• Transforms the object design model to improve its understandability and
extensibility
4. Object model optimization
• Transforms the object design model to address performance criteria such as
response time or memory utilization.
1-7
1-8
1-9
One Way to do Object Design
• Identify the missing components in the design gap
• Make a build or buy decision to obtain the missing component
• => Component-Based Software Engineering:
• The design gap is filled with available components (“0 % coding”).
1-10
1-11
Design to Code
Mapping
1-12
Creating Class Definitions
1-13
Creating Methods from
Interaction Diagrams
1-14
Collections
• One-to-many relationships are common.
• For example, a Sale must maintain visibility to a group of many
SalesLineItem instances.
• In OO programming languages, these relationships are usually
implemented with the introduction of a collection object, such as
a List or Map, or even a simple array.
• Java libraries contain collection classes such as ArrayList and
HashMap, which implement the List and Map interfaces,
respectively.
1-15
Collections
1-16
Order of Implementation
• Classes need to be implemented from least-coupled to most-
coupled.
• E.g.,
• possible first classes to implement are either Payment or
ProductDescription;
• next are classes only dependent on the prior implementations—
ProductCatalog or SalesLineItem
1-17
1-18
SalesLineItem
quantity : Integer
getSubtotal()
ProductCatalog
...
getProductDesc(...)
ProductDescription
description : Text
price : Money
itemID : ItemID
...
Store
address : Address
name : Text
addSale(...)
Payment
amount : Money
...
1..*
1..*
Register
...
endSale()
enterItem(...)
makeNewSale()
makePayment(...)
Sale
isComplete : Boolean
time : DateTime
becomeComplete()
makeLineItem(...)
makePayment(...)
getTotal()
...
1
1
1
1
1
1
*
1
2
3
4
5
6
7
Activity
1-19
1-20

More Related Content

PPTX
Design concepts
PPTX
Object-Oriented Design Fundamentals.pptx
PPT
Different approaches to software design
PPTX
Design Engineering and Design concepts
PPTX
Design engineering
PPT
Pressman ch-11-component-level-design
PDF
Oo aand d-overview
PDF
Software Design and Architecture - 1 -Chapter One.pdf
Design concepts
Object-Oriented Design Fundamentals.pptx
Different approaches to software design
Design Engineering and Design concepts
Design engineering
Pressman ch-11-component-level-design
Oo aand d-overview
Software Design and Architecture - 1 -Chapter One.pdf

Similar to 5-Oject Design & Mapping on Code__ .pptx (20)

PPT
Unit4
PDF
dynamic and implementation uml diagram.pdf
PPT
Chapter 6 Design in software Engineeing.ppt
PPT
Chapter 6 Software Engineering Design.ppt
DOCX
Function Oriented and Object Oriented Design,Modularization techniques
PPTX
Software Design
PPT
chapter 5 Objectdesign.ppt
PPTX
Unit 5 design engineering ssad
PPT
Chapter 6 design
PPT
Oose unit 4 ppt
PPT
SE Unit-3-2.ppt summer doors emraan dress
PPT
Design engineering
PPT
Design engineering
PPT
software engineering unit-3 in software engineering
PPT
Ch 11-component-level-design
PPTX
unit 3 Design 1
PPT
James hall ch 14
PPT
Seii unit7 component-level-design
PPT
Unit-1 OOMD- Inthhro- class modeling.ppt
PPT
Software Design vs. Software Architecture
Unit4
dynamic and implementation uml diagram.pdf
Chapter 6 Design in software Engineeing.ppt
Chapter 6 Software Engineering Design.ppt
Function Oriented and Object Oriented Design,Modularization techniques
Software Design
chapter 5 Objectdesign.ppt
Unit 5 design engineering ssad
Chapter 6 design
Oose unit 4 ppt
SE Unit-3-2.ppt summer doors emraan dress
Design engineering
Design engineering
software engineering unit-3 in software engineering
Ch 11-component-level-design
unit 3 Design 1
James hall ch 14
Seii unit7 component-level-design
Unit-1 OOMD- Inthhro- class modeling.ppt
Software Design vs. Software Architecture
Ad

More from MuhammadAbubakar114879 (20)

PPT
Lecture 11.pptHuman Computer Interaction
PPT
3 only package diagram till slide no. 13.ppt
PPT
4 Activity & Statechart diagram.ppt4 Activity & Statechart diagram.ppt4 Activ...
PPT
6 Design Pattern.ppt design pattern in softeare engineering
PPTX
9 Component Based SE.pptx9 Component Based SE.pptx9 Component Based SE.pptx
PPTX
8 SOA.pptx soa ppt in software engineering
PPTX
7 SPL.pptx spl ppt in software engineering
PPT
Lect_07_Use Case Diagram.ppt use case diagram
PPTX
Lab4-Software-Construction-BSSE5.pptx ppt
PPTX
Lecture3 - Methodologies - Software-Construction-BSSE5 (1).pptx
PPTX
Lecture-7.pptx software design and Arthitechure
PPTX
design_pattern.pptx design_pattern design_pattern
PPTX
10- Architectureign Design_designnn.pptx
PPTX
13- Architecture Evaluations_design.pptx
PPTX
6-User Interface Design_6-User Interface Design.pptx
PPTX
3-System Design_software_design_algo .pptx
PPTX
Sequence_Diagram_software_Design_algo.pptx
PPTX
lec 14-15 Jquery_All About J-query_.pptx
PPTX
Natural_language_processingusing python.pptx
PPTX
SPM presentation extra material-Lect 9and 10.pptx
Lecture 11.pptHuman Computer Interaction
3 only package diagram till slide no. 13.ppt
4 Activity & Statechart diagram.ppt4 Activity & Statechart diagram.ppt4 Activ...
6 Design Pattern.ppt design pattern in softeare engineering
9 Component Based SE.pptx9 Component Based SE.pptx9 Component Based SE.pptx
8 SOA.pptx soa ppt in software engineering
7 SPL.pptx spl ppt in software engineering
Lect_07_Use Case Diagram.ppt use case diagram
Lab4-Software-Construction-BSSE5.pptx ppt
Lecture3 - Methodologies - Software-Construction-BSSE5 (1).pptx
Lecture-7.pptx software design and Arthitechure
design_pattern.pptx design_pattern design_pattern
10- Architectureign Design_designnn.pptx
13- Architecture Evaluations_design.pptx
6-User Interface Design_6-User Interface Design.pptx
3-System Design_software_design_algo .pptx
Sequence_Diagram_software_Design_algo.pptx
lec 14-15 Jquery_All About J-query_.pptx
Natural_language_processingusing python.pptx
SPM presentation extra material-Lect 9and 10.pptx
Ad

Recently uploaded (20)

PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PPTX
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
PDF
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
PDF
Spectral efficient network and resource selection model in 5G networks
PDF
cuic standard and advanced reporting.pdf
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PDF
Electronic commerce courselecture one. Pdf
PDF
Chapter 3 Spatial Domain Image Processing.pdf
PPTX
Cloud computing and distributed systems.
PPTX
MYSQL Presentation for SQL database connectivity
PDF
Review of recent advances in non-invasive hemoglobin estimation
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PDF
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
PDF
Machine learning based COVID-19 study performance prediction
PDF
CIFDAQ's Market Insight: SEC Turns Pro Crypto
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
Agricultural_Statistics_at_a_Glance_2022_0.pdf
Building Integrated photovoltaic BIPV_UPV.pdf
PA Analog/Digital System: The Backbone of Modern Surveillance and Communication
Dropbox Q2 2025 Financial Results & Investor Presentation
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
Spectral efficient network and resource selection model in 5G networks
cuic standard and advanced reporting.pdf
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
Advanced methodologies resolving dimensionality complications for autism neur...
Electronic commerce courselecture one. Pdf
Chapter 3 Spatial Domain Image Processing.pdf
Cloud computing and distributed systems.
MYSQL Presentation for SQL database connectivity
Review of recent advances in non-invasive hemoglobin estimation
The Rise and Fall of 3GPP – Time for a Sabbatical?
Reach Out and Touch Someone: Haptics and Empathic Computing
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
Machine learning based COVID-19 study performance prediction
CIFDAQ's Market Insight: SEC Turns Pro Crypto

5-Oject Design & Mapping on Code__ .pptx

  • 1. Object Design & Mapping onto Code By Dr. Maryam Kausar
  • 2. Object Design • Purpose of object design: • Prepare for the implementation of the analysis model based on system design decisions • Transform analysis and system design models • Investigate alternative ways to implement the analysis model • Use design goals: minimize execution time, memory and other measures of cost. • Object Design serves as the basis of implementation 1-2
  • 3. Terminology: Naming of Design Activities 1-3
  • 4. System Development as a Set of Activities 1-4
  • 5. 1-5
  • 6. 1-6
  • 7. Object Design consists of 4 Activities 1. Reuse: Identification of existing solutions • Use of inheritance • Off-the-shelf components and additional solution objects • Design patterns 2. Interface specification • Describes precisely each class interface 3. Object model restructuring • Transforms the object design model to improve its understandability and extensibility 4. Object model optimization • Transforms the object design model to address performance criteria such as response time or memory utilization. 1-7
  • 8. 1-8
  • 9. 1-9
  • 10. One Way to do Object Design • Identify the missing components in the design gap • Make a build or buy decision to obtain the missing component • => Component-Based Software Engineering: • The design gap is filled with available components (“0 % coding”). 1-10
  • 11. 1-11
  • 15. Collections • One-to-many relationships are common. • For example, a Sale must maintain visibility to a group of many SalesLineItem instances. • In OO programming languages, these relationships are usually implemented with the introduction of a collection object, such as a List or Map, or even a simple array. • Java libraries contain collection classes such as ArrayList and HashMap, which implement the List and Map interfaces, respectively. 1-15
  • 17. Order of Implementation • Classes need to be implemented from least-coupled to most- coupled. • E.g., • possible first classes to implement are either Payment or ProductDescription; • next are classes only dependent on the prior implementations— ProductCatalog or SalesLineItem 1-17
  • 18. 1-18 SalesLineItem quantity : Integer getSubtotal() ProductCatalog ... getProductDesc(...) ProductDescription description : Text price : Money itemID : ItemID ... Store address : Address name : Text addSale(...) Payment amount : Money ... 1..* 1..* Register ... endSale() enterItem(...) makeNewSale() makePayment(...) Sale isComplete : Boolean time : DateTime becomeComplete() makeLineItem(...) makePayment(...) getTotal() ... 1 1 1 1 1 1 * 1 2 3 4 5 6 7
  • 20. 1-20