SlideShare a Scribd company logo
SYSTEM ANALYSIS AND DESIGN



    Object-Oriented Analysis
              and
            Design


                             1
Learning Objectives
       Key terms
         Association
         Class diagram
         Event
         Object
         Object class
         Operation
         Sequence diagram
         State
         State transition
         Unified Modeling Language (UML)
A.2      Use case                          2
Learning Objectives (continued)

       Discuss the concepts and principles underlying
        the object-oriented approach.
       Learn to develop requirements models using
        use-case diagrams.
       Learn to use class diagrams to develop object
        models of the problem domain.
       Learn to develop requirements models using
        state and sequence diagrams.


A.3                                                3
The Object-Oriented Modeling Approach
      ● Benefits
         1.The ability to tackle more challenging problem
           domains
         2.Improved communication among users,
           analysts, designers, and programmers
         3.Reusability of analysis, design, and
           programming results
         4.Increased consistency among the models
           developed during object-oriented analysis,
           design, and programming
A.4                                                  4
The Object-Oriented Modeling Approach
 (continued)
      ● Object-Oriented Systems Development Life
        Cycle
        – Process of progressively developing
          representation of a system component (or
          object) through the phases of analysis,
          design, and implementation
        – The model is abstract in the early stages
        – As the model evolves, it becomes more and
          more detailed

A.5                                            5
The Object-Oriented Systems
 Development Life Cycle
      ● Analysis Phase
         – Model of the real-world application is
           developed showing its important properties
         – Model specifies the functional behavior of the
           system independent of implementation details
      ● Design Phase
         – Analysis model is refined and adapted to the
           environment
      ● Implementation Phase
         – Design is implemented using a programming
           language or database management system
A.6                                                6
The Object-Oriented Systems Development Life Cycle
 (continued)
      ● Unified Modeling Language (UML)
        – A notation that allows the modeler to
          specify, visualize and construct the artifacts
          of software systems, as well as business
          models
        – Techniques and notations
           • Use cases
           • Class diagrams
           • State diagrams
           • Sequence diagrams
A.7                                                7
Use-Case Modeling
      ● Applied to analyze functional requirements of
        the system
      ● Performed during the analysis phase to help
        developers understand functional
        requirements of the system without regard for
        implementation details
      ● Use Case
         – A complete sequence of related actions
           initiated by an actor
      ● Actor
         – An external entity that interacts with the
           system
A.8                                             8
Use-Case Modeling
      ● Use cases represent complete functionality of
        the system
      ● Use cases may participate in relationships with
        other use cases
      ● Use cases may also use other use cases




A.9                                                 9
A.10   10
Object Modeling: Class Diagrams
     ● Object
        – An entity that has a well-defined role in the
          application domain, and has state, behavior,
          and identity
     ● State
        – A condition that encompasses an object’s
          properties and the values those properties have
     ● Behavior
        – A manner that represents how an object acts
          and reacts
     ● Object Class
        – A set of objects that share a common structure
A.11      and a common behavior                         11
Object Modeling:
  Class Diagrams (continued)
       ● Class Diagram
         – Class is represented as a rectangle with three
           compartments
         – Objects can participate in relationships with
           objects of the same class




A.12                                                 12
Object Modeling:
 Object Diagrams
       ● Object Diagram
          – A graph of instances that are compatible with a
            given class diagram; also called an instance
            diagram
          – Object is represented as a rectangle with two
            compartments
       ● Operation
          – A function or service that is provided by all the
            instances of a class
       ● Encapsulation
          – The technique of hiding the internal
            implementation details of an object from its
            external view
A.13                                                     13
A.14   14
Representing Associations
       ● Association
         – A relationship between object classes
         – Degree may be unary, binary, ternary or higher
         – Depicted as a solid line between participating
           classes
       ● Association Role
         – The end of an association where it connects to
           a class
         – Each role has multiplicity, which indicates how
           many objects participate in a given association
           relationship
A.15                                               15
A.16   16
Representing Generalization
       ● Generalization
          – Abstraction of common features among
            multiple classes, as well as their relationships,
            into a more general class
       ● Subclass
          – A class that has been generalized
       ● Superclass
          – A class that is composed of several generalized
            subclasses
A.17                                                  17
Representing Generalization (continued)

       ● Discriminator
          – Shows which property of an object class is
            being abstracted by a generalization
            relationship
       ● Inheritance
          – A property that a subclass inherits the features
            from its superclass
       ● Abstract Class
          – A class that has no direct instances but whose
            descendents may have direct instances
       ● Concrete Class
          – A class that can have direct instances
A.18                                                  18
A.19   19
Representing Aggregation
       ● Aggregation
         – A part-of relationship between a component object and
           an aggregate object
         – Example: Personal computer
            • Composed of CPU, Monitor, Keyboard, etc




A.20                                                        20
Dynamic Modeling: State Diagrams
       ● State
          – A condition during the life of an object during
            which it satisfies some conditions, performs
            some actions or waits for some events
          – Shown as a rectangle with rounded corners
       ● State Transition
          – The changes in the attributes of an object or in
            the links an object has with other objects
          – Shown as a solid arrow
          – Diagrammed with a guard condition and action
A.21
       ● Event                                        21
          – Something that takes place at a certain point in
A.22   22
Dynamic Modeling:
 Sequence Diagrams
       ● Sequence Diagram
          – A depiction of the interaction among objects
            during certain periods of time
       ● Activation
          – The time period during which an object
            performs an operation
       ● Messages
          – Means by which objects communicate with
            each other
A.23                                                23
Dynamic Modeling:
 Sequence Diagrams (continued)
       ● Synchronous Message
          – A type of message in which the caller has to
            wait for the receiving object to finish executing
            the called operation before it can resume
            execution itself
       ● Simple Message
          – A message that transfers control from the
            sender to the recipient without describing the
            details of the communication


A.24                                                 24
A.25   25
Moving to Design

       ● Start with existing set of analysis model
       ● Progressively add technical details
       ● Design model must be more detailed than analysis
         model
       ● Component Diagram
          – A diagram that shows the software components or
            modules and their dependencies
       ● Deployment Diagram
          – A diagram that shows how the software components,
            processes and objects are deployed into the physical
            architecture of the system

A.26                                                         26
A.27   27
Summary

       ● Object-Oriented Modeling Approach
         – Benefits
         – Unified Modeling Language
            • Use cases
            • Class diagrams
            • State diagrams
            • Sequence diagrams
       ● Use Case Modeling

A.28                                         28
Summary (continued)

       ● Object Modeling: Class Diagrams
         – Associations
         – Generalizations
         – Aggregation
       ● Dynamic Modeling: State Diagrams
       ● Dynamic Modeling: Sequence Diagrams
       ● Moving to Design


A.29                                           29
● THANKS FOR ALL




                   30

More Related Content

PPTX
Object Oriented Analysis & Design
PPT
Unit 1( modelling concepts & class modeling)
PPT
Unit 3(advanced state modeling & interaction meodelling)
PPTX
Provide remote help desk support
PPT
Basic concept of OOP's
PPT
Object Oriented Modeling and Design with UML
PPT
SDLC - Software Development Life Cycle
PDF
State chart diagram
Object Oriented Analysis & Design
Unit 1( modelling concepts & class modeling)
Unit 3(advanced state modeling & interaction meodelling)
Provide remote help desk support
Basic concept of OOP's
Object Oriented Modeling and Design with UML
SDLC - Software Development Life Cycle
State chart diagram

What's hot (20)

PPT
Object Oriented Design
PPTX
Ooad unit – 1 introduction
PPTX
Cohesion and coupling
PDF
Object oriented software engineering concepts
PDF
Identifying classes and objects ooad
PPT
Use Case Diagram
PPTX
Software process
PPT
Software Engineering (Introduction to Software Engineering)
PPT
Uml in software engineering
PPT
Coupling and cohesion
PDF
Domain Modeling
PPTX
Software project management- Software Engineering
PPT
Slides chapter 2
DOCX
Behavioural modelling
PPT
Analysis modeling
PPT
Object Oriented Design Concept
PPT
Formal Specification in Software Engineering SE9
PPTX
Software Cost Estimation Techniques
PPTX
Component and Deployment Diagram - Brief Overview
Object Oriented Design
Ooad unit – 1 introduction
Cohesion and coupling
Object oriented software engineering concepts
Identifying classes and objects ooad
Use Case Diagram
Software process
Software Engineering (Introduction to Software Engineering)
Uml in software engineering
Coupling and cohesion
Domain Modeling
Software project management- Software Engineering
Slides chapter 2
Behavioural modelling
Analysis modeling
Object Oriented Design Concept
Formal Specification in Software Engineering SE9
Software Cost Estimation Techniques
Component and Deployment Diagram - Brief Overview
Ad

Viewers also liked (20)

PPT
Legacy Systems in Software Engineering SE26
PPT
Object Oriented Relationships
PPTX
Ph.D. Registeration seminar
PDF
Object oriented-systems-development-life-cycle ppt
PPTX
Object relationship model of software engineering,a subtopic of object orient...
PDF
Lecture 01 - Research Methods
PDF
Paris ML meetup
PPT
Oracle Sql Tuning
PDF
Principles and Practices in Continuous Deployment at Etsy
PPTX
Organizational Communication
PPTX
Project Management With Scrum
PPT
C the basic concepts
PDF
Metaprogramming JavaScript
PPTX
Why Project Managers (Understandably) Hate the CMMI -- and What to Do About It
PPT
A Simple Introduction To CMMI For Beginer
PDF
Capability maturity model
PPT
Capability maturity model cmm lecture 8
PPT
Capability Maturity Model
PPTX
Organizational communication
PPT
Gear Cutting Presentation for Polytechnic College Students of India
Legacy Systems in Software Engineering SE26
Object Oriented Relationships
Ph.D. Registeration seminar
Object oriented-systems-development-life-cycle ppt
Object relationship model of software engineering,a subtopic of object orient...
Lecture 01 - Research Methods
Paris ML meetup
Oracle Sql Tuning
Principles and Practices in Continuous Deployment at Etsy
Organizational Communication
Project Management With Scrum
C the basic concepts
Metaprogramming JavaScript
Why Project Managers (Understandably) Hate the CMMI -- and What to Do About It
A Simple Introduction To CMMI For Beginer
Capability maturity model
Capability maturity model cmm lecture 8
Capability Maturity Model
Organizational communication
Gear Cutting Presentation for Polytechnic College Students of India
Ad

Similar to Object Oriented Analysis and Design (20)

PPT
OOAD UNIT I UML DIAGRAMS
PPTX
Chapter 06
PDF
Unified Modeling Language (UML), Object-Oriented Programming Concepts & Desig...
PDF
OBJECT ORIENTED CONCEPTS,UML DIAGRAMS,DFD
PPTX
Architecture and design
DOC
Ooad lab manual
PDF
SE@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@.ppt.pdf
PPT
Oomd unit1
PDF
chapter06-120827115400-phpapp01.pdf
PDF
Introduction to UML
PPTX
Chapter 6 Object Modeling .pptxInformation Technology Project Management
PPT
Unit-1 OOMD- Inthhro- class modeling.ppt
PPT
Uml diagrams
PPTX
UNIT IV DESIGN PATTERNS.pptx
ODP
Design Patterns Part1
PPTX
ITSE_10(UML,OO).pptx
PPT
Chapter 02 The Object Model_Software E.ppt
PDF
Object-oriented modeling and design.pdf
PPSX
UML and Case study
OOAD UNIT I UML DIAGRAMS
Chapter 06
Unified Modeling Language (UML), Object-Oriented Programming Concepts & Desig...
OBJECT ORIENTED CONCEPTS,UML DIAGRAMS,DFD
Architecture and design
Ooad lab manual
SE@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@.ppt.pdf
Oomd unit1
chapter06-120827115400-phpapp01.pdf
Introduction to UML
Chapter 6 Object Modeling .pptxInformation Technology Project Management
Unit-1 OOMD- Inthhro- class modeling.ppt
Uml diagrams
UNIT IV DESIGN PATTERNS.pptx
Design Patterns Part1
ITSE_10(UML,OO).pptx
Chapter 02 The Object Model_Software E.ppt
Object-oriented modeling and design.pdf
UML and Case study

More from Haitham El-Ghareeb (20)

PDF
مختصر وحدة التعلم الذاتي 2015
PDF
وحدة التعلم الذاتي 2015
PDF
NoSQL Databases, Not just a Buzzword
PDF
EMC Academic Alliance Presentation
PDF
DSA - 2012 - Conclusion
PDF
Lecture 9 - DSA - Python Data Structures
PDF
Data Structures - Lecture 8 - Study Notes
PDF
Lecture 07 Data Structures - Basic Sorting
PDF
LectureNotes-06-DSA
PDF
LectureNotes-05-DSA
PDF
LectureNotes-04-DSA
PDF
LectureNotes-03-DSA
PDF
LectureNotes-02-DSA
PDF
LectureNotes-01-DSA
PDF
Lecture-05-DSA
PDF
Learn Latex
PDF
Research Methodologies - Lecture 02
PDF
DSA-Lecture-05
PDF
DSA - Lecture 04
مختصر وحدة التعلم الذاتي 2015
وحدة التعلم الذاتي 2015
NoSQL Databases, Not just a Buzzword
EMC Academic Alliance Presentation
DSA - 2012 - Conclusion
Lecture 9 - DSA - Python Data Structures
Data Structures - Lecture 8 - Study Notes
Lecture 07 Data Structures - Basic Sorting
LectureNotes-06-DSA
LectureNotes-05-DSA
LectureNotes-04-DSA
LectureNotes-03-DSA
LectureNotes-02-DSA
LectureNotes-01-DSA
Lecture-05-DSA
Learn Latex
Research Methodologies - Lecture 02
DSA-Lecture-05
DSA - Lecture 04

Recently uploaded (20)

PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PPT
Teaching material agriculture food technology
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
PDF
Network Security Unit 5.pdf for BCA BBA.
PPTX
Understanding_Digital_Forensics_Presentation.pptx
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PPTX
Big Data Technologies - Introduction.pptx
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
PDF
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PPTX
Cloud computing and distributed systems.
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PDF
cuic standard and advanced reporting.pdf
PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PPTX
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
PDF
Encapsulation_ Review paper, used for researhc scholars
PDF
Machine learning based COVID-19 study performance prediction
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
Teaching material agriculture food technology
Dropbox Q2 2025 Financial Results & Investor Presentation
Network Security Unit 5.pdf for BCA BBA.
Understanding_Digital_Forensics_Presentation.pptx
Advanced methodologies resolving dimensionality complications for autism neur...
Big Data Technologies - Introduction.pptx
“AI and Expert System Decision Support & Business Intelligence Systems”
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
Mobile App Security Testing_ A Comprehensive Guide.pdf
Cloud computing and distributed systems.
Reach Out and Touch Someone: Haptics and Empathic Computing
cuic standard and advanced reporting.pdf
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
The Rise and Fall of 3GPP – Time for a Sabbatical?
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
Encapsulation_ Review paper, used for researhc scholars
Machine learning based COVID-19 study performance prediction
Digital-Transformation-Roadmap-for-Companies.pptx

Object Oriented Analysis and Design

  • 1. SYSTEM ANALYSIS AND DESIGN Object-Oriented Analysis and Design 1
  • 2. Learning Objectives  Key terms  Association  Class diagram  Event  Object  Object class  Operation  Sequence diagram  State  State transition  Unified Modeling Language (UML) A.2  Use case 2
  • 3. Learning Objectives (continued)  Discuss the concepts and principles underlying the object-oriented approach.  Learn to develop requirements models using use-case diagrams.  Learn to use class diagrams to develop object models of the problem domain.  Learn to develop requirements models using state and sequence diagrams. A.3 3
  • 4. The Object-Oriented Modeling Approach ● Benefits 1.The ability to tackle more challenging problem domains 2.Improved communication among users, analysts, designers, and programmers 3.Reusability of analysis, design, and programming results 4.Increased consistency among the models developed during object-oriented analysis, design, and programming A.4 4
  • 5. The Object-Oriented Modeling Approach (continued) ● Object-Oriented Systems Development Life Cycle – Process of progressively developing representation of a system component (or object) through the phases of analysis, design, and implementation – The model is abstract in the early stages – As the model evolves, it becomes more and more detailed A.5 5
  • 6. The Object-Oriented Systems Development Life Cycle ● Analysis Phase – Model of the real-world application is developed showing its important properties – Model specifies the functional behavior of the system independent of implementation details ● Design Phase – Analysis model is refined and adapted to the environment ● Implementation Phase – Design is implemented using a programming language or database management system A.6 6
  • 7. The Object-Oriented Systems Development Life Cycle (continued) ● Unified Modeling Language (UML) – A notation that allows the modeler to specify, visualize and construct the artifacts of software systems, as well as business models – Techniques and notations • Use cases • Class diagrams • State diagrams • Sequence diagrams A.7 7
  • 8. Use-Case Modeling ● Applied to analyze functional requirements of the system ● Performed during the analysis phase to help developers understand functional requirements of the system without regard for implementation details ● Use Case – A complete sequence of related actions initiated by an actor ● Actor – An external entity that interacts with the system A.8 8
  • 9. Use-Case Modeling ● Use cases represent complete functionality of the system ● Use cases may participate in relationships with other use cases ● Use cases may also use other use cases A.9 9
  • 10. A.10 10
  • 11. Object Modeling: Class Diagrams ● Object – An entity that has a well-defined role in the application domain, and has state, behavior, and identity ● State – A condition that encompasses an object’s properties and the values those properties have ● Behavior – A manner that represents how an object acts and reacts ● Object Class – A set of objects that share a common structure A.11 and a common behavior 11
  • 12. Object Modeling: Class Diagrams (continued) ● Class Diagram – Class is represented as a rectangle with three compartments – Objects can participate in relationships with objects of the same class A.12 12
  • 13. Object Modeling: Object Diagrams ● Object Diagram – A graph of instances that are compatible with a given class diagram; also called an instance diagram – Object is represented as a rectangle with two compartments ● Operation – A function or service that is provided by all the instances of a class ● Encapsulation – The technique of hiding the internal implementation details of an object from its external view A.13 13
  • 14. A.14 14
  • 15. Representing Associations ● Association – A relationship between object classes – Degree may be unary, binary, ternary or higher – Depicted as a solid line between participating classes ● Association Role – The end of an association where it connects to a class – Each role has multiplicity, which indicates how many objects participate in a given association relationship A.15 15
  • 16. A.16 16
  • 17. Representing Generalization ● Generalization – Abstraction of common features among multiple classes, as well as their relationships, into a more general class ● Subclass – A class that has been generalized ● Superclass – A class that is composed of several generalized subclasses A.17 17
  • 18. Representing Generalization (continued) ● Discriminator – Shows which property of an object class is being abstracted by a generalization relationship ● Inheritance – A property that a subclass inherits the features from its superclass ● Abstract Class – A class that has no direct instances but whose descendents may have direct instances ● Concrete Class – A class that can have direct instances A.18 18
  • 19. A.19 19
  • 20. Representing Aggregation ● Aggregation – A part-of relationship between a component object and an aggregate object – Example: Personal computer • Composed of CPU, Monitor, Keyboard, etc A.20 20
  • 21. Dynamic Modeling: State Diagrams ● State – A condition during the life of an object during which it satisfies some conditions, performs some actions or waits for some events – Shown as a rectangle with rounded corners ● State Transition – The changes in the attributes of an object or in the links an object has with other objects – Shown as a solid arrow – Diagrammed with a guard condition and action A.21 ● Event 21 – Something that takes place at a certain point in
  • 22. A.22 22
  • 23. Dynamic Modeling: Sequence Diagrams ● Sequence Diagram – A depiction of the interaction among objects during certain periods of time ● Activation – The time period during which an object performs an operation ● Messages – Means by which objects communicate with each other A.23 23
  • 24. Dynamic Modeling: Sequence Diagrams (continued) ● Synchronous Message – A type of message in which the caller has to wait for the receiving object to finish executing the called operation before it can resume execution itself ● Simple Message – A message that transfers control from the sender to the recipient without describing the details of the communication A.24 24
  • 25. A.25 25
  • 26. Moving to Design ● Start with existing set of analysis model ● Progressively add technical details ● Design model must be more detailed than analysis model ● Component Diagram – A diagram that shows the software components or modules and their dependencies ● Deployment Diagram – A diagram that shows how the software components, processes and objects are deployed into the physical architecture of the system A.26 26
  • 27. A.27 27
  • 28. Summary ● Object-Oriented Modeling Approach – Benefits – Unified Modeling Language • Use cases • Class diagrams • State diagrams • Sequence diagrams ● Use Case Modeling A.28 28
  • 29. Summary (continued) ● Object Modeling: Class Diagrams – Associations – Generalizations – Aggregation ● Dynamic Modeling: State Diagrams ● Dynamic Modeling: Sequence Diagrams ● Moving to Design A.29 29
  • 30. ● THANKS FOR ALL 30