Point de vue

Spécification par l’exemple

Une bonne pratique pour le sourcing des projets de développement

La conduite d’appel d’offres pour un projet de développement applicatif passe nécessairement par une expression des besoins fonctionnels dont la lisibilité est essentielle. A ce stade on ne parle en général pas de spécification, mais certaines pratiques de spécification agile sont applicables à la rédaction d’un cahier des charges et permettent de mieux cadrer le projet qui en découle.

La spécification par l’exemple

L’essor des méthodes agiles dans le monde du développement s’est accompagné de nombreuses pratiques qui visent à réduire le délai entre la spécification et la validation en utilisant comme levier le recours à un exemple pour expliquer le comportement complexe d’une application. Les pratiques de Test Driven Development, Acceptance Driven Development, Behavior Driven Development et autres pratiques utilisant ce même levier peuvent être regroupées sous le terme générique de « spécification par l’exemple ».

La spécification par l’exemple est une réponse au principe d’incertitude selon lequel un utilisateur ne connait pas son besoin tant qu’il n’a pas testé une première version de l’application. Afin de proposer rapidement cette première version on utilise un processus de développement piloté par la notion de « User Story », une formalisation de chaque besoin qui passe individuellement par des étapes de Discussion, Décision, Développement et Démonstration.

Ce processus est en général associé à des solutions permettant de réaliser une spécification exécutable, reliée au code source de l’application et à des tests automatisés. Le résultat est une spécification fiable, sans ambigüité, facilement maintenable et facilitant la livraison continue des fonctionnalités de l’application.

Une autre pratique intéressante est celle de la « balle traçante », qui consiste à mettre en œuvre une fonctionnalité de bout en bout dès le démarrage du projet. Cette mise en œuvre permet de valider les éléments de conception graphique et ergonomique qui permettent d’éclairer la suite des développements.

Application au sourcing

L’intégration de principes agiles dans le travail de conception et définition du cahier des charges permet de valider très en amont les éléments de conception graphique et d’ergonomie. La spécification par l’exemple et le prototypage dynamique permettent de cadrer les attentes et d’assurer une meilleure compréhension de la part des soumissionnaires.

L’intégration dans un cahier des charges des principes de spécification agile peut également se traduire par une sorte d’intégration horizontale qui étend le périmètre classique de ce type d’exercice.

Le débordement amont sur l’étude d’opportunité permet de se concentrer sur les enjeux pour challenger les besoins, de la même façon que la spécification par l’exemple se concentre sur les besoins pour challenger les solutions éventuellement préconçues. La part d’étude d’opportunité permet de prioriser sinon revoir certains éléments clés du périmètre fonctionnel et peut avoir un grand intérêt dans la rédaction du cahier des charges mais surtout dans la stratégie de sourcing avec la possibilité de revoir le lotissement et le mode d’attribution des lots. Elle peut également permettre de repréciser les processus fonctionnels clés qui sont rarement bien définis.

Pour aller plus loin, il est également possible de poursuivre l’intégration horizontale jusqu’à une part de réalisation, avec un découpage HTML / CSS de la maquette, des modèles de rapports voire une définition précise du modèle de données. Dans certains cas ce débordement en aval peut être pertinent, notamment pour réduire les coûts de développement en extrayant la couche de présentation du périmètre de la consultation, couche sur laquelle toutes les sociétés de développement ne sont pas nécessairement les plus expertes.

Points d’attention

Si l’application au sourcing des pratiques de spécification agile  et d’intégration horizontale a de l’intérêt dans certains cas, il est important de gérer le processus d’appel d’offres en conséquence. Le choix du panel de soumissionnaires doit être fait de façon cohérente avec le périmètre et il est conseillé de détailler de façon précise les marges de manœuvre laissées aux fournisseurs. Sans nécessairement mettre en œuvre un RFI, une étape de cadrage, explication et confirmation d’intention de répondre permet d’éviter trop de questionnements en cours de RFP.