SlideShare una empresa de Scribd logo
1 de 25
Object Oriented Analysis &
Design

           MCA 405-C (N2)




12/01/12       Amandeep S. Patti   1
What is Object-Orientation?
        - Object
   An "object" is anything to which a concept applies.
    A "concept" is an idea or notion that we apply to the things, or objects,
      in our awareness
   Thing drawn from the problem domain or solution space.
       E.g., a living person in the problem domain, a software component in the
        solution space.
   A structure that
    - has identity (i.e., discrete and distinguishable), and
    - bundles together attributes (the data part, or state) and
    behavior (the function/code part).
   It is an instance of a collective concept, i.e., a class.

    12/01/12                     Amandeep S. Patti                          2
Properties of an object
    Attribute: A characteristic of an object that has
     value in the context of the system
    Method: How an object allows other objects to
     interact with it
         Method overloading: When a method name is used for
          different reasons in the same scope, the method is
          overloaded
    State: a condition during the life of an object


    12/01/12               Amandeep S. Patti             3
What is Object-Orientation?
        - Class
       A collection of objects with the same data structure
        (attributes,    state      variables)   and     behavior
        (function/code/operations) in the solution space.
       A blueprint or definition of objects.
   Classification
       Grouping of common objects into a class
   Instance
       An object created by a class.
   Instantiation
       The act of creating an instance.
    12/01/12                Amandeep S. Patti                4
Describing a class
   Why does a class exist?
   What is it relevance to others?
   What are the attributes?
   What are its methods?




    12/01/12         Amandeep S. Patti   5
Fundamentals of Object Orientation
   Data Abstraction and Encapsulation
   Inheritance
   Polymorphism




    12/01/12       Amandeep S. Patti       6
Data Abstraction and Encapsulation
   Data Abstraction is defined as extracting from the
    abundance of information-related data. It is
    important that related data be kept together for
    easier manipulation. It is equally important to
    abstract the generic data from specific details.
   Encapsulation is defined as hiding related data
    behind an interface of methods. These methods
    allow access to the data and manipulations to be
    performed on the data.

    12/01/12           Amandeep S. Patti           7
Data Abstraction and Encapsulation

                                   Attributes
           Set data values                            Get data values


                                   Attributes




                             Manipulate data values

12/01/12                        Amandeep S. Patti                       8
Abstraction
Focus on the essential.
Focus on what an object “is and does”.
Omits tremendous amount of details.
Must always be for some purpose, because
purpose determines what is and what is not
important.
Many abstractions of the same thing are possible.
All abstractions are incomplete and inaccurate.
A good model captures the crucial aspects of a
problem and omits the others.
12/01/12          Amandeep S. Patti          9
Example of Abstraction
                               Class
                               Car

                               Attributes
                                   Model
                                   Location

                               Operations
                                  Start
                                  Accelerate



12/01/12       Amandeep S. Patti                10
Inheritance
    Inheritance brings properties that are
     common across several classes into one
     general class. This class then becomes
     the parent class to more specific class or
     child class.
    Two types.
         Derived inheritance.
         Abstracted inheritance.

    12/01/12              Amandeep S. Patti   11
Polymorphism
   There are two possible definitions for the
    term polymorphism
        Different classes supporting the same method
         (overriding)
        An object supports multiple interface.




    12/01/12            Amandeep S. Patti         12
Overriding
    The mechanism by which a child class can
     provide an alternative implementation of a
     method currently provided by a parent
     class.




    12/01/12        Amandeep S. Patti       13
What Is Object Oriented Development?
   It’s a new way of thinking about software
    based on abstractions that exist in the real
    world.
   The      essence      of     object-oriented
    development is the identification and
    organization      of     application-domain
    concepts,    rather    than     their   final
    representation in a programming language.
    12/01/12         Amandeep S. Patti        14
What Is Object Oriented Development?

   It is only when the inherent concepts of the
    application are identified, organized and
    understood that the details of data
    structures and functions can be addressed
    effectively.



    12/01/12         Amandeep S. Patti       15
How It Is Different From Functional
      Methodology?
   In functional methodology, emphasis on
    specifying and decomposing system
    functionality. If requirements changes, the
    system may require massive changes.
   Object oriented approach focuses first on
    identifying objects from the application
    domain, then fitting procedures around
    them.
    12/01/12         Amandeep S. Patti      16
What Is OOAD?

    Analysis     — understanding, finding and
    describing concepts in the problem domain.
   Design — understanding and defining software
    solution/objects that represent the analysis
    concepts and will eventually be implemented in
    code.
   OOAD —A software development approach
    that emphasizes a logical solution based on
    objects.

    12/01/12          Amandeep S. Patti        17
What Is OOAD?
   Object-orientation
       Allows users to fully understand the environment they
        are attempting to model
   OOAD is an OO methodology for analyzing and
    designing a system. It is not necessarily relevant
    to any programming language, even it may be
    irrelevant to any programming task. It is the
    recognition methodology to understand the world.
   In this sense OOP is the application of OOAD to
    software programming tasks
    12/01/12               Amandeep S. Patti             18
What Is OOAD?
   The fundamental construct is the object,
    which combines both data structure and
    behaviour in a single entity.
   Object oriented models are useful for
    understanding problems, communicating
    with    application    experts, modeling
    enterprises, preparing documents and
    designing programs and databases .
    12/01/12       Amandeep S. Patti     19
What Is a Model?
    A model is a simplification of reality.
       E.g., a miniature bridge for a real bridge to be built
    A model is our simplification of our
     perception of reality (that is, if it exists,
     otherwise it could be a mere illusion).
    A model is an abstraction (omitting tremendous
     amount of details) of something for the purpose
     of understanding, be it the problem or a
     solution.

    12/01/12                Amandeep S. Patti                   20
Three Models
   Object model- describes the static structure of
    the objects in a system and their relationships. It
    contains object diagrams.
   Dynamic model- describes the aspects of a
    system that change over time. It is used to
    specify and implement the control aspects of a
    system.
   Functional model- describes the data value
    transformation within a system. It contains DFD.
    DFD represents a computation.
    12/01/12           Amandeep S. Patti            21
Object Model
   It provides the essential framework into
    which the dynamic and functional models
    can be placed.
   Changes     and     transformations  are
    meaningless unless there is something to
    be changed or transformed.



    12/01/12       Amandeep S. Patti     22
Dynamic Model
   Describes those aspects of a system concerned
    with the time and the sequencing of operations-
    events that mark changes, sequences of events,
    states that define the context for events and the
    organisation of events and states.
   It describes the sequences of operations that
    occur, without regard for what they operations do,
    what they operate on, or how they are
    implemented.

    12/01/12           Amandeep S. Patti           23
Functional Model
   Describes those aspects of a system
    concerned with transformations of values-
    functions, mappings, constraints and
    functional dependencies.
   The functional model captures what a
    system does, without regard for how and
    when it is done.

    12/01/12        Amandeep S. Patti     24
How to Do OOAD
                Software Lifecycle Review
    Systems Engineering




                                   Quality Assurance
   Requirements Analysis

      Project Planning
                                                       Maintenance
    Architectural Design


      Detailed Design

      Implementation


           Release


12/01/12                    Amandeep S. Patti                        25

Más contenido relacionado

La actualidad más candente

Object oriented architecture in erp
Object  oriented architecture in erpObject  oriented architecture in erp
Object oriented architecture in erpPreyanshu Saini
 
Object oriented modeling and design
Object oriented modeling and designObject oriented modeling and design
Object oriented modeling and designATS SBGI MIRAJ
 
Object oriented software engineering concepts
Object oriented software engineering conceptsObject oriented software engineering concepts
Object oriented software engineering conceptsKomal Singh
 
Entity Relationship Diagram
Entity Relationship DiagramEntity Relationship Diagram
Entity Relationship DiagramSiti Ismail
 
Uml Omg Fundamental Certification 3
Uml Omg Fundamental Certification 3Uml Omg Fundamental Certification 3
Uml Omg Fundamental Certification 3Ricardo Quintero
 
Ch 5 O O Data Modeling
Ch 5  O O  Data ModelingCh 5  O O  Data Modeling
Ch 5 O O Data Modelingguest8fdbdd
 
classes & objects introduction
classes & objects introductionclasses & objects introduction
classes & objects introductionKumar
 
Unit 2(advanced class modeling & state diagram)
Unit  2(advanced class modeling & state diagram)Unit  2(advanced class modeling & state diagram)
Unit 2(advanced class modeling & state diagram)Manoj Reddy
 
Uml Omg Fundamental Certification 2
Uml Omg Fundamental Certification 2Uml Omg Fundamental Certification 2
Uml Omg Fundamental Certification 2Ricardo Quintero
 
UML- Unified Modeling Language
UML- Unified Modeling LanguageUML- Unified Modeling Language
UML- Unified Modeling LanguageShahzad
 
39f1b9a797dbms chapter2 b.sc2 (1)
39f1b9a797dbms chapter2 b.sc2 (1)39f1b9a797dbms chapter2 b.sc2 (1)
39f1b9a797dbms chapter2 b.sc2 (1)Mukund Trivedi
 
39f1b9a797dbms chapter2 b.sc2
39f1b9a797dbms chapter2 b.sc239f1b9a797dbms chapter2 b.sc2
39f1b9a797dbms chapter2 b.sc2Mukund Trivedi
 
Ch 5 O O Data Modeling Class
Ch 5  O O  Data Modeling ClassCh 5  O O  Data Modeling Class
Ch 5 O O Data Modeling Classguest8fdbdd
 
Uml Omg Fundamental Certification 5
Uml Omg Fundamental Certification 5Uml Omg Fundamental Certification 5
Uml Omg Fundamental Certification 5Ricardo Quintero
 
Omg Fundamental Certification 4
Omg Fundamental Certification 4Omg Fundamental Certification 4
Omg Fundamental Certification 4Ricardo Quintero
 

La actualidad más candente (20)

Object oriented architecture in erp
Object  oriented architecture in erpObject  oriented architecture in erp
Object oriented architecture in erp
 
Object oriented modeling and design
Object oriented modeling and designObject oriented modeling and design
Object oriented modeling and design
 
Object oriented software engineering concepts
Object oriented software engineering conceptsObject oriented software engineering concepts
Object oriented software engineering concepts
 
Entity Relationship Diagram
Entity Relationship DiagramEntity Relationship Diagram
Entity Relationship Diagram
 
Uml Omg Fundamental Certification 3
Uml Omg Fundamental Certification 3Uml Omg Fundamental Certification 3
Uml Omg Fundamental Certification 3
 
Intro Uml
Intro UmlIntro Uml
Intro Uml
 
Ooad ppt
Ooad pptOoad ppt
Ooad ppt
 
Ch 5 O O Data Modeling
Ch 5  O O  Data ModelingCh 5  O O  Data Modeling
Ch 5 O O Data Modeling
 
classes & objects introduction
classes & objects introductionclasses & objects introduction
classes & objects introduction
 
Unit 2(advanced class modeling & state diagram)
Unit  2(advanced class modeling & state diagram)Unit  2(advanced class modeling & state diagram)
Unit 2(advanced class modeling & state diagram)
 
Uml Omg Fundamental Certification 2
Uml Omg Fundamental Certification 2Uml Omg Fundamental Certification 2
Uml Omg Fundamental Certification 2
 
UML- Unified Modeling Language
UML- Unified Modeling LanguageUML- Unified Modeling Language
UML- Unified Modeling Language
 
39f1b9a797dbms chapter2 b.sc2 (1)
39f1b9a797dbms chapter2 b.sc2 (1)39f1b9a797dbms chapter2 b.sc2 (1)
39f1b9a797dbms chapter2 b.sc2 (1)
 
39f1b9a797dbms chapter2 b.sc2
39f1b9a797dbms chapter2 b.sc239f1b9a797dbms chapter2 b.sc2
39f1b9a797dbms chapter2 b.sc2
 
Behavioural modelling
Behavioural modellingBehavioural modelling
Behavioural modelling
 
UML
UMLUML
UML
 
Claas diagram
Claas diagramClaas diagram
Claas diagram
 
Ch 5 O O Data Modeling Class
Ch 5  O O  Data Modeling ClassCh 5  O O  Data Modeling Class
Ch 5 O O Data Modeling Class
 
Uml Omg Fundamental Certification 5
Uml Omg Fundamental Certification 5Uml Omg Fundamental Certification 5
Uml Omg Fundamental Certification 5
 
Omg Fundamental Certification 4
Omg Fundamental Certification 4Omg Fundamental Certification 4
Omg Fundamental Certification 4
 

Similar a OOA&D Fundamentals

1. oop with c++ get 410 day 1
1. oop with c++ get 410   day 11. oop with c++ get 410   day 1
1. oop with c++ get 410 day 1Mukul kumar Neal
 
OOAD unit1 introduction to object orientation
 OOAD unit1 introduction to object orientation OOAD unit1 introduction to object orientation
OOAD unit1 introduction to object orientationDr Chetan Shelke
 
Introduction to UML
Introduction to UMLIntroduction to UML
Introduction to UMLyndaravind
 
OOAD-FULL-UNITS (full unit) SEE6A
OOAD-FULL-UNITS (full unit) SEE6AOOAD-FULL-UNITS (full unit) SEE6A
OOAD-FULL-UNITS (full unit) SEE6AJKN JKN
 
OO Development 1 - Introduction to Object-Oriented Development
OO Development 1 - Introduction to Object-Oriented DevelopmentOO Development 1 - Introduction to Object-Oriented Development
OO Development 1 - Introduction to Object-Oriented DevelopmentRandy Connolly
 
Navigating Agile.pptx
Navigating Agile.pptxNavigating Agile.pptx
Navigating Agile.pptxNikRHassan1
 
Software_Engineering_Presentation (1).pptx
Software_Engineering_Presentation (1).pptxSoftware_Engineering_Presentation (1).pptx
Software_Engineering_Presentation (1).pptxArifaMehreen1
 
Unit IV Software Engineering
Unit IV Software EngineeringUnit IV Software Engineering
Unit IV Software EngineeringNandhini S
 
Responsibility Driven Design
Responsibility Driven DesignResponsibility Driven Design
Responsibility Driven DesignHarsh Jegadeesan
 
Ooad (object oriented analysis design)
Ooad (object oriented analysis design)Ooad (object oriented analysis design)
Ooad (object oriented analysis design)Gagandeep Nanda
 
CS8592 Object Oriented Analysis & Design - UNIT IV
CS8592 Object Oriented Analysis & Design - UNIT IV CS8592 Object Oriented Analysis & Design - UNIT IV
CS8592 Object Oriented Analysis & Design - UNIT IV pkaviya
 
xAPI (Experience API):Potential for Open Educational Resources
xAPI (Experience API):Potential for Open Educational Resources xAPI (Experience API):Potential for Open Educational Resources
xAPI (Experience API):Potential for Open Educational Resources Ramesh C. Sharma
 
Object Oriented Approach for Software Development
Object Oriented Approach for Software DevelopmentObject Oriented Approach for Software Development
Object Oriented Approach for Software DevelopmentRishabh Soni
 
M01_OO_Intro.ppt
M01_OO_Intro.pptM01_OO_Intro.ppt
M01_OO_Intro.pptRojaPogul1
 

Similar a OOA&D Fundamentals (20)

1. oop with c++ get 410 day 1
1. oop with c++ get 410   day 11. oop with c++ get 410   day 1
1. oop with c++ get 410 day 1
 
OOAD unit1 introduction to object orientation
 OOAD unit1 introduction to object orientation OOAD unit1 introduction to object orientation
OOAD unit1 introduction to object orientation
 
CS8592-OOAD Lecture Notes Unit-1
CS8592-OOAD Lecture Notes Unit-1CS8592-OOAD Lecture Notes Unit-1
CS8592-OOAD Lecture Notes Unit-1
 
Introduction to UML
Introduction to UMLIntroduction to UML
Introduction to UML
 
OOAD-FULL-UNITS (full unit) SEE6A
OOAD-FULL-UNITS (full unit) SEE6AOOAD-FULL-UNITS (full unit) SEE6A
OOAD-FULL-UNITS (full unit) SEE6A
 
Structured Analysis and Structured Design
Structured Analysis and Structured DesignStructured Analysis and Structured Design
Structured Analysis and Structured Design
 
Seng 123 8-ooad
Seng 123 8-ooadSeng 123 8-ooad
Seng 123 8-ooad
 
Object oriented programming
Object oriented programmingObject oriented programming
Object oriented programming
 
OO Development 1 - Introduction to Object-Oriented Development
OO Development 1 - Introduction to Object-Oriented DevelopmentOO Development 1 - Introduction to Object-Oriented Development
OO Development 1 - Introduction to Object-Oriented Development
 
Navigating Agile.pptx
Navigating Agile.pptxNavigating Agile.pptx
Navigating Agile.pptx
 
Data modeling
Data modelingData modeling
Data modeling
 
TEST PPT
TEST PPTTEST PPT
TEST PPT
 
Software_Engineering_Presentation (1).pptx
Software_Engineering_Presentation (1).pptxSoftware_Engineering_Presentation (1).pptx
Software_Engineering_Presentation (1).pptx
 
Unit IV Software Engineering
Unit IV Software EngineeringUnit IV Software Engineering
Unit IV Software Engineering
 
Responsibility Driven Design
Responsibility Driven DesignResponsibility Driven Design
Responsibility Driven Design
 
Ooad (object oriented analysis design)
Ooad (object oriented analysis design)Ooad (object oriented analysis design)
Ooad (object oriented analysis design)
 
CS8592 Object Oriented Analysis & Design - UNIT IV
CS8592 Object Oriented Analysis & Design - UNIT IV CS8592 Object Oriented Analysis & Design - UNIT IV
CS8592 Object Oriented Analysis & Design - UNIT IV
 
xAPI (Experience API):Potential for Open Educational Resources
xAPI (Experience API):Potential for Open Educational Resources xAPI (Experience API):Potential for Open Educational Resources
xAPI (Experience API):Potential for Open Educational Resources
 
Object Oriented Approach for Software Development
Object Oriented Approach for Software DevelopmentObject Oriented Approach for Software Development
Object Oriented Approach for Software Development
 
M01_OO_Intro.ppt
M01_OO_Intro.pptM01_OO_Intro.ppt
M01_OO_Intro.ppt
 

Más de Anand Grewal

Más de Anand Grewal (11)

distributed dbms
distributed dbmsdistributed dbms
distributed dbms
 
Transaction concurrency control
Transaction concurrency controlTransaction concurrency control
Transaction concurrency control
 
Object analysis and design
Object analysis and designObject analysis and design
Object analysis and design
 
System design
System designSystem design
System design
 
Presentation12
Presentation12Presentation12
Presentation12
 
Presentation1
Presentation1Presentation1
Presentation1
 
Event handling
Event handlingEvent handling
Event handling
 
Isp
IspIsp
Isp
 
Java
JavaJava
Java
 
Pptemail
PptemailPptemail
Pptemail
 
Presentation on dns
Presentation on dnsPresentation on dns
Presentation on dns
 

Último

Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdfGrade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdfJemuel Francisco
 
ENGLISH6-Q4-W3.pptxqurter our high choom
ENGLISH6-Q4-W3.pptxqurter our high choomENGLISH6-Q4-W3.pptxqurter our high choom
ENGLISH6-Q4-W3.pptxqurter our high choomnelietumpap1
 
Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17
Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17
Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17Celine George
 
Concurrency Control in Database Management system
Concurrency Control in Database Management systemConcurrency Control in Database Management system
Concurrency Control in Database Management systemChristalin Nelson
 
Difference Between Search & Browse Methods in Odoo 17
Difference Between Search & Browse Methods in Odoo 17Difference Between Search & Browse Methods in Odoo 17
Difference Between Search & Browse Methods in Odoo 17Celine George
 
4.18.24 Movement Legacies, Reflection, and Review.pptx
4.18.24 Movement Legacies, Reflection, and Review.pptx4.18.24 Movement Legacies, Reflection, and Review.pptx
4.18.24 Movement Legacies, Reflection, and Review.pptxmary850239
 
Transaction Management in Database Management System
Transaction Management in Database Management SystemTransaction Management in Database Management System
Transaction Management in Database Management SystemChristalin Nelson
 
Procuring digital preservation CAN be quick and painless with our new dynamic...
Procuring digital preservation CAN be quick and painless with our new dynamic...Procuring digital preservation CAN be quick and painless with our new dynamic...
Procuring digital preservation CAN be quick and painless with our new dynamic...Jisc
 
ACC 2024 Chronicles. Cardiology. Exam.pdf
ACC 2024 Chronicles. Cardiology. Exam.pdfACC 2024 Chronicles. Cardiology. Exam.pdf
ACC 2024 Chronicles. Cardiology. Exam.pdfSpandanaRallapalli
 
Field Attribute Index Feature in Odoo 17
Field Attribute Index Feature in Odoo 17Field Attribute Index Feature in Odoo 17
Field Attribute Index Feature in Odoo 17Celine George
 
Keynote by Prof. Wurzer at Nordex about IP-design
Keynote by Prof. Wurzer at Nordex about IP-designKeynote by Prof. Wurzer at Nordex about IP-design
Keynote by Prof. Wurzer at Nordex about IP-designMIPLM
 
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptxECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptxiammrhaywood
 
Karra SKD Conference Presentation Revised.pptx
Karra SKD Conference Presentation Revised.pptxKarra SKD Conference Presentation Revised.pptx
Karra SKD Conference Presentation Revised.pptxAshokKarra1
 
THEORIES OF ORGANIZATION-PUBLIC ADMINISTRATION
THEORIES OF ORGANIZATION-PUBLIC ADMINISTRATIONTHEORIES OF ORGANIZATION-PUBLIC ADMINISTRATION
THEORIES OF ORGANIZATION-PUBLIC ADMINISTRATIONHumphrey A Beña
 
ANG SEKTOR NG agrikultura.pptx QUARTER 4
ANG SEKTOR NG agrikultura.pptx QUARTER 4ANG SEKTOR NG agrikultura.pptx QUARTER 4
ANG SEKTOR NG agrikultura.pptx QUARTER 4MiaBumagat1
 
Inclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdf
Inclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdfInclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdf
Inclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdfTechSoup
 
Earth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice greatEarth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice greatYousafMalik24
 

Último (20)

Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdfGrade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
Grade 9 Quarter 4 Dll Grade 9 Quarter 4 DLL.pdf
 
YOUVE GOT EMAIL_FINALS_EL_DORADO_2024.pptx
YOUVE GOT EMAIL_FINALS_EL_DORADO_2024.pptxYOUVE GOT EMAIL_FINALS_EL_DORADO_2024.pptx
YOUVE GOT EMAIL_FINALS_EL_DORADO_2024.pptx
 
Raw materials used in Herbal Cosmetics.pptx
Raw materials used in Herbal Cosmetics.pptxRaw materials used in Herbal Cosmetics.pptx
Raw materials used in Herbal Cosmetics.pptx
 
ENGLISH6-Q4-W3.pptxqurter our high choom
ENGLISH6-Q4-W3.pptxqurter our high choomENGLISH6-Q4-W3.pptxqurter our high choom
ENGLISH6-Q4-W3.pptxqurter our high choom
 
Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝
 
Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17
Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17
Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17
 
Concurrency Control in Database Management system
Concurrency Control in Database Management systemConcurrency Control in Database Management system
Concurrency Control in Database Management system
 
Difference Between Search & Browse Methods in Odoo 17
Difference Between Search & Browse Methods in Odoo 17Difference Between Search & Browse Methods in Odoo 17
Difference Between Search & Browse Methods in Odoo 17
 
4.18.24 Movement Legacies, Reflection, and Review.pptx
4.18.24 Movement Legacies, Reflection, and Review.pptx4.18.24 Movement Legacies, Reflection, and Review.pptx
4.18.24 Movement Legacies, Reflection, and Review.pptx
 
Transaction Management in Database Management System
Transaction Management in Database Management SystemTransaction Management in Database Management System
Transaction Management in Database Management System
 
Procuring digital preservation CAN be quick and painless with our new dynamic...
Procuring digital preservation CAN be quick and painless with our new dynamic...Procuring digital preservation CAN be quick and painless with our new dynamic...
Procuring digital preservation CAN be quick and painless with our new dynamic...
 
ACC 2024 Chronicles. Cardiology. Exam.pdf
ACC 2024 Chronicles. Cardiology. Exam.pdfACC 2024 Chronicles. Cardiology. Exam.pdf
ACC 2024 Chronicles. Cardiology. Exam.pdf
 
Field Attribute Index Feature in Odoo 17
Field Attribute Index Feature in Odoo 17Field Attribute Index Feature in Odoo 17
Field Attribute Index Feature in Odoo 17
 
Keynote by Prof. Wurzer at Nordex about IP-design
Keynote by Prof. Wurzer at Nordex about IP-designKeynote by Prof. Wurzer at Nordex about IP-design
Keynote by Prof. Wurzer at Nordex about IP-design
 
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptxECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
 
Karra SKD Conference Presentation Revised.pptx
Karra SKD Conference Presentation Revised.pptxKarra SKD Conference Presentation Revised.pptx
Karra SKD Conference Presentation Revised.pptx
 
THEORIES OF ORGANIZATION-PUBLIC ADMINISTRATION
THEORIES OF ORGANIZATION-PUBLIC ADMINISTRATIONTHEORIES OF ORGANIZATION-PUBLIC ADMINISTRATION
THEORIES OF ORGANIZATION-PUBLIC ADMINISTRATION
 
ANG SEKTOR NG agrikultura.pptx QUARTER 4
ANG SEKTOR NG agrikultura.pptx QUARTER 4ANG SEKTOR NG agrikultura.pptx QUARTER 4
ANG SEKTOR NG agrikultura.pptx QUARTER 4
 
Inclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdf
Inclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdfInclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdf
Inclusivity Essentials_ Creating Accessible Websites for Nonprofits .pdf
 
Earth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice greatEarth Day Presentation wow hello nice great
Earth Day Presentation wow hello nice great
 

OOA&D Fundamentals

  • 1. Object Oriented Analysis & Design MCA 405-C (N2) 12/01/12 Amandeep S. Patti 1
  • 2. What is Object-Orientation? - Object  An "object" is anything to which a concept applies. A "concept" is an idea or notion that we apply to the things, or objects, in our awareness  Thing drawn from the problem domain or solution space.  E.g., a living person in the problem domain, a software component in the solution space.  A structure that - has identity (i.e., discrete and distinguishable), and - bundles together attributes (the data part, or state) and behavior (the function/code part).  It is an instance of a collective concept, i.e., a class. 12/01/12 Amandeep S. Patti 2
  • 3. Properties of an object  Attribute: A characteristic of an object that has value in the context of the system  Method: How an object allows other objects to interact with it  Method overloading: When a method name is used for different reasons in the same scope, the method is overloaded  State: a condition during the life of an object 12/01/12 Amandeep S. Patti 3
  • 4. What is Object-Orientation? - Class  A collection of objects with the same data structure (attributes, state variables) and behavior (function/code/operations) in the solution space.  A blueprint or definition of objects.  Classification  Grouping of common objects into a class  Instance  An object created by a class.  Instantiation  The act of creating an instance. 12/01/12 Amandeep S. Patti 4
  • 5. Describing a class  Why does a class exist?  What is it relevance to others?  What are the attributes?  What are its methods? 12/01/12 Amandeep S. Patti 5
  • 6. Fundamentals of Object Orientation  Data Abstraction and Encapsulation  Inheritance  Polymorphism 12/01/12 Amandeep S. Patti 6
  • 7. Data Abstraction and Encapsulation  Data Abstraction is defined as extracting from the abundance of information-related data. It is important that related data be kept together for easier manipulation. It is equally important to abstract the generic data from specific details.  Encapsulation is defined as hiding related data behind an interface of methods. These methods allow access to the data and manipulations to be performed on the data. 12/01/12 Amandeep S. Patti 7
  • 8. Data Abstraction and Encapsulation Attributes Set data values Get data values Attributes Manipulate data values 12/01/12 Amandeep S. Patti 8
  • 9. Abstraction Focus on the essential. Focus on what an object “is and does”. Omits tremendous amount of details. Must always be for some purpose, because purpose determines what is and what is not important. Many abstractions of the same thing are possible. All abstractions are incomplete and inaccurate. A good model captures the crucial aspects of a problem and omits the others. 12/01/12 Amandeep S. Patti 9
  • 10. Example of Abstraction Class Car Attributes  Model  Location Operations  Start  Accelerate 12/01/12 Amandeep S. Patti 10
  • 11. Inheritance  Inheritance brings properties that are common across several classes into one general class. This class then becomes the parent class to more specific class or child class.  Two types.  Derived inheritance.  Abstracted inheritance. 12/01/12 Amandeep S. Patti 11
  • 12. Polymorphism  There are two possible definitions for the term polymorphism  Different classes supporting the same method (overriding)  An object supports multiple interface. 12/01/12 Amandeep S. Patti 12
  • 13. Overriding  The mechanism by which a child class can provide an alternative implementation of a method currently provided by a parent class. 12/01/12 Amandeep S. Patti 13
  • 14. What Is Object Oriented Development?  It’s a new way of thinking about software based on abstractions that exist in the real world.  The essence of object-oriented development is the identification and organization of application-domain concepts, rather than their final representation in a programming language. 12/01/12 Amandeep S. Patti 14
  • 15. What Is Object Oriented Development?  It is only when the inherent concepts of the application are identified, organized and understood that the details of data structures and functions can be addressed effectively. 12/01/12 Amandeep S. Patti 15
  • 16. How It Is Different From Functional Methodology?  In functional methodology, emphasis on specifying and decomposing system functionality. If requirements changes, the system may require massive changes.  Object oriented approach focuses first on identifying objects from the application domain, then fitting procedures around them. 12/01/12 Amandeep S. Patti 16
  • 17. What Is OOAD?  Analysis — understanding, finding and describing concepts in the problem domain.  Design — understanding and defining software solution/objects that represent the analysis concepts and will eventually be implemented in code.  OOAD —A software development approach that emphasizes a logical solution based on objects. 12/01/12 Amandeep S. Patti 17
  • 18. What Is OOAD?  Object-orientation  Allows users to fully understand the environment they are attempting to model  OOAD is an OO methodology for analyzing and designing a system. It is not necessarily relevant to any programming language, even it may be irrelevant to any programming task. It is the recognition methodology to understand the world.  In this sense OOP is the application of OOAD to software programming tasks 12/01/12 Amandeep S. Patti 18
  • 19. What Is OOAD?  The fundamental construct is the object, which combines both data structure and behaviour in a single entity.  Object oriented models are useful for understanding problems, communicating with application experts, modeling enterprises, preparing documents and designing programs and databases . 12/01/12 Amandeep S. Patti 19
  • 20. What Is a Model?  A model is a simplification of reality. E.g., a miniature bridge for a real bridge to be built  A model is our simplification of our perception of reality (that is, if it exists, otherwise it could be a mere illusion).  A model is an abstraction (omitting tremendous amount of details) of something for the purpose of understanding, be it the problem or a solution. 12/01/12 Amandeep S. Patti 20
  • 21. Three Models  Object model- describes the static structure of the objects in a system and their relationships. It contains object diagrams.  Dynamic model- describes the aspects of a system that change over time. It is used to specify and implement the control aspects of a system.  Functional model- describes the data value transformation within a system. It contains DFD. DFD represents a computation. 12/01/12 Amandeep S. Patti 21
  • 22. Object Model  It provides the essential framework into which the dynamic and functional models can be placed.  Changes and transformations are meaningless unless there is something to be changed or transformed. 12/01/12 Amandeep S. Patti 22
  • 23. Dynamic Model  Describes those aspects of a system concerned with the time and the sequencing of operations- events that mark changes, sequences of events, states that define the context for events and the organisation of events and states.  It describes the sequences of operations that occur, without regard for what they operations do, what they operate on, or how they are implemented. 12/01/12 Amandeep S. Patti 23
  • 24. Functional Model  Describes those aspects of a system concerned with transformations of values- functions, mappings, constraints and functional dependencies.  The functional model captures what a system does, without regard for how and when it is done. 12/01/12 Amandeep S. Patti 24
  • 25. How to Do OOAD Software Lifecycle Review Systems Engineering Quality Assurance Requirements Analysis Project Planning Maintenance Architectural Design Detailed Design Implementation Release 12/01/12 Amandeep S. Patti 25