SlideServe
Menu
Préférences
© SlideServe · v2026

Object Oriented Paradigm

roth-mullen avatar
14 diapositives · 458 Views · Nov 07, 2014

COMP 350: Object Oriented Analysis and Design Lecture 1 Introduction References: Craig Larman Chapter 1. Object Oriented Paradigm. A set of techniques for analyzing, decomposing, and modularizing software systems

Object Oriented Paradigm - slide 1
01 / 14Object Oriented Paradigm
1 / 17

Télécharger la présentation

Object Oriented Paradigm
Une image / un lien ci-dessous est fourni (tel quel) pour télécharger la présentation

Politique de téléchargement : le contenu du site vous est fourni TEL QUEL pour votre information et votre usage personnel ; il ne peut être vendu, concédé sous licence ni partagé sur d’autres sites sans l’accord de son auteur.Le contenu vous est fourni TEL QUEL, pour votre information et votre usage personnel uniquement. Téléchargez la présentation en cliquant sur ce lien. Lors du téléchargement, si vous ne parvenez pas à télécharger une présentation, l’éditeur a peut-être supprimé le fichier de son serveur.Pendant le téléchargement, si vous ne parvenez pas à obtenir une présentation, le fichier a peut-être été supprimé par l’éditeur.

F I N

Plus de contenu associé

Transcription de la présentation
  1. COMP 350: Object Oriented Analysis and DesignLecture 1 IntroductionReferences: Craig Larman Chapter 1

  2. Object Oriented Paradigm • A set of techniques for analyzing, decomposing, and modularizing software systems • Characterized by structuring the system on the basis of its objects rather than the actions it performs

  3. Benefits of OO • OO enhances key software quality factors of a system and its constituent components • Correctness • Robustness • Reliability • Extensibility • Reusability • Compatibility (via standard/uniform interfaces) • Maintainable • More?

  4. OOA, OOD, OOP • Object-oriented methods may be applied to different phases in the software life- cycle • e.g., analysis, design, implementation, etc. • OO analysis (OOA) is a process of discovery • Where a development team models and understands the system and its requirements • OO design (OOD) is a process of invention and adaptation • where the development team creates the abstractions and mechanisms necessary to meet the system's behavioral requirements determined during analysis • OOP is primarily concerned with programming language and software implementation issues

  5. Object vs. Function Oriented Approach

  6. What is Object Oriented Analysis? • The emphasis is on finding and describing the objects (or concepts) in the problem domain. • Example: In a Library Information System, some of the concepts include Book, Library, and Patron.

  7. What is Object Oriented Design? • The emphasis is defining software objects and how they collaborate to fulfill the requirements. • Example: In a Library Information System, a Book software object may have a title attribute and a get Chapter method.

  8. Division between Analysis and Design • Fuzzy; A & D activities exist on a continuum • Some practitioners can classify an activity as analysis while others put it into design category

  9. Summary: OO Analysis and Design • The essence of OOAD is to consider a problem domain and logical solution from the perspective of objects (things, concepts, or entities) • OO Analysis emphasizes finding and describing the objects –or concepts-in the problem domain • OO Design emphasizes defining logical software objects (things, concepts, or entities) that have attributes and methods

  10. OOA, OOD, OOP

  11. Unified Modeling Language (UML) • “A visual language for specifying, constructing and documenting the artifacts of systems” [Booch, Jacobson, Rumbaugh] • Uses OO concepts • Not a methodology • Not a process

  12. UML Diagrams • Use case diagrams • Class diagrams • Interaction diagrams: Sequence diagrams, Collaboration diagrams • Package diagrams • State Machine diagrams • Activity diagrams • Component diagrams • Deployment diagrams

  13. Skills to Master • “Think in objects” • Analyze requirements with use cases • Create domain models • Apply an iterative & agile process • Relate analysis and design artifacts • Read and write UML • Assign responsibilities to objects • Design collaborations • Design with patterns • Design with architectural layers

  14. Harmful is knowing how to read and draw UML diagrams, but not being an expert in design and patterns. Important is object and architectural design skills, not UML diagrams, drawing, or CASE tools.