GL-EXS 97/98

Transcription

GL-EXS 97/98
M AëTRISE DÕINFORMATIQUE : M
ODULE MA2 (GŽnie
Logiciel)
examen de Septembre 1998
UniversitŽ Pierre & Marie Curie (Paris VI)
Fabrice KORDON
3 heures, sans documents
0.
P RƒAMBULE
Le sujet qui vous est prŽsentŽ comporte deux parties indŽpendantes et une annexe. Vous pouvez donc les
effectuer dans lÕordre qui vous convient. Attention! le probl•me est composŽ de plusieurs groupes de
questions dŽpendantes entre elles (mais les groupes sont souvent plus indŽpendants). Ainsi, si vous sŽchez
sur une question, regardez la suite car dÕautres questions sont peut-•tre faisables.
Pensez Žgalement ˆ bien disposer le lecteur (et correcteur) ˆ votre Žgard. Soignez la prŽsentation. Un bon
discours passe tellement mieux lorsquÕil est proprement exprimŽ. Inutile Žgalement de vous rŽpandre sur
des dizaines de pages, surtout lorsque lÕon vous demande de faire bref.
Il vous est vivement conseillŽ de lire attentivement le sujet afin de choisir lÕordre dans lequel vous
rŽsoudrez les diffŽrentes questions. Ce qui para”t simple ˆ premi•re vue ne lÕest peut-•tre pas tant que •a...
NÕhŽsitez pas ˆ lire une seconde fois les questions qui vous semblent dŽlicates avant de les rŽsoudre.
1.
P ROBLéME (17 P TS + 1 FACULTATIF)
D•s son arrivŽe sur le tr™ne, et pour asseoir la puissance de la maison rŽgnante,
lÕimpŽratrice IrŽna IV DorŽa dŽcide de construire sur sa plan•te-capitale une
gigantesque tour de 1000 Žtages culminant ˆ environ 3600 m•tres dÕaltitude. Cette tour
abritera ˆ terme lÕintŽgralitŽ de lÕadministration centrale de lÕempire. Ainsi,
lÕimpŽratrice pourra tenir la dragŽe haute ˆ ses turbulents vassaux et voisins.
Le cabinet dÕŽtudes pour
lequel vous travaillez a dŽjˆ
rŽalisŽ une Žtude des
probl•mes de gestion de la
climatisation dans la Tour (cf
le sujet de Juin 1998 donnŽ en
annexe). Cette Žtude a abouti
au schŽma Classe-Relation de
la Figure 1.
Ce schŽma comporte six
classes concr•tesÊ: deux types
de zones (hŽritant dÕune
classe
abstraite)
qui
reprŽsentent le syst•me de
contr™le dÕune zone. On
distingue
les
zones
pŽriphŽriques
(classe
instanciŽe quatre fois) de la
zone centrale qui, seule est
liŽe
au
syst•me
de
coordination dÕun groupe
dÕŽtages. Toutes les zones
dÕun Žtage sont reliŽes entre
elles via un bus de
communication. La zone
centrale dÕun Žtage est reliŽe
au Syst•me de coordination
via un canal bidirectionnel
(canal SCGE). Enfin, chaque
syst•me de coordination dÕun
Bus
5-5
communique
1-1
Zone
is_a
is_a
Z. Centrale
Z. Périphérique
1-1
est_relié
1-1
is_a
Canal SCGE
1-1
est_relié
7-7
Canal
Système de Coordination
1-2
est_relié
2-2
is_a
Canal-groupes
Figure 1: SchŽma Classe Relation du syst•me.
Page 1
Ma”trise : module MA2 (GŽnie Logiciel), Septembre 1998
groupe dÕŽtages est reliŽ aux syst•mes de coordination des groupes dÕŽtages adjacents
(i.e. supŽrieur et infŽrieur) via un canal bidirectionnel (Canal-Groupes). Les deux
classes Canal (Canal SCGE et Canal-groupes) hŽritent dÕune classe abstraite ÒCanalÓ.
Pour construire le syst•me, on sÕest appuyŽ sur lÕhypoth•se que les canaux de
communication bidirectionnels Žtaient fiables. LÕobjet de la prŽsente Žtude concerne la
conception de ces canaux de mani•re ˆ ce que lÕhypoth•se ŽnoncŽe soit vŽrifiŽe. Vous
•tes donc chargŽ de travailler sur la spŽcification de la classe abstraite Canal.
On appelle interlocuteur lÕŽlŽment qui reprŽsente les entitŽs situŽes aux extrŽmitŽs
dÕune ligne de communication. LÕabsence de fiabilitŽ dÕun canal est liŽe au fait que ces
interlocuteurs sont susceptibles dÕŽmettre nÕimporte quand. Si les deux entitŽs Žmettent
ˆ peu pr•s simultanŽment, les signaux Žlectriques vŽhiculant les messages sur la ligne
sont perdus. Pour Žviter cela, la ligne est attribuŽe par pŽriode ˆ chacun des
interlocuteurs, lÕattribution Žtant contr™lŽe par un synchroniseur. Les interlocuteurs sont
par dŽfaut ˆ lÕŽcoute de la ligne. LorsquÕun synchroniseur refuse lÕŽmission ˆ un
interlocuteur, celui-ci se met automatiquement ˆ lÕŽcoute (un message est en cours
dÕŽmission) et, une fois le message re•u, redemande la ligne pour Žmettre ˆ son tour.
Une fois la ligne obtenue lÕinterlocuteur Žmet son message sur la ligne puis la lib•re. La
ligne reprŽsente tout type de support (interchangeable avec lÕinstanciation de la classe
abstraite) permettant de relier deux interlocuteurs. Le protocole dÕŽchange entre
interlocuteur et synchroniseur, ainsi que les modalitŽs de gestion de la ligne seront
prŽcisŽs plus loin.
Vous •tes chargŽs dÕŽtudier la faisabilitŽ du point de vue informatique de la solution
proposŽe par les experts du cabinet AAEATA.
1.1 (3 Pts)
Identifiez les classes pour implŽmenter un canal et donnez le mod•le structurel en
Classe-Relation sans prŽciser les mŽthodes des classes. Pour un canal de
communication, vous prŽciserez le nombre dÕinstances de chaque classe et
justifierez bri•vement vos choix (en particulier en ce qui concerne la cardinalitŽ des
relations).
Par souci de simplification, on suppose quÕune instance de la classe Canal et tous ses
composants sont mis en service en m•me temps. Pour le moment, pour toutes ces
classes, on ne prŽcise pas dÕautres mŽthodes que celles relatives ˆ la mise en service car
les communications entre composants du Canal sÕeffectuent de mani•re asynchrone au
moyen dÕŽvŽnements.
1.2 (1,5 Pt)
A partir des informations dont vous disposez, indiquez le mod•le opŽratoire des
classes que vous avez caractŽrisŽes.
Les interactions entre le synchroniseur et les interlocuteurs respectent les r•gles
suivantesÊ:
(1) Avant dÕŽmettre un message, les interlocuteurs suivent le protocole suivantÊ:
- Žmission dÕune demande de ligne,
- si la demande est acceptŽe, Žmission du message puis libŽration de la ligne
aupr•s du synchroniseur,
- si la demande est refusŽe, on passe en mode rŽception (un message est en
train dÕarriver) et lÕŽmission est diffŽrŽe.
(2) Les messages ŽchangŽs sont de longueur constante.
(3) LorsquÕun message a ŽtŽ re•u, il est forcŽment acquittŽ.
(4) Tout message non acquittŽ est rŽŽmis ˆ lÕexpiration dÕune temporisation T
initiŽe automatiquement ˆ lÕŽmission dÕun message.
(5) LorsquÕun message envoyŽ est acquittŽ, le composant Žmetteur doit libŽrer la
ligne.
Page 2
Ma”trise : module MA2 (GŽnie Logiciel), Septembre 1998
1.3 (3 Pts)
Quels sont les ŽvŽnements permettant la gestion dÕun Canal?
1.4 (1,5 Pt)
Donnez lÕautomate de dŽclenchement du synchroniseur.
1.5 (2 Pts)
Donnez lÕautomate de dŽclenchement dÕun interlocuteur.
On souhaite maintenant valider la
A
A
description de mani•re formelle. Pour
SI
cela, on utilise les rŽseaux de Petri
SI
Place/Transition (ou ordinaires). A partir
des automates de dŽclenchement obtenus
aux deux questions prŽcŽdentes, vous
allez construire le rŽseau de Petri
correspondant au fonctionnement de ces
SO
SO
deux classes. Les signaux seront
B
B
modŽlisŽs par des places dites Òde
Figure
4:
Exemple
de
modŽlisation
des
communicationÓ comme indiquŽ dans le
signaux.
schŽma de la FigureÊ4. Sur ce schŽma, on
voit la transcription dÕun automate de dŽclenchement en un rŽseau de Petri. Les places
A et B correspondent aux diffŽrents Žtats du syst•me et les places SI et SO
correspondent aux signaux entrant et sortant.
Les questions suivantes vont vous aider ˆ construire le rŽseau de Petri du syst•me par
morceaux, les morceaux Žtant issus de certaines classes du syst•me. Les rŽseaux de
Petri associŽs aux classes seront reliŽs au moyen des places dŽcrivant les signaux de
communication. LÕobjectif est de pouvoir dŽcrire le comportement du syst•me complet
(un synchroniseur et deux interlocuteurs).
1.6 (1 Pt)
En ignorant les aspects dŽmarrage et arr•t du syst•me, construisez le rŽseau de Petri
associŽ au comportement du synchroniseur.
1.7 (0,5 Pt)
Indiquez le marquage initial du rŽseau de Petri de la question prŽcŽdente.
1.8 (1 Pt)
En ignorant les aspects dŽmarrage et arr•t du syst•me, construisez le rŽseau de Petri
associŽ au comportement dÕun interlocuteur.
1.9 (0,5 Pt)
Indiquez le marquage initial du rŽseau de Petri de la question prŽcŽdente.
Pour valider le protocole, on dŽcide de joindre les deux rŽseaux de Petri obtenus au
moyen des places dite Òde communicationsÓ associŽes aux signaux.
1.10 (0,5 Pt)
On observe une configuration Žtrange au niveau des communications entre les deux
sous-mod•les (interlocuteur et synchroniseur). Laquelle?
1.11 (0,5 Pt)
Quelle incidence cela a-t-il sur le comportement du mod•le?
1.12 (1 Pt)
Comment pallier le probl•me?
Page 3
Ma”trise : module MA2 (GŽnie Logiciel), Septembre 1998
1.13 (1 Pt)
En supposant que vous avez rŽsolu le probl•me mentionnŽ dans les trois questions
prŽcŽdentes, quelle propriŽtŽ suggŽrez-vous de rechercher sur le mod•le que vous
avez construit pour considŽrer que le protocole est correct ?
LÕŽtude pla”t beaucoup aux experts du cabinet AAEATA qui pensent pouvoir
appliquer le rŽseau de Petri que vous avez produit ˆ la validation du bus entre les
zones dÕun Žtage (la classe BUS dans le mod•le structurel donnŽ en FigureÊ1).
1.14 (Question facultative, 1 Pt)
Le rŽseau de Petri que vous avez obtenu est-il transposable tel quel ˆ lÕŽtude du
bus? Si non, ŽnumŽrez rapidement les probl•mes que vous identifiez dans le cadre
de cette adaptation ? Vous ne chercherez pas ˆ proposer de colution prŽcise.
NB: Il vous est conseillŽ de vous rŽfŽrer ˆ lÕannexe pour vous rafra”chir la mŽmoire.
2.
QUESTIONS DE COURS (3 PTS)
2.1 (1,5 Pt, 10 lignes maximum + un schŽma)
Situez bri•vement le maquettage et le prototypage dans le cycle de vie du logiciel en
justifiant votre point de vue ?
2.2 (1,5 Pt, 15 lignes maximum)
Pouvez-vous dŽfinir tr•s bri•vement ce quÕest un plan qualitŽ ?
Page 4
Ma”trise : module MA2 (GŽnie Logiciel), Septembre 1998
3.
ANNEXE : INTRODUCTION DU SUJET DE J UIN 1998
Canal "haut"
canal "bas"
Groupe d'étages
D•s son arrivŽe sur le tr™ne, et pour asseoir la puissance de la maison rŽgnante,
lÕimpŽratrice IrŽna IV DorŽa dŽcide de construire sur sa plan•te-capitale une
gigantesque tour de 1000 Žtages culminant ˆ environ 3600 m•tres dÕaltitude. Cette tour
abritera ˆ terme lÕintŽgralitŽ de lÕadministration centrale de lÕempire. Ainsi,
lÕimpŽratrice pourra tenir la dragŽe haute ˆ ses turbulents vassaux et voisins.
Sous lÕŽgide du cabinet AAEATA1 , qui supervise dŽsormais lÕensemble de la
construction du b‰timent, la construction du gros Ïuvre est presque achevŽe et lÕon
commence ˆ se prŽoccuper de la gestion dÕŽlŽments de confort dans la Tour. Un des
points importants, pour rendre lÕendroit supportable, est dÕassurer un syst•me de
climatisation capable de maintenir une tempŽrature acceptable dans les zones
habitables.
Le probl•me est loin dÕ•tre simple. Les parois de la Tour sont en Plexiglas rŽsistant ˆ
double Žpaisseur pour assurer une bonne isolation thermique (il peut faire tr•s froid,
en particulier au niveau des Žtages ŽlevŽs) et phonique (le vent, en altitude, souffle fort,
dÕautant plus que la Tour est construite dans une plaine dŽpourvue dÕobstacles
naturels). LÕinconvŽnient de ce Plexiglas est quÕil absorbe la lumi•re et a tendance ˆ la
convertir en chaleur. Ainsi, du c™tŽ exposŽ au soleil, on observe une importante
production de chaleur alors quÕil existe une dissipation du c™tŽ qui nÕest pas exposŽ. Il
faut enfin tenir compte de la course des deux soleils dans le ciel (la plan•te-capitale de
lÕempire orbite autour dÕune Žtoile double gŽmellaire).
Les experts en climatisation dÕambiance du cabinet
proposent donc une solution pour assurer la gestion de
ZN
la tempŽrature dans chaque Žtage de la Tour.
ConformŽment au schŽma de la FigureÊ2, on proc•de ˆ
une division en cinq zones appelŽes respectivement
ZO
ZC
ZE
Centrale (ZC), Nord (ZN), Sud (ZS), Ouest (ZO) et Est
(ZE). Ces zones sont indŽpendantes les unes des autres
en ce qui concerne la gestion de la climatisation.
ZS
Chacune dÕelle est pilotŽe par un syst•me de contr™le
chargŽ de gŽrer la tempŽrature selon des modalitŽs que
nous expliciterons plus tard. Un bus relie les zones dÕun
Figure 2: Coupe dÕun Žtage
m•me Žtage afin dÕassurer la communication entre les
avec les zones de climatisation.
processeurs contr™lant la tempŽrature.
La Zone Centrale assure Žgalement la liaison entre les opŽrations effectuŽes ˆ lÕŽtage et
celles effectuŽes aux Žtages infŽrieurs et supŽrieurs. La gestion des communications
entre Žtages est cependant hiŽrarchisŽe (FigureÊ3). Pour cela, la Tour est divisŽe en 143
groupes de sept Žtages2 . Chaque groupe est supervisŽ par un Žtage Ma”tre qui
comporte un processeur supplŽmentaire sur lequel sÕexŽcute un syst•me de
coordination. Ce dernier est chargŽ de la surveillance des Žtages du groupe (en
particulier, la dŽtection des pannes) et des Žchanges avec les groupes voisins.
Avec cette nouvelle organisation, le
ZN
mŽcanisme de communication entre
ZO
ZC
ZE
Žtages est modifiŽ. Chaque zone centrale
ZS
dÕun Žtage est reliŽe via un canal
bidirectionnel au syst•me de
Etage Maître
coordination du groupe dÕŽtages. Les
syst•mes de coordination de deux
groupes adjacents sont Žgalement reliŽs
au moyen dÕun canal de communication
dŽdiŽ de la m•me mani•re que les Žtages
dans lÕorganisation prŽcŽdente.
Figure 3: Organisation dÕun groupe dÕŽtages.
1
2
Arpel, Arpel, Encore Arpel et Toujours Arpel.
Cela donne 1001 étages, du RdC jusqu’au 1000ème.
Page 5

Documents pareils