Questions de cours
1- Une action qu’un objet peut réaliser s’appelle
a. Une opération
b. Une classe
c. Un attribut
d. Une formule
2- Que doit-on faire lors de l’analyse de besoins principaux d’un projet logiciel ?
a. Définir toutes les informations nécessaires du futur logiciel
b. Découvrir les acteurs et les fonctionnalités du futur logiciel
c. Décrire une fonctionnalité du futur logiciel
d. Définir les packages ou les grandes parties du logiciel à créer
3- Dans un diagramme de classes en langage UML, la généralisation
a. Est une relation transitive : si C dérive d'une classe B qui dérive elle-
même d'une classe A, alors C dérive également de A
b. Est une relation réflexive : une classe peut dériver d'elle-même
c. Est une relation symétrique : si une classe B dérive d'une classe A, alors
la classe A peut dériver de la classe B
d. Représente une association non symétrique dans laquelle une des
extrémités joue un rôle prédominant par rapport à l'autre extrémité
4- Quel(s) type(s) de relations sont permises entre des cas d'utilisation ? (plusieurs
choix possibles)
a. Association
b. Généréralisation / héritage
c. Dépendance de type "includes"
d. Dépendance de type "extends"
e. Aucune de ces réponses n'est correcte
5- Entre une classe Vehicule et une classe Roue, quel type de relation est adéquate
?
a. Composition
b. Association
c. Héritage
d. Agrégation
6- Entre une classe Vehicule et une classe Conducteur, quel type de relation est
adéquate ?
a. Composition
b. Association
c. Héritage
d. Agrégation
7- Entre une Classe Véhicule et une classe Bâteau, quel type de relation est
adéquate ?
a. Composition
b. Association
c. Héritage
d. Agrégation
8- Grâce à une relation d'héritage, de quoi hérite la classe enfant ? (plusieurs choix
possibles)
a. des opérations
b. des propriétés
c. des associations
d. des relations d'héritage
e. des attributs
9- Qu’est-ce qu’un acteur principal ?
a. C’est une fonctionnalité du logiciel.
b. C’est une action qui devra être réalisée grâce au logiciel à développer.
c. C’est une entité avec lequel le logiciel a une interaction, mais qui ne
déclenche aucune action.
d. C’est un des futurs utilisateurs du logiciel
10- Une classe abstraite est une classe qui a les propriétés suivantes:
a. Ne contient que des méthodes abstraites
b. Ne contient que des attributs abstraits
c. Contient au moins un attribut abstrait
d. Contient au moins une méthode abstraite
Exercice 1
On désire réaliser une application pour la gestion des Rapports Quotidiens de Vol
(RQV) de véhicules dans les départements de police, par une application web. On
distingue initialement deux types d’utilisateurs pour ce système : les victimes et les
témoins. Chacun de ces utilisateurs peut créer une déclaration de vol, en y indiquant
son rôle (victime, témoin ou bien les deux), ses informations personnelles (son n°CIN,
nom, prénom, adresse, tél), le type de la propriété volée (véhicule à moteur ou bien
bicyclette) ainsi que les différentes informations disponibles qui l’identifient (couleur,
marque, numéro de série pour les bicyclettes, matricule pour les véhicules à moteur,
description générale), la date, l’heure et le lieu (avec tous les détails disponibles : n° de
la rue, ville, code postal,…) du vol.
Le système attribue à chaque déclaration un identifiant, que l’utilisateur peut utiliser
pour pouvoir éditer la déclaration (ajouter des informations, supprimer la déclaration),
avant de sauvegarder la déclaration. Le système doit enregistrer, pour chaque
déclaration, la date de sa dernière modification.
On distingue également un autre type d’utilisateurs : l’agent policier qui se charge de
la création des Rapports Quotidiens de Vol. Un RQV est relatif à une date particulière,
il contient toutes les déclarations de vols effectuées ou bien modifiées dans ce
jour. Lorsqu’un véhicule déclaré est retrouvé, l’agent policier modifie l’état de la
déclaration concernée. Evidemment, l’agent policier doit s’authentifier pour pouvoir
accéder à cette application.
On désire déterminer pour chaque RQV la liste des nouvelles déclarations, la liste
des déclarations mises à jour, ainsi que les déclarations qui ont été résolues.
Travail A Faire :
1. Décrire les différentes fonctionnalités de ce système en utilisant un diagramme
de cas d’utilisation ;
2. Décrire la structure de ce système en utilisant un diagramme de classe.
Exercice 2
Les stagiaires d’un établissement de formation désirent développer une application Web
genre réseau social appelée netAtlas. L’application permet aux membres inscrits de créer
un réseau d’amis et d’échanger des contenus. Pour devenir membre de netAtlas, un
internaute doit s’inscrire lors de sa visite du site web. Lorsque l’administrateur valide
l’inscription, l’internaute devient membre ; il peut alors se connecter pour réaliser les
opérations suivantes : chercher un membre, inviter un membre d’être son ami, accepter
un autre membre comme ami, refuser une invitation d’amitié, retirer un ami de sa liste
d’amis. Un membre peut également publier des contenus.
Un modérateur consulte les contenus publiés par les membres et peut avertir, par un
message, un membre qui publie du contenu non conforme au règlement de netAtlas ;
après 3 avertissements, l’administrateur supprime le compte de ce membre. Un
membre est identifié par une adresse e-mail, un nom et un prénom. Un membre peut
avoir plusieurs amis qui sont aussi membres de netAtlas. Un membre peut effectuer
une publication de contenu à une date donnée. une publication concerne une
ressource à publier; une ressource possède un nom et peut être soit un message, soit
une photo/vidéo soit un lien vers une page web. Une photo/vidéo a en plus du nom,
une taille en Mo. Un lien vers une page web a une adresse (URL).
Travail A Faire :
1. Décrire les différentes fonctionnalités de ce système en utilisant un diagramme
de cas d’utilisation ;
2. Décrire la structure de ce système en utilisant un diagramme de classe.