ONEPTION PAR OBJET ET PROTOTYPAGE D APPLIATIONS REPARTIES - PARTIE I Fabrice KORDON 1 heure, sans document Nota Benne : Les quatre parties de l'examen sont indépendantes. Il sera tenu compte de la présentation et de la clarté dans la rédaction. Les barèmes sont indicatifs. 1. GÉNÉRATION DE ODE A PARTIR DE RESEAUX DE PETRI Soit le réseau de Petri de la Figure 1. t1 F. Kordon - Examen OPA - 2002 p2 1 <.all> p1 t2 p3 lass is 1..3; Var v1, v2, v3 in ; <.all> p4 t3 p6 t4 p5 t5 [v3 = v1] p7 t8 p9 t6 t7 p8 t9 [v2 = v3] Figure 1: Modèle de travail pour la génération de code. p10 1.1 (1 pt) Donnez le modèle structurel correspondant au réseau de Petri de la Figure 1 sans oublier le marquage initial L'outil GreatSPN (Université de Turin) calcule pour ce modèle la famille génératrice de semi-flots suivante : (1) p2 + p6 = st (2) p2 + p5 = st (3) p11 + p4 + p8 = st (4) p9 + p1 + p7 + p3 = st (5) p10 + p1 + p7 + p3 = st p11 Page 1
1.2 (1,5 pts) Proposer toutes les décompositions Fp possibles de ce modèle par rapport à son implémentation selon la stratégie "hybride" présentée en cours. Vous indiquerez le nombre d'instanciations des processus pour chaque partitionnement trouvé. 1.3 (1 pt) Pour chaque décomposition trouvée, indiquez la liste des composants logiciels qui seront générés dans le prototype. Pour chacun d'entre eux, indiquez, s'il y a lieu, leurs instances. Pour les ressources, vous considèrerez la stratégie de partitionnement avec une gestion centralisée des partitions. Vous indiquerez également le nombre de partitions possibles dans la gestion des synchronisations. 1.4 (1 pt) Sans considérer l'architecture cible d'exécution, quelle décomposition vous semble la meilleure? On considère maintenant une architecture basée sur 3 processeurs connectés en réseau. On rappelle que le coût de "lecture distante" (consommation de jetons) dans une place est plus élevé que le coût "d'écriture distante" (production de jetons). 1.5 (1,5 pts) Proposez un placement des composants logiciels du prototype pour le partitionnement optimal. Vous pourrez proposer des réplications de composants à condition de les justifier. Page 2
ONEPTION PAR OBJET ET PROTOTYPAGE D APPLIATIONS REPARTIES - PARTIE II Marie-Pierre GERVAIS 45 mn, sans document Nota Benne : Les quatre parties de l'examen sont indépendantes. Il sera tenu compte de la présentation et de la clarté dans la rédaction. Les barèmes sont indicatifs. 2. NORMALISATION ET STANDARDISATION DE LA ONSTRUTION D'APPLIATIONS REPARTIES 2.1 (1 point) omment positionnez-vous les trois approches suivantes les unes par rapport aux autres : Approche orientée objet, Approche orientée composant, Approche orientée service? 2.2 (0,5 point) Quelle(s) est(sont) la(les) motivation(s) d'introduire l'approche orientée modèle? 2.3 (0,5 point) Pourquoi utiliser la méta-modélisation dans l'approche orientée modèle? justifier votre réponse en citant des standards correspondants. 2.4 (1 point) Quelles sont selon la ou les principales difficultés posée(s) par une approche MDA? 2.5 (1 point) omparer les points de vue ODP et les étapes du cycle de vie du logiciel. 2.6 (1 point) Définissez les notions de PIM et de PSM. À quels points de vue ODP correspond un PIM? omment définiriez-vous un PSM vis-à-vis d'un PIM et des points de vue ODP? Page 3
ONEPTION PAR OBJET ET PROTOTYPAGE D APPLIATIONS REPARTIES - PARTIE III Jean-Pierre BRIOT 45 mn, sans document Nota Bene : Les quatre parties de l'examen sont indépendantes. Il sera tenu compte de la présentation et de la clarté dans la rédaction. Argumentez vos réponses. Les barèmes sont indicatifs. 3. ADAPTATION LOGIIELLE : REFLEXION, OMPOSANTS ET AGENTS (SUR 5 POINTS) 3.1 (1 point) Définissez les principes du concept de réflexion et précisez les problèmes que ce concept aide à résoudre. Mentionnez également les inconvénients éventuels. 3.2 (1 point) Donnez deux exemples d applications du concept de réflexion en précisant les avantages obtenus par rapport à des architectures conventionnelles. 3.3 (1 point) Donnez deux exemples de styles architecturaux (classes d architectures logicielles). 3.4 (1 point) Quelles sont pour vous la ou les différences principales entre un composant et un objet? 3.5 (1 point) Quelles sont pour vous la ou les différences principales entre un agent et un objet? Page 4
ONEPTION PAR OBJET ET PROTOTYPAGE D APPLIATIONS REPARTIES - PARTIE IV Laurent PAUTET 30 mn, sans document Nota Bene : Les quatre parties de l'examen sont indépendantes. Il sera tenu compte de la présentation et de la clarté dans la rédaction. Argumentez vos réponses. Les barèmes sont indicatifs. 4. OBJETS ET OMPOSANTS 4.1 (2 points) Rappelez les éléments typiques constituant l'architecture d'un intergiciel. Détaillez leurs objectifs et illustrez par des exemples inspirés d'intergiciels pour ORBA. 4.2 (2 points) Donner une concrétisation de ces éléments dans le cas d'un client Web fonctionnant sur un PDA aux ressources limitées. Le client Web fonctionne sur un intergiciel orienté message. Page 5