Home

1. QCM (40 points) (1h)

image

Contents

1. UniCastRemoteObject E AppXXXODint Ca AppX XxOD e getDatet string app PpEXX K setPrefixel in s stringi woid m L lt lt interfacez AppXX XInt SZ getbate string setPretixe in s stringi void Cette repr sentation de mod le de classes en UML est celle de l atelier 16 en RMI Le r le de l interface AppXXXODInt est essentiel car Elle d crit les m thodes que la classe IhmXXXRm1Imp doit impl menter Elle est une interface RMI une description des m thodes distantes de AppXXXOD En JAVA avec RMI plusieurs clients d un objet distribu peuvent utiliser en parall le une m me m thode distante Le ClientProxy est un DP Proxy utilis par un client dans lequel les services r els ont t remplac s par un appel distant ces services En RMI de Java les param tres des m thodes distantes peuvent tre de n importe quelle classe qui impl mente s rializable page 4 Examen 1 re session 2012 2013 page 5 NSY 102 AISL Soit le sch ma suivant qui repr sente un fonctionnement possible de plusieurs serveurs de socket des classes UnicastRemoteObject utilis es dans des programmes Java RMI Machine A lookup sur port 9100 requ tes sur port 9101 requ tes sur port 9102 port 9103 On peut cr er un nouvel OD dans la JVM1 qui s ex cute sur le port 9102 2 On peut cr er une nouvelle JVM3 dans laquelle on
2. l ihm appelle cycliquement une m thode distante getEtats de la supervision centralis e afin d obtenir ces tats et les afficher 2 Faire le diagramme de classe UML de chacun des composants Mettez en vidence les m thodes et les attributs importants Pr cisez en marge des diagrammes le r le de chacune des m thodes Pour le composant factory page 14 Examen 1 re session 2012 2013 page 15 NSY 102 AISL FactoryiS UnicastRemoteOject Supervisable Remote A Runnable Observable Observer Remote ISODInt 7 j m R Void update C 4 ee notifier AbstractIS gt ObservablelS gt ObserverlS RMI gt SCODint Void update Void update void notitierEtat DEEE abstract Etats superviser SuperviserCPU SuperviserMemoire Etats superviser Etats superviser Toutes les classes d instance de supervision IS h ritent d une classe abstraite AbstractIS qui cr e un thread impl mente l interface Runnable dont le traitement g n rique est d appeler la m thode abstraite superviser Cette m thode est impl ment e par les classes d IS Le thread appelle la m thode notifierEtat impl ment e par la classe abstraite Cette m thode utilise une instance de ObservablelS afin de notifier ces tats un observer ObserverlS_RMI appelle de la m thode update du Design Pattern Observateur Le role de ObserverlS_RMI est d utiliser le stub d un observer distant qui n est autre
3. Une IHM de visualisation se trouvant sur une autre machine tire cycliquement certains tats de la supervision centralis e afin de les afficher en fonction de leurs NOM L THM r cup re cycliquement l tat le plus r cent d un NOM donn 1 Faite le sch ma d architecture logiciel de votre solution composants acteurs fonctions Pr cisez le r le de chacun des composants Justifiez vos choix page 13 Examen 1 re session 2012 2013 page 14 NSY 102 AISL E Demande de cr ation Factory d objets de supervision ipn de deux objets de OD ision SuperviserCPU OD on OD update Push Supervision Centralis e Pull getEtat IHM Le composant factory d objets de supervision cr e sur demande des objets de supervision ou instance de supervision Ces objets de supervision sont des objets distribu s cr s sur la m me machine que le factory Ils ex cutent chacun un thread et notifient la supervision centralis e les tats de supervision calcul s Il peut exister plusieurs factory r partis sur les diff rentes machines du r seau La supervision centralis e est un autre composant qui peut s ex cuter sur une autre machine Ce composant est un objet distribu unique sur le r seau Il re oit par notification les tats de supervision calcul s par tous les objets de supervision du r seau L IHM affiche certains tats de supervision connus de la supervision centralis e Pour cela
4. Examen 1 re session 2012 2013 page 1 NSY 102 AISL IPST CNAM Intranet et Designs patterns Dur e 3 heures NSY 102 Enseignants LAFORGUE Jacques Vendredi 26 Avril 2013 l re Session NSY 102 1 PARTIE SANS DOCUMENT CORRECTION 1 QCM 40 points 1h Mode d emploi Ce sujet est un QCM dont les questions sont de 3 natures e les questions 2 propositions dans ce cas une seule des 2 propositions est bonne gt l pour la r ponse bonne gt pour la r ponse fausse e les questions 3 propositions dont 1 seule proposition est bonne gt 1 pour la r ponse bonne gt pour chaque r ponse fausse e les questions 3 propositions dont 1 seule proposition est fausse gt 12 pour chaque r ponse bonne gt pour la r ponse fausse Il s agit de faire une croix dans les cases de droite en face des propositions On peut remarquer que cocher toutes les propositions d une question revient ne rien cocher du tout gal 0 S1 vous devez raturer une croix faites le correctement afin qu il n y ait aucune ambigu t N oubliez pas d inscrire en en t te du QCM votre nom et pr nom Vous avez droit 4 points n gatifs sans p nalit page 1 Examen 1 re session 2012 2013 page 2 NSY 102 AISL NOM PRENOM Un Middleware est dans les architectures web un framework comme eclipse d aide au d veloppement la mise au point et au d ploiement des logiciels bas s sur une architec
5. PullSupplier afin de lui tirer un v nement Et le fournisseur voit les consommateurs travers un ProxyPullConsummer page 16
6. a partie entour e constitue un pont RMI de communication entre l IHM et l applicatif Le r le d un factory est entre autre de cr er la demande de nouveaux objets distribu s Tous ces objets distribu s doivent tre enregistr s dans un adaptateur local la machine sinon ils ne seraient pas accessibles CORBA Common Object Request Broker Architecture est une norme de Middleware Soit le Design Pattern Observateur 1 D ObservableXXX ObserverXXX La classe ObservableXXX notifie les v nements une instance de Observable 2 La classe Observer XXX impl mente la m thode update de l interface Observer qui est appel e par Observable 3 La classe Observable pousse mod le du push les v nements Observer XXX X L ind pendance de la situation g ographique d un objet distribu passe par l utilisation d une table de correspondance physique logique des objets distribu s appel annuaire ou adaptateur 1 La partie physique est un pointeur sur l objet distribu en m moire de la JVM La partie logique est un nom unique La partie physique est constitu e des l ments de connexion l objet distribu La partie logique est un nom unique dans un contexte donn page 3 Examen 1 re session 2012 2013 page 4 NSY 102 AISL Inm lt X lt Client AppXXXServeur app hms Rmilmg App SphR RAOD ihm Im l InmXXXx IimX lt lt Rmilmp Appr KODIN app pRAXAINt app SPP
7. classe est cr e par invocation du langage Java et donc dynamiquement Dans le Proxy0 le traitement r alis pour chaque m thode est l appel de la m thode invoke de la classe XXXHandler en lui passant en param tre la m thode concern e A la charge du handler de r aliser l ex cution ou non de la m thode proprement dite en utilisant la classe XXX La classe Contr le est utilis e pour utiliser des donn es n cessaires l ex cution du handler test filtre journalisation trace La classe XXX est la classe r elle d ex cution des m thodes court circuit es par le Proxy L interface InvocationHandler contient la signature de la m thode invoke utilis e par le Proxy Dans quel cas rencontre t on l utilisation d un DynamicProxy Expliquez On rencontre l utilisation du DynamicProxy dans l impl mentation du middleware natif Java RMI les m thodes distantes d un objet distribu sont c t client impl ment es par un DynamicProxy qui utilise un handler sp cifique RMI Cet handler traduit chaque appel de m thode par une criture socket et se charge de la s rialisation des param tres QUESTION NUMERO 2 Nous avons sur le r seau un objet distribu RMI Java appel XXOD qui doit notifier des v nements une IHM distante appel e XXIhm Pour cela nous faisons le choix d utiliser le design pattern Observateur Expliquez ce qu il est n cessaire de faire pour que la notification se fasse de mani re dis
8. cr e un nouvel OD qui s ex cute sur le port 9103 Dans la JVM2 on peut cr e un nouvel objet distribu RMI sur le port 9102 En RMI l appel d une m thode distante entre un client et un objet distribu RMI se fait de la mani re suivante 1 l appel de m thode est converti en une requ te qui encode les param tres 2 la requ te est envoy e l adaptateur RMI qui la renvoie au serveur dont il a les coordonn es r seau A l oppos de la communication synchrone la communication asynchrone est un type de communication bas sur le mod le du pull comme par exemple un thread d un client qui tire r guli rement les v nements d un serveur un serveur pousse ses v nements dans une file d attente par client connect interm diaire et les clients tirent ses v nements leur rythme un serveur pousse son v nement dans un proxy de consommateur et son tour le proxy de consommateur pousse l v nement au consommateur 12 La un serveur appelle la m thode distante d un client afin de lui transmettre l v nement Il existe deux fa ons pour utiliser les m thodes distantes d un objet distribu 1 demander le stub de connexion un annuaire 2 demander le stub de connexion un factory qui a cr l objet distribu puis d utiliser ce stub pour appeler les m thodes distantes Dans CORBA PIOR Interface Object Request est une cha ne de caract re qui est 1 une cha ne de caract
9. d pull page 7 Examen 1 re session 2012 2013 page 8 NSY 102 AISL La communication synchrone entre un producteur et un consommateur par Canal d v nement se fait 2 via le mod le du invoke en passant par un interm diaire via le mod le du Push en passant par un interm diaire via le mod le du Pull en passant par un interm diaire Dans la communication synchrone via un canal d v nement entre un producteur et un consommateur le producteur utilise un proxy de consommateur et non le consommateur directement afin de lui pousser un v nement Le DynamicProxy est utilis dans l impl mentation de RMI en Java 1 7 pour r aliser les appels distants d un objet distribu Suite Tournez la page page 8 Examen 1 re session 2012 2013 page 9 NSY 102 AISL 2 Questions libres 20 points 30mn Chaque question est not e sur 5 points Vous r pondez ces questions sur une copie vierge double en mettant bien le num ro de la question sans oublier votre nom et pr nom Vous mettez le QCM dans la copie vierge double QUESTION NUMERO 1 XXXInt Rio ru InvocationHandler 7 Proxy0 r D DynamicProxy AAA sl lt Aaa Controle Commentez le sch ma ci dessus D finition principes r les de chaque composant Ce sch ma repr sente le Design Pattern dit Dynamic Proxy dont le principe est la cr ation de la classe Proxy0 qui impl mente toutes les m thodes de l interface XXXInt Cette
10. es avantages de l utilisation d un middleware bas sur la norme CORBA Les avantages de l utilisation sont page 10 Examen 1 re session 2012 2013 page 11 NSY 102 AISL la richesse des services d j impl ment es service de nommage service de r plication service de persistance service de notification synchrone et asynchrone la compatibilit des interfaces de communication dans diff rents langages informatiques gr ce l utilisation d un IDL tous les services pr d finis sont vus comme des services r partis sur le r seau accessibles par tous multi plateforme multi language l utilisation du principe de l IOR sous la forme d une chaine de caract re qui contient les l ments de connexion et de localisation d un objet distribu quelque soit le langage ou l OS Suite Tournez la page page 11 Examen 1 re session 2012 2013 page 12 NSY 102 AISL QUESTION NUMERO 4 User D S ComportementRMI Comportement Proxy RMI gt Applicatif Commentez ce sch ma Ce sch ma repr sente la conception de l utilisation distance d un applicatif pour lequel les m thodes d crites par l interface Comportement sont impl ment e dans un objet distribu qui est repr sent e par la classe ProxyRMI Cette classe impl mente l interface ComportementRMI qui contient les m mes m thodes que Comportement L utilisateur utilise l interface ComportementRMI via un lookup dont le stub impl mente l interface Co
11. la Supervision Centralis e certains tats de supervision Pour cela elle utilise l interface Remote SCODINnt pour appeler la m thode distante getEtats 3 Mettez en vidence les Designs Patterns que nous avons vu en cours qui se retrouvent dans vos diagrammes de classe Commentez Dans le composant Factory on a le DP Factory constitu des classes ISODInt FactoryIS AbstractIS SuperviserCPU SuperviserMemoire Ce DP contient une usine FactoryIS qui cr e des objets r els Superviser CPU vus par une m me interface ISODInt Dans le composant Factory on a le DP Observateur constitu des classes ObservablelS ObserverlS_RMI Observable Observer Ce DP cr e un observeur ObserverIS_RMI qui impl mente la m thode update de l interface Observer Cet observateur est ajout l observable Observablels L observeur est notifi qui son tour appelle la m thode distante update Dans le composant Supervision Centralis e on a le DP Proxy constitu des classes SCOD SC SCODInt et SCInt Le proxy traduit l appel de m thode distante en appel de m thode locale Dans le composant IHM on n a pas de DP proprement dit car pour tirer les tats de supervision l IHM appelle via un thread directement une m thode distante de la supervision centralis e Nous aurions pu aussi cr er un DP proxy Fournisseur Consommateurs suivant le principe du pull dans lequel le consommateur voit le fournisseur travers un Proxy
12. mportementRMT pour appeler les m thodes distantes Fin de la 1 partie sans document Si vous rendez la copie de cette 1 partie vous pourrez commencer la 2 partie 3 page 12 Examen 1 re session 2012 2013 page 13 NSY 102 AISL 2 me PARTIE AVEC DOCUMENT 3 PROBLEME 60 points 1h 30mn Nous envisageons de r aliser un syst me d information Intranet compos d objets dit objets de supervision et d une supervision unique appel e supervision centralis e Les objets de supervision sont cr s par un factory appel Factory d instance de supervision Il peut donc exister plusieurs Factory sur le r seau Un objet de supervision est un objet distribu RMI qui ex cute un thread g n rique la m thode run appelle cycliquement la m thode public Etats superviser d crite dans l interface Supervisable Par exemple les classes suivantes Superviser Memoire Superviser CPU SuperviserPort int port impl mentent cette interface Apr s avoir appel la m thode superviser l objet de supervision notifie la supervision centralis e les tats retourn s par la m thode superviser Les tats retourn s sont un tableau d tat Un tat est d fini par DATE HEURE NOM VALEUR La supervision centralis e est un objet distribu RMI qui se trouve sur une autre machine que le factory d instance de supervision Elle contient tout l historique des tats notifi s par toutes les objets de supervision
13. que la supervision centralis e L interface SCODInt est l interface Remote RMTI de la supervision centralis e Tous les objets du factory sont des objets distribu s h rite de UnicastRemoteObject et impl mente l interface ISODInt Le factory est une instance de la classe FactoryIS et il contient des instances de AbstractIS Pour le composant supervision centralis e SCODInt UnicastRemoteObject void update Etats getEtats void update ArrayList lt Etat gt etats Etats getEtats page 15 Examen 1 re session 2012 2013 page 16 NSY 102 AISL La Supervision Centralis e est une classe SC qui est encapsul e par un objet distribu SCOD qui permet d appeler les m thodes de la SC de mani re distante Ces m thodes sont la m thode update utilis es par les IS permettant la notification des tats de supervision et la m thode getEtats qui retourne les tats de supervision utilis e par l TIHM La classe SC contient l historique de tous les tats de supervision remont s par les instances de supervision La classe SCOD est donc un objet distribu qui h rite de UnicastRemoteObject et impl mente l interface Remote SCODInt Pour le composant IHM Thread IHM ThreadSC Z SCODint void update Etats getEtats void run Etats getEtats L IHM utilise la classe ThreadSC pour instancier un thread qui demande cycliquement
14. re permettant de cr er le stub de connexion qui permet sont tour d appeler les m thodes distantes 2 le nom de l objet distribu qui permet d obtenir via l annuaire le stub de connexion qui permet sont tour d appeler les m thodes distantes page 5 Examen 1 re session 2012 2013 page 6 NSY 102 AISL Dans le cadre de la communication entre un composant Java et un composant C sur un bus CORBA on doit cr er un socket de communication dans chacun des composants pour les faire communiquer i on peut ex cuter les deux composants sur la m me machine on d finit un IDL qui r alise une projection Java et une projection C des composants logiciels utilis s pour faire communiquer les deux composants En Java RMI l instruction rebind consiste tablir une connexion socket entre l adaptateur et le serveur et l instruction lookup consiste tablir une connexion socket entre le client et l adaptateur La communication entre le client et le serveur peut ainsi s tablir l adaptateur servant d interm diaire pour chaque requ te Un Design Pattern DP ou Patron est une norme de description des interfaces entre les composants d un architecture logicielle orient e objet Le DP Factory a pour fonction la cr ation distance d objet distribu la cr ation d objet tous d crit par la m me interface I E E a cr ation d objet qui sont des singletons ask for a new object ereate P rodugdi P
15. roduct Ce DP est celui du Factory La signification des lettres A B C et D est A Factory B Concrete Product C Product Interface D Client A Client B Factory C Product interface D Concrete Product A Client B Product interface C Concrete Product D Factory Dans la conception d un factory il est galement envisag que toutes les classes d appartenance des produits cr s par le factory h ritent toutes d une m me classe abstraite page 6 Examen l re session 2012 2013 NSY 102 AISL Le DP Adaptateur correspond une classe qui sert d interm diaire entre un appelant et un appel qui sont incompatibles entre eux Actions utilisateurs Ce sch ma repr sente le DP Mod le Vue Controleur Les lettres A B et C sont d finies ainsi A Mod le B Vues C Controleur X Controleur B Vues C Mod le A 3 5 Un Proxy est un DP dans lequel deux classes A et B impl mentent la m me interface et A est compos e de B OUI Un service est un comportement d fini par un contrat qui peut tre impl ment et fourni par un composant afin d tre utilis par un autre composant sur la base exclusive du contrat Le DP Observateur est impl ment e en Java via la classe Observable et l interface Observer Cette impl mentation utilise par conception le mod le de communication synchrone suivant mod le du pull 2 mod le du push X 2 mod le du push an
16. tante entre XXOD et XXIhm Il faut d coupler le DP Observateur classique en un Observateur RMI dans lequel l appel de la m thode update de l observateur Observer se fait de mani re distante par l observ Observable Cela revient mettre un Proxy RMI entre l Observeur et l Observ page 9 Examen 1 re session 2012 2013 page 10 NSY 102 AISL Pour cela XXIhm cr e un Objet Distribu ProxyObserverlhmRMT qui est un Proxy de l observer naturel de l IHM et qui impl mente la m thode update Ensuite l IHM appelle la m thode distante addObserver de XXOD afin de s abonner et lui envoyer le stub de ProxyObserverIhmRMI Ensuite on cr e une sorte d Adaptateur AdaptateurObserverRMIT qui se substitue l observer naturel afin qu il soit notifi par l Observable de XXOD Cet observer appelle la m thode distante update du Proxy de l IHM D crivez sous la forme UML votre choix de conception et de Design Pattern C t serveur XXOD notify notify qui appelle update ObservableXX a z i Adaptateur bserverRMI void notify Remote stub gt tub void update Stub update C t Client XXIhm UnicastRemoteObject Observer void pdate LEE xm En Observerlhm ProxyObserverihmRMI a M void update x update QUESTION NUMERO 3 Nommez l
17. ture r partie dans une architecture client serveur une couche logicielle utilis e par le client et le serveur pour communiquer par exemple par envoi r ception de message Une application dite distribu e est une application logicielle dans lequel les donn es informatiques sont r parties sur le r seau et accessibles par tout logiciel qui utiliserait un ORB L IDL Interface Definition Language permet de cr er les souches et les squelettes dans diff rents langages informatique assurant ainsi l interop rabilit des services entre eux On appelle un objet distribu quand ce dernier est pass en param tre d une m thode distante ou m thode Remote En RMI de Java 1 la classe d appartenance d un objet distribu h rite de UnicastRemoteObject et impl mente une X interface qui d crit les m thodes distantes la classe d appartenance d un objet distribu h rite de RemoteObject et impl mente l interface Remote page 2 Examen 1 re session 2012 2013 page 3 NSY 102 AISL Ceci est le sch ma d architecture de l atelier 16 exemple 04 en RMI qui repr sente une application compos d un client IHM et de son serveur app ImXXKRmilmp ihm Ihm gt Ox InPOTRMIMp UniCastRemot Objeet ER eft pen MR SN SRE SANS PASS TA PRE HS MR AppXXXOD getDate string f setPrefixe in s siring void lt lt inlerface _ AppXXXInt getDate string 1 setPretixe in s string void f P L

Download Pdf Manuals

image

Related Search

Related Contents

F74C/FN74C/FK74C/FKN74C  OPERATION AND SAFETY MANUAL  Digitus DK-1641-A-150 networking cable  crtion numérique nouvelles technologies  Leica 18141 Film Camera User Manual  SKEMA 5.indd  Istruzioni d`uso VEGAFLEX 86  Earth, wind and tyre  Indesit FIMD 23 WH S  

Copyright © All rights reserved.
Failed to retrieve file