SlideShare a Scribd company logo
Object Oriented Analysis And Design Overview
What is an Object? A self-contained package, with specific variables (attributes) and methods (behaviors). An object stands alone. An object’s implementation is purposely hidden from us.
Visual representation of a software object What is an Object?
A  bicycle modeled as a software object   What is an Object?
What is a Class? A class is a blueprint or prototype that defines the variables and the methods common to all objects of a certain kind.
What is a Class? Class is an implementation of an abstract data type and so encapsulates both data and operations. Object is run-time instance of class. Classes just sit there, objects do the real work. Memory is allocated for Objects not for Classes.
What is a Message? The object to which the message is addressed (YourBicycle)  The name of the method to perform (changeGears)  Any parameters needed by the method (lowerGear)
Example Object Description - provides time of day, and an audible indication of a user-defined time during the day  Interface Inputs - time of day, alarm time Outputs - time of day, audible alarm Attributes hour hand, minute hand, second hand, bell Behaviors Increment hour, increment minute, increment second, sound bell
Key Object-Oriented Characteristics Encapsulation (Information Hiding) Attributes and behavior are rolled into the object, and hidden from the rest of us. Only thing exposed is the “public interface”  Inheritance Creating one object from another, already defined object, adding to its capabilities and public interface.. Polymorphism Specific object behavior is determined within a run-time context. An object can “morph” itself based on the context in which it is currently used. Re-useable With very discrete and finite capabilities, objects can be used in other parts of the system, or within other systems.
Clock Object How does our clock rate as an object? Encapsulation Provides hour, minutes and seconds, and an alarm. Do we know the mechanisms for incrementing hours, minutes and seconds? Sounding the alarm? Inheritance We can use our simple clock object to create additional, more complex objects requiring time. E.g., chronograph, washing machine timer controller, etc.  Polymorphism Not applicable Re-usable Our clock can be used in thousands of applications as is. We can use it in any application that requires us to keep track of time, and alert us when a certain time has occurred.
What is OOAD? Object Oriented Analysis & Design is the  art  of developing systems based on a set of cooperating objects. This stuff is not an exact science. Anyone who tells you that is mistaken. Experience allows you to develop the craft, but it can never be mastered. Success depends upon systems analysis and software development teams understanding OOAD and available tools. Smooth and natural transition occurs between analysis and design teams due to nature of defined processes.
What is OOAD? OOAD facilitates a variety of processes for analyzing and developing systems. A methodology. There is no right or wrong process to implement OOAD. Understanding the principles of OOAD, as well as the toolkits available, allows you to “define” or tailor your own process. The main advantage of OOAD is its integration of systems analysis and software development teams through process definition and modeling techniques available.
Visual Modeling “ Modeling captures essential parts of the system. Visual modeling is modeling using standard graphical notations” – Dr. James Rumbaugh “ A picture is worth a thousand words.” – Ancient Proverb Order Item Ship via Business Process
UML stands for Unified Modeling Language The UML combines the best of the best from Data Modeling concepts (Entity Relationship Diagrams) Business Modeling (work flow) Object Modeling  Component Modeling The UML is the standard language for visualizing, specifying, constructing, and documenting the artifacts of a software-intensive system. It can be used with all processes, throughout the development life cycle, and across different implementation technologies What is UML?
What is UML? The Unified Modeling Language is used to Specify, Visualize, Implement, Test and Document systems.  UML captures the elements and artifacts of the development of object oriented systems and software. UML also facilitates the Specification and Visualization of ANY system (whether it appear as an object-oriented system or not). It is a  visual modeling  tool used to implement a process and methodology.
What UML is NOT A process. Processes include: Waterfall Spiral Development Incremental Agile etc. Proprietary UML is free to use and distribute. Third party vendors can build a tool based upon it without prior permission. Companies can use it in their design documentation without prior permission.
Static Modeling This defines the non-changing characteristics of the system. For example: What are the uses of the system? What are the relationships between uses in the system? What are the inputs and outputs, or  interface  to the system? What are the objects in the system and their relationships? How is the system deployed?
Dynamic Modeling This defines the changing characteristics of the system. For example: What are the various timing aspects of the uses of the system? What are the states, and circumstances of those states, that the objects in the system can be in at any particular time? How does the system behave over time as a result of the environment in which it is in?
UML Static Diagrams Use Case Depicts functional capabilities, or uses, of the system. Class Depicts relationships and dependencies of classes in the system. Object Depicts relationships and dependencies of instantiated classes (I.e. objects) in the system.
UML Static Diagrams Structure Diagrams Depicts the main components of the system (hardware, software, human) and the interfaces between. Package Depicts relationships and dependencies of high-level components in the system.  Component Depicts relationships and dependencies of system components. Deployment Depicts how system components are implemented in hardware in the system.
Use Case Diagram
Class Diagram
Object Diagram
Structure Diagram
Component Diagram
Package Diagram
Deployment Diagram
UML Dynamic Diagrams Interaction Diagrams  Depict timing of events and messages within Use Cases and classes in the system. They are interchangeable. Sequence Depicts timing of events in a sequential top to bottom, left to right fashion. Collaboration Depicts timing of events using a sequential numbering.
UML Dynamic Diagrams State Depicts all the possible states that objects of the class can have, and which events cause the state to change.  Activity Depicts the activities performed in an operation , though it can also be used to describe other activity flows, such as a use case or an interaction.
Sequence Diagram
Collaboration Diagram
State Diagram
Activity Diagrams
Visual Modeling With Class Diagrams
Class Diagram
Activity Diagram
Sequence Diagram
Thoughts on OOAD/UML The OOAD methodology, and any process that uses it, will only work if the entire project team embraces it. Everyone from the Program Manager on down must be convinced of it’s utility. You cannot implement a system successfully unless the entire system is analyzed and developed in a consistent manner. As a minimum, the system must go through the Requirements and Analysis phases using Use Cases. More on this later.  Most importantly, the systems and software teams must be an integrated team to gain the most benefits.
An approach to system development using models as a basis for understanding, design, construction, deployment, operation, maintenance and modification Three essential elements: specifying a system independently of the platform that supports it, specifying platforms, transforming the system specification into one for a particular choice of platform. Goals: portability, interoperability and reusability Prescribes the kinds of model to be used in specifying a system, how those models are prepared and the relationships between them  Model Driven Architecture  (MDA)
What MDA Does Identifies different viewpoints on a system  different abstractions - reflecting different concerns providing a way of dealing with system complexity Specifies 3 kinds of viewpoint model for a system: a  computation independent model (CIM) : a view of a system that  specifies its function without specifying details of its structure  a  platform independent model (PIM) : a view of a system that specifies its computational structure independent of any specific platform - usable with different platforms of similar type.  a  platform specific model (PSM) : a view of a system that combines the specifications in the PIM with a specification of the use of a particular type of platform. Specifies transformations between models
MDA Ultimate Goal? Complete, executable model. 100% automatic code generation from the model. Complete requirements, design and test information contained in models.
UML Resources http://www.rational.com Rational site with a plethora of information about UML and the Rational process. http://www.omg.org/technology/documents/formal/uml.htm UML 2.0 specification

More Related Content

PPTX
PPTX
object oriented methodologies
PDF
Object Oriented Analysis Design using UML
PPT
Architecture design in software engineering
PPT
PPTX
Cohesion and coupling
PDF
CS8592-OOAD Lecture Notes Unit-3
PPT
Use Case Modeling
object oriented methodologies
Object Oriented Analysis Design using UML
Architecture design in software engineering
Cohesion and coupling
CS8592-OOAD Lecture Notes Unit-3
Use Case Modeling

What's hot (20)

PPTX
Uml Presentation
PDF
Domain Modeling
PPTX
Component and Deployment Diagram - Brief Overview
PDF
Aneka platform
PPTX
Object oriented methodologies
PPTX
Overview of UML Diagrams
PPT
Lecture 12 requirements modeling - (system analysis)
DOCX
Behavioural modelling
PPT
CHAPTER 6 REQUIREMENTS MODELING: SCENARIO based Model , Class based moddel
PPTX
Object oriented testing
PPTX
Object oriented and function oriented design
PPTX
Architectural styles and patterns
PPTX
Cost of software quality ( software quality assurance )
PPTX
Context model
PPTX
Software quality assurance
PPS
11 ooad uml-14
PPTX
Off the-shelf components (cots)
PPTX
Ooad unit – 1 introduction
PPTX
Basic Structural Modeling
PPTX
Object oriented modeling and design
Uml Presentation
Domain Modeling
Component and Deployment Diagram - Brief Overview
Aneka platform
Object oriented methodologies
Overview of UML Diagrams
Lecture 12 requirements modeling - (system analysis)
Behavioural modelling
CHAPTER 6 REQUIREMENTS MODELING: SCENARIO based Model , Class based moddel
Object oriented testing
Object oriented and function oriented design
Architectural styles and patterns
Cost of software quality ( software quality assurance )
Context model
Software quality assurance
11 ooad uml-14
Off the-shelf components (cots)
Ooad unit – 1 introduction
Basic Structural Modeling
Object oriented modeling and design
Ad

Viewers also liked (20)

PPT
Ooad
PPT
Introduction To Ooad
PPT
Ooad sequence diagram lecture
PDF
jjug_night_20161121
PPT
School Context
PPT
Object Oriented Analysis & Design
PPT
Ch01
PDF
UNIFIED MODELING LANGUAGE
PPS
10 ooad uml-13
PPT
Uml sequence diagrams
PPT
Complex System Engineering
PPTX
Ahmad-debian
PPTX
Cara mengkonfigurasi router
PPT
Jaringan komputerwan
PDF
konfig routing paling cepat
PPT
Riset akuntansi
PPTX
Hardware pada osi layer
PDF
UNDERSTANDING OOAD AND DESIGN PATTERNS USING UML AND JAVA-TRAINING WORKSHOP
ODP
1 introduction of OOAD
Ooad
Introduction To Ooad
Ooad sequence diagram lecture
jjug_night_20161121
School Context
Object Oriented Analysis & Design
Ch01
UNIFIED MODELING LANGUAGE
10 ooad uml-13
Uml sequence diagrams
Complex System Engineering
Ahmad-debian
Cara mengkonfigurasi router
Jaringan komputerwan
konfig routing paling cepat
Riset akuntansi
Hardware pada osi layer
UNDERSTANDING OOAD AND DESIGN PATTERNS USING UML AND JAVA-TRAINING WORKSHOP
1 introduction of OOAD
Ad

Similar to Ooad overview (20)

PPT
Chapter1
DOCX
DOCX
PDF
Object-oriented modeling and design.pdf
PDF
Formalization & data abstraction during use case modeling in object oriented ...
PDF
FORMALIZATION & DATA ABSTRACTION DURING USE CASE MODELING IN OBJECT ORIENTED ...
PDF
Cs 2401 Unit 1
DOCX
UML Design
PDF
Object oriented analysis and design unit- iv
PDF
Workshop on Basics of Software Engineering (DFD, UML and Project Culture)
PPT
fdocuments.in_unit-2-ooad.ppt
PPT
Oomd unit1
PDF
Software Engineering Tools and Practices.pdf
PDF
502 Object Oriented Analysis and Design.pdf
PDF
Case stydy cs701
PDF
Object oriented analysis and design unit- ii
PPTX
SE - Lecture 3 - Software Tools n Environment.pptx
PPT
UNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.ppt
PPT
UNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.ppt
PPT
UNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.ppt
Chapter1
Object-oriented modeling and design.pdf
Formalization & data abstraction during use case modeling in object oriented ...
FORMALIZATION & DATA ABSTRACTION DURING USE CASE MODELING IN OBJECT ORIENTED ...
Cs 2401 Unit 1
UML Design
Object oriented analysis and design unit- iv
Workshop on Basics of Software Engineering (DFD, UML and Project Culture)
fdocuments.in_unit-2-ooad.ppt
Oomd unit1
Software Engineering Tools and Practices.pdf
502 Object Oriented Analysis and Design.pdf
Case stydy cs701
Object oriented analysis and design unit- ii
SE - Lecture 3 - Software Tools n Environment.pptx
UNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.ppt
UNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.ppt
UNIT-I(Unified_Process_and_Use Case_Diagrams)_OOAD.ppt

More from Dr. C.V. Suresh Babu (20)

PPTX
Data analytics with R
PPTX
Association rules
PPTX
PPTX
Classification
PPTX
Blue property assumptions.
PPTX
Introduction to regression
PPTX
Expert systems
PPTX
Dempster shafer theory
PPTX
Bayes network
PPTX
Bayes' theorem
PPTX
Knowledge based agents
PPTX
Rule based system
PPTX
Formal Logic in AI
PPTX
Production based system
PPTX
Game playing in AI
PPTX
Diagnosis test of diabetics and hypertension by AI
PPTX
A study on “impact of artificial intelligence in covid19 diagnosis”
PDF
A study on “impact of artificial intelligence in covid19 diagnosis”
Data analytics with R
Association rules
Classification
Blue property assumptions.
Introduction to regression
Expert systems
Dempster shafer theory
Bayes network
Bayes' theorem
Knowledge based agents
Rule based system
Formal Logic in AI
Production based system
Game playing in AI
Diagnosis test of diabetics and hypertension by AI
A study on “impact of artificial intelligence in covid19 diagnosis”
A study on “impact of artificial intelligence in covid19 diagnosis”

Recently uploaded (20)

PPTX
PPH.pptx obstetrics and gynecology in nursing
PDF
Computing-Curriculum for Schools in Ghana
PDF
ANTIBIOTICS.pptx.pdf………………… xxxxxxxxxxxxx
PDF
O7-L3 Supply Chain Operations - ICLT Program
PPTX
GDM (1) (1).pptx small presentation for students
PDF
Complications of Minimal Access Surgery at WLH
PDF
O5-L3 Freight Transport Ops (International) V1.pdf
PDF
Supply Chain Operations Speaking Notes -ICLT Program
PDF
TR - Agricultural Crops Production NC III.pdf
PPTX
Microbial diseases, their pathogenesis and prophylaxis
PDF
Chapter 2 Heredity, Prenatal Development, and Birth.pdf
PPTX
Pharma ospi slides which help in ospi learning
PDF
2.FourierTransform-ShortQuestionswithAnswers.pdf
PDF
Abdominal Access Techniques with Prof. Dr. R K Mishra
PDF
Black Hat USA 2025 - Micro ICS Summit - ICS/OT Threat Landscape
PDF
Sports Quiz easy sports quiz sports quiz
PPTX
school management -TNTEU- B.Ed., Semester II Unit 1.pptx
PDF
01-Introduction-to-Information-Management.pdf
PDF
Saundersa Comprehensive Review for the NCLEX-RN Examination.pdf
PPTX
Pharmacology of Heart Failure /Pharmacotherapy of CHF
PPH.pptx obstetrics and gynecology in nursing
Computing-Curriculum for Schools in Ghana
ANTIBIOTICS.pptx.pdf………………… xxxxxxxxxxxxx
O7-L3 Supply Chain Operations - ICLT Program
GDM (1) (1).pptx small presentation for students
Complications of Minimal Access Surgery at WLH
O5-L3 Freight Transport Ops (International) V1.pdf
Supply Chain Operations Speaking Notes -ICLT Program
TR - Agricultural Crops Production NC III.pdf
Microbial diseases, their pathogenesis and prophylaxis
Chapter 2 Heredity, Prenatal Development, and Birth.pdf
Pharma ospi slides which help in ospi learning
2.FourierTransform-ShortQuestionswithAnswers.pdf
Abdominal Access Techniques with Prof. Dr. R K Mishra
Black Hat USA 2025 - Micro ICS Summit - ICS/OT Threat Landscape
Sports Quiz easy sports quiz sports quiz
school management -TNTEU- B.Ed., Semester II Unit 1.pptx
01-Introduction-to-Information-Management.pdf
Saundersa Comprehensive Review for the NCLEX-RN Examination.pdf
Pharmacology of Heart Failure /Pharmacotherapy of CHF

Ooad overview

  • 1. Object Oriented Analysis And Design Overview
  • 2. What is an Object? A self-contained package, with specific variables (attributes) and methods (behaviors). An object stands alone. An object’s implementation is purposely hidden from us.
  • 3. Visual representation of a software object What is an Object?
  • 4. A bicycle modeled as a software object What is an Object?
  • 5. What is a Class? A class is a blueprint or prototype that defines the variables and the methods common to all objects of a certain kind.
  • 6. What is a Class? Class is an implementation of an abstract data type and so encapsulates both data and operations. Object is run-time instance of class. Classes just sit there, objects do the real work. Memory is allocated for Objects not for Classes.
  • 7. What is a Message? The object to which the message is addressed (YourBicycle) The name of the method to perform (changeGears) Any parameters needed by the method (lowerGear)
  • 8. Example Object Description - provides time of day, and an audible indication of a user-defined time during the day Interface Inputs - time of day, alarm time Outputs - time of day, audible alarm Attributes hour hand, minute hand, second hand, bell Behaviors Increment hour, increment minute, increment second, sound bell
  • 9. Key Object-Oriented Characteristics Encapsulation (Information Hiding) Attributes and behavior are rolled into the object, and hidden from the rest of us. Only thing exposed is the “public interface” Inheritance Creating one object from another, already defined object, adding to its capabilities and public interface.. Polymorphism Specific object behavior is determined within a run-time context. An object can “morph” itself based on the context in which it is currently used. Re-useable With very discrete and finite capabilities, objects can be used in other parts of the system, or within other systems.
  • 10. Clock Object How does our clock rate as an object? Encapsulation Provides hour, minutes and seconds, and an alarm. Do we know the mechanisms for incrementing hours, minutes and seconds? Sounding the alarm? Inheritance We can use our simple clock object to create additional, more complex objects requiring time. E.g., chronograph, washing machine timer controller, etc. Polymorphism Not applicable Re-usable Our clock can be used in thousands of applications as is. We can use it in any application that requires us to keep track of time, and alert us when a certain time has occurred.
  • 11. What is OOAD? Object Oriented Analysis & Design is the art of developing systems based on a set of cooperating objects. This stuff is not an exact science. Anyone who tells you that is mistaken. Experience allows you to develop the craft, but it can never be mastered. Success depends upon systems analysis and software development teams understanding OOAD and available tools. Smooth and natural transition occurs between analysis and design teams due to nature of defined processes.
  • 12. What is OOAD? OOAD facilitates a variety of processes for analyzing and developing systems. A methodology. There is no right or wrong process to implement OOAD. Understanding the principles of OOAD, as well as the toolkits available, allows you to “define” or tailor your own process. The main advantage of OOAD is its integration of systems analysis and software development teams through process definition and modeling techniques available.
  • 13. Visual Modeling “ Modeling captures essential parts of the system. Visual modeling is modeling using standard graphical notations” – Dr. James Rumbaugh “ A picture is worth a thousand words.” – Ancient Proverb Order Item Ship via Business Process
  • 14. UML stands for Unified Modeling Language The UML combines the best of the best from Data Modeling concepts (Entity Relationship Diagrams) Business Modeling (work flow) Object Modeling Component Modeling The UML is the standard language for visualizing, specifying, constructing, and documenting the artifacts of a software-intensive system. It can be used with all processes, throughout the development life cycle, and across different implementation technologies What is UML?
  • 15. What is UML? The Unified Modeling Language is used to Specify, Visualize, Implement, Test and Document systems. UML captures the elements and artifacts of the development of object oriented systems and software. UML also facilitates the Specification and Visualization of ANY system (whether it appear as an object-oriented system or not). It is a visual modeling tool used to implement a process and methodology.
  • 16. What UML is NOT A process. Processes include: Waterfall Spiral Development Incremental Agile etc. Proprietary UML is free to use and distribute. Third party vendors can build a tool based upon it without prior permission. Companies can use it in their design documentation without prior permission.
  • 17. Static Modeling This defines the non-changing characteristics of the system. For example: What are the uses of the system? What are the relationships between uses in the system? What are the inputs and outputs, or interface to the system? What are the objects in the system and their relationships? How is the system deployed?
  • 18. Dynamic Modeling This defines the changing characteristics of the system. For example: What are the various timing aspects of the uses of the system? What are the states, and circumstances of those states, that the objects in the system can be in at any particular time? How does the system behave over time as a result of the environment in which it is in?
  • 19. UML Static Diagrams Use Case Depicts functional capabilities, or uses, of the system. Class Depicts relationships and dependencies of classes in the system. Object Depicts relationships and dependencies of instantiated classes (I.e. objects) in the system.
  • 20. UML Static Diagrams Structure Diagrams Depicts the main components of the system (hardware, software, human) and the interfaces between. Package Depicts relationships and dependencies of high-level components in the system. Component Depicts relationships and dependencies of system components. Deployment Depicts how system components are implemented in hardware in the system.
  • 28. UML Dynamic Diagrams Interaction Diagrams Depict timing of events and messages within Use Cases and classes in the system. They are interchangeable. Sequence Depicts timing of events in a sequential top to bottom, left to right fashion. Collaboration Depicts timing of events using a sequential numbering.
  • 29. UML Dynamic Diagrams State Depicts all the possible states that objects of the class can have, and which events cause the state to change. Activity Depicts the activities performed in an operation , though it can also be used to describe other activity flows, such as a use case or an interaction.
  • 34. Visual Modeling With Class Diagrams
  • 38. Thoughts on OOAD/UML The OOAD methodology, and any process that uses it, will only work if the entire project team embraces it. Everyone from the Program Manager on down must be convinced of it’s utility. You cannot implement a system successfully unless the entire system is analyzed and developed in a consistent manner. As a minimum, the system must go through the Requirements and Analysis phases using Use Cases. More on this later. Most importantly, the systems and software teams must be an integrated team to gain the most benefits.
  • 39. An approach to system development using models as a basis for understanding, design, construction, deployment, operation, maintenance and modification Three essential elements: specifying a system independently of the platform that supports it, specifying platforms, transforming the system specification into one for a particular choice of platform. Goals: portability, interoperability and reusability Prescribes the kinds of model to be used in specifying a system, how those models are prepared and the relationships between them Model Driven Architecture (MDA)
  • 40. What MDA Does Identifies different viewpoints on a system different abstractions - reflecting different concerns providing a way of dealing with system complexity Specifies 3 kinds of viewpoint model for a system: a computation independent model (CIM) : a view of a system that specifies its function without specifying details of its structure a platform independent model (PIM) : a view of a system that specifies its computational structure independent of any specific platform - usable with different platforms of similar type. a platform specific model (PSM) : a view of a system that combines the specifications in the PIM with a specification of the use of a particular type of platform. Specifies transformations between models
  • 41. MDA Ultimate Goal? Complete, executable model. 100% automatic code generation from the model. Complete requirements, design and test information contained in models.
  • 42. UML Resources http://www.rational.com Rational site with a plethora of information about UML and the Rational process. http://www.omg.org/technology/documents/formal/uml.htm UML 2.0 specification

Editor's Notes

  • #9: Talk about the clock. How is the hour, minute and second implemented? We don’t care. How does the bell sound? We don’t care.