IFT2251 Démo 6 Diagrammes de classes

Transcription

IFT2251 Démo 6 Diagrammes de classes
IFT2251
Démo 6
Diagrammes de classes
Professeur : Houari Sahraoui
Démonstrateur : Guillaume Langelier1
Question 1
Donner les diagrammes de classes dans chacun des cas suivants:
1. Un pays possède une capitale.
2. Un fichier est soit un fichier ordinaire soit un fichier répertoire. Les répertoires
contiennent des fichiers.
3. Les fichiers contiennent des enregistrements.
4. Le modem et le clavier sont des périphériques.
5. Un vol relie deux aéroports (l’un de départ et l’autre de destination).
6. Les classes peuvent avoir plusieurs attributs.
7. Une personne a deux parents.
8. Un polygone se compose d’au moins deux points ordonnés.
9. Les universités emploient des personnes pendant une période.
10. Un email se compose d’un ou plusieurs destinataires et éventuellement d’un titre,
d’un texte et de fichiers attachés.
1
La question 1 est tirée de la démonstration 5 donnée à l’automne 2004. (Farida Mostefaoui, Youssef
Bououlid Idrissi)
A04i3.1
Donner le diagramme de classe décrivant les éléments stockables de ce système.
Artissimo est une troupe de théâtre amateur itinérante. Elle joue des pièces dans
différentes salles du Québec. Artissimo est composée de membres qui peuvent jouer des
rôles dans plusieurs pièces. Plusieurs pièces sont jouées en parallèle; une même pièce
peut être jouée par des membres différents d’une représentation à l’autre.
Artissimo désire mettre en place un système qui lui permettra de planifier les spectacles
et l’embauches des membres pour chaque spectacle. Le directeur artistique détermine les
pièces de théâtre au répertoire de la troupe. Il peut ajouter ou retirer des pièces du
répertoire. Pour chaque pièce inscrite au répertoire, on retrouve le titre, le nom de l’auteur
et les rôles (avec une brève description textuelle).
Quant au gérant de la troupe, il est responsable de la planification des spectacles, ce qui
consiste à enregistrer les représentations prévues avec mention de la date, de l’heure et de
la salle. À la même occasion pour chaque représentation, il doit pouvoir attribuer les rôles
aux membres qui les interpréteront. Un membre peu jouer plusieurs rôles d’une pièce. Par
ailleurs on n’attribut un rôle à un membre que s’il le connaît déjà (i.e. connaît le texte par
cœur et sait l’interpréter). Le gérant peut le savoir en consultant le répertoire des
membres. Aussi, en cours d’année, quand un membre apprend un nouveau rôle au
répertoire de la troupe, il peut enregistrer cette information dans la base.
R:
Question 2
Vous vous êtes fait confier la tâche de créer un diagramme de classe pour un jeu vidéo
mettant à l’épreuve les talents de pilote automobile des joueurs. Vos patrons ont besoin
d’une spécification plus concrète sous la forme d’un diagramme de classe pour que le
processus de prototypes s’enclenche très rapidement. Les responsables des équipes de
conception de jeux, des artistes et des développeurs se sont rencontrés pour définir la
spécification suivante : (On vous demande de modéliser surtout les données de ce
logiciel).
Dans le jeu de pilotage, les joueurs peuvent participer à trois types d’événements. C'est-àdire une course d’exhibition, une course contre la montre et une course à l’intérieur d’un
championnat. Dans les trois cas, il y a une piste qui est assignée à l’événement. On
connaît aussi les conditions climatiques rattachée à l’évènement qui peuvent soit être
beau temps, pluie ou chaleur intense. On peut aussi accéder à la voiture choisie par le
joueur à partir de la course.
Concernant les courses d’exhibition, elle contienne une liste d’adversaires : un adversaire
est identifié par son nom et son niveau de conduite (échelle de 1 à 10) et est au volant
d’une voiture donnée. Pour les courses contre la montre, on garde un temps à battre.
Les courses de championnat sont bien sûr rattachées à un championnat et elle contienne
le nombre de points qui sera accordé au gagnant. Il y a aussi des adversaires lors de ces
courses et ils doivent demeurer les même tout au long du championnat.
Pour un championnat, on peut retrouver une liste de course, les adversaires du joueur et
les points accumulés par chacun des participants. Le vainqueur du championnat est celui
qui a accumulé le plus de point quand toutes les courses ont été terminées.
Les voitures se caractérisent par leur accélération, leur vitesse maximale et leur
adhérence à la route qui sont aussi représentées sur une échelle de 1 à 10. La couleur peut
aussi être modifiée pour permettre une personnalisation du véhicule. Une représentation
graphique est attitrée à une voiture aussi.
Les pistes pour leur part sont représentées par leur nom et leur distance. Pour sauvegarder
le parcours, les auteurs pensais que le trajet pouvait être gardé sous la forme d’une
matrice de booléens 1000x1000 (vraie veut dire sur la piste, faux peut être interpréter
comme un mur opaque) pour permettre la détection de collision efficace avec le rebord de
la piste. Une représentation graphique est aussi attitrée à une piste.
Une représentation graphique est caractérisée par une liste de triangle. Un triangle
contient la position de trois points et la couleur correspondante.
Une fois la modélisation de cette spécification terminée, l’équipe se rencontrera à
nouveau pour raffiner certains concepts.