Académique Documents
Professionnel Documents
Culture Documents
Contexte
On vous demande de faire le moteur métier pour gérer un site de blog. Un autre membre de votre équipe de
développement se charge de la partie présentation.
• Lecteur
• Auteur
• Visiteur anonyme
• Administrateur
Un membre peut vouloir suivre l’activité d’une publication. Pour ce faire il lui est donc possible de s’inscrire à
un article publié. Dès que ledit article est mis à jour le membre doit être notifié. Notez qu’un visiteur
anonyme n’a pas accès à cette fonctionnalité.
Pour un article donné, seul l’auteur ou un administrateur peut le modifier ou l’effacer. Notez que les
personnes suivant l’article doivent être notifiées de la suppression de l’article.
Toute publication d’un article fait l’objet d’un passage par l’équipe d’administration qui comptabilise les
informations. Il en est de même pour la publication de commentaires. Important : ce processus est
automatisé, pas d’intervention manuelle. Par exemple :
- Lors de la publication d’un article un compteur global de tous les articles dans le système est
incrémenté.
Travail à réaliser
Il vous faut concevoir l’architecture de ce système en utilisant des designs patterns et concepts objets :
Eléments à rendre
1. Le diagramme de classe avec les concepts objets et les 2 patterns identifiés (4 points)
2. Une explication écrite expliquant l’utilisation de chaque pattern. (4 points)
➔ Expliquer et argumentez vos choix.
3. Le code source (en java obligatoire)
a. Version de Java : Quelle version de Java avez-vous utilisé ?
b. Compilation : Votre code doit compiler sans erreur (2 points)
c. Exécution : Votre code doit s’exécuter correctement (2 points)
d. Codage : Les patterns doivent-être correctement implémentés (4 points)
4. Classe de test (4 points, vous perdez 1 point pour chaque élément manquant) : Une classe (ou script)
de test exécutable (méthode main) qui utilise votre système de blog. Votre script doit effectuer les
actions suivantes :
a. Créer un auteur
b. Créer et publier un article
c. Créer un lecteur
d. Activer le suivi de la publication pour le lecteur
e. Editer la publication
f. Vérifier que le lecteur est bien notifié de la modification
g. Imprimer les données récupérer par les administrateurs lors de la publication des articles