Download - Towards a Calculus for UML-RT Specifications

Transcript
Page 1: Towards a Calculus for UML-RT Specifications

Towards a Calculus for Towards a Calculus for UML-RT SpecificationsUML-RT Specifications

Radu GrosuRadu Grosu

CIS, Upenn, PhiladelphiaCIS, Upenn, Philadelphia

joint work withjoint work with

M. Broy, B. Selic, Gh. StefanescuM. Broy, B. Selic, Gh. Stefanescu

Page 2: Towards a Calculus for UML-RT Specifications

MotivationMotivation

• The design of real-time systemsreal-time systems is a difficult task. difficult task. One has to consider many different aspectsdifferent aspects like data, behavior, architecture data, behavior, architecture and distribution. distribution.

• Moreover it usually involves peopleinvolves people from different different engineering disciplines. engineering disciplines.

• The modern SE methods SE methods UML and UML-RTUML and UML-RT recommend the use of visual specifications.visual specifications.

• A formal foundationformal foundation is needed however, to prohibit prohibit ambiguities ambiguities which may be fatalfatal in this context.

Page 3: Towards a Calculus for UML-RT Specifications

The Layers of UML-RTThe Layers of UML-RT

strctureM behaviorMhas

controls

componentM

stateM

interaction-graphs

flow-graphs

uses modelsusesmodels

models

implemented

uses

structure behaviorhas

controls

capsule-class

data-class

c++ or rpl

run-time system

uses uses usesusesuses

encoded

embedded

ImplementationImplementation Formal SemanticsFormal Semantics

Page 4: Towards a Calculus for UML-RT Specifications

Graph Construction PrimitivesGraph Construction Primitives

visual attachmentvisual attachment

n1 n2

B1 BB22

A1 A2

n2n1

A B C

sequentialsequential compositioncomposition

n1

C

A

Bfeefeeddbackback

Operators on nodesOperators on nodes

ConnectorsConnectors

identityidentity

A

A

identificationidentification ramificationramification transpositiontransposition

A

A

A

A A

A

AB

BA

Page 5: Towards a Calculus for UML-RT Specifications

Control- and Data-Flow ModelsControl- and Data-Flow Models

1.

1.

1.

2.

n1 n2

x1 x2

x

x x

x

x

x x2 x1

x1 x2

y1 y2

n1 n2

1.

1.

n1 n2

21 SS

21 TT

Control-flow modelControl-flow model Data-flow modelData-flow model

n1 n2

RR21 AA

RR21 BB

Page 6: Towards a Calculus for UML-RT Specifications

Two Feedback LawsTwo Feedback Laws

TighteningTightening

nC

m

p

A

B

D

E

A

nC

m

p

B

D

E

==mD

n

B

A

C==mC

n

A

B

D

SlidingSliding

Page 7: Towards a Calculus for UML-RT Specifications

A Graph TransformationA Graph Transformation

==

n

m

m

n

m

m

n

mm

n

m

n

m== == ==

slidingsliding tighteningtightening morphismmorphism tighteningtightening

Page 8: Towards a Calculus for UML-RT Specifications

ConclusionsConclusions

We showed how to combineWe showed how to combine modular specificationsmodular specifications of controlcontrol andand data-flow.data-flow.

Practical relevance:Practical relevance: concise, compositionalconcise, compositional semantics forsemantics for statechartsstatecharts basis forbasis for compositional hybrid statechartscompositional hybrid statecharts clear foundation forclear foundation for execution-toolsexecution-tools

Theoretical relevance:Theoretical relevance: semantics of interactionsemantics of interaction as mixed graph algebrasmixed graph algebras clear foundation forclear foundation for verification-toolsverification-tools