The OOD Process - IV

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

description

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. - PowerPoint PPT Presentation

Transcript of The OOD Process - IV

Page 1: The OOD Process - IV

The OOD Process - IV

The Task Management Component

(TMC)

[Coad/Yourdon]

Page 2: The OOD Process - IV

The OO Co-Design ProcessThe Task Management Component

TMCHIC PDC DMC

high-levelDesign

detailedDesign

Miniworld

extend

refine &map

Page 3: The OOD Process - IV

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

Page 4: The OOD Process - IV

TMC tasks

• check the type of task(s) you need– event-driven tasks– clock-driven tasks– etc.

• check priorities

• identify a coordinator

• define each task object

Page 5: The OOD Process - IV

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

Page 6: The OOD Process - IV

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”

Page 7: The OOD Process - IV

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

Page 8: The OOD Process - IV

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

Page 9: The OOD Process - IV

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

Page 10: The OOD Process - IV

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

Page 11: The OOD Process - IV

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

Page 12: The OOD Process - IV

Task Coordinator

coordinate

task

namedescriptionpriorityservices_includedcoordinates_bycommunicates_via

initializestartterminate

1,m

1,1

A Task-Object Pattern

Page 13: The OOD Process - IV

• Keep tasks to a minimum.

• Use existing solutions.

• Think in Architectures!