• Aucun résultat trouvé

Licence Informatique 3ème année

N/A
N/A
Protected

Academic year: 2021

Partager "Licence Informatique 3ème année"

Copied!
4
0
0

Texte intégral

(1)

Licence Informatique 3ème année Modélisation Objet

Examen de première session – 18/05/2015 – 2h

Les notes de cours, TD et TP sont autorisées.

On veut réaliser un programme de type IDE capable d'analyser du code Java pour aider le programmeur dans sa tâche.

Question 0 : Dans cette question, on se limite à la gestion des classes (sans entrer dans le détail des attributs, méthodes, etc). L'IDE doit permettre à l'utilisateur de créer une classe, de sélectionner une classe parmi les classes existantes, d'éditer une classe si elle a été sélectionnée, de compiler une classe si elle a été sélectionnée, d'exécuter une classe si elle a été sélectionnée et qu'elle contient une méthode principale, d'enregistrer une classe si elle a été sélectionnée et de supprimer une classe si elle a été sélectionnée. La compilation fait appel à un compilateur Java externe à l'IDE et l'exécution fait appel à une machine virtuelle Java externe à l'IDE.

Réalisez un diagramme de cas d'utilisation correspondant à ces fonctionnalités. (4 points)

Question 1 : Il faut détailler l'édition d'une classe. L'utilisateur commence par sélectionner dans l'IDE la classe à éditer. Ensuite, il tape des touches (on néglige l'utilisation de la souris) autant qu'il veut. A chaque frappe de touche, l'IDE lance une analyse. Si une erreur de programmation est détectée, un message d'erreur est affiché pour l'utilisateur. Si une complétion automatique possible est détectée, elle est proposée à l'utilisateur. L'utilisateur peut valider la complétion et elle est alors ajoutée à la classe. Il peut aussi l'invalider.

Réalisez une diagramme de séquences qui décrit l'édition d'une classe. (4 points)

Question 2 : On veut représenter dans le programme les différents éléments du code. Dans cette question, on s'intéresse aux éléments suivants :

- une classe a un nom et peut hériter d'une autre classe (au plus une). Une classe possède des attributs et des méthodes.

- un attribut a un nom et un type.

- une méthode a un nom, un type de retour et des paramètres (éventuellement aucun), qui ont chacun un nom et un type. Parmi les méthodes, il existe des constructeurs qui ont pour nom celui de leurs classes. Chaque classe a au moins un constructeur.

Les types des attributs et des paramètres, ainsi que les types de retour des méthodes peuvent être des classes, mais pas forcément. Les attributs et méthodes ont tous une visibilité qui a 4 valeurs possibles : publique, privée, protégée ou paquetage.

Réalisez un diagramme de classes d'analyse pour représenter ces éléments dans l'IDE1. (5 points)

1 Rappel : dans un diagramme de classe réalisé dans la phase d'analyse, il n'est pas nécessaire de détailler tous les attributs et méthodes, seulement ceux nécessaires pour comprendre la structure du programme. Par contre il faut bien détailler les associations entre classes avec leurs propriétés (nom, sens de lecture, cardinalités, etc).

(2)

Question 3 : Dans l'IDE, une fois qu'une classe est créée, elle peut être soit en cours de modification soit enregistrée. Si une touche est tapée alors que la classe est sélectionnée, la classe passe dans l'état modifié, et une analyse de la classe est lancée (pour détecter des erreurs dans le code ou trouver des complétions possibles). Si l'utilisateur fait un enregistrement alors que la classe est sélectionnée, la classe passe dans l'état enregistré. D'autre part, la classe peut être compilée ou non. Si une compilation est lancée et ne produit pas d'erreur, la classe passe dans l'état compilé, sinon elle reste dans l'état non compilé. Si la classe est dans l'état compilé, qu'elle est sélectionnée dans l'IDE et qu'une touche est tapée, la classe passe dans l'état non compilé, et une analyse est lancée. Finalement, si l'utilisateur supprime la classe, une analyse des autres classes est lancée (pour détecter les erreurs éventuellement introduites par cette suppression).

Réalisez un diagramme d'états pour représenter la vie d'un objet représentant une classe dans l'IDE. (4 points)

Question 4 : Le diagramme d'activités ci-dessous modélise les activités menées par l'utilisateur dans l'IDE pour gérer les classes. Indiquez les erreurs contenues dans le diagramme (il s'agit des erreurs liées au langage UML, et non des erreurs sur le fond, comme le fait qu'il manque certaine activité par exemple). (3 points)

(3)

Question 0 :

Question 1 :

(4)

Question 2 :

Question 3 :

Question 4 : Le fork qui suit la condition [aucune classe sélectionnée] devrait être un point de choix. Il n'y a pas de condition sur la transition qui mène à l'activité Editer classe, ce qui rend le diagramme non déterministe. L'activité Compiler une classe n'est pas une réception de signal (du moins pour l'utilisateur).

Références

Documents relatifs

8 : Production d'une tension variable dans le temps Ch. 10 : Tension continue et

Connaissances Capacités Exemples d'activités L’électron : comprendre la conduction électrique dans les métaux.. Tous les solides conduisent-ils le

N-B : il n’est pas certain que vous ayez le droit de conserver votre trousse à votre table : prévoyez donc le strict nécessaire en matière de stylos et fournitures

Ensuite,J’ai mangé à la cantine.L’après-midi, j’ai colorié Trotro , le petit âne qui va à l’école et j’ai fait

Le scénario est le suivant : un chef de gare indique qu'un train a été constitué en fournissant son numéro, ce qui initialise l'état du train et entraine une modification interne

Réalisez un diagramme de classes d'analyse pour représenter les différentes entités (acteurs, formations, demandes, avis, notes) et leurs associations dans le logiciel..

Question 0 : Le passager du véhicule peut donner une destination, demander le départ, demander l'arrêt (le véhicule s'arrête dès que possible), et demander à ce que le véhicule

Il va me prendre pour un mendiant(…) Je vais parler à ce couple, je vais m’asseoir en face de lui, puisque la place est libre, leur fais un grand sourire et reprends : et je vais