PowerPoint - Sophia

A graphical specification
environment for GCM
component-based applications
INRIA – I3S – CNRS – University of Nice-Sophia Antipolis
EPC OASIS
Oleksandra Kulankhina
Internship supervisor: Eric Madelaine
Background: modeling tools for component-based software
Grid Component Model (GCM)
Client interface
Binding
Server interface
Background: modeling tools for component-based software
GCM Architecture in VerCors
Composite component
GCM: Hierarchical model
GCM: Separation of
concerns:
functional (business logic)
and
non-functional (control)
aspects
Membrane
Primitive component
Content
3
Background: modeling tools for component-based software
The aspects of the project
1
Formalization and
semantics: mathematical
formulas and proofs
Compos  Cname  SItfi iI ,
2
3
The Editor for the GCM
Architecture
specification: VerCors
The GCM
implementation :
- ADL generation
- Component factory
CItf j jJ , Membr, Cont 
Membr  CompkkK ,
Bindings llL ,
IntercmmM , Comp Re f 
4
Motivation
Formalization issues:
• The existing formal model does
not contain the Membrane
• There is no properly defined set of
constraints for the GCM
Architecture. The well-formed
component definition does not
consider the membrane.
5
Motivation
Implementation issues:
• The technology of VerCors (Topcased) is not maintained: cannot be
ran on the latest Eclipse versions
• The behavior (e.g. finite state machines) of Components cannot be
specified in VerCors
6
Agenda
• Background
• Motivation
• Formal Model extension
• Examples of constraints
• The new VerCors prototype creation
• Contributions and future work
7
Formal model extension : ADL -> ADL-V2
Compos  Cname  SItf
CItf
jJ
j
iI
i
,
, Membr , Cont 
Membr  Comp kkK ,
lL
l
Bindings
Interc
mM
m
,
, CompRef 
Cont  Comp
Bindings
SItf
iI
i
lL
l
, CItf
kK
k
,
,
jJ
j

8
Agenda
• Background
• Motivation
• Formal Model extension
• Examples of constraints
• The new VerCors prototype creation
• Contributions and future work
9
Examples of new constraints
• Subtyping constraint
(Client , Server )  Bindings
lL
l
MSignature(Client ) mmM  MSignature( Server ) nnN
• Separation of concerns
Control level constraint
ControlLevel ( Server ) 
 ControlLevel (Client )
10
Agenda
• Background
• Motivation
• Formal Model extension
• Examples of constraints
• The new VerCors prototype creation
• Contributions and future work
11
Last Experiments with Eclipse Papyrus
Result:
• A simple editor was implemented and integrated in Eclipse Papyrus. It
allows creation of primitive components, bindings and interfaces.
Limitations:
• The development is extremely time-consuming
• The Papyrus project is unstable
• It is unclear if it is possible to link our model with UML one: we did
not succeed
12
Obeo Designer Principles
uses
Code
generation
A set of Eclipse plugins for
graphical editors creation
Based
on
Create
graphical
editors
Obeo:
• Startup project from the Nantes University
• Commercial project
• The free version Sirius is going to be released
in September 2013
• Strong community
Based
on
UML
Diagrams
Editors
13
Obeo Designer Principles
Exploit the
Models
Describe the
Graphical Designer
Define the
Domain Model
14
New VerCors prototype: implementation of
existing features
15
New VerCors prototype: integration with
UML Diagrams
16
Agenda
• Background
• Motivation
• Formal Model extension
• Examples of constraints
• The new VerCors prototype creation
• Contributions and future work
17
Contributions (intermediate !)
The formal part:
• The GCM formal model was extended. It includes the membrane now
• The set of consistency constraints for the GCM Architecture was
defined and formalized
The implementation part:
• The VerCors Prototype was created in Obeo Designer. Most of the
features of the old version of VerCors were implemented
• The UML Diagrams were integrated in the VerCors prototype
18
Ongoing work
Short term:
• Implement the diagrams validation in the new VerCors prototype in
Obeo Designer; express rules using Acceleo
• Implement the ADL-V2 file generation
• Check scalability: develop a significant use-case
Longer term
• Create the VerCors prototype in the free version of Obeo Designer
19
Thank you!
Oleksandra Kulankhina
A graphical specification environment for GCM component-based
applications
References:
• VerCors platform homepage: http://www-sop.inria.fr/oasis/index.php?page=VerCors
• Obeo Designer homepage: http://www.obeodesigner.com
• Obeo Designer community homepage: http://www.obeonetwork.com/group/obeodesigner
• Rabéa Ameur-Boulifa, Ludovic Henrio, Eric Madelaine, Alexandra Savu, Behavioural
Semantics for Asynchronous Components :
http://hal.inria.fr/docs/00/76/10/73/PDF/RR8167.pdf
20