The Task Management Component (TMC) [Coad/Yourdon]

Slides:



Advertisements
Similar presentations
Computer Architecture
Advertisements

Ch:8 Design Concepts S.W Design should have following quality attribute: Functionality Usability Reliability Performance Supportability (extensibility,
©Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 12Slide 1 Software Design l Objectives To explain how a software design may be represented.
The Problem Domain Component (PDC) [Coad/Yourdon]
Broker Pattern Pattern-Oriented Software Architecture (POSA 1)
OOAD Using the UML - Use-Case Analysis, v 4.2 Copyright  Rational Software, all rights reserved 1/18 Use Case Analysis – continued Control Classes.
The OOD Process - III The Data Management Component (DMC) [Coad/Yourdon]
Component-Level Design
An Architecture-Based Approach to Self-Adaptive Software Presenters Douglas Yu-cheng Su Ajit G. Sonawane.
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.
S A B D C T = 0 S gets message from above and sends messages to A, C and D S.
Software Engineering CSE470: Requirements Analysis 1 Requirements Analysis Defining the WHAT.
© Lethbridge/Laganière 2001 Chap. 3: Basing Development on Reusable Technology 1 Let’s get started. Let’s start by selecting an architecture from among.
The OOD Process Design as a Logical Continuation of Analysis.
Use Case Analysis – continued
Chapter 22 Object-Oriented Design
UML for Embedded Systems Development— Extensions; Hardware-Software CoDesign.
Chapter 10: Architectural Design
Object-Oriented Analysis and Design
Process-oriented System Automation Executable Process Modeling & Process Automation.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 11 Slide 1 Architectural Design.
Introduction to the Enterprise Library. Sounds familiar? Writing a component to encapsulate data access Building a component that allows you to log errors.
1 Object-Oriented Testing CIS 375 Bruce R. Maxim UM-Dearborn.
CS 390- Unix Programming Environment CS 390 Unix Programming Environment Topics to be covered: Distributed Computing Fundamentals.
Architecture styles Pipes and filters Object-oriented design Implicit invocation Layering Repositories.
CS4730 Real-Time Systems and Modeling Fall 2010 José M. Garrido Department of Computer Science & Information Systems Kennesaw State University.
(Business) Process Centric Exchanges
EEC 688/788 Secure and Dependable Computing Lecture 7 Wenbing Zhao Department of Electrical and Computer Engineering Cleveland State University
Architectural Design lecture 10. Topics covered Architectural design decisions System organisation Control styles Reference architectures.
1 Software Design Overview Reference: Software Engineering, by Ian Sommerville, Ch. 12 & 13.
Chapter 12: Design Phase n 12.1 Design and Abstraction n 12.2 Action-Oriented Design n 12.3 Data Flow Analysis n Data Flow Analysis Example n
Software Engineering CSC 342/Dr. Ghazy Assassa Chapter 10, Architectural Design “Sommerville +.. “ Slide 1 CSC 342 Semester II: H ( G)
Design Analysis builds a logical model that delivers the functionality. Design fully specifies how this functionality will be delivered. Design looks from.
CS 4850: Senior Project Fall 2014 Object-Oriented Design.
EEE440 Computer Architecture
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.
ECEG-3202 Computer Architecture and Organization Chapter 3 Top Level View of Computer Function and Interconnection.
Software Design: Principles, Process, and Concepts Getting Started with Design.
University of Toronto at Scarborough © Kersti Wain-Bantin CSCC40 system architecture 1 after designing to meet functional requirements, design the system.
SOFTWARE DESIGN AND ARCHITECTURE LECTURE 13. Review Shared Data Software Architectures – Black board Style architecture.
Threads II IS Outline  Quiz  Thread review  Stopping a thread  java.util.Timer  Swing threads javax.swing.Timer  ProgressMonitor.
Jini Architecture Introduction System Overview An Example.
Tbox is a monitoring solution for all your computer systems Unifies and simplifies management of system surveillance Notifies you in the event of.
Mike Graves Summer 2005 University of Texas at Dallas Implicit Invocation: The Task Control Architecture Mike Graves CS6362 Term Paper Dr. Lawrence Chung.
Analysis Yaodong Bi. Introduction to Analysis Purposes of Analysis – Resolve issues related to interference, concurrency, and conflicts among use cases.
04 - OOD Intro.CSC4071 Software Design ‘Requirements’ defines –The goals the system needs to satisfy. ‘Specification’ defines –The externally-observable.
OOD OO Design. OOD-2 OO Development Requirements Use case analysis OO Analysis –Models from the domain and application OO Design –Mapping of model.
From Use Cases to Implementation 1. Structural and Behavioral Aspects of Collaborations  Two aspects of Collaborations Structural – specifies the static.
Chapter 3 System Buses.  Hardwired systems are inflexible  General purpose hardware can do different tasks, given correct control signals  Instead.
OBJECT-ORIENTED TESTING. TESTING OOA AND OOD MODELS Analysis and design models cannot be tested in the conventional sense. However, formal technical reviews.
Impact Analysis to Refactoring on the Current document Sony Corporation Toshiaki Kojima Mizuki Kanada.
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.
EEC 688/788 Secure and Dependable Computing
Part 3 Design What does design mean in different fields?
Object-Oriented Design
18.5 An Architecture for a Locking Scheduler
Object-Oriented Design
EEC 688/788 Secure and Dependable Computing
EEC 688/788 Secure and Dependable Computing
Object-Oriented Software Engineering
Applying Use Cases (Chapters 25,26)
Applying Use Cases (Chapters 25,26)
Use Case Analysis – continued
Chapter 13: I/O Systems.
Presentation transcript:

The Task Management Component (TMC) [Coad/Yourdon] The OOD Process - IV The Task Management Component (TMC) [Coad/Yourdon]

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

TMC - What is it? Task: A stream of activity. Support in your OOD multitasking concurrency priorities transactions set of activities as atomic action role-back, commit, etc. map your needs to the infrastructure tool-specific solutions guided by a common architecture

TMC tasks check the type of task(s) you need check priorities event-driven tasks clock-driven tasks etc. check priorities identify a coordinator define each task object

TMC tasks - types: event-driven I life-cycle task sleeps triggered upon event & arrival of data data line data buffer read & format data place in an internal buffer (send messages directly) notify objects.services check on proper sequence handle errors

TMC tasks - types: event-driven II might be programmed as a “distributed“ solution scenario as in OOA error handling low dependency of involved activities (services) if any of the above conditions does not hold centralized task object in IS world: “transaction handler” also called “controller”

TMC tasks - types: clock-driven I life-cycle task sets a wake-time and sleeps triggered by time read & format data (if necessary) notify objects.services check on proper sequence (if necessary) handle errors set a new wake-time go to sleep

TMC tasks - types: clock-driven II might be programmed as a “distributed“ solution or centralized task object less usual than for event-driven complements event-driven tasks in principal equivalent

TMC tasks - check priorities priorities help to manage resources not easy to design and implement use existing task managers and priority schemata indicates need for a coordinator identify and isolate critical tasks stringent reliability constraints critical to the success or failure of the system

TMC tasks - identify a coordinator task of tasks manager three or more tasks priorities and interrupts complex transactions adds overhead encapsulates task-management only trigger services, do not implement them in the coordinator

TMC tasks - define task objects name description priority services included sequence of call error handling coordinates by trigger or time (interval) communicates via data comes where from, goes where to

A Task-Object Pattern Task Coordinator coordinate task name 1,1 task name description priority services_included coordinates_by communicates_via initialize start terminate

Use existing solutions. Keep tasks to a minimum. Use existing solutions. Think in Architectures!