Ooa 1 Post
Upcoming SlideShare
Loading in...5

Ooa 1 Post



Object-oriented analysis and design(OOAD) UML Slides. for more slides refer www.scmGalaxy.com.

Object-oriented analysis and design(OOAD) UML Slides. for more slides refer www.scmGalaxy.com.



Total Views
Views on SlideShare
Embed Views



0 Embeds 0

No embeds



Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
Post Comment
Edit your comment

Ooa 1 Post Ooa 1 Post Presentation Transcript

  • Analysis Phase - 1 Look DEEP in Mans eye to analyze him
  • Analysis phase - Topics:
    • Building a conceptual Model
        • Conceptual model - Adding Attributes
        • Conceptual model - Adding Associations
    • Recording terms in the glossary
    • System Behavior - System Sequence Diagrams
    • System Behavior - Contracts
    • Identify concepts related to the current development cycle requirements.
    • Infer association on Need - to - know basis and name them.
    • Create an initial conceptual model.
    • Infer & add multiplicity and role between concepts
    • Distinguish between correct and incorrect attributes.
    • Add specification concepts, when appropriate.
    • Compare and contrast the terms concept, interface and class .
    Objectives View slide
  • Introduction
    • Identifying a rich set of objects or concepts is at the heart of object – oriented analysis
    • The following two session expand on conceptual modeling skills – looking at attributes and associations
    View slide
  • Activities and Dependencies
    • One of the early major activities within a development cycle is the creation a conceptual model for the use cases of the current cycle.
    • Its creation is dependent on having use cases from which concepts (objects) can be identified.
    • The creation may not be linear; for example, the conceptual model may be made in parallel to the development of the use cases.
  • Conceptual Models
    • In the UML, a conceptual model is illustrated with a set of static structure diagrams in which no operations are defined.
    • The term conceptual model has the advantage of strongly emphasizing a focus on domain concepts , not software entities .
    • It may show:
      • concepts
      • associations between concepts
      • attributes of concepts
  • Understanding Domain Vocabulary
    • Our goal here is to create a conceptual model of interesting or meaningful concepts in the domain under consideration.
    • Conceptual model aids in clarifying the terminology or vocabulary of the domain.
    • It can be viewed as a model that communicates (to interested parties such as developers) what the important terms are, and how they are related.
  • Conceptual Models are not Models of Software Designs
    • No responsibilities or methods are assigned in conceptual model
    • Conceptual model shows the real world concepts ,no software artifacts or classes are part of it.
    • Most of the thing in the conceptual model should come from domain only .
  • Conceptual Models and Decomposition
    • Software problems can be complex :
    • “ Decomposition – divide and conquer” – is a common strategy to deal with this complexity by division of the problem space into comprehensible units.
    • Object-oriented analysis the dimension of decomposition is fundamentally by concepts
  • Strategies to Identify Concepts
    • The central task is therefore to identify concepts :
        • Two strategies are presented
        • 1. Finding Concepts with the
        • “ Concept Category List”
        • 2. Finding concepts with Noun
        • “ Phrase Identification”
  • Useful guideline in identifying concepts :
    • The conceptual model should be detailed
    • Do not exclude a concept simply because the requirements do not indicate any obvious need to remember information about it, or because the concepts, have a purely behavioral role in the domain instead of an information role.
    • It is better to overspecify a conceptual model with lots of fine-grained concepts, than to underspecify it
    • It is common to miss concepts during the initial identification phase, and to discover them later during the consideration of attributes or associations, or during the design phase.
  • Drawbacks of Noun Phrase Identification.
    • A weakness of this approach is the imprecision of natural language; different noun phrases may represent the same concept or attribute, among other ambiguities.
    • Nevertheless, it is recommended in combination with the Concept Category List technique.
  • Concept Category List
  • Finding concepts with noun Phrase identification Some of these are candidate concepts and some are attributes of these concepts
  • Candidate Concepts for the POST Domain
    • From the Concept Category List and noun-phrase analysis, we generate a list of candidate concept for the POST application
    Customer Cashier Manager Store POST ProductSpecification ProductCatalog Item Sale SaleLineItem UML notation
    • Identify attributes in a conceptual model.
    • Distinguish between correct and incorrect attributes.
    • An attribute is a logical data value of an object
    • Attributes are shown in the second section of the concept box
    UML Figure: Concept and attributes
  • Attributes…..
    • Other attributes that are not obvious and apparent may be identified later.
    • This is acceptable during the design and construction phases the remaining attributes will be discovered and added.
    • Inferring associations between concepts
    • Distinguish between need – to – know and comprehension – only associations
  • Associations : An association is a relationship between concepts that indicates some meaningful and interesting connection In the UML they are described as “structural relationships between objects of different types
  • Naming Associations :
    • Name an association based on a
    • TypeName – VerbPhrase-TypeName
    • format where the verb phrase creates a sequence that is readable and meaningful in the model context.
    • Association names should start
    • with a capital letter.
    • Follow left to right
    • Top to bottom convention
    • A verb phrase should be constructed with hyphens.
  • Roles:
    • Each end of an association is called a role.
    • Roles may have:
        • name
        • multiplicity expression
        • navigability
    • Multiplicity is investigated now, but the other two features are discussed during design.
  • Multiplicity
    • Multiplicity defines how many instances of a type A can be associated with one instance of a type B, at a particular moment in time
    • Multiplicity value is context
    • dependent.
    Multiplicity at end of association * 1…* 1...40 5 3,5,8 zero or more; “ many” one or more one to forty exactly five exactly three, five or eight
  • Conceptual model: POST