Examen

12 déc. 2005 ... Nous allons dans cet examen construire les premières briques d'un métamodèle et ... complexe entre plusieurs classes et interfaces de Java.


un extrait du document



Examen
Module LOG O1
12 décembre 2005
-- 2 heures --
Tout document autorisé

Nous allons dans cet examen construire les premières briques d’un métamodèle et profil pour les EJB.
Approche simple du métamodèle Enterprise Java Bean : esquisse d’un métamodèle

L’implémentation d’un composant EJB correspond à une collaboration complexe entre plusieurs classes et interfaces de Java. Nous la simplifions ici ;
à tout « EnterpriseBean » est associé une classe Java d’implémentation, une interface Java « home » et une interface Java « remote ». Il existe deux sortes d’« EnterpriseBean », Session et Entity.

Question 1 :
Dessiner un diagramme UML permettant de représenter ce métamodèle.
Vous pourrez utiliser les éléments donnés par le diagramme UML de la Figure 1.

 SHAPE \* MERGEFORMAT 
Figure  SEQ Figure \* ARABIC 1 : le métamodèle java [2]

Question 2 : Proposer une représentation OCL de l’information complémentaire suivante : L’implémentation d’un composant “EnterpriseBean” doit contenir les méthodes spécifiées par l’interface “remote”.

2) Stéréotypes 
Dans le document défini par Rational Corporation  REF _Ref121585815 \r \h [1], on trouve l’exemple de la  REF _Ref122088248 \h Figure 2.

Question 3 :
Quels sont les stéréotypes utilisés dans cet exemple ?



Question 4 :
En vous appuyant sur les diagrammes UML de la Figure 1 et éventuellement certains éléments vus en TD, précisez à quelle classe de base, vous associeriez chaque stéréotype.

Question 5 :
Après avoir ajouté les informations éventuellement manquantes dans les diagrammes UML,
a) Exprimez en OCL les contraintes suivantes associées à « EJBRemoteMethod »
1) The Operation must have a visibility property value of public
2) The name must not start with “ejb”…
b) Exprimez en OCL les contraintes suivantes associées à « EJBCreateMethod » :
The name of the Operation must be "create".
 The type of the return Parameter must be the model element that represents the EJB Remote Interface.

Question 6 :
La  REF _Ref122088756 \h  \* MERGEFORMAT Figure 3, extraite de 4, décrit les éléments permettant de définir des composants.
Proposez pour certains éléments que vous avez définis à la question précédente de nouvelles classes de base à partir de ces nouvelles données.


Figure  SEQ Figure \* ARABIC 3 : The metaclasses that define the basic Component construct

3) Conformité de modèle vis-à-vis d’un métamodèle

Figure  SEQ Figure \* ARABIC 4 :métamodèle de "assembly" pour EJB

Question 7 :
Soit le descripteur d’assemblage EJB décrit ci-après.
Ce descripteur est-il conforme au métamodèle présenté dans la  REF _Ref122094919 \h Figure 4? Sinon, expliquez.





Fournisseur
*

Required



Fournisseur
*

Supports


Personnel administratif de gestion

Administrative



administratif

Fournisseur
*




Question 8 :
Expliquez en moins de 10 lignes ce que signifie « MDA ».

Figure  SEQ Figure \* ARABIC 5 : Diagramme de Classes extrait de l'infrastructure [3]

Bibliographie

Rational Software Corporation. Jsr-000026 UML/EJB"! mapping specification.
http://www.jcp.org/aboutJava/communityprocess/review/jsr026/, May 2001.
OMG. Metamodel and UML profille for Java and EJB specification. http://www.omg.org/cgi-bin/doc?formal/2004-02-02, February 2004. Version 1.0, formal/04-02-02.
OMG. ptc/04-10-14 (UML 2.0 infrastructure convenience document).
http://www.omg.org/cgi-bin/apps/doc?ptc/04-10-14.pdf, October 2004.
OMG. UML 2.0 superstructure. http://www.omg.org/cgibin/doc ?ptc/2004-10-02, October 2004.









 PAGE 6/ NUMPAGES 6


Figure  SEQ Figure \* ARABIC 2&)145LM²³ç    4 ^ } ~ ™ š É Ë î ð ó 

a
b
o
ö
ÿ
     üõüðèðèàÙÕÙÎüÊÃüθ­üÙ£›–›–›Ž–ŽÙ†{üsükght¿jht¿Ujhy>Uh~~ˆ h܆hy>h܆hy>5hˆ-Ôhy>6 hy>6h;O3hy>6hwu­hy>6;hˆ-Ôhy>B*phh;O3hy>B*ph hL³hy>hÆ#k h;O3hy>háhmCùhy>5hr&Rhr&R5 hr&R5 h!k6h!k6hy>(&5LM³  ™ a
b
o
²
  [ \ ) ÷ï÷çÛÒÒÊÒÒÒÒÒÒÒ¿··ÒÒ$a$gdy>
$7$8$H$gdy>
& Fgdy> 7$8$H$gdy> $7$8$H$a$gdy>$a$gdr&R$a$gd!k6$a$gdy>‹³V8þþþ     ' ( > ? @ A V Z [ \ e f h i … ˆ ‰  ´ µ Ú õ ú ü ÿ  ' ) * 9 : > K k l … ÷éá÷ÝÙÑÙÑÈÑÙĽ¸°«°¦½Ù½Ù½Ýž™ž™ž™ž™ž™Ù•„•}•u•jhÆ#kU hˆ-ÔhÆ#k hÆ#khÆ#kCJOJQJ^JaJhÆ#k hy>6hˆ-Ôhy>6 h¶75 hy>5hˆ-Ôhy>5 hx3 5 hˆ-Ôhy>hÉ ¡h¹åmHnHujhy>Uhy>ht¿jGÁh¶7Ujht¿UmHnHujht¿U+) * : Ë Ì Ù 



!
Í
Î
Ü
3Äë… † ‡ Š ‹  — § ¨ ¾ ¿ À Ç È É Ê Ë Ì Õ Ö Ø Ù ô ü 









!
2
8
9
C
D
H
K
W
X
‡
’
˜
§
©
³
¹
½
Ë
Ì
Í
Î
×
ôìèìäÝäìäÒìèÉìä½µ½µ½ÝäÝäݭ䩵½µ½äݥݥÝ䡝¥Ý䙥ݡÝäÝ䝑hˆ-Ôh¥3 5h´#h¥3 h܆hÀSúhN3 hL³hÆ#k5hˆ-ÔhÆ#k5 hÆ#k5 h§lEhÆ#kh¹åmHnHujTÂh˜2U hˆ-ÔhÆ#khÆ#kh¹åjhÆ#kUj×ÁhÆ#kU7×
Ø
Ú
Ü
236JU_ko~€‚‘£ÁÄÅÇéêë
#'8