Copyright ©2004 Cezary Z Janikow 1 OOAD Overview n OO language – Necessary for OO systems? – Sufficient for OO systems? Owning a hummer doesn’t make you.

Slides:



Advertisements
Similar presentations
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 12Slide 1 Software Design l Objectives To explain how a software design may be represented.
Advertisements

ARCH-05 Application Prophecy UML 101 Peter Varhol Principal Product Manager.
Object-Oriented Analysis and Design Introduction 1.
Chap 1 UML vs Thinking in Objects! – Visual modeling Learning UML – Look at the book examples – Alan Holub’s UML reference card – Use library resources.
Object-Oriented Analysis and Design
Chapter 1 Object Oriented Analysis and Design. UML, Patterns, and Object-Oriented Analysis and Design  The essential skills for the creation of well-designed,
Object-Oriented Analysis and Design CHAPTERS 12-14: INTRODUCTION TO DESIGN 1.
Unified Modeling Language
Introduction To System Analysis and Design
Copyright ©2004 Cezary Z Janikow 1 Domain Model n Visualization of entities and relationships n In UP presented as Class Diagrams – Classes, Relationships,
Object Oriented Analysis and Design
Unified Modeling (Part I) Overview of UML & Modeling
Copyright ©2004 Cezary Z Janikow 1 Use Cases n Within Requirements discipline/workflow n Verbal descriptions of important functional (behavioral, transactional,
© Copyright Eliyahu Brutman Programming Techniques Course.
Marcelo Santos – OOAD-CDT309, Spring 2008, IDE-MdH Object-Oriented Analysis and Design - CDT309 Period 4, Spring 2008 Introduction.
Sharif University of Technology1 Design and Use-case Realization Software Engineering Laboratory Fall 2006.
COMP 350: Object Oriented Analysis and Design Lecture 2
Object Oriented Analysis and Design Using the UML
Object Oriented Analysis By: Don Villanueva CS 524 Software Engineering I Fall I 2007 – Sheldon X. Liang, Ph. D.
Unified Modeling Language, Version 2.0
Chapter 6: Structured Vs. Object Oriented Analysis and Design.
Introduction To System Analysis and Design
Object-Oriented Analysis and Design An Introduction.
Software development process ธนวัฒน์ แซ่ เอียบ. The development process Process –set of rules which define how a development project. Methodology and.
Object-Oriented Analysis and Design Lecture 1 Instructor: John Cole 1Object-Oriented Analysis and Design - Intro.
Chapter 17 GRASP: Designing Objects with Responsibilities. 1CS6359 Fall 2011 John Cole.
For accurate communication, since a project can have several participants, each from different background. Represent a given aspect of the system We will.
Object-Oriented Analysis and Design Fall 2009.
Object Oriented Analysis and Design using the UML CIS 520 Advanced Object-Oriented Design.
UML diagrams What is UML UML diagrams –Static modeoing –Dynamic modeling 1.
1 COMP 350: Object Oriented Analysis and Design Lecture 1Introduction References: Craig Larman Chapter 1.
Documenting Software Architectures 1.Uses and Audiences for Architecture Documentation Architecture documentation serves as a means of education Architecture.
Introduction To OOP 1.0 Fundamentals Of Java Programming Language 2.0 Exception Handling 3.0 Classes, Inheritance And Polymorphism © 2011 | PN AZRINA.
Chapter 1 Applying UML and Patterns. The Need for Software Blueprints Knowing an object-oriented language and having access to a library is necessary.
Slide 1 Systems Analysis and Design With UML 2.0 An Object-Oriented Approach, Second Edition Chapter 2: Introduction to Object-Oriented Systems Analysis.
Software Design: Principles, Process, and Concepts Getting Started with Design.
Object-Oriented Modeling: Static Models. Object-Oriented Modeling Model the system as interacting objects Model the system as interacting objects Match.
Object-Oriented Analysis and Design ธนวัฒน์ แซ่ เอียบ.
Object Oriented Analysis and Design Chapter 1 Applying UML and Patterns -Craig Larman.
Lecture 9-1 : Intro. to UML (Unified Modeling Language)
Slide 1 Systems Analysis and Design With UML 2.0 An Object-Oriented Approach, Second Edition Chapter 2: Introduction to Object-Oriented Systems Analysis.
Chapter 1 OBJECT-ORIENTED ANALYSIS AND DESIGN Objectives Describe the book goals and scope Define OOA/D (Object-Oriented Analysis and Design) Illustrate.
1 Technical & Business Writing (ENG-715) Muhammad Bilal Bashir UIIT, Rawalpindi.
Week 04 Object Oriented Analysis and Designing. What is a model? A model is quicker and easier to build A model can be used in simulations, to learn more.
1 Unified Modeling Language, Version 2.0 Chapter 2.
Object Oriented Analysis and Design 1 CREATED BY RUONAN RAO Object-Oriented Analysis and Design.
From Use Cases to Implementation 1. Structural and Behavioral Aspects of Collaborations  Two aspects of Collaborations Structural – specifies the static.
Object Oriented Programming and Data Abstraction Earl Huff Rowan University.
Basic Characteristics of Object-Oriented Systems
Object Oriented Analysis & Design By Rashid Mahmood.
From Use Cases to Implementation 1. Mapping Requirements Directly to Design and Code  For many, if not most, of our requirements it is relatively easy.
Introduction to OOAD and UML
Slide 1 Unified Modeling Language, Version 2.0 Object-Oriented SAD.
UML Diagrams By Daniel Damaris Novarianto S..
UNIT 1.
Chapter 6: Structured Vs. Object Oriented Analysis and Design.
Chapter 5: Object Oriented Analysis and Design
Chapter 1 OBJECT-ORIENTED ANALYSIS AND DESIGN
Unified Modeling Language
CS 519: Object-Oriented Analysis & Design IS 516: Selected Topics in Information Technology Instructor: Dr. Tarek Elghazaly Text Book: Craig Larman,
UML Diagrams Jung Woo.
The Object Oriented Approach to Design
COMP 350: Object Oriented Analysis and Design Lecture 2
Chap 1 UML vs Thinking in Objects! Learning UML Visual modeling
Object oriented analysis and design
OBJECT ORIENTED ANALYSIS AND DESIGN
Chapter 6: Structured Vs. Object Oriented Analysis and Design.
Copyright 2007 Oxford Consulting, Ltd
On to Object Design c. 14.
Presentation transcript:

Copyright ©2004 Cezary Z Janikow 1 OOAD Overview n OO language – Necessary for OO systems? – Sufficient for OO systems? Owning a hummer doesn’t make you a home builder n OOAD is necessary in building QUAILITY OO systems – Architectural cohesion – Reusability – Maintenance

Copyright ©2004 Cezary Z Janikow 2 OOAD Overview n Key importance – Assignment of Responsibilities Performed during Design workflow Responsibility-driven design Follows GRASP principles Successful designs become Patterns n Key elements and properties – Use Cases Text description of vital transactions and scenarios Not OO but usually used in OOAD – Agile Process Light, flexible, iterative form of the UP process Iterative – performed in a number of successive builds

Copyright ©2004 Cezary Z Janikow 3 OOAD Overview n OOAD elements

Copyright ©2004 Cezary Z Janikow 4 OOAD Overview n Analysis -> Design -> Implementation -> Deployment – Analysis is investigation of the problem, requirements, constraints, technology Emphasis on finding problem entities (conceptual classes), relationships, constraints – Design is a conceptual solution, including architecture, algorithms, etc. Emphasis on designing classes and objects with behavior to allow collaborations to solve particular requests while using patterns – Implementation is expression of the design in code Emphasis on utilizing the language of choice to implement design classes while exploring visibility, navigability, etc. – Deployment is the actual installation in the host environment

Copyright ©2004 Cezary Z Janikow 5 OOAD Overview n Airplane example of object and class discovery

Copyright ©2004 Cezary Z Janikow 6 OOAD Example n Rudimentary process – UseCases -> DomainModel -> Interactions -> DesignModel n Dice game example – 2 players rolling 2 dice n Use Case – Verbal description of transactions or processes – Player throws two dice. The result is observed. If the total is 7 the player wins otherwise he loses.

Copyright ©2004 Cezary Z Janikow 7 OOAD Example n Domain Model – Static view of classes and relations

Copyright ©2004 Cezary Z Janikow 8 OOAD Example n Interactions – Assignment of responsibilities among objects – Sequence or Communication diagrams

Copyright ©2004 Cezary Z Janikow 9 OOAD Example n Design Diagrams n Software classes with methods according to responsibilities and attributes according to visibility

Copyright ©2004 Cezary Z Janikow 10 UML n UML n Visual Modeling Language

Copyright ©2004 Cezary Z Janikow 11 UML n Three perspectives (and class meanings in diagrams) n Conceptual – described the real world entities n Specification – describes design entities but not tied to specific implementations n Implementation – describes particular implementations of the specification elements