The Problem Domain Component (PDC) [Coad/Yourdon]

Slides:



Advertisements
Similar presentations
UML an overview.
Advertisements

Chapter 7 – Object-Oriented Design
OBJECT ORIENTED PROGRAMMING M Taimoor Khan
Chapter 22 Object-Oriented Systems Analysis and Design and UML Systems Analysis and Design Kendall and Kendall Fifth Edition.
Chapter 7 Testing Class Hierarchies. SWE 415 Chapter 7 2 Reading Assignment  John McGregor and David A. Sykes, A Practical Guide to Testing Object-Oriented.
Chapter 1 Object-Oriented System Development
Introduction To System Analysis and Design
The OOD Process - III The Data Management Component (DMC) [Coad/Yourdon]
Software Testing and Quality Assurance
7M701 1 Software Engineering Object-oriented Design Sommerville, Ian (2001) Software Engineering, 6 th edition: Chapter 12 )
1 SWE Introduction to Software Engineering Lecture 23 – Architectural Design (Chapter 13)
Object Oriented System Development with VB .NET
Irwin/McGraw-Hill Copyright © 2004 The McGraw-Hill Companies. All Rights reserved Whitten Bentley DittmanSYSTEMS ANALYSIS AND DESIGN METHODS6th Edition.
1 Software Testing and Quality Assurance Lecture 28 – Testing Class Hierarchies.
Fall 2007ACS-1805 Ron McFadyen1 Programming Concepts Chapter 4 introduces more advanced OO programming techniques. Construction of a programs usually requires:
Object Oriented Design. Goals  Levels of abstraction  Workshop: group meeting for Pragmatic Web homework.
OBJECT ORIENTED ANALYSIS & DESIGN Vassilka Kirova Department of Computer & Information Science NJIT.
Aalborg Media Lab 21-Jun-15 Software Design Lecture 1 “ Introduction to Java and OOP”
The OOD Process - II The Human Interaction Component (HIC) [Coad/Yourdon]
Object Oriented Design OOD. OOD characteristics - I conceptual compatibility with OOA notational consistency with OOA clean traceability of OOA results.
Architectural Design Principles. Outline  Architectural level of design The design of the system in terms of components and connectors and their arrangements.
The Task Management Component (TMC) [Coad/Yourdon]
The OOD Process Design as a Logical Continuation of Analysis.
Chapter 22 Object-Oriented Design
1 Object-Oriented Software Engineering CIS 375 Bruce R. Maxim UM-Dearborn.
RMsis – v Simplify Requirement Management for JIRA
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.
1 Object-Oriented Testing CIS 375 Bruce R. Maxim UM-Dearborn.
CS 4850/01: CS Senior Project Fall 2014 Overview of Software Requirements and OO Analysis.
FH Augsburg - FB Informatik 1 CADUI' June FUNDP Namur Software Life Cycle Automation for Interactive Applications: The AME Design Environment.
Implementation Yaodong Bi. Introduction to Implementation Purposes of Implementation – Plan the system integrations required in each iteration – Distribute.
Satzinger Chp. 2 Part Part 4 of 4 2 Object-Oriented Analysis and Design with the Unified Process Testing Testing is critical discipline Testing activities.
An Introduction to Design Patterns. Introduction Promote reuse. Use the experiences of software developers. A shared library/lingo used by developers.
Database Management System Prepared by Dr. Ahmed El-Ragal Reviewed & Presented By Mr. Mahmoud Rafeek Alfarra College Of Science & Technology Khan younis.
Introduction To System Analysis and Design
Key Takeaway Points A use case is a business process; it begins with an actor, ends with the actor, and accomplishes a business task for the actor. Use.
SWE © Solomon Seifu ELABORATION. SWE © Solomon Seifu Lesson 10 Use Case Design.
Lab 04.
CSC480 Software Engineering Lecture 11 September 30, 2002.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 14 Slide 1 Object-oriented Design.
1 COMP 350: Object Oriented Analysis and Design Lecture 1Introduction References: Craig Larman Chapter 1.
UHD::3320::CH121 DESIGN PHASE Chapter 12. UHD::3320::CH122 Design Phase Two Aspects –Actions which operate on data –Data on which actions operate Two.
Chapter 8 Object Design Reuse and Patterns. Object Design Object design is the process of adding details to the requirements analysis and making implementation.
CS 4850: Senior Project Fall 2014 Object-Oriented Design.
1 What is OO Design? OO Design is a process of invention, where developers create the abstractions necessary to meet the system’s requirements OO Design.
Computing and SE II Chapter 9: Design Methods and Design Models Er-Yu Ding Software Institute, NJU.
ARCHITECTURAL DESIGN. Why is Architecture Important? Representations of software architecture are an enabler for communication between all parties (stakeholders)
CS 8532: Advanced Software Engineering Dr. Hisham Haddad Overview of Object-Oriented Design Highlights of OOD Concepts, Components, and Process.
CSC 131 Fall 2006 Lecture # 6 Object-Oriented Concepts.
1 Chapter Overview Managing Object and Container Permissions Locating and Moving Active Directory Objects Delegating Control Troubleshooting Active Directory.
Lecture 18: Object-Oriented Design
CHAPTER 3 MODELING COMPONENT-LEVEL DESIGN.
04 - OOD Intro.CSC4071 Software Design ‘Requirements’ defines –The goals the system needs to satisfy. ‘Specification’ defines –The externally-observable.
CSIS 4850: CS Senior Project – Spring 2009 CSIS 4850: Senior Project Spring 2009 Object-Oriented Design.
DITA: Not just for Tech Docs Ann Rockley The Rockley Group.
R-customizers Goal: define relation between graph and its customizers, study domains of adaptive programs, merging of interface class graphs.
OBJECT-ORIENTED TESTING. TESTING OOA AND OOD MODELS Analysis and design models cannot be tested in the conventional sense. However, formal technical reviews.
UNIT-IV Designing Classes – Access Layer ‐ Object Storage ‐ Object Interoperability.
Unit - 3 OBJECT ORIENTED DESIGN PROCESS AND AXIOMS
The Movement To Objects
Object-Oriented Design
Object-Oriented Analysis
CSC 480 Software Engineering
Overview of Software Requirements
Object-Oriented Design
Authors: Barry Smyth, Mark T. Keane, Padraig Cunningham
Chapter 22 Object-Oriented Systems Analysis and Design and UML
Chapter 10 – Component-Level Design
Presentation transcript:

The Problem Domain Component (PDC) [Coad/Yourdon] The OOD Process - I The Problem Domain Component (PDC) [Coad/Yourdon]

Object-Oriented Design “Steps” of the Process: PDC OOA Model OOD Process OOD Model OOA

The OO Co-Design Process The Problem Domain Component extend HIC TMC PDC DMC high-level Design Miniworld refine & map detailed Design

PDC - What is it? OOA results fit right in “domain oriented design” further elaboration of OOA results work out details of analysis refine and map OOA results to infrastructure algorithms data structures refine and design structural links manage keys etc.

PDC - What is it? do NOT adapt OOA to fit your design changes must be checked by the customer however, check also into cost and feasibility adapt your design to fit OOA (the domain) choose the right architecture utilize a compatible infrastructure OOA results guide this selection process

PDC tasks group PDC classes together establish common protocols reuse design and programming classes accommodate supported level of inheritance support the data management component add lower-level components/objects fine-tune your design

PDC tasks - group and establish protocols keep OOA results together group your mini-world establish a root for the PDC establish common protocols similar behavior that is used by (all) PDC objects e.g. copy, save, specialized creates, ... additional class or into the PDC root depends on the level of inheritance in your infrastructure

PDC tasks - reuse design and programming classes map to your infrastructure fit into the predefined class hierarchy find classes that fit your needs specialize them if necessary adapt your PDC objects move attributes and services as necessary revise structures (move?) no change in semantics of OOA results

PDC tasks - accommodate supported level of inheritance map to your infrastructure multiple, single, no inheritance heuristics how to cope adapt your PDC objects revise the structures flatten out (no inheritance) add “role” objects (single and no inheritance) no change in semantics of OOA results

Person Person 1,N Role 1,1 Owner- Person Clerk- Person Clerk- Role Owner Role multiple to single inheritance Owner- Clerk- Person

Person multiple to no inheritance Owner- Person Clerk- Person Owner- Clerk- Person Owner- Person Clerk- Person Owner- Clerk- Person

PDC tasks - support the data mgmt component map to your data management design how do you “save” an object each by itself by a (set of) data manager objects adapt your PDC objects add an attribute to identify the object class add a service that saves the object no change in semantics of OOA results design according to your supported level of inheritance

PDC tasks - add lower level components “factoring” of the OOA results fit into the predefined class hierarchy (reuse) accomodate intermediate results encapsulate problem areas adapt your PDC objects move attributes and services as necessary revise structures (move?) no change in semantics of OOA results

PDC tasks - fine-tune your design combine classes (as necessary) strong dependence high traffic grouping of objects which are mostly used as sets add derived attributes (as necessary) see DBMS disscusion on this topic simplify scenarios internal simplification check with customer

Do not modify to reflect team assignments. Check against your OOA results.