UML and Real Time - PowerPoint PPT Presentation

1 / 51
About This Presentation
Title:

UML and Real Time

Description:

(TAU UML Suite, ARTiSAN Studio, Rhapsody. ROSE RT, Esterel Studio) ... ARTiSAN Real-time Studio: conclusions. Relation between task and object model is weak ... – PowerPoint PPT presentation

Number of Views:100
Avg rating:3.0/5.0
Slides: 52
Provided by: terri96
Category:
Tags: uml | artisan | real | time

less

Transcript and Presenter's Notes

Title: UML and Real Time


1
UML and Real Time
  • François Terrier, Sébastien Gérard
  • DRT-LIST/DTSI/SLA/LLSP, CEA/Saclay, F-91191 Gif
    sur Yvette Cedex FrancePhone 33 1 69 08 62 59
    Fax 33 1 69 08 83 95
  • Francois.Terrier_at_cea.fr Sebastien.Gerard_at_cea.fr

2
Plan of the presentation
  • UML2 standardization status
  • Real Time, QoS, SPT profile and UML
  • Point on current tools for RT with UML
  • (TAU UML Suite, ARTiSAN Studio, Rhapsody ROSE
    RT, Esterel Studio)
  • Real Time modeling with ACCORD/UML
  • Protocol state machine
  • RT Component Model
  • MDE through UML profiles

3
RT in UML 1.4
  • Qualitative aspects
  • Concurrency Active object, Concurrent state,
  • Discrete behavior via state machines and
    activity diagrams
  • Attempts of integrating continuous
    behavior within activities of state-machines
  • Quantitative aspects
  • TimeEvent in state-machine
  • Timing mark in Sequence Diagram

4
Status of the UML2 proposals
  • UML2 RFP split into 4 parts
  • UML 2.0 OCL ? UML 2.0 Diagram Interchange
  • UML2 Infrastructure ? core language of UML
  • UML2 Superstructure ? state-machine, sequence
    diag.,
  • Two remaining main prop. for Infra/Super
  • U2 group (www.u2-partners.org )Infrastructure ?
    latest version is v.2.0 beta R2 released
    2002/06/02
  • 2U group (www.2uworks.org )Infrastructure ?
    latest version is v0.81 released 2002/07/02
  • Helsinki meeting (End of September 2002)
  • 1st revised submission presentation for
    Superstructure
  • 2nd revised submission presentation for
    Infrastructure

5
Plan of the presentation
  • UML2 standardization status
  • Real Time, QoS, SPT profile and UML
  • Point on current tools for RT with UML
  • (TAU UML Suite, ARTiSAN Studio, Rhapsody ROSE
    RT, Esterel Studio)
  • Real Time modeling with ACCORD/UML
  • Protocol state machine
  • RT Component Model
  • MDE through UML profiles

6
Scheduling, Performance Time Profile
  • Proposers and supporters
  • ARTiSAN, I-Logix, Rational, Telelogic, TimeSys
    , Tri-Pacific, CEA-LIST
  • Main concepts
  • resources quality of service (QoS)
  • uniform basis to attach quantitative information
    to UML specifications (e.g. required for RT
    analysis performing)

? Not THE Real Time UML profile !
7
Current architecture of UML SPT profile
  • Consists of 5 sub-profiles
  • General Resource Sub-profile (Defines abstract
    concepts of Resource QoS)
  • Resource concept has been developed
  • QoS concept remains abstract !
  • General Time Sub-profile
  • General Concurrency Sub-profile
  • Performance Sub-profile
  • Schedulability Sub-profile

8
SPT base concept ? QoS
(Abstract class !)
  • Use example of the QoS concept in a model

9
Issues relating to QoS within SPT prof.
  • QoS remains an abstract concept
  • never concretized by other SPT sub-profiles
  • Specific sub-profiles(Schedulability,
    Performance, RT-CORBA)
  • defines implicitly required QoS (eg. TVs
    SAPriority, SADelay, )
  • but no links with the QoScharacteristics concept
    !
  • SPT does not proposes solutions to specify
  • domain specific QoS characteristics quantifiables
    with specific values (e.g. capacity of fligth
    plan managnt, antenna sign. accuracy)
  • QoS contracts in subsystems, components and use
    cases
  • QoS modes the systems supports adaptations QoS
    levels
  • monitoring of QoS values and their impact in the
    architectures

10
Architecture of QoS ( Fault Toler.) prof.
11
RT refactoring in UML
? 3 points
12
Plan of the presentation
  • UML2 standardization status
  • Real Time, QoS, SPT profile and UML
  • Point on current tools for RT with UML
  • ? TAU UML Suite ARTiSAN Studio, Rhapsody, ROSE
    RT, Esterel Studio
  • Real Time modeling with ACCORD/UML
  • Protocol state machine
  • RT Component Model
  • MDE through UML profiles

13
TAU UML/SDL Suite? UML modeling is used at the
first modeling stage, SDL used for design
  • Active object declarations ? SDL processes
  • Passive objects ? Abstract Data Types of SDL

14
TAU UML/SDL Suite conclusions
? UML/SDL mapping is under user
responsibility he has to clarify the mapping of
  • UML state machines ? SDL specifications
  • Use of shared passive objects in UML model ? SDL
  • Active object communication ? SDL signal exchange
  • How to ensure independency between model and
    implementation ?
  • Timing specifications ? only with low level
    implementation mechanisms (Timers, SDL
    priorities )

15
Plan of the presentation
  • UML2 standardization status
  • Real Time, QoS, SPT profile and UML
  • Point on current tools for RT with UML
  • TAU UML Suite,? ARTiSAN Studio Rhapsody,
    ROSE RT, Esterel Studio
  • Real Time modeling with ACCORD/UML
  • Protocol state machine
  • RT Component Model
  • MDE through UML profiles

16
ARTiSAN Real-time Studio? two orthogonal models,
weak integration
Explicit modeling of concurrency features !!!
  • A logical model in usual class/object diagrams
  • An explicit task model in a specific diagram

? Concurrency diagram
17
ARTiSAN Real-time Studio
  • A mapping stage ? assignment of objects to tasks
  • Three techniques
  • wrapping data and functions in object wrappers
  • making schedulable objects scheduling them
    using tasks
  • encapsulating tasks their communications behind
    interf.

18
ARTiSAN Real-time Studio conclusions
  • Task model has to be manually implemented
  • Relation between task and object model is weak

? Communication between objects of different
tasks must be implemented by the user with low
level RT concepts
  • Timing constraints must be translated on
    implement.
  • Concurrent diagram is out of the standard

A tool dedicated to high skill real-time
developers with a lot of things to be done by
hand and at the standard borders.
19
Plan of the presentation
  • UML2 standardization status
  • Real Time, QoS, SPT profile and UML
  • Point on current tools for RT with UML
  • TAU UML Suite, ARTiSAN Studio, ? Rhapsody,
    ROSE RT, Esterel Studio
  • Real Time modeling with ACCORD/UML
  • Protocol state machine
  • RT Component Model
  • MDE through UML profiles

20
Rhapsody (RT-UML)? two orthogonal but
integrated models
  • Explicit modelling of concurrency

21
Rhapsody (RT-UML)
  • Behavior specified by state machine of reactive
    obj.
  • Reactive objects are assigned to active objects
  • Communication by message between reactive obj.

ActuatorControl
RegControl
SensorControl
22
Rhapsody (RT-UML) conclusions
  • Explicit tasking model (described maintained by
    hand)
  • Communication issues
  • Triggered operation concept between event
    operation
  • Only return value of operation call can be
    defined but under responsibility of the
    caller ! (cf. conc. conflict)
  • Complex semantic diff. between signals
    operation calls
  • Low level of Real Time specifications
  • Priorities can be assigned to active objects
  • Timing constraints must be implemented by hand

A tool dedicated to high skill real-time
developers with animation opportunities but not
really real-time.
23
Plan of the presentation
  • UML2 standardization status
  • Real Time, QoS, SPT profile and UML
  • Point on current tools for RT with UML
  • TAU UML Suite, ARTiSAN Studio, Rhapsody ?
    ROSE RT, Esterel Studio
  • Real Time modeling with ACCORD/UML
  • Protocol state machine
  • RT Component Model
  • MDE through UML profiles

24
Rose Real-Time (UML-RT)? attempt to integrate
task and object paradigms
  • capsule stereotype identifies active objects
  • They will be assigned to task at implementation
    stage
  • ? mapping with task priorities must be managed
    by hand
  • They have state automaton but low level timing
    specification
  • Communication is performed through  ports 
  • Sending of signal via port of communication
  • Defines the set and protocol of the exchanged
    messages

25
Rose Real-Time (UML-RT)
  • A synchronous communication with return value

Initial
t1
Off
Inter
t3
Synchronous call with reply
Action RTMessage retMsgm carSpeed.get().invoke(
retMsg) int newCarSpeed (const int )
retMsg.getData()
Trigger Signal get on port carSpeed Action carSp
eed-gtvalue(data).reply()
26
Rose Real-Time (UML-RT) conclusions
  • A high level concept for concurrency with an
    implicit logical execution model ? Capsule
  • "Unusual" OO paradigm

Capsule paradigm Entities communicating via
signal exchange through ports.
but close to an Interface with Protocol State
Machine
  • Behavior spec. via limited UML state machine
  • Timing specification through low level mechanisms

The concept of Capsule is certainly very
powerfull but a little bit exotic regarding
usual OO paradigm (eg. For communication). About
RT constraint spec., it is equal to other, i.e.
only timing event, because the concept of
priority reveals to be not useable!
27
Plan of the presentation
  • UML2 standardization status
  • Real Time, QoS, SPT profile and UML
  • Point on current tools for RT with UML
  • TAU UML Suite, ARTiSAN Studio, Rhapsody, ROSE
    RT, ? Esterel Studio
  • Real Time modeling with ACCORD/UML
  • Protocol state machine
  • RT Component Model
  • MDE through UML profiles

28
Esterel Studio? A "graphical form" equivalent to
Esterel
  • S_Capsule (Synchronized_Capsule)
  • Inherited from ROOM Capsule
  • Get ports typed by a pluget ( ROOM Protocol)
  • Concurrent components inside behavior
  • SyncChart
  • A "graphical form" equivalent to Esterel language
  • Synchronous computation model
  • The Zero-Delay hypothesis
  • Absence of event may be a trigger
  • Possibility of events conjunction

29
Esterel studio (SyncCharts)
normal terminaison
macro-state
/ e
initial pseudo-state
simple state
strong abortion
s / e
final state
weak abortion
suspension
30
Esterel studio (SyncCharts) conclusions
  • Based on an abstract ideal view of real systems
    ?Synchronous assumption
  • Convenient for hardware-intensive systems
  • Difficult to insure in other case
  • Behavior SyncChart formalism
  • Formal view ? possibility of formal verification
  • Out of UML standard (notation semantics)
  • Methodology aspect under-development
  • The tool support only behavior aspect
  • Prototype of coupling with Rose

31
Plan of the presentation
  • UML2 standardization status
  • Real Time, QoS, SPT profile and UML
  • Point on current tools for RT with UML
  • (TAU UML Suite, ARTiSAN Studio, Rhapsody ROSE
    RT, Esterel Studio)
  • Real Time modeling with ACCORD/UML
  • Protocol state machine
  • RT Component Model
  • MDE through UML profiles

32
ACCORD/UML methodology
  • Results of 10 years of OO researches for
    RT-Syst. of nuclear plant PhD work with PSA
    (Peugeot) AIT-WOODDES IST Eur. proj.
    ACOTRIS a Nat. proj.
  • Provides
  • Modeling methodologycontinuous process,
    separation of functional spec. and implementation
    constraints or choices
  • Tools supporting the process and the method
  • Model transform., code gen. for rapid prototyping
  • Model analysis, test generation

33
? Protocol state machine in UML
  • expresses legal transit. a classifier can trigger
  • ? defines a lifecycle for objects or an
    invocation order of its operations
  • Protocol transitions have the following info.
  • a pre condition (guard)
  • one or several triggering event
  • a post condition. Every
  • zero or one operation that belongs to the context
    classifier of the protocol state machine.
  • It can be associated to Interfaces and Ports

34
Usual way to use the state machine
UML state machine notations
operation()
CallEvent SignalEvent
ChangeEvent TimeEvent
CallEvent
35
AIT-WOODDES / ACCORD proposal ? a more
structured way !
  • Separation on concerns to improve behaviour
    modelling
  • Reactive View
  • "what it must do"
  • Protocol View
  • "what it can do"

36
describe protocol view
37
describe reactive view
  • ChangeEvent
  • CompletionEvent
  • SignalEvent
  • TimeEvent

38
Summary on ACCORD behavior model
Class behavior control logic
call-event-name (param-list) guard
Class structure
Protocol view (UML standard) What instances
of this class may do
event-name (param-list) guard /
called-operation-name (param-list)
Method view(UML standard) Howprocessingis
performed
Trigger view (ACCORD/UML) What the instances
of this class have to do
39
Plan of the presentation
  • UML2 standardization status
  • Real Time, QoS, SPT profile and UML
  • Point on current tools for RT with UML
  • (TAU UML Suite, ARTiSAN Studio, Rhapsody ROSE
    RT, Esterel Studio)
  • Real Time modeling with ACCORD/UML
  • Protocol state machine
  • RT Component Model
  • MDE through UML profiles

40
Decomposition heuristics component model
ER1 Heuristics to ease decomposition of a
system into a sub-systems model
ER2 Model mappings to transform resulting
sub-systems model into component model -
required offered interface - component
connexions / association links -
41
ACCORD/UML RT-Component Model
  • Component Model based on
  • UML2 component Model RT_QoS

Component
  • ? Interface can have both BehavioralFeatures
  • operations also with QoS specif.
  • receptions (signals) with QoS specif.

42
ACCORD/UML RT-Component Model based on a MDA
approach
ER2 These mappings take into account specified
RT features of the sub-system model ? PIM-to-PIM
ER3 Mappings from the RT-Comp. Mod. of
ACCORD/UML towards a platform model (e.g., RT-CCM
model) ? PIM-to-PSM
43
Plan of the presentation
  • UML2 standardization status
  • Real Time, QoS, SPT profile and UML
  • Point on current tools for RT with UML
  • (TAU UML Suite, ARTiSAN Studio, Rhapsody ROSE
    RT, Esterel Studio)
  • Real Time modeling with ACCORD/UML
  • Protocol state machine
  • RT Component Model
  • MDE through UML profiles

44
MDA Challenges
  • ? What MDA means modelling with UML to develop
    a system with
  • a clear separation of implementation technology
  • following a continuous modelling process
  • using intensively model synthesis

? What we need
  • Methods to define well-structured models
  • Business oriented (versus software techn
    oriented)
  • Activity oriented req/spec/design/impl/proof/test
    /simul, etc.
  • Techniques to exploit development expertise
  • Profile, script, meta-modeling, aspect progr.,
    etc.
  • Expertise implementation (RT, emb., safety,
    valid., etc.)
  • Implementation platform models (CCM, RT-OS,
    etc.)
  • Tooling standards (interf., coop., interact.,
    exch., etc.)

45
ACCORD/UML methodoology Models everywhere
46
Structure of ACCORD Methodology
47
ACCORD/UML profile for Embedded Systems
  • ? Real-time QoS model
  • The domain viewpoint
  • Model overview
  • Model details
  • The UML viewpoint
  • Stereotypes and tagged values definition
  • Tagged Value Types
  • ? Communication model
  • ? Behaviour model
  • ? Concurrency model

48
Real-time features model domain viewpoint
overview
  • Definifion of a Real-Time QoS

generic concept of RT QoS
Priority-based RT QoS
Timing-based RT QoS
49
Real-time features model domain viewpoint
details
  • PriorityRTF
  • Attributes
  • Operations
  • create ( ref in RTtimeValue, pr in Priority, pe
    in Period-1, peNb-1 in integer ) It create an
    instance of priority-based RTF according to
    values passed as parameters. pr is the
    priority, pe is the period and peNb is the
    number of period of the new instance.
  • Associations
  • itsPrPriority (1-1) It denotes the priority
    feature of the current priority RTF.
  • itsPePeriod (0-1) It denotes the period feature
    of the current priority RTF if necessary.

50
Real-time features model UML viewpoint
  • RTF

? RT_QoStype ? ( lttimingQoSgt ltpriorityQoSgt
)
  • lttimingQoSgt ( ltRefDategt , ltDeadlinegt
    , ltReadyTimegt , ltPeriodgt , ltNoPeriodgt )
  • ltpriorityQoSgt ( ltPrioritygt , ltPeriodgt
    , ltNoPeriodgt )
  • ltRefDategt (RefDate, ltvaluegt ,
    lttimeUnitStrgt )
  • ltDeadlinegt (Deadline, ltvaluegt ,
    lttimeUnitStrgt )
  • ltPrioritygt (Priority, ltvaluegt )
  • ltReadyTimegt (ReadyTime, ltvaluegt ,
    lttimeUnitStrgt )
  • ltPeriodgt (Period, ltvaluegt ,
    lttimeUnitStrgt )
  • ltNoPeriodgt (NoPeriod, ltvaluegt ,
    lttimeUnitStrgt )
  • ltvaluegt ltIntegergt ltRealgt
  • lttimeUnitStrgt ns us ms
    s hr days wks
    mos yrs

51
Conclusions
  • Industrial tools support model based
    development? Modelling is not new !
  • Moderation around the new key-word MDA
  • but MDA not supported, they are too limited on
  • Model analysis,
  • Model transformation and mappings
  • Platform independent model writing
  • UML 2
  • better for RT, but not a RT formalism!
  • Should better support profile definition and,
    thus, MDA
  • Strong lacks on the model exploitation language
  • No graphical formalism at this time
  • No standard and very "tool dependent"
Write a Comment
User Comments (0)
About PowerShow.com