Analyser les besoins du clients

Le but


Ici, nous allons apprendre à comprendre, analyser et répondre aux attentes de notre clients avec un cas concret que j'ai du réaliser avec un groupe de camarades lors d'un projet universitaire. 

Un petit point définition


Avant de commencer l'analyse des besoins du clients voici certains termes qui sont communément utilisé lors de la réalisation de projet informatique.

  • Le Product Owner, PO ou Maitre d'Ouvrage, MOA : c'est la personne qui exprime le besoin et commande le logiciel.
  • Le Scrum Master, SM ou Maitre d'Oeuvre, MOE : c'est la personne qui gere le developpement du projet du commandé par le PO.
  • Image de MOW





    Le jeu de cartes que nous avons modéliser s'appelle MOW, ce derier est un jeu ou le principes est simple, avoir le moins de mouches possibles dans son étable. Pour cela, il faut éviter de ramasser le troupeau de vache qui se forme au fur et à mesure du jeu. 

  • Le jeu, dans la version que vous aurez à développer, se joue entre 3 et 5 joueurs. Une partie de jeu se compose de plusieurs manches. Au début de chaque manche, chaque joueur pioche, en main, 5 cartes correspondant à des vaches numérotées de 1 à 15. Les cartes « vache » peuvent être de différentes couleurs en fonction du nombre de mouches qui accompagnent la vache (verte = 0 mouche, jaune = 1 mouche, orange = 2 mouches et rouge = 3 mouches). Les 48 cartes sont réparties de la manière suivante : -15 cartes « vache » vertes numérotées de 1 à 15 -13 cartes « vache » jaunes numérotées de 2 à 14 -11 cartes « vache » orange numérotées de 3 à 13 -3 cartes « vache » rouges numérotées de 7, 8 et 9 -6 cartes spéciales Chacun leur tour, dans le sens du jeu, les joueurs déposent une vache de leur main dans le troupeau au centre de la table. La seule contrainte est que la vache déposée doit avoir un numéro inférieur à la vache ayant le plus petit numéro du troupeau ou un numéro supérieur à la vache ayant le plus grand numéro du troupeau. S’il ne peut pas jouer (ou s’il ne veut pas jouer), le joueur courant doit intégrer le troupeau à son étable. Puis il démarrera un nouveau troupeau.

    On notera que l’étable d’un joueur n’est pas la main du joueur. Chaque fois qu’un joueur dépose une carte de sa main dans un troupeau, il complète sa main à 5 cartes depuis la pioche (sauf si celle-ci est vide). La manche se termine quand un troupeau est rentré dans l’étable d’un des joueurs et que la pioche est vide. Les cartes que les joueurs ont alors en main, intègre leur propre étable. Chaque joueur fait alors la somme des mouches contenues dans son étable et les ajoute aux mouches des manches précédentes. Si un joueur atteint les 100 mouches (sur le cumul des manches), le jeu s’arrête et le joueur ayant le moins de mouches gagne la partie. Sinon aucun joueur n’atteint les 100 mouches, on commence une nouvelle manche avec le joueur ayant cumulé le plus de mouches lors des manches précédentes.

    Attention, en plus des 4 couleurs de cartes présentées précédemment, une 5ème couleur de carte « vache » existe, il s’agit des cartes spéciales qui sont accompagnées de 5 mouches. On trouve les cartes spéciales suivantes : -1 carte « vache » de valeur 0 : la plus petite des valeurs -1 carte « vache » de valeur 16 : la plus grande des valeurs -1 carte « vache » acrobate de valeur 7 : doit être posée sur une carte « vache » de valeur 7 déjà présente dans le troupeau -1 carte « vache » acrobate de valeur 9 : doit être posée sur une carte « vache » de valeur 9 déjà présente dans le troupeau -2 cartes « vache » resquilleuses sans valeur : chacune d’elle doit être placée entre deux cartes « vache » n’ayant pas de numéro consécutif. En plus de leur capacité spéciale qui permet de jouer ses vaches dans des situations où le joueur serait normalement bloqué, lorsqu’un joueur joue une carte spéciale, il peut décider de changer le sens du jeu (avant de compléter sa main). Pour plus d’information sur le jeu, vous pourrez regarder la vidéo explicative des règles du jeu. Attention, cette vidéo présente toutes les règles (version « 2 joueurs » et version « 6 à 10 joueurs ») ce qui introduit de nouvelles séquences de jeu qu’on ne prendra pas en compte dans notre programme (par exemple les cartes spéciales roses et le symbole pour désigner le joueur suivant). La vidéo est disponible sur videogregles.net.

  • Le product owner avant de contacter une société de développement va essayer de trouver des potentiels clients et de trouver un de leurs besoins. Il pourra alors se lancer dans le développement d'une application répondant aux besoins de son clients / utilisateurs. Pour cela, le product owner va donner un cahier des charges que la société acceptera ou non. Si elle l'accepte, la société retournera au product owner ses spécifications de développement.

    Le cahier des charges du Product Owner

    Dans notre cas, notre product owner était notre enseignant, monsieur Gaëtan Rey. Son cahier des charges était le suivant :

    • Informatiser une version de MOW où les joueurs différents joueurs se retrouve au tour d'une table interactive avec des appareils personnels pour jouer une partie. La table représentera le plateau de jeu.
    • Les appareils des différents joueurs communiqueront en réseau non chiffré en passant des chaines de caractère en suivant un protocole précis.
    • Développer une intelligence artificielle.

    La réponse au cahier des charges, nos Spécifications

    De là, nous avons construit nos spécifications pour répondre à ce cahier des charges. Nos spécifications sont les suivantes :

    • En ce qui concerne la partie réseau, nous l'implémenterons en suivant les protocoles du product owner.
    • En ce qui concerne les joueurs, nous avons pensé que le type d'appareil le plus adapté à cette situation sont les smartphones. Chaque joueur pour sortir sont smartphone, se connecter à un serveur web (qui sera lancé sur une machine) via un URL. Les joueurs pourront donc se connecter facilement et rapidement à la partie sans avoir besoin de sortir d'ordinateur.
    • En ce qui concerne la table de jeu, nous avons pensé à un design visible à 360 degrès pour que tous les joueurs présents autour de la table puissent lire l'interface facilement. Cette dernière est en forme de cercle que nous pouvons orientée à l'aide de flèche.
    • En ce qui concerne l'intelligence artificielle, cette dernière sera à part de la table et se connectera comme un joueur réel. Il est aussi possible de faire se connecter le bot automatiquement.

    Une fois c'est spécification faite, le product owner accepte ou non ces spécifications. S'il les accepte, nous pouvons passer au cycle de développement.

    Attention : Ici nous avions un cahier des charges assez libre et nous avons pu faire ce que nous voulions mais cela n'est pas toujours le cas. Il faut donc toujours faire attention aux exigences du clients et lui demandé si cela lui convient même si ce que vous avez fait est minime (comme un changement de type de bouton...).

  • Voici une liste de conseil à appliquer pour que vos projets se déroulent au mieux. Je ne dis pas que cela est essentiel mais ces points peuvent vous aider.

    • Bien préparer le projet en amont à l'aide de méthode de gestion de projet pour :
      • Analyser et Détecter les taches et lots.
      • Prévoir des dates pour les livrables et s'y tenir au maximum.
      • Planifier avec un diagramme de GANTT.
      • Prévoir le déroulement des tâches et lots à l'aide d'un diagramme de PERT.
      • Ne pas oublier que l'intégration prend ÉNORMÉMENT de temps, il ne faut pas sous-estimer cette étape.

    • En début de projet, effectuer une conception calmement sans se précipiter dans la programmation.

    • Durant le projet, COMMUNIQUER. Communiquer permet de :
      • Savoir les différents problèmes. Les problèmes sont toujours présents dans un projet, il ne faut donc pas les cacher sous peine de nuire au projet.
      • Se mettre d'accord sur des détails qui aurait échappé lors de la conception.
      • Se mettre d'accord sur des problèmes de gestion de projet.
      • Se soutenir entre les différents membres de l'équipe.

    • Juste avant la fin du projet,
      • Ne pas sur-réagir, il faut réussir à rester calme et à retenir son stress.
      • Bien dormir même s'il reste beaucoup de travail à effectuer rapidement. Si une personne n'est pas correctement reposée, elle ne travaillera pas correctement.
      • Se soutenir encore plus que durant le projet.

    • À la fin du projet, fêter cela avec l'équipe, dormir et recommencer un nouveau projet.

    J'espère que ces conseilles pourront vous aider à ne pas vous faire surprendre lors de vos différents projets.