Vous êtes sur la page 1sur 3

INF 3176 : Environnement de développement avancé

Pratique:
Dr. Azanzi Jiomekong

Objectif : Le principal objectif de ce projet est de permettre aux étudiants, d'une part, de capitaliser
sur les techniques de développement acquises au cours de leurs deux premières années d'études.
D'autre part, d'utiliser des techniques de développement avancées qui seront présentées au cours de
cette conférence dans un projet réel. Ainsi, pour éviter les doublons, les étudiants utiliseront les
techniques présentées lors de cette conférence dans le projet de la conférence INF3196.
Méthodologie : La méthodologie qui sera utilisée est la méthodologie Scrum. Pour permettre aux
étudiants de maîtriser la méthodologie Scrum, les étudiants travailleront en groupes de 5 et
appliqueront les pratiques de groupe lors du travail d'équipe. Le conférencier sera le propriétaire du
produit et les étudiants désigneront le Scrum Master chaque semaine. Le conférencier évaluera la
progression du travail et fournira toutes les informations nécessaires pour aider le groupe à
améliorer ses compétences en développement d'applications mobiles.
NB : Les exercices globaux représentent plus de 20 points pour l'évaluation continue et plus de 30
points pour la pratique. Cependant, les notes des étudiants seront maintenues sur 20 pour
l'évaluation continue et sur 30 pour la pratique.
Évaluation continue /20.

Exercice 1 : ingénierie des exigences (5 pts)

Application de la pratique Scrum qui sera identifiée lors de la conférence.


Exercice 2 : ingénierie des exigences (4 pts)
1- Discutez avec le superviseur de votre projet et identifiez les exigences fonctionnelles. Les
exigences fonctionnelles décrivent ce que le système devrait faire. 2 pts
2- Identifiez les exigences non fonctionnelles en les justifiant chacune. 1 pt
3- Donnez le Product-Backlog impliquant les éléments de backlog que vous devez traiter pour
construire votre produit. 1 pt

Exercice 3 : Acteurs et cas d'utilisation (3,5 pts)

Dans cet exercice, le langage UML est utilisé pour déterminer la limite du système.
1- Étant donné l'exercice, qui sont les acteurs ? 0,5 pt
2- Donnez les cas d'utilisation classés par acteurs (pour une bonne présentation, vous devriez les
présenter dans un tableau). 0,5 pt
3- Donnez la description des cas d'utilisation en utilisant le formalisme textuel. 0,5 pt
4- Donnez la description des cas d'utilisation en utilisant des diagrammes de séquence. 0,5 pt
5- Donnez les diagrammes d'état des aspects importants de votre système. 0,5 pt
6- Établissez un tableau contenant les principales classes (suivies de leur description) nécessaires à
cet exercice. 1 pt
Exercice 4 : environnement de développement (5,5 pts)

1- Compte tenu de vos compétences dans différents langages de programmation, déterminez celui
que vous souhaitez utiliser lors de cet exercice. 0,5 pt
2- Choisissez (en justifiant) et configurez votre système d'exploitation. 0,5 pt
3- Identifiez et configurez l'environnement de développement intégré, les frameworks et les API. 1
pt
4- Proposez l'architecture DevOps pour le développement de ce jeu en justifiant votre choix. 0,5 pt
5- Configurez les outils DevOps en fonction de l'architecture proposée à la question 4. 2 pts
6- Établissez un tableau (voir le tableau ci-dessous) contenant la liste des technologies que vous
souhaitez utiliser dans votre projet, leur licence, leur équivalent open source, leur équivalent
propriétaire et la justification de votre choix.
Technologie
Licence
Équivalent open source (2)
Équivalent propriétaire (2)
Justification du choix

Exercice 4 : Conception de l'interface utilisateur (2 pts)

1- Concevez l'interface utilisateur principale. 1 pt


2- Concevez les autres interfaces utilisateur. 1 pt
Exercice 5 : Conception logicielle (4 pts)
1- Proposez un diagramme de classes. 0,5 pt
2- Proposez des diagrammes d'objets (justifiez chaque diagramme d'objet que vous proposez).
3- Étant donné les diagrammes de classes et d'objets, proposez un diagramme de package.
4- En considérant que nous utilisons une architecture monolithique, proposez cette architecture. 1 pt
5- Identifiez et décrivez les principaux algorithmes qui seront utilisés lors du développement de ce
projet.
Pratique /30

Exercice 6 : développement (14 pts)

1- Compte tenu des exercices précédents, développez votre produit - développement + algorithme
(5 + 5 = 10 pts)
2- Élaborez les tests fonctionnels. 1 pt
3- Testez votre programme. 1 pt
4- Proposez en justifiant la licence logicielle que vous souhaitez appliquer à votre produit (NB : une
analyse de composition logicielle peut être utilisée pour justifier votre réponse). 1 pt
5- Évaluez votre système à l'aide du modèle d'acceptation de la technologie. 1 pt
Exercice 8 : Architecture microservices (11 pts)

Étant donné que l'application peut croître chaque jour et devenir très importante, pour éviter les
limitations de l'architecture monolithique, vous avez décidé d'adopter l'architecture microservices.
Cette architecture nous permet de structurer l'application comme une collection de services
hautement maintenables, testables et faiblement couplés. Cela permet la livraison rapide, fréquente
et fiable de l'application.
1- Donnez cinq raisons de passer à l'architecture microservices (si aucune raison, expliquez).
2- Établissez un tableau contenant les différents services, leur description et la justification du
choix.

Microservice Description Justification

3- Utilisez la question 2 pour proposer l'architecture microservices de l'application.


4- Utilisez la question 3 pour proposer une architecture de joueurs déploiement.

Exercice 9 : Ingénierie dirigée par les modèles (10 pts)

Enfin, vous avez décidé de donner la possibilité aux de concevoir et de générer automatiquement
cette application.
1- Proposez le modèle correspondant (DSL).
2- Identifier les cas d'usage de la modélisation et de l'environnement de génération 3- Proposer l'UI
pour la modélisation de votre application
4- Proposer le backend utilisé pour la génération du nouveau produit
5- Testez votre application

Vous aimerez peut-être aussi