SlideShare a Scribd company logo
Object Oriented Design with
           UML
 Organized By: Vinay Arora
               Assistant Professor, CSED, Thapar University
                www.slideshare.net/aroravinay
Disclaimer


         This is NOT A COPYRIGHT               MATERIAL


       Content has been taken mainly from the following books:
System Analysis and Design Methods By Jeffrey L Whitten & Lonnie D Bentley ,
          Analysis & Design of Information Systems By James A. Senn,
                 System Analysis & Design By Elias M. Awad,
Modern System Analysis & Design By Jeffrey A. Hoffer, Joey F.George & Joseph
                                   S. Valacich
Object Oriented Design

    Object-Oriented Design (OOD) – An approach used to specify the
    software solution in terms of collaborating objects, their attributes,
    and their methods.

       Continuation of Object-Oriented Analysis
Design Object Types

   Entity Object – An Object that contains business-related information that is
   typically persistent and stored in a database.




                               ENTITY
                               OBJECT
Design Object Types

   Interface Object – An Object that provides the means by which an actor
   can interface with the system.

       Examples include a window, dialogue box or screen.

       For nonhuman actors, an Application Program Interface (API) is the
       interface object.




                              INTERFACE
                                OBJECT
Design Object Types

   Control Object – An Object that contains application logic that isn’t the
   responsibility of an entity object.

       Examples of such logic are business rules and calculations that involve
       multiple objects.

       Control Objects coordinate messages between interface objects and entity
       objects and the sequences in which the messages occur.




                                CONTROL
                                 OBJECT
Design Object Types


    Persistence Class – An Object Class that provides functionality to read and
                          write persistent attributes in a database.




    System Class – An Object Class that handles Operating System specific
                                          functionality.
Design Relationships - Dependency

   A dependency relationship is used to model the association between two classes:
       To indicate that when a change occurs in one class, it may affect the other
       class.
       To indicate the association between a persistent class and a transient class.
            Interface classes typically are transient
       Illustrated with a dashed arrow
                                                      The Order Display
                                                   Window is an interface
                                                   class. It is dependent on
                                                     the Order Processor
                                                      class to respond to
                                                     events initiated from
                                                         the interface.
Design Relationships - Navigability

    Classes with associations can navigate (send messages) to each other.
    By default the associations are bidirectional.
    Sometimes you want to limit the message sending to only one direction.
    Illustrated with an arrow pointing in the direction a message can be sent.


   Given a User, you can
  find that user’s current
        password for
    authentication. But
   given a password, you
      cannot find the
    corresponding user.
Attribute and Method Visibility

   Visibility – The level of access an external object .

       Public attributes/methods - Denoted by the symbol +
       Protected attributes/methods - Denoted by the symbol #
       Private attributes/methods - Denoted by the symbol –


   Method – The Software Logic that is executed in response to a message.
Object Responsibilities

   Object Responsibility – The Obligation that an object has to provide a service
   when requested and thus collaborate with other objects to satisfy the request if
   required.

       An object responsibility is implemented by the creation of methods that
       may have to collaborate with other objects and methods.
Object Responsibility
                                                                   1: Message to
                                                                request to display a
                                                                 customer’s order
                                                                    information
                  2: Message to                                                                   Customer Order

                request customer
                   information


     Customer            submits                    Order


                  1                   0..*                      8: Display customer
                                                                        order
                                                   1
                3: Return customer
                    information
                             4: Message to                  7: Return all product
                          request all products                  information
                              that an order
                                contains


                                                               6: Return detailed
                                                              product information
                                                 1..*


                                       Member Ordered Product            is for         Product


                                                                  0..*              1



                                                                5: Message to
                                                               request detailed
                                                              product information
The Process of Object-Oriented Design

   Refining the use case model to reflect the implementation environment.



   Modeling object interactions and behavior that support the use case scenario.



   Updating the object model to reflect the implementation environment.
Refining The Use Case Model

 Step 1: Transforming the “Analysis” Use Cases to “Design” Use Cases



 Step 2: Updating the Use Case Model Diagram and Other Documentation to Reflect
         any New Use Cases
Design Use Case
Design Use Case (continued)
Design Use Case (continued)
Design Use Case (concluded)
Modeling Object Interactions and Behaviors

 Step 1: Identify and Classify Use-Case Design Objects

 Step 2: Identify Object Attributes

 Step 3: Model High-Level Object Interactions

 Step 4: Identify Object States, Behaviors, and Responsibilities

 Step 5: Model Detailed Object Interactions
Identify and Classify Use-Case Design Objects
Model High-Level Interactions with Object
         Robustness Diagrams




                                     Control object
        Actors may interact
        with the system via
                                 coordinates messages
         interface objects      sent to the entity objects
Identify Object States, Behaviors &
               Responsibilities

Analyze the use cases to identify required system behaviors

Associate behaviors and responsibilities with objects

Examine object model for additional behaviors

Verify classifications
Identify Object States, Behaviors &
          Responsibilities
Condensed Behavior List
Examine Class Diagram to Discover Additional
                 Behaviors
State and Diagramming State

   Object State – A Condition of the object at one point in its lifetime.

   State Transition Event – An Occurrence that triggers a change in an object’s
   state through the updating of one or more of its attribute values.

   State Chart Diagram – A UML diagram that depicts

       The Combination of states that an object can assume during its lifetime

       The Events that trigger transitions between states

       The Rules governing the from and to states an object may transition
Object State Example
State Chart Diagram
Verifying Object Behavior and Collaboration

    Role Playing – The Act of Simulating Object Behavior And
    Collaboration by acting out an object’s behaviors and responsibilities.

       Participants may assume the role of an actor on an object type

       Message sending is simulated by using an item such as a ball that is
       passed between the participants.


       Useful for discovering missing objects and behaviors.
Object Reusability

   Object Framework – A Set of related, interacting Objects that provide a
   well-defined set of services for accomplishing a task.




   Component – A Group of Objects packaged together into one unit. An
   example of a component is a Dynamic Link Library (DLL) or
   Executable File.
Verifying Object Behavior and Collaboration

    Role Playing – The act of simulating Object behavior and collaboration
                   by acting out an Object’s behaviors and responsibilities.

       Participants may assume the role of an actor on an object type

       Message sending is simulated by using an item such as a ball that is
       passed between the participants.

       Useful for discovering missing objects and behaviors.
Modeling Object Interactions for a Use Case

   Sequence Diagram:–

   A UML diagram that models the logic of a use case by depicting the
   interaction of messages between objects in time sequence.



   Collaboration Diagram:–

   A UML diagram that models the logic of a use case by depicting the
   flows of messages between objects in message sequence.
Partial Sequence Diagram
Updating Object Model to Reflect Implementation
                 Environment
   Design Class Diagram: – A Diagram that depicts classes that correspond to
   software components that are used to build the software application. Includes:

       Classes

       Associations and gen/spec and aggregation relationships

       Attributes and attribute-type information

       Methods with parameters

       Navigability

       Dependencies
Transforming Analysis Class Diagram to Design
               Class Diagram

   Add design objects to diagram

   Add attributes and attribute-type information to design objects

   Add attribute visibility

   Add methods to design objects

   Add method visibility

   Add association navigability

   Add dependency relationships
Partial Design Class Diagram
Additional UML Design and Implementation
               Diagrams

 Activity Diagrams model actions that will be performed when an operation is
 executing as well as the results of those actions.




 Component Diagrams graphically depict the physical architecture of the
 software of the system. They can be used to show how programming code is
 divided into modules and to depict the dependencies between those components.




 Deployment Diagrams describe the physical architecture of the hardware and
 software in the system.
Component Diagram
Deployment Diagram
Reference List

1. System Analysis and Design Methods By Jeffrey L Whitten & Lonnie D Bentley

2. Analysis & Design of Information Systems By James A. Senn

3. System Analysis & Design By Elias M. Awad

4. Modern System Analysis & Design By Jeffrey A. Hoffer, Joey F.George & Joseph S. Valacich

                                     etc…….
Thnx…
Ad

More Related Content

What's hot (20)

Introduction to OOAD
Introduction to OOADIntroduction to OOAD
Introduction to OOAD
Saraswati Saud
 
DISE - OOAD Using UML
DISE - OOAD Using UMLDISE - OOAD Using UML
DISE - OOAD Using UML
Rasan Samarasinghe
 
Object model
Object modelObject model
Object model
Hoang Nguyen
 
object oriented methodologies
object oriented methodologiesobject oriented methodologies
object oriented methodologies
Amith Tiwari
 
Object Modeling Techniques
Object Modeling TechniquesObject Modeling Techniques
Object Modeling Techniques
Shilpa Wadhwani
 
Chapter1
Chapter1Chapter1
Chapter1
Dang Tuan
 
Object oriented modeling and design
Object oriented modeling and designObject oriented modeling and design
Object oriented modeling and design
jayashri kolekar
 
CS8592 Object Oriented Analysis & Design - UNIT I
CS8592 Object Oriented Analysis & Design - UNIT ICS8592 Object Oriented Analysis & Design - UNIT I
CS8592 Object Oriented Analysis & Design - UNIT I
pkaviya
 
Ooad 2marks
Ooad 2marksOoad 2marks
Ooad 2marks
Ash Wini
 
Ooad
OoadOoad
Ooad
gantib
 
Jeet ooad unit-2
Jeet ooad unit-2Jeet ooad unit-2
Jeet ooad unit-2
Jitendra s Rathore
 
Patterns
PatternsPatterns
Patterns
Amith Tiwari
 
Object analysis and design
Object analysis and designObject analysis and design
Object analysis and design
Anand Grewal
 
Ooad
OoadOoad
Ooad
Griffinder VinHai
 
Chapter20 object oriented analysis and design
Chapter20 object oriented analysis and designChapter20 object oriented analysis and design
Chapter20 object oriented analysis and design
Dhani Ahmad
 
Object Oriented Analysis (Coad-Yourdon)
Object Oriented Analysis (Coad-Yourdon)Object Oriented Analysis (Coad-Yourdon)
Object Oriented Analysis (Coad-Yourdon)
Subash Khatiwada
 
Uml
UmlUml
Uml
parag
 
Object Oriented Analysis and Design with UML2 part1
Object Oriented Analysis and Design with UML2 part1Object Oriented Analysis and Design with UML2 part1
Object Oriented Analysis and Design with UML2 part1
Haitham Raik
 
Ooad ppt
Ooad pptOoad ppt
Ooad ppt
Radhika Yadav
 
A&D - Object Oriented Analysis using UML
A&D - Object Oriented Analysis using UMLA&D - Object Oriented Analysis using UML
A&D - Object Oriented Analysis using UML
vinay arora
 
object oriented methodologies
object oriented methodologiesobject oriented methodologies
object oriented methodologies
Amith Tiwari
 
Object Modeling Techniques
Object Modeling TechniquesObject Modeling Techniques
Object Modeling Techniques
Shilpa Wadhwani
 
Object oriented modeling and design
Object oriented modeling and designObject oriented modeling and design
Object oriented modeling and design
jayashri kolekar
 
CS8592 Object Oriented Analysis & Design - UNIT I
CS8592 Object Oriented Analysis & Design - UNIT ICS8592 Object Oriented Analysis & Design - UNIT I
CS8592 Object Oriented Analysis & Design - UNIT I
pkaviya
 
Ooad 2marks
Ooad 2marksOoad 2marks
Ooad 2marks
Ash Wini
 
Object analysis and design
Object analysis and designObject analysis and design
Object analysis and design
Anand Grewal
 
Chapter20 object oriented analysis and design
Chapter20 object oriented analysis and designChapter20 object oriented analysis and design
Chapter20 object oriented analysis and design
Dhani Ahmad
 
Object Oriented Analysis (Coad-Yourdon)
Object Oriented Analysis (Coad-Yourdon)Object Oriented Analysis (Coad-Yourdon)
Object Oriented Analysis (Coad-Yourdon)
Subash Khatiwada
 
Object Oriented Analysis and Design with UML2 part1
Object Oriented Analysis and Design with UML2 part1Object Oriented Analysis and Design with UML2 part1
Object Oriented Analysis and Design with UML2 part1
Haitham Raik
 
A&D - Object Oriented Analysis using UML
A&D - Object Oriented Analysis using UMLA&D - Object Oriented Analysis using UML
A&D - Object Oriented Analysis using UML
vinay arora
 

Viewers also liked (20)

Object Oriented Modeling and Design with UML
Object Oriented Modeling and Design with UMLObject Oriented Modeling and Design with UML
Object Oriented Modeling and Design with UML
Malek Sumaiya
 
Object oriented modeling and design
Object oriented modeling and designObject oriented modeling and design
Object oriented modeling and design
ATS SBGI MIRAJ
 
Object Oriented Design in Software Engineering SE12
Object Oriented Design in Software Engineering SE12Object Oriented Design in Software Engineering SE12
Object Oriented Design in Software Engineering SE12
koolkampus
 
Introduction | Categories for Description of Works of Art | CDWA-LITE
Introduction | Categories for Description of Works of Art | CDWA-LITE Introduction | Categories for Description of Works of Art | CDWA-LITE
Introduction | Categories for Description of Works of Art | CDWA-LITE
Kymberly Keeton
 
UML
UMLUML
UML
iQra Rafaqat
 
object oriented uml modeling for traveler management system
object oriented uml modeling for traveler management systemobject oriented uml modeling for traveler management system
object oriented uml modeling for traveler management system
hriday81
 
Cse 5 8sem
Cse 5 8semCse 5 8sem
Cse 5 8sem
kumar Dinoth
 
MTP for MCA
MTP for MCAMTP for MCA
MTP for MCA
Tushar Rajput
 
OMD chapter 2 Class modelling
 OMD  chapter 2 Class modelling OMD  chapter 2 Class modelling
OMD chapter 2 Class modelling
jayashri kolekar
 
Object Oriented Concept
Object Oriented ConceptObject Oriented Concept
Object Oriented Concept
smj
 
Object Oriented Software Engineering
Object Oriented Software EngineeringObject Oriented Software Engineering
Object Oriented Software Engineering
Michelle Azuelo
 
Object oriented testing
Object oriented testingObject oriented testing
Object oriented testing
Haris Jamil
 
Unified Modeling Language (UML), Object-Oriented Programming Concepts & Desig...
Unified Modeling Language (UML), Object-Oriented Programming Concepts & Desig...Unified Modeling Language (UML), Object-Oriented Programming Concepts & Desig...
Unified Modeling Language (UML), Object-Oriented Programming Concepts & Desig...
Isuru Perera
 
Object modeling
Object modelingObject modeling
Object modeling
Anand Grewal
 
Object Oriented Software Engineering (OOSE) presentation on SOFTWARE MAINTENANCE
Object Oriented Software Engineering (OOSE) presentation on SOFTWARE MAINTENANCEObject Oriented Software Engineering (OOSE) presentation on SOFTWARE MAINTENANCE
Object Oriented Software Engineering (OOSE) presentation on SOFTWARE MAINTENANCE
Vipin Kumar
 
Object Oriented Design Concept
Object Oriented Design ConceptObject Oriented Design Concept
Object Oriented Design Concept
Sharath g
 
Modeling CDWA Lite as an OWL-DL Ontology
Modeling CDWA Lite as an OWL-DL OntologyModeling CDWA Lite as an OWL-DL Ontology
Modeling CDWA Lite as an OWL-DL Ontology
Richard Urban
 
Object Oriented Software Engineering
Object Oriented Software EngineeringObject Oriented Software Engineering
Object Oriented Software Engineering
Ali Haider
 
Advanced behavioral modeling chapter 4 of omd
Advanced behavioral modeling chapter 4 of omdAdvanced behavioral modeling chapter 4 of omd
Advanced behavioral modeling chapter 4 of omd
jayashri kolekar
 
Object Oriented Design
Object Oriented DesignObject Oriented Design
Object Oriented Design
Sudarsun Santhiappan
 
Object Oriented Modeling and Design with UML
Object Oriented Modeling and Design with UMLObject Oriented Modeling and Design with UML
Object Oriented Modeling and Design with UML
Malek Sumaiya
 
Object oriented modeling and design
Object oriented modeling and designObject oriented modeling and design
Object oriented modeling and design
ATS SBGI MIRAJ
 
Object Oriented Design in Software Engineering SE12
Object Oriented Design in Software Engineering SE12Object Oriented Design in Software Engineering SE12
Object Oriented Design in Software Engineering SE12
koolkampus
 
Introduction | Categories for Description of Works of Art | CDWA-LITE
Introduction | Categories for Description of Works of Art | CDWA-LITE Introduction | Categories for Description of Works of Art | CDWA-LITE
Introduction | Categories for Description of Works of Art | CDWA-LITE
Kymberly Keeton
 
object oriented uml modeling for traveler management system
object oriented uml modeling for traveler management systemobject oriented uml modeling for traveler management system
object oriented uml modeling for traveler management system
hriday81
 
OMD chapter 2 Class modelling
 OMD  chapter 2 Class modelling OMD  chapter 2 Class modelling
OMD chapter 2 Class modelling
jayashri kolekar
 
Object Oriented Concept
Object Oriented ConceptObject Oriented Concept
Object Oriented Concept
smj
 
Object Oriented Software Engineering
Object Oriented Software EngineeringObject Oriented Software Engineering
Object Oriented Software Engineering
Michelle Azuelo
 
Object oriented testing
Object oriented testingObject oriented testing
Object oriented testing
Haris Jamil
 
Unified Modeling Language (UML), Object-Oriented Programming Concepts & Desig...
Unified Modeling Language (UML), Object-Oriented Programming Concepts & Desig...Unified Modeling Language (UML), Object-Oriented Programming Concepts & Desig...
Unified Modeling Language (UML), Object-Oriented Programming Concepts & Desig...
Isuru Perera
 
Object Oriented Software Engineering (OOSE) presentation on SOFTWARE MAINTENANCE
Object Oriented Software Engineering (OOSE) presentation on SOFTWARE MAINTENANCEObject Oriented Software Engineering (OOSE) presentation on SOFTWARE MAINTENANCE
Object Oriented Software Engineering (OOSE) presentation on SOFTWARE MAINTENANCE
Vipin Kumar
 
Object Oriented Design Concept
Object Oriented Design ConceptObject Oriented Design Concept
Object Oriented Design Concept
Sharath g
 
Modeling CDWA Lite as an OWL-DL Ontology
Modeling CDWA Lite as an OWL-DL OntologyModeling CDWA Lite as an OWL-DL Ontology
Modeling CDWA Lite as an OWL-DL Ontology
Richard Urban
 
Object Oriented Software Engineering
Object Oriented Software EngineeringObject Oriented Software Engineering
Object Oriented Software Engineering
Ali Haider
 
Advanced behavioral modeling chapter 4 of omd
Advanced behavioral modeling chapter 4 of omdAdvanced behavioral modeling chapter 4 of omd
Advanced behavioral modeling chapter 4 of omd
jayashri kolekar
 
Ad

Similar to A&D - Object Oriented Design using UML (20)

L5 m256 block2_unit5
L5 m256 block2_unit5L5 m256 block2_unit5
L5 m256 block2_unit5
Dr Omar M.S Hamed
 
Bt8901 objective oriented systems1
Bt8901 objective oriented systems1Bt8901 objective oriented systems1
Bt8901 objective oriented systems1
Techglyphs
 
Design Pattern Notes: Nagpur University
Design Pattern Notes: Nagpur UniversityDesign Pattern Notes: Nagpur University
Design Pattern Notes: Nagpur University
Shubham Narkhede
 
Classes and Objects
Classes and Objects  Classes and Objects
Classes and Objects
yndaravind
 
Ooad
OoadOoad
Ooad
Griffinder VinHai
 
Oos Short Q N
Oos Short Q NOos Short Q N
Oos Short Q N
Prabha Krishnan
 
Understanding-Objects-in-Javascript.pptx
Understanding-Objects-in-Javascript.pptxUnderstanding-Objects-in-Javascript.pptx
Understanding-Objects-in-Javascript.pptx
MariaTrinidadTumanga
 
software_engg-chap-03.ppt
software_engg-chap-03.pptsoftware_engg-chap-03.ppt
software_engg-chap-03.ppt
064ChetanWani
 
InSPECT Significant Properties Framework (SPs part 2), by Stephen Grace and G...
InSPECT Significant Properties Framework (SPs part 2), by Stephen Grace and G...InSPECT Significant Properties Framework (SPs part 2), by Stephen Grace and G...
InSPECT Significant Properties Framework (SPs part 2), by Stephen Grace and G...
JISC KeepIt project
 
Encapsulation
EncapsulationEncapsulation
Encapsulation
FALLEE31188
 
uml.pptx
uml.pptxuml.pptx
uml.pptx
amanuel236786
 
OOAD unit1 introduction to object orientation
 OOAD unit1 introduction to object orientation OOAD unit1 introduction to object orientation
OOAD unit1 introduction to object orientation
Dr Chetan Shelke
 
Analysis modeling
Analysis modelingAnalysis modeling
Analysis modeling
Inocentshuja Ahmad
 
Analysis modeling in software engineering
Analysis modeling in software engineeringAnalysis modeling in software engineering
Analysis modeling in software engineering
MuhammadTalha436
 
Software Design Trilogy Part I - Responsibility Driven Design for Rubyists
Software Design Trilogy Part I - Responsibility Driven Design for RubyistsSoftware Design Trilogy Part I - Responsibility Driven Design for Rubyists
Software Design Trilogy Part I - Responsibility Driven Design for Rubyists
Andy Maleh
 
Ooad
OoadOoad
Ooad
Ashenafi Workie
 
Ooad 2
Ooad 2Ooad 2
Ooad 2
Ashenafi Workie
 
4. class diagrams using uml
4. class diagrams using uml4. class diagrams using uml
4. class diagrams using uml
APU
 
4.class diagramsusinguml
4.class diagramsusinguml4.class diagramsusinguml
4.class diagramsusinguml
APU
 
MCA NOTES.pdf
MCA NOTES.pdfMCA NOTES.pdf
MCA NOTES.pdf
RAJASEKHARV10
 
Bt8901 objective oriented systems1
Bt8901 objective oriented systems1Bt8901 objective oriented systems1
Bt8901 objective oriented systems1
Techglyphs
 
Design Pattern Notes: Nagpur University
Design Pattern Notes: Nagpur UniversityDesign Pattern Notes: Nagpur University
Design Pattern Notes: Nagpur University
Shubham Narkhede
 
Classes and Objects
Classes and Objects  Classes and Objects
Classes and Objects
yndaravind
 
Understanding-Objects-in-Javascript.pptx
Understanding-Objects-in-Javascript.pptxUnderstanding-Objects-in-Javascript.pptx
Understanding-Objects-in-Javascript.pptx
MariaTrinidadTumanga
 
software_engg-chap-03.ppt
software_engg-chap-03.pptsoftware_engg-chap-03.ppt
software_engg-chap-03.ppt
064ChetanWani
 
InSPECT Significant Properties Framework (SPs part 2), by Stephen Grace and G...
InSPECT Significant Properties Framework (SPs part 2), by Stephen Grace and G...InSPECT Significant Properties Framework (SPs part 2), by Stephen Grace and G...
InSPECT Significant Properties Framework (SPs part 2), by Stephen Grace and G...
JISC KeepIt project
 
OOAD unit1 introduction to object orientation
 OOAD unit1 introduction to object orientation OOAD unit1 introduction to object orientation
OOAD unit1 introduction to object orientation
Dr Chetan Shelke
 
Analysis modeling in software engineering
Analysis modeling in software engineeringAnalysis modeling in software engineering
Analysis modeling in software engineering
MuhammadTalha436
 
Software Design Trilogy Part I - Responsibility Driven Design for Rubyists
Software Design Trilogy Part I - Responsibility Driven Design for RubyistsSoftware Design Trilogy Part I - Responsibility Driven Design for Rubyists
Software Design Trilogy Part I - Responsibility Driven Design for Rubyists
Andy Maleh
 
4. class diagrams using uml
4. class diagrams using uml4. class diagrams using uml
4. class diagrams using uml
APU
 
4.class diagramsusinguml
4.class diagramsusinguml4.class diagramsusinguml
4.class diagramsusinguml
APU
 
Ad

More from vinay arora (20)

Search engine and web crawler
Search engine and web crawlerSearch engine and web crawler
Search engine and web crawler
vinay arora
 
Use case diagram (airport)
Use case diagram (airport)Use case diagram (airport)
Use case diagram (airport)
vinay arora
 
Use case diagram
Use case diagramUse case diagram
Use case diagram
vinay arora
 
Lab exercise questions (AD & CD)
Lab exercise questions (AD & CD)Lab exercise questions (AD & CD)
Lab exercise questions (AD & CD)
vinay arora
 
SEM - UML (1st case study)
SEM - UML (1st case study)SEM - UML (1st case study)
SEM - UML (1st case study)
vinay arora
 
6 java - loop
6  java - loop6  java - loop
6 java - loop
vinay arora
 
4 java - decision
4  java - decision4  java - decision
4 java - decision
vinay arora
 
3 java - variable type
3  java - variable type3  java - variable type
3 java - variable type
vinay arora
 
2 java - operators
2  java - operators2  java - operators
2 java - operators
vinay arora
 
1 java - data type
1  java - data type1  java - data type
1 java - data type
vinay arora
 
Uta005 lecture3
Uta005 lecture3Uta005 lecture3
Uta005 lecture3
vinay arora
 
Uta005 lecture1
Uta005 lecture1Uta005 lecture1
Uta005 lecture1
vinay arora
 
Uta005 lecture2
Uta005 lecture2Uta005 lecture2
Uta005 lecture2
vinay arora
 
Security & Protection
Security & ProtectionSecurity & Protection
Security & Protection
vinay arora
 
Process Synchronization
Process SynchronizationProcess Synchronization
Process Synchronization
vinay arora
 
CG - Output Primitives
CG - Output PrimitivesCG - Output Primitives
CG - Output Primitives
vinay arora
 
CG - Display Devices
CG - Display DevicesCG - Display Devices
CG - Display Devices
vinay arora
 
CG - Input Output Devices
CG - Input Output DevicesCG - Input Output Devices
CG - Input Output Devices
vinay arora
 
CG - Introduction to Computer Graphics
CG - Introduction to Computer GraphicsCG - Introduction to Computer Graphics
CG - Introduction to Computer Graphics
vinay arora
 
C Prog. - Strings (Updated)
C Prog. - Strings (Updated)C Prog. - Strings (Updated)
C Prog. - Strings (Updated)
vinay arora
 
Search engine and web crawler
Search engine and web crawlerSearch engine and web crawler
Search engine and web crawler
vinay arora
 
Use case diagram (airport)
Use case diagram (airport)Use case diagram (airport)
Use case diagram (airport)
vinay arora
 
Use case diagram
Use case diagramUse case diagram
Use case diagram
vinay arora
 
Lab exercise questions (AD & CD)
Lab exercise questions (AD & CD)Lab exercise questions (AD & CD)
Lab exercise questions (AD & CD)
vinay arora
 
SEM - UML (1st case study)
SEM - UML (1st case study)SEM - UML (1st case study)
SEM - UML (1st case study)
vinay arora
 
4 java - decision
4  java - decision4  java - decision
4 java - decision
vinay arora
 
3 java - variable type
3  java - variable type3  java - variable type
3 java - variable type
vinay arora
 
2 java - operators
2  java - operators2  java - operators
2 java - operators
vinay arora
 
1 java - data type
1  java - data type1  java - data type
1 java - data type
vinay arora
 
Security & Protection
Security & ProtectionSecurity & Protection
Security & Protection
vinay arora
 
Process Synchronization
Process SynchronizationProcess Synchronization
Process Synchronization
vinay arora
 
CG - Output Primitives
CG - Output PrimitivesCG - Output Primitives
CG - Output Primitives
vinay arora
 
CG - Display Devices
CG - Display DevicesCG - Display Devices
CG - Display Devices
vinay arora
 
CG - Input Output Devices
CG - Input Output DevicesCG - Input Output Devices
CG - Input Output Devices
vinay arora
 
CG - Introduction to Computer Graphics
CG - Introduction to Computer GraphicsCG - Introduction to Computer Graphics
CG - Introduction to Computer Graphics
vinay arora
 
C Prog. - Strings (Updated)
C Prog. - Strings (Updated)C Prog. - Strings (Updated)
C Prog. - Strings (Updated)
vinay arora
 

Recently uploaded (20)

Myasthenia gravis (Neuromuscular disorder)
Myasthenia gravis (Neuromuscular disorder)Myasthenia gravis (Neuromuscular disorder)
Myasthenia gravis (Neuromuscular disorder)
Mohamed Rizk Khodair
 
What is the Philosophy of Statistics? (and how I was drawn to it)
What is the Philosophy of Statistics? (and how I was drawn to it)What is the Philosophy of Statistics? (and how I was drawn to it)
What is the Philosophy of Statistics? (and how I was drawn to it)
jemille6
 
Drugs in Anaesthesia and Intensive Care,.pdf
Drugs in Anaesthesia and Intensive Care,.pdfDrugs in Anaesthesia and Intensive Care,.pdf
Drugs in Anaesthesia and Intensive Care,.pdf
crewot855
 
History Of The Monastery Of Mor Gabriel Philoxenos Yuhanon Dolabani
History Of The Monastery Of Mor Gabriel Philoxenos Yuhanon DolabaniHistory Of The Monastery Of Mor Gabriel Philoxenos Yuhanon Dolabani
History Of The Monastery Of Mor Gabriel Philoxenos Yuhanon Dolabani
fruinkamel7m
 
Redesigning Education as a Cognitive Ecosystem: Practical Insights into Emerg...
Redesigning Education as a Cognitive Ecosystem: Practical Insights into Emerg...Redesigning Education as a Cognitive Ecosystem: Practical Insights into Emerg...
Redesigning Education as a Cognitive Ecosystem: Practical Insights into Emerg...
Leonel Morgado
 
Pope Leo XIV, the first Pope from North America.pptx
Pope Leo XIV, the first Pope from North America.pptxPope Leo XIV, the first Pope from North America.pptx
Pope Leo XIV, the first Pope from North America.pptx
Martin M Flynn
 
Search Matching Applicants in Odoo 18 - Odoo Slides
Search Matching Applicants in Odoo 18 - Odoo SlidesSearch Matching Applicants in Odoo 18 - Odoo Slides
Search Matching Applicants in Odoo 18 - Odoo Slides
Celine George
 
Cultivation Practice of Onion in Nepal.pptx
Cultivation Practice of Onion in Nepal.pptxCultivation Practice of Onion in Nepal.pptx
Cultivation Practice of Onion in Nepal.pptx
UmeshTimilsina1
 
Module 1: Foundations of Research
Module 1: Foundations of ResearchModule 1: Foundations of Research
Module 1: Foundations of Research
drroxannekemp
 
Classification of mental disorder in 5th semester bsc. nursing and also used ...
Classification of mental disorder in 5th semester bsc. nursing and also used ...Classification of mental disorder in 5th semester bsc. nursing and also used ...
Classification of mental disorder in 5th semester bsc. nursing and also used ...
parmarjuli1412
 
puzzle Irregular Verbs- Simple Past Tense
puzzle Irregular Verbs- Simple Past Tensepuzzle Irregular Verbs- Simple Past Tense
puzzle Irregular Verbs- Simple Past Tense
OlgaLeonorTorresSnch
 
2025 The Senior Landscape and SET plan preparations.pptx
2025 The Senior Landscape and SET plan preparations.pptx2025 The Senior Landscape and SET plan preparations.pptx
2025 The Senior Landscape and SET plan preparations.pptx
mansk2
 
Mental Health Assessment in 5th semester bsc. nursing and also used in 2nd ye...
Mental Health Assessment in 5th semester bsc. nursing and also used in 2nd ye...Mental Health Assessment in 5th semester bsc. nursing and also used in 2nd ye...
Mental Health Assessment in 5th semester bsc. nursing and also used in 2nd ye...
parmarjuli1412
 
LDMMIA Reiki News Ed3 Vol1 For Team and Guests
LDMMIA Reiki News Ed3 Vol1 For Team and GuestsLDMMIA Reiki News Ed3 Vol1 For Team and Guests
LDMMIA Reiki News Ed3 Vol1 For Team and Guests
LDM Mia eStudios
 
How to Clean Your Contacts Using the Deduplication Menu in Odoo 18
How to Clean Your Contacts Using the Deduplication Menu in Odoo 18How to Clean Your Contacts Using the Deduplication Menu in Odoo 18
How to Clean Your Contacts Using the Deduplication Menu in Odoo 18
Celine George
 
How to Configure Public Holidays & Mandatory Days in Odoo 18
How to Configure Public Holidays & Mandatory Days in Odoo 18How to Configure Public Holidays & Mandatory Days in Odoo 18
How to Configure Public Holidays & Mandatory Days in Odoo 18
Celine George
 
Botany Assignment Help Guide - Academic Excellence
Botany Assignment Help Guide - Academic ExcellenceBotany Assignment Help Guide - Academic Excellence
Botany Assignment Help Guide - Academic Excellence
online college homework help
 
MEDICAL BIOLOGY MCQS BY. DR NASIR MUSTAFA
MEDICAL BIOLOGY MCQS  BY. DR NASIR MUSTAFAMEDICAL BIOLOGY MCQS  BY. DR NASIR MUSTAFA
MEDICAL BIOLOGY MCQS BY. DR NASIR MUSTAFA
Dr. Nasir Mustafa
 
The role of wall art in interior designing
The role of wall art in interior designingThe role of wall art in interior designing
The role of wall art in interior designing
meghaark2110
 
How To Maximize Sales Performance using Odoo 18 Diverse views in sales module
How To Maximize Sales Performance using Odoo 18 Diverse views in sales moduleHow To Maximize Sales Performance using Odoo 18 Diverse views in sales module
How To Maximize Sales Performance using Odoo 18 Diverse views in sales module
Celine George
 
Myasthenia gravis (Neuromuscular disorder)
Myasthenia gravis (Neuromuscular disorder)Myasthenia gravis (Neuromuscular disorder)
Myasthenia gravis (Neuromuscular disorder)
Mohamed Rizk Khodair
 
What is the Philosophy of Statistics? (and how I was drawn to it)
What is the Philosophy of Statistics? (and how I was drawn to it)What is the Philosophy of Statistics? (and how I was drawn to it)
What is the Philosophy of Statistics? (and how I was drawn to it)
jemille6
 
Drugs in Anaesthesia and Intensive Care,.pdf
Drugs in Anaesthesia and Intensive Care,.pdfDrugs in Anaesthesia and Intensive Care,.pdf
Drugs in Anaesthesia and Intensive Care,.pdf
crewot855
 
History Of The Monastery Of Mor Gabriel Philoxenos Yuhanon Dolabani
History Of The Monastery Of Mor Gabriel Philoxenos Yuhanon DolabaniHistory Of The Monastery Of Mor Gabriel Philoxenos Yuhanon Dolabani
History Of The Monastery Of Mor Gabriel Philoxenos Yuhanon Dolabani
fruinkamel7m
 
Redesigning Education as a Cognitive Ecosystem: Practical Insights into Emerg...
Redesigning Education as a Cognitive Ecosystem: Practical Insights into Emerg...Redesigning Education as a Cognitive Ecosystem: Practical Insights into Emerg...
Redesigning Education as a Cognitive Ecosystem: Practical Insights into Emerg...
Leonel Morgado
 
Pope Leo XIV, the first Pope from North America.pptx
Pope Leo XIV, the first Pope from North America.pptxPope Leo XIV, the first Pope from North America.pptx
Pope Leo XIV, the first Pope from North America.pptx
Martin M Flynn
 
Search Matching Applicants in Odoo 18 - Odoo Slides
Search Matching Applicants in Odoo 18 - Odoo SlidesSearch Matching Applicants in Odoo 18 - Odoo Slides
Search Matching Applicants in Odoo 18 - Odoo Slides
Celine George
 
Cultivation Practice of Onion in Nepal.pptx
Cultivation Practice of Onion in Nepal.pptxCultivation Practice of Onion in Nepal.pptx
Cultivation Practice of Onion in Nepal.pptx
UmeshTimilsina1
 
Module 1: Foundations of Research
Module 1: Foundations of ResearchModule 1: Foundations of Research
Module 1: Foundations of Research
drroxannekemp
 
Classification of mental disorder in 5th semester bsc. nursing and also used ...
Classification of mental disorder in 5th semester bsc. nursing and also used ...Classification of mental disorder in 5th semester bsc. nursing and also used ...
Classification of mental disorder in 5th semester bsc. nursing and also used ...
parmarjuli1412
 
puzzle Irregular Verbs- Simple Past Tense
puzzle Irregular Verbs- Simple Past Tensepuzzle Irregular Verbs- Simple Past Tense
puzzle Irregular Verbs- Simple Past Tense
OlgaLeonorTorresSnch
 
2025 The Senior Landscape and SET plan preparations.pptx
2025 The Senior Landscape and SET plan preparations.pptx2025 The Senior Landscape and SET plan preparations.pptx
2025 The Senior Landscape and SET plan preparations.pptx
mansk2
 
Mental Health Assessment in 5th semester bsc. nursing and also used in 2nd ye...
Mental Health Assessment in 5th semester bsc. nursing and also used in 2nd ye...Mental Health Assessment in 5th semester bsc. nursing and also used in 2nd ye...
Mental Health Assessment in 5th semester bsc. nursing and also used in 2nd ye...
parmarjuli1412
 
LDMMIA Reiki News Ed3 Vol1 For Team and Guests
LDMMIA Reiki News Ed3 Vol1 For Team and GuestsLDMMIA Reiki News Ed3 Vol1 For Team and Guests
LDMMIA Reiki News Ed3 Vol1 For Team and Guests
LDM Mia eStudios
 
How to Clean Your Contacts Using the Deduplication Menu in Odoo 18
How to Clean Your Contacts Using the Deduplication Menu in Odoo 18How to Clean Your Contacts Using the Deduplication Menu in Odoo 18
How to Clean Your Contacts Using the Deduplication Menu in Odoo 18
Celine George
 
How to Configure Public Holidays & Mandatory Days in Odoo 18
How to Configure Public Holidays & Mandatory Days in Odoo 18How to Configure Public Holidays & Mandatory Days in Odoo 18
How to Configure Public Holidays & Mandatory Days in Odoo 18
Celine George
 
Botany Assignment Help Guide - Academic Excellence
Botany Assignment Help Guide - Academic ExcellenceBotany Assignment Help Guide - Academic Excellence
Botany Assignment Help Guide - Academic Excellence
online college homework help
 
MEDICAL BIOLOGY MCQS BY. DR NASIR MUSTAFA
MEDICAL BIOLOGY MCQS  BY. DR NASIR MUSTAFAMEDICAL BIOLOGY MCQS  BY. DR NASIR MUSTAFA
MEDICAL BIOLOGY MCQS BY. DR NASIR MUSTAFA
Dr. Nasir Mustafa
 
The role of wall art in interior designing
The role of wall art in interior designingThe role of wall art in interior designing
The role of wall art in interior designing
meghaark2110
 
How To Maximize Sales Performance using Odoo 18 Diverse views in sales module
How To Maximize Sales Performance using Odoo 18 Diverse views in sales moduleHow To Maximize Sales Performance using Odoo 18 Diverse views in sales module
How To Maximize Sales Performance using Odoo 18 Diverse views in sales module
Celine George
 

A&D - Object Oriented Design using UML

  • 1. Object Oriented Design with UML Organized By: Vinay Arora Assistant Professor, CSED, Thapar University www.slideshare.net/aroravinay
  • 2. Disclaimer This is NOT A COPYRIGHT MATERIAL Content has been taken mainly from the following books: System Analysis and Design Methods By Jeffrey L Whitten & Lonnie D Bentley , Analysis & Design of Information Systems By James A. Senn, System Analysis & Design By Elias M. Awad, Modern System Analysis & Design By Jeffrey A. Hoffer, Joey F.George & Joseph S. Valacich
  • 3. Object Oriented Design Object-Oriented Design (OOD) – An approach used to specify the software solution in terms of collaborating objects, their attributes, and their methods. Continuation of Object-Oriented Analysis
  • 4. Design Object Types Entity Object – An Object that contains business-related information that is typically persistent and stored in a database. ENTITY OBJECT
  • 5. Design Object Types Interface Object – An Object that provides the means by which an actor can interface with the system. Examples include a window, dialogue box or screen. For nonhuman actors, an Application Program Interface (API) is the interface object. INTERFACE OBJECT
  • 6. Design Object Types Control Object – An Object that contains application logic that isn’t the responsibility of an entity object. Examples of such logic are business rules and calculations that involve multiple objects. Control Objects coordinate messages between interface objects and entity objects and the sequences in which the messages occur. CONTROL OBJECT
  • 7. Design Object Types Persistence Class – An Object Class that provides functionality to read and write persistent attributes in a database. System Class – An Object Class that handles Operating System specific functionality.
  • 8. Design Relationships - Dependency A dependency relationship is used to model the association between two classes: To indicate that when a change occurs in one class, it may affect the other class. To indicate the association between a persistent class and a transient class. Interface classes typically are transient Illustrated with a dashed arrow The Order Display Window is an interface class. It is dependent on the Order Processor class to respond to events initiated from the interface.
  • 9. Design Relationships - Navigability Classes with associations can navigate (send messages) to each other. By default the associations are bidirectional. Sometimes you want to limit the message sending to only one direction. Illustrated with an arrow pointing in the direction a message can be sent. Given a User, you can find that user’s current password for authentication. But given a password, you cannot find the corresponding user.
  • 10. Attribute and Method Visibility Visibility – The level of access an external object . Public attributes/methods - Denoted by the symbol + Protected attributes/methods - Denoted by the symbol # Private attributes/methods - Denoted by the symbol – Method – The Software Logic that is executed in response to a message.
  • 11. Object Responsibilities Object Responsibility – The Obligation that an object has to provide a service when requested and thus collaborate with other objects to satisfy the request if required. An object responsibility is implemented by the creation of methods that may have to collaborate with other objects and methods.
  • 12. Object Responsibility 1: Message to request to display a customer’s order information 2: Message to Customer Order request customer information Customer submits Order 1 0..* 8: Display customer order 1 3: Return customer information 4: Message to 7: Return all product request all products information that an order contains 6: Return detailed product information 1..* Member Ordered Product is for Product 0..* 1 5: Message to request detailed product information
  • 13. The Process of Object-Oriented Design Refining the use case model to reflect the implementation environment. Modeling object interactions and behavior that support the use case scenario. Updating the object model to reflect the implementation environment.
  • 14. Refining The Use Case Model Step 1: Transforming the “Analysis” Use Cases to “Design” Use Cases Step 2: Updating the Use Case Model Diagram and Other Documentation to Reflect any New Use Cases
  • 16. Design Use Case (continued)
  • 17. Design Use Case (continued)
  • 18. Design Use Case (concluded)
  • 19. Modeling Object Interactions and Behaviors Step 1: Identify and Classify Use-Case Design Objects Step 2: Identify Object Attributes Step 3: Model High-Level Object Interactions Step 4: Identify Object States, Behaviors, and Responsibilities Step 5: Model Detailed Object Interactions
  • 20. Identify and Classify Use-Case Design Objects
  • 21. Model High-Level Interactions with Object Robustness Diagrams Control object Actors may interact with the system via coordinates messages interface objects sent to the entity objects
  • 22. Identify Object States, Behaviors & Responsibilities Analyze the use cases to identify required system behaviors Associate behaviors and responsibilities with objects Examine object model for additional behaviors Verify classifications
  • 23. Identify Object States, Behaviors & Responsibilities
  • 25. Examine Class Diagram to Discover Additional Behaviors
  • 26. State and Diagramming State Object State – A Condition of the object at one point in its lifetime. State Transition Event – An Occurrence that triggers a change in an object’s state through the updating of one or more of its attribute values. State Chart Diagram – A UML diagram that depicts The Combination of states that an object can assume during its lifetime The Events that trigger transitions between states The Rules governing the from and to states an object may transition
  • 29. Verifying Object Behavior and Collaboration Role Playing – The Act of Simulating Object Behavior And Collaboration by acting out an object’s behaviors and responsibilities. Participants may assume the role of an actor on an object type Message sending is simulated by using an item such as a ball that is passed between the participants. Useful for discovering missing objects and behaviors.
  • 30. Object Reusability Object Framework – A Set of related, interacting Objects that provide a well-defined set of services for accomplishing a task. Component – A Group of Objects packaged together into one unit. An example of a component is a Dynamic Link Library (DLL) or Executable File.
  • 31. Verifying Object Behavior and Collaboration Role Playing – The act of simulating Object behavior and collaboration by acting out an Object’s behaviors and responsibilities. Participants may assume the role of an actor on an object type Message sending is simulated by using an item such as a ball that is passed between the participants. Useful for discovering missing objects and behaviors.
  • 32. Modeling Object Interactions for a Use Case Sequence Diagram:– A UML diagram that models the logic of a use case by depicting the interaction of messages between objects in time sequence. Collaboration Diagram:– A UML diagram that models the logic of a use case by depicting the flows of messages between objects in message sequence.
  • 34. Updating Object Model to Reflect Implementation Environment Design Class Diagram: – A Diagram that depicts classes that correspond to software components that are used to build the software application. Includes: Classes Associations and gen/spec and aggregation relationships Attributes and attribute-type information Methods with parameters Navigability Dependencies
  • 35. Transforming Analysis Class Diagram to Design Class Diagram Add design objects to diagram Add attributes and attribute-type information to design objects Add attribute visibility Add methods to design objects Add method visibility Add association navigability Add dependency relationships
  • 37. Additional UML Design and Implementation Diagrams Activity Diagrams model actions that will be performed when an operation is executing as well as the results of those actions. Component Diagrams graphically depict the physical architecture of the software of the system. They can be used to show how programming code is divided into modules and to depict the dependencies between those components. Deployment Diagrams describe the physical architecture of the hardware and software in the system.
  • 40. Reference List 1. System Analysis and Design Methods By Jeffrey L Whitten & Lonnie D Bentley 2. Analysis & Design of Information Systems By James A. Senn 3. System Analysis & Design By Elias M. Awad 4. Modern System Analysis & Design By Jeffrey A. Hoffer, Joey F.George & Joseph S. Valacich etc…….
  翻译: