User Tools

Site Tools


2018-2019:s3:concprogobjet:td:td2

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
2018-2019:s3:concprogobjet:td:td2 [2018/09/07 18:48]
blay [Responsabilités : Analyse et développement de la partie Métier]
2018-2019:s3:concprogobjet:td:td2 [2018/09/07 21:32] (current)
blay [Evolutions]
Line 11: Line 11:
    * Un administrateur demande à créer un forum en précisant le nom du forum. Si un forum avec ce nom existe déjà, il ne se passe rien.    * Un administrateur demande à créer un forum en précisant le nom du forum. Si un forum avec ce nom existe déjà, il ne se passe rien.
    * Un administrateur peut demander s'il existe un forum de nom donné.    * Un administrateur peut demander s'il existe un forum de nom donné.
-   * Un administrateur peut lister((Cela veut dire obtenir la liste des noms de forum, pas les afficher!)) les noms des forum existants qu'il a créé. +   * Un administrateur peut lister (Cela veut dire obtenir la liste des noms de forum, pas les afficher!) les noms des forums ​existants qu'il a créé. 
-   * Un membre demande à créer un canal dans un forum en précisant le nom du canal. Si le canal existe déjà, il ne se passe rien. Par défaut un canal ne peut pas contenir plus de "​MAX_MESSAGES",​ mais il est possible de modifier le nombre maximum de messages autorisés. ((Comment gérez-vous le dépassement du nombre de messages alors que rien de nous ai dit dans ce cas?)) +   * Un membre demande à créer un canal dans un forum en précisant le nom du canal. Si le canal existe déjà, il ne se passe rien. Par défaut un canal ne peut pas contenir plus de "​MAX_MESSAGES",​ mais il est possible de modifier le nombre maximum de messages autorisés. ((Comment ​//gérez-vous// le dépassement du nombre de messages alors que rien de vous est dit dans ce cas?)) 
-   * Un membre demande à créer un canal à messages ​de type "​brèves" ​associée ​à un forum en précisant le nom du canal et la taille maximum des messages, par exemple 140 caractères. Si un canal de même nom existe déjà, il ne se passe rien.+   * Un membre demande à créer un canal de "​brèves" ​(Messages) associé ​à un forum en précisant le nom du canal et la taille maximum des brèves, par exemple 140 caractères. Si un canal de même nom existe déjà, il ne se passe rien.
    * Un producteur poste un message dans un forum et //​éventuellement//​ vers  un canal spécifique du forum, en précisant leurs noms (forum et canal) et le contenu du message. En l'​absence de canal, le message est posté dans le //canal par défaut//.    * Un producteur poste un message dans un forum et //​éventuellement//​ vers  un canal spécifique du forum, en précisant leurs noms (forum et canal) et le contenu du message. En l'​absence de canal, le message est posté dans le //canal par défaut//.
-   * Un consommateur peut demander à lister((obtenir la liste des messages)) ​des messages qui se trouvent dans un canal sur un forum.  +   * Un consommateur peut demander à lister((obtenir la liste des messages)) ​les messages qui se trouvent dans un canal sur un forum.  
-   * Un consommateur peut demander à lister tous les messages qui se trouvent sur le forum, dans ce cas tous les messages dans toutes ​le canaux lui sont retournés. +   * Un consommateur peut demander à lister tous les messages qui se trouvent sur le forum, dans ce cas tous les messages dans tous le canaux lui sont retournés. 
-   * un canal ne peut pas être associée ​à plusieurs ​forum. Un forum peut évidemment avoir plusieurs canaux.+   * un canal ne peut pas être associé ​à plusieurs ​forums. Un forum peut évidemment avoir plusieurs canaux.
  
 <​html>​ <​html>​
Line 28: Line 28:
 </​html>​ </​html>​
  
-<note tip>Pour vous aider vous pouvez dans un premier temps, ne pas tenir compte ​de le canal de messages ​par défaut et n'en tenir compte qu'à la fin du TD en identifiant bien les impacts sur le modèle et sur le code, en particulier avec les responsabilités qui en résultent.</​note>​+<note tip>Pour vous aider vous pouvezdans un premier temps, ne pas tenir compte ​du canal  par défaut et n'en tenir compte qu'à la fin du TD en identifiant bien les impacts sur le modèle et sur le code, en particulier avec les responsabilités qui en résultent.</​note>​
  
   - Quels modèles utilisez-vous pour analyser le problème ?   - Quels modèles utilisez-vous pour analyser le problème ?
   - Dans vos diagrammes de séquences, faîtes bien apparaître les interfaces graphiques et les contrôleurs mais dans les diagrammes de classe concentrez vous uniquement sur la partie métier dans un premier temps.  ​   - Dans vos diagrammes de séquences, faîtes bien apparaître les interfaces graphiques et les contrôleurs mais dans les diagrammes de classe concentrez vous uniquement sur la partie métier dans un premier temps.  ​
-  - Qui est responsable de retrouver ​un forum à partir de son nom ? un canal de messages? (pattern ​expert)+  - Qui est responsable de retrouver à partir de son nom un forum? un canal de messages? (Pattern ​expert)
   - Qui est responsable de créer un forum? un canal de message? pourquoi? ​ (Pattern créateur)   - Qui est responsable de créer un forum? un canal de message? pourquoi? ​ (Pattern créateur)
   - Qui est responsable de créer un message ? pourquoi? (Pattern créateur)   - Qui est responsable de créer un message ? pourquoi? (Pattern créateur)
Line 43: Line 43:
       - Je crée un forum "​NiceInformation"​       - Je crée un forum "​NiceInformation"​
       - Je crée une  canal "​Circulation"​ sur le forum "​NiceInformation"​       - Je crée une  canal "​Circulation"​ sur le forum "​NiceInformation"​
-      - Je crée un canal de type Breves "​@dept-info-iut-Nice"​ qui autorise uniquement des messages de 140 caractères.+      - Je crée un canal de Breves "​@dept-info-iut-Nice"​ qui autorise uniquement des messages de 140 caractères.
       - Je poste un message "​Embouteillage"​ dans le canal "​Circulation"​ du forum "​NiceInformation"​       - Je poste un message "​Embouteillage"​ dans le canal "​Circulation"​ du forum "​NiceInformation"​
       - Je poste un message "​Nouveau rond point" dans le canal "​Circulation"​ du forum  "​NiceInformation"​ ((pareil pour le forum "​AntibesInformation",​ ça passe? ))       - Je poste un message "​Nouveau rond point" dans le canal "​Circulation"​ du forum  "​NiceInformation"​ ((pareil pour le forum "​AntibesInformation",​ ça passe? ))
       - Je lis les messages qui se trouvent dans le canal "​Circulation",​ i.e. je récupère les messages.       - Je lis les messages qui se trouvent dans le canal "​Circulation",​ i.e. je récupère les messages.
-      - Je demande à effacer les messages ​de le canal  "​Circulation"​ du forum  "​NiceInformation"​ ((pareil pour le forum "​AntibesInformation",​ ça passe? ))+      - Je demande à effacer les messages ​du canal  "​Circulation"​ du forum  "​NiceInformation"​ ((pareil pour le forum "​AntibesInformation",​ ça passe? ))
       - Je poste un message "​SoireeIUT"​ sur le forum "​NiceInformation"​       - Je poste un message "​SoireeIUT"​ sur le forum "​NiceInformation"​
-      - Je poste un message "​WEI ​13 octobre départ à 16h apres les cours  de ..." dans le canal "​@dept-info-iut-Nice"​ +      - Je poste un message "​WEI ​... apres les cours  de ..." dans le canal "​@dept-info-iut-Nice"​ 
-      -  Yoann plus bavard poste un message de plus de 140 caractères ​ " N'​oubliez pas d'​emmener ...... et de choisir votre filleul ....." dans le canal "​@dept-info-iut-Nice"​... que se passe-t-il+      -  Yoann plus bavard poste un message de plus de 140 caractères ​ " N'​oubliez pas d'​emmener ...... et de choisir votre filleul ....." dans le canal "​@dept-info-iut-Nice"​... que se passe-t-il ​?
       -  J'​attends 2s (Thread.sleep(2000));​       -  J'​attends 2s (Thread.sleep(2000));​
       - Je poste un message "​SoireeIntegrationIUT Choisissez vos parrain...."​ sur le forum "​NiceInformation"​       - Je poste un message "​SoireeIntegrationIUT Choisissez vos parrain...."​ sur le forum "​NiceInformation"​
Line 115: Line 115:
  
 ===== Architecture : Persistance simplifiée ===== ===== Architecture : Persistance simplifiée =====
-1- On désire sauvegarder l'​ensemble des forum à chaque fin d'​exécution du programme principal et recharger l'​état des forum à chaque lancement du programme principal.+1- On désire sauvegarder l'​ensemble des forums ​à chaque fin d'​exécution du programme principal et recharger l'​état des forum à chaque lancement du programme principal.
  
 Vous pouvez utiliser le {{:​2015_2016:​s3:​concprogobjet:​td:​memoire.java|code suivant}}. Pour l'​utiliser il suffit que vos classes "​implements Serializable'​. Vous pouvez utiliser le {{:​2015_2016:​s3:​concprogobjet:​td:​memoire.java|code suivant}}. Pour l'​utiliser il suffit que vos classes "​implements Serializable'​.
Line 136: Line 136:
 ===== Evolutions ===== ===== Evolutions =====
  
-   - Dans certaines boites ​dès qu'un message est lu, il est effacé. Modifier votre code pour permettre la création de telles boites. Attention, les autres canaux sont toujours utilisables. Utilisez bien les tests unitaires, pour vérifier que vous ne "​cassez"​ pas vos codes. Comment votre modèle est-il modifié? +   - Dans certains canaux ​dès qu'un message est lu, il est effacé. Modifier votre code pour permettre la création de tels canaux. Attention, les autres canaux sont toujours utilisables. Utilisez bien les tests unitaires, pour vérifier que vous ne "​cassez"​ pas vos codes. Comment votre modèle est-il modifié? 
-   - Pour certains ​forum, lorsque l'on poste un message en donnant comme nom de boite "​*",​ le message est posté dans toutes ​les boites. Modifier votre code pour tenir compte de ce nouveau besoin. ​+   - Pour certains ​forums, lorsque l'on poste un message en donnant comme nom de canal "​*",​ le message est posté dans tous les canaux. Modifier votre code pour tenir compte de ce nouveau besoin. ​
    - Analyser les dépendances entre vos classes.    - Analyser les dépendances entre vos classes.
  
2018-2019/s3/concprogobjet/td/td2.1536338915.txt.gz · Last modified: 2018/09/07 18:48 by blay