Towards a Calculus for UML-RT Specifications

8
Towards a Calculus Towards a Calculus for UML-RT for UML-RT Specifications Specifications Radu Grosu Radu Grosu CIS, Upenn, Philadelphia CIS, Upenn, Philadelphia joint work with joint work with M. Broy, B. Selic, Gh. Stefanescu M. Broy, B. Selic, Gh. Stefanescu

description

Towards a Calculus for UML-RT Specifications. Radu Grosu CIS, Upenn, Philadelphia. joint work with M. Broy, B. Selic, Gh. Stefanescu. Motivation. - PowerPoint PPT Presentation

Transcript of Towards a Calculus for UML-RT Specifications

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