Download presentation
Presentation is loading. Please wait.
1
The OOA Process - II Scenarios
2
The Steps of OOA - Part 1 identify objects (classes) identify structures –generalization - specialization (“ISA”) –whole - parts (“PART-OF”) –association (relationship) define attributes ===> Static Objectdiagram ===> incomplete Object Dictionary
3
The Steps of OOA - Part 2 define services via scenarios –services per object –message passing between objects –coordination of message passing –states and transitions ===> Scenarios ===> complete Object Dictionary
4
OOA - Messages form the dynamic portion of the object diagram (scenarios) sent by –an object (instance) –via an active local service received by –an object (instance) –triggering the receiving service label sender receiver
5
A Message’s “Life-Cycle” connects to an object(object_id).service triggers execution of the receiving service carries input-parameters for the execution of the receiving service is able to transmit output-parameters back to the sending service
6
Message Specification scenarios (diagrams): –shown as bold or dotted line –label is optional –parameters are optional –sequence number is optional object dictionary: –exist only as elements of an object’s services –specified as part of the service specifications
7
Syntax for Message Specification typically similar to: SEND MESSAGE TO object (object_id).service (input-parameters, output-parameters) –object: name of an object class –service: name of a service in that object class –object_id: identifies selected instantiation (structures, especially associations!)
8
Programmer Division Department (2,N) (1,1) works-for (1,1)(3,N) The division wants to compile a list of the prg. languages “spoken” in its departments. list of prog-lang.
9
Programmer Division Department Alternative 1: Using output-parameters to get to the results. list prg-skills (wait for result) list prg-lang (wait for result) report prg-langs list prg-skillslist prg-lang
10
Programmer Division Department Alternative 2: Using separate messages to transmit results. list prg-skills (do not wait for result) list prg-lang (do not wait for result) accept prg-lang report prog-langs accept prg-lang list prg-skillslist prg-langs
11
OOA - Services exist only as elements of an object services model functionality: –data manipulation –control sequences –communication (using messages) –state transformation –interface handling
12
OOA - Services no separate graphical representation (part of the object symbol) services can be –public or –private specified in the object dictionary
13
Attributes and Services the data capsule principle –a service has access to all attributes of the local object –all services of an object share attributes as a global data area –a service provides access to attributes for other object.services (by accepting messages) –a service can have local variables
14
Services and Inheritance are inherited in a classification hierarchy inheritance is mandatory multiple inheritance is possible => position common services as high in the classification hierarchy as possible => generic services / service overlay / polymorphism
15
Employee Manager Programmer Inheritance fill-in time-sheet prepare paycheque fill-in time-sheet list prg-langs fill-in time-sheet
16
Scenarios show separate self-contained sequences (threads) of execution in separate diagrams include –objects –messages –(services) –(attributes) do usually not include –structures
17
ManagerProgrammer Division Department create (1) hire (2) hire (3) Scenario 1: “Open a new department”
18
Programmer Division Department Scenario 2 (Alternative 2): “Prepare list of prog. languages for divison.” list prg-skills (do not wait for result) list prg-lang (do not wait for result) accept prg-lang report prog-langs accept prg-lang list prg-skillslist prg-langs
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.