François Lévesque
Directeur technique chez Witify
Les grandes idées méritent une exécution hors pair. Chez Witify, j'ai eu la chance de m'impliquer dans une panoplie de projets logiciels. Certains étaient simples, d'autres plus élaborés. Chaque projet, c'était une nouvelle aventure, avec son lot de défis et d'apprentissages. Et si j'ai bien retenu une chose, c'est que peu importe la taille ou la complexité du projet, une bonne planification, ça change tout !
Au début, j'étais un peu comme tout le monde, je me disais : «Pourquoi perdre du temps en planification quand on peut directement se lancer et commencer à créer quelque chose de concret pour le client ?». Mais, avec le temps, j'ai compris que cette étape qu'on pourrait croire superflue est en fait la clé de la réussite d'un projet.
Travailler avec une équipe qui maîtrise l'art de la définition des requis, ça peut faire une grande différence. Ça permet non seulement de clarifier et d'affiner l'idée de départ, mais aussi de dénicher les meilleurs moyens pour la réaliser efficacement.
Au départ, lorsqu'on commence à concrétiser une nouvelle idée, la liste d'éléments inconnus est tellement grande qu'il est difficile d'évaluer l'envergure du travail nécessaire. Cibler les risques potentiels est ardu. Planifier la séquence d'étapes idéale pour atteindre les objectifs est hasardeux.
La définition de requis permet de raffiner une idée, tout en trouvant les meilleurs moyens pour l'exécuter le plus efficacement possible.
Par exemple, un client est venu nous voir pour nous demander une application mobile, mais lorsque nous avons commencé à creuser un peu plus et à faire plus de recherches, nous avons découvert que la création d'un site web PWA était une meilleure option.
C'est un exercice mutuellement bénéfique, à la fois pour le client et l'agence.
Du point de vue de l'agence de développement, cela garantit la sélection de la plateforme idéale et assure que chaque fonctionnalité développée est alignée avec les priorités du client.
Du point de vue du client, il obtient un aperçu complet de son idée de projet. Grâce à une expertise externe, il peut également raffiner ses besoins technologiques. Une étape cruciale pour dresser un échéancier réaliste permettant d'atteindre ses objectifs tout en respectant son budget.
Le processus de définition de requis commence par une phase Découverte. C'est une séquence de réunions de consultation et de réflexions au cours desquelles les idées peuvent être explorées en détail avec le client. C'est une aussi une période cruciale pour garder le cap sur les objectifs d'affaire prioritaires.
Pendant la phase de découverte, il est crucial de parler le même langage. Une agence est experte dans son domaine en développement logiciel, mais le client est expert dans son domaine d'affaire précis. Il faut établir un vocabulaire commun. Le client doit comprendre une partie du jargon logiciel, et l'agence doit bien comprendre le jargon du client. Cet alignement est crucial pour éviter des déformations au niveau des requis
Une fois le vocabulaire commun défini et la liste des besoins listée, vient le temps de rédiger les «User Stories». Il s'agit de courtes phrases décrivant de façon succincte ce qu'on utilisateur du logiciel devrait être capable de faire. Il doit contenir le sujet (qui fait l'action?), le contexte (quand?) et l'action (quoi?). Voici quelques exemples :
Les users stories se concentrent surtout sur les objectifs et les tâches qui doivent être réalisées dans le logiciel. Elles ne vont pas expliquer comment elles seront réalisées. Ça sera plutôt le rôle des wireframes et maquettes.
Une fois les User Stories rédigées, une exploration visuelle est essentielle. Le client doit voir de quoi pourrait avoir l'air son idée pour arriver à la raffiner d'avantage avec l'agence. Selon la complexité du projet, l'agence va produire des itérations de Wireframes, Maquettes et/ou prototypes interactifs.
On commence généralement avec des Wireframe, qui sont des maquettes à faible résolution, plus rapides à dessiner et modifier pour itérer plus rapidement, sans avoir à se soucier du design et à l'image de marque.
Lorsque les pages, actions, comportements sont raffinés avec les wireframes. Il peut également être pertinent de concevoir des maquettes à plus haute résolution. Cela est particulièrement utile pour des projets où une expérience utilisateur (UX) est prioritaire, comme des plateformes grand public.
Si les maquettes ont été conçues avec un outil comme Figma, il est ensuite possible d'ajouter des interactions. Cela permet de tester d'autres flux logiques non visibles sur une maquette statique. Citons en exemple le changement de page, l'ouverture d'un popup, l'apparition du tooltip, etc.
L'ensemble de ces documents permettent de raffiner une idée à un niveau hautement supérieur. Très souvent, un simple wireframe met en évidence des éléments critiques qui n'avaient pas été considérés pendant la phase des User Stories.
La définition des requis n'est donc pas linéaire, mais bel et bien circulaire et itérative. Les maquettes alimentent le vocabulaire commun et les User Stories, et vice-versa.
Sans une planification de requis rigoureuse, les développeurs doivent deviner ce que le client souhaite. Le risque est énorme, une équipe de développeurs peuvent programmer une architecture logicielle complète pendant des semaines pour finalement se rendre compte que le besoin avait mal été compris lors d'une première présentation du travail avec le client.
La planification de requis simplifie et accélère toutes les phases du développement. Les développeurs ont en main toute l'information nécessaire pour débuter un projet de la bonne façon, avec une architecture adaptée et suffisamment flexible dès le début.
Après le développement, une phase de test permet de s'assurer que l'ensemble du système fonctionne correctement et répond aux exigences du projet. Encore une fois, une rédaction minutieuse des requis accélère cette phase.
Une fois les tests complétés, le logiciel peut être mis en opération.
Mais cela ne veut pas dire qu'il faut s'arrêter là, car l'agence peut également fournir une assistance et une maintenance continues. C’est la phase où le rôle de partenaire stratégique prend toute son importance pour venir supporter l’entreprise et le projet sur le long-terme.
À la suite du déploiement de votre projet, une agence peut vous accompagner pendant tout le cycle de vie et l’évolution du logiciel. Cette étape de développement continu touche autant à la gestion du produit, au développement ou au raffinement de certains modules.
Une agence vous guide dans la conception d’une roadmap long terme et la compréhension des nouveaux enjeux technologiques. Chaque projet est unique, cette phase doit donc être adaptée au besoin du client et peut prendre plusieurs formes.
Planifier les requis d'un projet logiciel, ça peut être un vrai défi, mais vous n'êtes pas seul ! Chez Witify, on est là pour transformer cette étape en un parcours fluide et réussi. Vous avez des questions ou des idées à partager ? Contactez-nous et lançons ensemble votre projet vers le succès.
François Lévesque
Directeur technique chez Witify
François Lévesque est cofondateur et directeur technique chez Witify. Spécialisé dans la gestion et le développement de projets logiciels et web complexes, il se consacre depuis 8 ans sur le développement de ERP, Intranets et CRM sur-mesure. Au fil de son parcours, il a développé une expertise approfondie en génie logiciel, se traduisant par une sensibilité particulière à la traduction des objectifs d'affaires en requis techniques précis. Ayant une vaste expertise en analyse et visualisation de données, François a également mené avec succès de nombreux projets de données avec des institutions gouvernementales.