Quiz
Transcription
Quiz
1I2AC1 : Génie logiciel et Conception par objet Quiz Régis Clouard [email protected] ENSICAEN 14050 Caen Quiz cours 1 1) De quand date le génie logiciel ? 2) Citez des causes d'échec des logiciels ? 3) Qu'est ce que le génie logiciel ? 4) Sur quoi se base le génie logiciel ? 5) Qu'est ce que UML ? 2 Quiz cours 2 3 1) Qu'est ce que le principe d'encapsulation ? 2) Quel est l'intérêt du principe d'encapsulation ? 3) Qu'est ce qu'un constructeur ? 4) Quelle est la représentation UML de la classe X ? 5) Quelle est la représentation UML de l'instance x de la classe X ? 6) Dans un code Java, à quoi correspondent les identificateurs suivants Identificateur identificateur.identificateur() identificateur.identificateur Identificateur() Quiz cours 3 1) A quels types de relation correspondent les représentations UML ? A B A B A B A B A B 2) Quel type d’association existe entre ces deux classes ? Étudiant – Professeur Étudiant – Salle de cours Page – Figure géométrique Maison – Pièce 4 5 Quiz cours 3 (suite) 3) Soit le graphe d'héritage et les déclarations suivantes : A a= new A(); B b= new B(); A c= new B(); A a() B b() Indiquez quand le compilateur génère une erreur : 1) 3) 5) 7) 9) a.a(); √ b.a(); √ c.a(); √ ((B)c).a(); √ ((B)a).a(); χ 2) 4) 6) 8) a.b(); χ b.b(); √ c.b(); χ ((B)c).b(); √ 6 Quiz cours 4 1) On suppose le lien b déclaré dans A ainsi : B b = new D() Quelle méthode est exécutée à l'appel des instructions suivantes ? A 1) b.b2() ? 2) b.b2(5) ? 3) ((C)b).b2() ? 4) ((B)b).b1() ? 5) ((B)b).b2(5)) ? 2) On suppose le lien b de A : B b = new C() 1) b.b2() ? 2) b.b2(5) ? b B +b1() +b2() +b2(int a) C +b1() +b2(int a) D +b2() 7 Quiz cours 4 (suite) Soit le schéma ci-contre 3) Dans la méthode D::d() est-il possible d'accéder à : 1) b() √ 2) c() √ 3) data χ 1) Dans le corps de la méthode A::a() est-il possible d'accéder à : 1) b.b() √ 2) b.e() χ 3) ((C)b.e() √ 4) suivant.a() √ A -b <<interface>> B -a() +b() -suivant C - data:int +b() #c() +e() D -d() Quiz cours 5 1) Qu'est ce qu'un paquet ? 2) À quoi sert un diagramme des cas d'utilisation ? 3) Quelle différence entre un diagramme de séquence et un diagramme de communication ? 4) Quel diagramme permet de décrire comment est envisagé le déroulement d'un cas d'utilisation ? 5) Quel diagramme permet de décrire un algorithme choisi pour réaliser une méthode complexe ? 6) Qu'est qu'un atelier de génie logiciel ? 8 Quiz cours 5 (suite) 9 7) Je souhaite développer une application où la synchronisation entre plusieurs composants est primordiale. Quel diagramme utiliser pour la modélisation ? 1) Que permet de représenter le diagramme de composants ? 2) Dans quel cas, le diagramme de déploiement est-il utile ? 3) Comment représenter en UML des informations qu'UML ne définit pas ? 4) À quoi servent les stéréotypes ? 5) À quoi sert un diagramme d'objets ? Quiz cours 6 10 1) Citer deux métriques de la qualité d'un logiciel. 2) Que mesure la cohésion ? 3) Que mesure le couplage ? 4) Pourquoi faut-il éviter d'ajouter autant que faire ce peut des accesseurs et mutateurs dans la liste des services d'une classe ? 5) Dans le principe «programmer pour une interface et non pour une implémentation » que signifie interface ? 6) Comment peut-on l'implémenter en Java ? 7) Dans un processus de réutilisation, pourquoi faut-il privilégier la composition à l'héritage ? Quiz cours 7 Qu'est ce que le cycle de développement en cascade ? Quelles Qu'est 11 sont les limites de ce modèle ? ce qui caractérise le cycle de développement agile ? Quels sont les avantages du cycle de développement agile ? Décrire les étapes d'une itération agile Quiz cours 8 Pourquoi dans la notion de code propre cherche t-on à supprimer les commentaires ? Quels sont les commentaires qu'il faut garder ? Quelles sont les contreparties à la suppression des commentaires ? Comment nomme t-on les paquets en Java ? 12 Quiz cours 9 A quoi servent les tests ? Donnez la pyramide des tests (du bas vers le haut) ? Indiquez ce qu'est un test de type boîte noire ? Indiquez ce qu'est un test de type boîte blanche ? Que signifie F.I.R.S.T pour la qualité d'un test ? 13 Quiz cours 10 1) Que signifient les initiales TDD ? 2) Quel est l'intérêt du TDD 3) Comment se déroule une étape du TDD ? 4) Pourquoi 14