Presentation is loading. Please wait.

Presentation is loading. Please wait.

1 COMP 350: Object Oriented Analysis and Design Lecture 1Introduction References: Craig Larman Chapter 1.

Similar presentations


Presentation on theme: "1 COMP 350: Object Oriented Analysis and Design Lecture 1Introduction References: Craig Larman Chapter 1."— Presentation transcript:

1 1 COMP 350: Object Oriented Analysis and Design Lecture 1Introduction References: 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 8

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 9

10 OOA, OOD, OOP 10

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 11

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 12

13 Skills to Master 13 “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 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.


Download ppt "1 COMP 350: Object Oriented Analysis and Design Lecture 1Introduction References: Craig Larman Chapter 1."

Similar presentations


Ads by Google