Vous êtes sur la page 1sur 3

AGREGATION D'INFORMATIQUE Session 2000

Admission

Epreuve de travaux pratiques

Option : informatique des systmes de gestion

(Prparation : 7 Heures, Expos et discussion : 1 heure dont 20 30 minutes d'expos)




Une socit ditrice de logiciels souhaite constituer un environnement de dveloppement articul
autour d'une Base de Donnes. Dans un premier temps, l'environnement ne prendra en charge que
les phases de programmation et de test. Il aura pour rle essentiel de grer les versions des
diffrents modules et d'assurer le suivi des tests.

Un module possde un nom et un numro de version et est constitu de plusieurs units. Un bref
descriptif donne les principales fonctionnalits du module. Un module est sous la responsabilit
d'un programmeur identifi par un code et un nom. Un mme programmeur ne peut avoir la
responsabilit de plus d'un module. Un module peut dpendre de diffrents autres modules, un
module ne peut pas dpendre de lui-mme. L'exemple suivant illustre la dpendance entre modules.
Dans cet exemple, M1,,M5 dsignent des noms de modules et le symbole "" dsigne la relation
de dpendance.

Exemple de dpendance entre modules:

M1 M2, M3, M4
M2 M3, M5
M4 M5, M2

Les diffrentes units d'un module sont stockes dans des fichiers. Chaque unit dispose d'un nom
et d'un numro de version. Tout fichier est dfini par un chemin d'accs et par un nom unique dans
le rpertoire impliqu par le chemin.

Pour chaque module on programme des jeux de tests. Chaque jeu de test est identifi par une
rfrence ; un court descriptif donne son objectif. Tout jeu de test se voit associ 3 fichiers :
- un fichier de donnes en entres,
- un fichier de rsultats attendus,
- un fichier de rsultats produit par le module.
Une fois pass le test, le module obtient un score sous forme de pourcentage.

Il s'agit de mettre en uvre la base de donnes dcrite ci-dessus.

Les outils mis votre disposition pour la ralisation du travail demand sont :
Atelier de gnie logiciel (AGL) : AMC*Designor
SGBD : Oracle 7
Outil de dveloppement : Developper 2000 d'Oracle




Travail demand:
1. Critiquer le MCD fourni en annexe 1 et prsenter votre solution conceptuelle.

2. Gnrer le schma relationnel correspondant votre solution conceptuelle et donner son
implmentation l'aide du SGBD Oracle.

3. Ecrire un trigger permettant de garantir qu'un programmeur n'est responsable que d'un module
au plus.

4. Dvelopper, en mettant en place tous les contrles ncessaires, la (ou les) interfaces permettant
de dfinir et de modifier les dpendances entre modules. Il devra tre possible d'imprimer, pour
un module donn, la liste de ses modules dpendants et inversement d'obtenir la liste des
modules qui dpendent de lui.

5. On dfinit, pour un module, une mtrique de qualit comme suit :
- un module qui obtient un score suprieure ou gale 99 % un jeu de test reoit 5
points,
- un module qui obtient un score compris entre 85 % (inclus) et 99% (non inclus) un jeu
de test reoit 4 points,
- un module qui obtient un score compris entre 75 % (inclus) et 85% (non inclus) un jeu
de test reoit 3 points,
- un module qui obtient un score compris entre 65 % (inclus) et 75% (non inclus) un jeu
de test reoit 2 points,
- un module qui obtient un score compris entre 55 % (inclus) et 65% (non inclus) un jeu
de test reoit 1 points,
- un module qui obtient un score infrieure 55% un jeu de test reoit 0 points.
La valeur de la mtrique correspond au total des points accumuls par le module pour les
diffrents jeux de test.
Prsenter l'algorithme permettant de calculer la mtrique pour un module donn et donner son
implmentation en PL/SQL.

6. Dans le cas o on souhaite tendre l'environnement de dveloppement aux phases amont du
cycle de vie (spcification et conception) et o on souhaite enrichir l'aspect suivi de la qualit,
proposer et organiser un thme de travaux pratiques permettant d'illustrer ces aspects.













Annexe 1 : Proposition de MCD






0, N Depend 0, N
0, N PasseFils
ScoreF




O, N PassePere 1, 1

1, N ScoreP 1, 1

contientP SesFichiers 3, 3




0, N 1,1

(1,1) stockage 1, 1
Module _pere

Id_ModP
NoVersion
MetriqueQualite
Module _Fils

Id_ModF
NoVersion
MetriqueQualite
Unite

Id_Unite
NoVersion
Nom
Fichier

Nom
Repertoire
Test

Reference
Descriptif