Les expériences d ERNI dans l univers du management, des processus et des technologies Experience N 52 Mars 2012 OutsourcINg Pas à pas vers de bonnes exigences
Outsourcing 10 11 Pas à pas vers de bonnes exigences Des exigences claires sont un facteur-clé pour le succès de l outsourcing Beaucoup d entreprises se demandent aujourd hui si la maturité de leurs processus est suffisante pour délocaliser des tâches de développement. Notre liste de contrôle permet de répondre à cette question et livre des indications ciblées pour augmenter la maturité des processus. PAR Cédric Escher ET PhiliPP Rey La délocalisation de tâches de développement est une réponse éprouvée à la pression des coûts et au manque de ressources. La distance géographique et culturelle représente cependant un grand défi. Dans le numéro 50 d Erni Experience, nous mentionnions déjà que la phase initiale joue un rôle décisif pour réussir à faire face à ce défi. Il est nécessaire d effectuer un certain nombre de tâches, dont le choix d un fournisseur approprié, la définition et l introduction de processus de communication ainsi que la mise en place d une infrastructure commune. Des exigences claires et sans équivoque constituent cependant l un des facteurs les plus importants pour la réussite de l outsourcing. Elles sont d autant plus essentielles pour des projets de délocalisation que ceux-ci sont généralement confiés après que les exigences ont été formulées (voir graphique 1). Le mandataire assume la responsabilité des exigences, tandis que l exécutant se charge du design et de l implémentation. Pour les entreprises appliquant un processus défini de requirements engineering, les risques de l outsourcing sont nettement plus faibles que pour les entreprises au sein desquelles ce n est pas le cas. Notre liste de contrôle permet à l entreprise de se situer par rapport à cette question et livre des indications ciblées pour cerner le potentiel d amélioration. 1. Les exigences sont consignées de manière détaillée et complète Dans les entreprises disposant de départements internes de développement, les exigences sont souvent relativement peu détaillées. Cela suffit généralement dans la mesure où les détails manquants peuvent être complétés par les développeurs expérimentés ou qu il est possible d obtenir de plus amples informations de façon rapide et informelle. Ces possibilités font défaut lors de la délocalisation de tâches de développement. C est pourquoi les exigences doivent généralement être consignées de manière plus complète et plus détaillée. Conseil: Les exigences peuvent être passées en revue par les parties prenantes. Pour ce faire, elles doivent être formulées de façon à être compréhensibles par tous. 2. Le champ est défini Des préparations conséquentes sont nécessaires pour faire le pas de l outsourcing, notamment parce qu il n est pas possible de s y lancer avec n importe quel petit projet. On ne peut délocaliser qu un élément entier et pouvant être testé. En outre, les interfaces doivent être définies pour que le développement puisse démarrer. Dans le déroulement du projet, les environnements informatiques doivent ensuite aussi être disponibles à temps. Conseil: La voie la plus simple pour délocaliser un projet partiel avec un champ clairement défini consiste à sélectionner une composante sur la base de l architecture existante et de confier son développement au partenaire. 3. Le processus de requirements engineering est défini Le processus détermine qui est responsable de quels documents avec quels contenus, à qui les documents s adressent et dans quels délais ils doivent être fournis. Aujourd hui, la plupart des entreprises ont déjà implémenté un tel processus. L objectif est de parvenir à des exigences revues et cohérentes comme base stable de développement.
Mandant Mandataire Exigences produit Exigences techniques Spécification design logiciel Implémentation Ill. 1: Modèle en V: interface avec partenaires d externalisation Tests unités Tests d intégration Tests système Des exigences claires et sans équivoque constituent cependant l un des facteurs les plus importants pour la réussite de l outsourcing. Elles sont d autant plus essentielles pour des projets de délocalisation que ceux-ci sont généralement confiés après que les exigences ont été formulées. Le mandataire assume la responsabilité des exigences, tandis que l exécutant se charge du design et de l implémentation. Pour les entreprises appliquant un processus défini de requirements engineering, les risques de l outsourcing sont nettement plus faibles que pour les entreprises au sein desquelles ce n est pas le cas. Notre liste de contrôle permet à l entreprise de se situer par rapport à cette question et livre des indications ciblées pour cerner le potentiel d amélioration.
Outsourcing 12 13 Conseil: Le processus d exigences va de pair avec un processus défini de changement. Exemple 1 Un requirements engineering simplifié grâce à Scrum 4. Les interlocuteurs du côté du mandataire sont disponibles pour des renseignements et des décisions Les travaux délocalisés nécessitent aussi des ressources auprès du mandataire. L équipe d outsourcing aura régulièrement des questions concernant les exigences. Si les réponses à ces questions ne peuvent pas être apportées dans un délai raisonnable, la collaboration perdra en efficacité. Il convient en outre de communiquer à cette équipe tout ce qui est important pour son travail. Notamment pour des projets sur lesquels travaillent plusieurs équipes sur des sites différents, cela peut engendrer une charge de travail non négligeable. Enfin, les équipes délocalisées et leurs collaborateurs hautement qualifiés suggéreront régulièrement aussi des propositions d améliorations. Ces suggestions devront aussi mener à des décisions rapides. Conseil: Les mandataires qui communiquent intensément avec leur partenaire d outsourcing ont besoin d exigences moins détaillées.. Une entreprise de technologie médicale développe une plateforme logicielle. Certains éléments sont confiés à des sous-traitants. L entreprise, qui dispose d expériences confirmées avec Scrum, décide de miser aussi sur cette méthode agile pour sa délocalisation. Le Scrum master et le directeur de produit travaillent sur le site du mandataire. L équipe est cependant située en Europe de l Est. La collaboration fait ses preuves. Malgré la distance géographique, l ensemble de l équipe travaille efficacement. La charge de travail et donc les coûts du requirements engineering sont dans ce cas relativement peu élevés. 5. Le partenaire d outsourcing connaît les particularités du secteur Pour que des exigences puissent vraiment exclure toute équivoque, il faudrait des livres entiers pleins de listes, même pour des projets relativement petits. Cela reflète tout l horizon de connaissances liées à un secteur. Les départements de développement internes à une entreprise disposent de ce savoir et il ne doit donc pas être mentionné explicitement dans
Pour profiter des avantages de l outsourcing, il est nécessaire d effectuer avant tout un certain nombre de tâches au sein de sa propre entreprise dans le domaine du requirements engineering. Mais cet investissement est payant. Les ressources supplémentaires ainsi acquises et la baisse des coûts ne sont pas les seules raisons plaidant pour l outsourcing. Si tous les points de la liste de contrôle sont remplis, la collaboration avec les équipes externes peut atteindre un niveau d efficacité servant aussi de référence pour la coopération au sein même de l entreprise.
Outsourcing 14 15 le catalogue d exigences. Lorsque des tâches sont délocalisées, il faut transmettre ce savoir à l équipe externe. Une certaine charge de travail est nécessaire pour permettre aux développeurs de saisir la manière de penser des mandataires. Conseil: L information doit se faire de façon transparente, ce qui renforce aussi la confiance entre le mandataire et le sous-traitant. giciels externes. Pour vérification, l équipe doit ensuite formuler dans ses propres mots ce qu on attend d elle. Cet investissement est payant: les questions sont ensuite moins fréquentes lors de la phase de développement. Le produit final est proche des attentes du requirements engineer et ne nécessite finalement que peu d adaptations ultérieures. un niveau d efficacité servant aussi de référence pour la coopération au sein même de l entreprise. 6. Des ateliers permettent d expliquer les exigences et de vérifier leur compréhension par le partenaire d outsourcing Même si les développeurs externes accroissent leur sensibilité aux particularités du secteur, il reste toujours nécessaire d expliquer les exigences. Il faut donc vérifier que les développeurs les comprennent effectivement. Conseil: Lors des ateliers consacrés aux exigences, il convient de prêter attention à ce que la communication soit bidirectionnelle. Exemple 2 Requirements engineering pour un partenaire d outsourcing asiatique Une entreprise industrielle de grande tradition décide de confier le développement d une partie d un nouveau produit à une filiale en Asie. Pour éviter des malentendus, un expert suisse se déplace en Asie. Pendant une semaine, il fournit à l équipe de développeurs une introduction aux exigences spécifiques du secteur. Par ailleurs, des ateliers consacrés aux exigences sont organisés. Pour ce faire, le requirements engineer suisse est aussi envoyé en Asie. Il explique les exigences aux ingénieurs lo- 7. Lors du développement, des mécanismes de contrôle vérifient que le projet évolue toujours dans le cadre des exigences Le mandataire devrait en tous les cas procéder à un design review dans un but de vérification avant de commencer l implémentation. Dans des projets à long terme, des étapes doivent être fixées afin de vérifier périodiquement que les résultats obtenus correspondent aux exigences. Pour ce faire, une démo de l application implémentée s avère utile. Conseil: Les meilleurs fournisseurs de prestations d outsourcing procèdent d eux-mêmes à des contrôles de qualité internes, qui vérifient également l adéquation des exigences et des résultats de leurs travaux. Pour profiter des avantages de l outsourcing, il est nécessaire d effectuer avant tout un certain nombre de tâches au sein de sa propre entreprise dans le domaine du requirements engineering. Mais cet investissement est payant. Les ressources supplémentaires ainsi acquises et la baisse des coûts ne sont pas les seules raisons plaidant pour l outsourcing. Si tous les points de la liste de contrôle sont remplis, la collaboration avec les équipes externes peut atteindre ERNI Innovation in process and technology Philipp Rey philipp.rey@erni.ch Activité de conseiller: ingénierie des exigences, gestion de projets, externalisation proche Cédric Escher cedric.escher@erni.ch Activité de conseiller: Ingénierie des logiciels, gestion de projets, externalisation proche
www.erni-consultants.com enables & delivers