Object Oriented Design OOD. OOD characteristics - I conceptual compatibility with OOA notational consistency with OOA clean traceability of OOA results.

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

Chapter 7 – Object-Oriented Design
Chapter 22 Object-Oriented Systems Analysis and Design and UML Systems Analysis and Design Kendall and Kendall Fifth Edition.
The Problem Domain Component (PDC) [Coad/Yourdon]
Chapter 1 Object Oriented Analysis and Design. UML, Patterns, and Object-Oriented Analysis and Design  The essential skills for the creation of well-designed,
Unit-III Requirements Engineering
Introduction To System Analysis and Design
The OOD Process - III The Data Management Component (DMC) [Coad/Yourdon]
Component-Level Design
Development Processes UML just is a modeling technique, yet for using it we need to know: »what do we model in an analysis model? »what do we model in.
1 UML – an overview What is UML? UML stands for Unified Modelling Language. ”The Unified Modelling Language is a visual language for specifying, constructing.
The OOD Process - II The Human Interaction Component (HIC) [Coad/Yourdon]
Object Oriented Analysis OOA. OOA Deliverables Static Object model –one single diagram Scenarios –set of diagrams Object Dictionary –one set of comprehensive.
Software Engineering CSE470: Requirements Analysis 1 Requirements Analysis Defining the WHAT.
Software Engineering I Object-Oriented Design
The Task Management Component (TMC) [Coad/Yourdon]
The OOD Process Design as a Logical Continuation of Analysis.
11/5/01OO Design1 Design Object-Oriented Design. 11/5/01OO Design2 Object-Oriented Design  The process of determining the architecture, and specifying.
Object-Oriented Analysis and Design
Basic Concepts The Unified Modeling Language (UML) SYSC System Analysis and Design.
Introduction To System Analysis and design
OO Analysis and Design CMPS OOA/OOD Cursory explanation of OOP emphasizes ▫ Syntax  classes, inheritance, message passing, virtual, static Most.
Object Oriented Analysis By: Don Villanueva CS 524 Software Engineering I Fall I 2007 – Sheldon X. Liang, Ph. D.
Design Patterns OOD. Course topics Design Principles UML –Class Diagrams –Sequence Diagrams Design Patterns C#,.NET (all the course examples) Design Principles.
CIT UPES | Sept 2013 | Unified Modeling Language - UML.
Object-Oriented Analysis and Design OVERVIEW. Objectives  Describe Information Systems  Explain the role of a systems analyst  Introduce object-oriented.
SAMANVITHA RAMAYANAM 18 TH FEBRUARY 2010 CPE 691 LAYERED APPLICATION.
Chapter 6: Structured Vs. Object Oriented Analysis and Design.
Introduction To System Analysis and Design
SWE © Solomon Seifu ELABORATION. SWE © Solomon Seifu Lesson 10 Use Case Design.
Approaching a Problem Where do we start? How do we proceed?
Systems Analysis and Design in a Changing World, 3rd Edition
1 COMP 350: Object Oriented Analysis and Design Lecture 1Introduction References: Craig Larman Chapter 1.
ECE450 Software Engineering II Lecture 6 – Object Oriented Design.
CS 4850: Senior Project Fall 2014 Object-Oriented Design.
Computing and SE II Chapter 9: Design Methods and Design Models Er-Yu Ding Software Institute, NJU.
1/26 On-demand Learning Series Software Engineering of Web Application - Object-Oriented Development & UML Hunan University, Software School.
What is Object-Oriented?  Organization of software as a collection of discreet objects that incorporate both data structure and behavior.
CS 8532: Advanced Software Engineering Dr. Hisham Haddad Overview of Object-Oriented Design Highlights of OOD Concepts, Components, and Process.
Dale Roberts Object Oriented Programming using Java - Introduction Dale Roberts, Lecturer Computer Science, IUPUI Department.
PROC-1 1. Software Development Process. PROC-2 A Process Software Development Process User’s Requirements Software System Unified Process: Component Based.
Object-Oriented Modeling: Static Models. Object-Oriented Modeling Model the system as interacting objects Model the system as interacting objects Match.
Introduction to OOAD and the UML
Requirements Engineering-Based Conceptual Modelling From: Requirements Engineering E. Insfran, O. Pastor and R. Wieringa Presented by Chin-Yi Tsai.
Lecture 9-1 : Intro. to UML (Unified Modeling Language)
Architecture View Models A model is a complete, simplified description of a system from a particular perspective or viewpoint. There is no single view.
Testing OO software. State Based Testing State machine: implementation-independent specification (model) of the dynamic behaviour of the system State:
Advanced Object-Oriented Design Patterns and Architectures Part One COEN396A John Xiao
UML (Unified Modeling Language)
21/1/ Analysis - Model of real-world situation - What ? System Design - Overall architecture (sub-systems) Object Design - Refinement of Design.
04 - OOD Intro.CSC4071 Software Design ‘Requirements’ defines –The goals the system needs to satisfy. ‘Specification’ defines –The externally-observable.
Object-Oriented Systems. Goals Object-Oriented Methodologies – The Rumbaugh et al. OMT – The Booch methodology – Jacobson's methodologies.
CSIS 4850: CS Senior Project – Spring 2009 CSIS 4850: Senior Project Spring 2009 Object-Oriented Design.
OOD OO Design. OOD-2 OO Development Requirements Use case analysis OO Analysis –Models from the domain and application OO Design –Mapping of model.
07 - OODCSC4071 OOA/OOD/OOP Example example OODCSC4072 Requirements See eg/req.htmleg/req.html Want a program to help a software company plan new.
From Use Cases to Implementation 1. Structural and Behavioral Aspects of Collaborations  Two aspects of Collaborations Structural – specifies the static.
1 Architectural Blueprints—The “4+1” View Model of Software Architecture (
Object Oriented Programming and Data Abstraction Earl Huff Rowan University.
UA. Unified Approach ( UA ) It combines best practices, methods process, guidelines & methodology (Rumbaugh, Booch and Jacobson) along with UML notations.
Dillon: CSE470: ANALYSIS1 Requirements l Specify functionality »model objects and resources »model behavior l Specify data interfaces »type, quantity,
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.
UNIT 1.
The Object Oriented Approach to Design
Object-Oriented Design
Unified Modeling Language
Object-Oriented Design
Object oriented analysis and design
OBJECT ORIENTED ANALYSIS AND DESIGN
Chapter 22 Object-Oriented Systems Analysis and Design and UML
Presentation transcript:

Object Oriented Design OOD

OOD characteristics - I conceptual compatibility with OOA notational consistency with OOA clean traceability of OOA results direct inclusion of OOA results => avoids the classical, conceptual “gap” between Analysis and Design

OOD regards the OOA model as a problem-oriented “Miniworld” that needs to be supported and organized by a computer-based system.

OOD characteristics - II OOD extends and refines OOA results OOD bridges the gap to the available infrastructure OOD is very much about reuse of –objects, –patterns, –and whole architectures

Object-Oriented Design Influence Factors & Relations OOD OOA Model Architectures OOD Model Patterns Infrastructure OOA Process

The Levels of the OOD Process - High-Level Design extend the OOA Model [Coad/Yourdon] –include “domain components” in the model acknowledge that we develop a computer-based system include human interface, data management, communications and control aspects (task mgmt) –decide on a general system architecture how to organize the above aspects into a well specified structure (and behavior) reuse existing patterns and solutions

The Levels of the OOD Process - Detailed Design refine and map the OOA Model to the infrastructure –detailed algorithms and datastructures –implementation of OO structures –implementation of states and transitions –optimization –maximize reuse –exception handling –etc.

The OOD “Co-Design” Process Matrix of Domain Components and Levels TMCHICPDCDMC high-level Design detailed Design Miniworld extend refine & map

Object Oriented Design means to navigate the domain/level matrix with the purpose to complete all associated tasks in a meaningful sequence.

OOD and SW-Architectures A clear general architectural concept and a good matching infrastructure will simplify. Detailed design is a means to work around mismatches between infrastructure and (architectural) high-level design. => specify widely applicable, generic architectures => develop compatible, stable infrastructures

OOD Deliverables - I extended Static Objectmodel –Coad & Yourdon: Problem Domain Component (PDC) Human Interaction Component (HIC) Task Management Component (TMC) Data Management Component (DMC) on the level of high-level (and detailed) design

OOD Deliverables - II completed & extended Scenarios –extend old scenarios across domains reflect the chosen architecture’s dynamics build links between domain components –add new scenarios to accommodate internal organization e.g. data backup, rollback, load/save on the level of high-level design as diagram on the level of detailed design in the dictionary diagram as necessary

Scenarios TMCHICPDCDMC high-level Design detailed Design extend refine & map

OOD Deliverables - III Object Dictionary –document & specify the added domain components very much like during analysis: objects, structures,... for high-level design –map and refine existing specifications translate structures, STDs,... map to existing patterns and objects document optimizations for detailed design

As in OOA it holds for OOD: Static Model and Scenarios are documented as graphical Views of the more complete Object Dictionary.

The OOAD Documentation TMCHICPDCDMC high-level Design detailed Design Miniworld Dictionary Scenarios Static Model Dictionary Scenarios Static Model