Vue d'ensemble de Microsoft Solutions Framework (MSF)
Le Microsoft Solutions Framework (MSF) est une approche souple qui permet de proposer des solutions techniques plus rapidement, en faisant appel à un nombre de personnes moins important et en présentant moins de risque, tout en permettant d'obtenir des résultats de meilleure qualité. Grâce au MSF, les équipes peuvent traiter directement les causes les plus courantes de l'échec des projets technologiques, améliorant ainsi les taux de réussite, la qualité des solutions et l'impact sur l'entreprise.
Le MSF se concentre sur les points suivants :
Alignement des objectifs de l'entreprise et technologiques
Établissement d'objectifs, de rôles et de responsabilités de projet clairs
Implémentation d'un processus itératif comportant des jalons et des points de contrôle
Gestion proactive des risques
Réponse efficace aux changements
Les éléments clés du MSF présentés dans cet article sont les suivants :
Les principes fondamentaux et les états d'esprit du MSF permettent d'orienter et de guider les équipes et leurs membres dans leur collaboration pour fournir une solution
Le modèle d'équipe du MSF facilite l'adaptation des projets, permet aux équipes de répondre à de nombreux besoins des parties prenantes et définit des rôles et des responsabilités en fonction des objectifs à atteindre.
Le modèle de gouvernance MSF (anciennement appelé « modèle de processus MSF ») génère des résultats rapides et de haute qualité par le biais d'un cycle de vie de projet éprouvé qui identifie les activités de projet fondamentales.
Principes fondamentaux et états d'esprit du MSF
Le Microsoft Solution Framework (MSF) repose sur des principes et des états d'esprit qui représentent des années d'expérience. Traduits en concepts applicables aux différents modèles, processus et disciplines MSF, ces principes et états d'esprit constituent la base du MSF. Bien que ces concepts fassent appel au bon sens, leur compréhension et leur implémentation adéquate peuvent s'avérer délicates. Toutefois, une fois qu'elle les a assimilés, l'équipe peut collectivement créer des produits de qualité.
Principes fondamentaux
Les principes et concepts du MSF suivants permettent à une équipe de projet de proposer une solution de qualité. Chaque membre de l'équipe doit comprendre et appliquer ces principes quand il interagit avec les autres membres de l'équipe, l'organisation et les parties prenantes. Le MSF repose sur neuf principes fondamentaux :
Favoriser les communications ouvertes. Pour que votre équipe soit efficace, elle-même et vous-même devez partager des niveaux d'information appropriés avec les membres de l'équipe et au sein de l'entreprise. L'équipe doit comprendre la nature des tâches à effectuer et la façon dont ses membres et les contacts externes communiquent. Le plus difficile est de déterminer un niveau approprié pour chaque relation et les informations à partager.
Poursuivre une vision commune. Avoir une vision commune responsabilise les membres de l'équipe et leur permet de prendre des décisions éclairées rapidement pour aboutir à un résultat concret. Grâce à une vision commune, les membres de l'équipe peuvent également répondre aux besoins au fur et à mesure qu'ils apparaissent.
Responsabiliser les membres de l'équipe. Quand ils sont responsabilisés, les membres de l'équipe sont en mesure de s'adapter à un environnement en constante évolution, mais également de réussir et de collaborer de façon créative. Si les membres de l'équipe ne peuvent pas donner le meilleur d'eux-mêmes, leur créativité et leur motivation peuvent s'en trouver affectées, tout comme les performances de l'équipe.
Définir des responsabilités précises et partagées. Quand les membres d'une équipe sont responsabilisés, ils se sentent souvent plus impliqués dans leurs décisions et sont enclins à partager la responsabilité d'un projet. Plus la responsabilité des membres de l'équipe est élevée, meilleure est la qualité. Par exemple, si un membre de l'équipe prétend avoir terminé une tâche, mais que le résultat ne présente pas la qualité attendue, il incombe à ce membre d'apporter les corrections nécessaires. S'il est encouragé de manière positive dans son développement et dans sa participation, et non sanctionné pour des défaillances de ce type, le membre de l'équipe partage la responsabilité de la solution globale et de ses livrables. Cela favorise au sein de l'équipe l'émulation et la solidarité nécessaires pour que chaque membre donne le meilleur de lui-même.
Offrir une valeur ajoutée. Ce principe présente deux facettes :
S'assurer que ce qui est proposé présente une valeur optimale aux yeux des parties prenantes.
Déterminer un pas de progression optimal pour proposer de la valeur (« fréquence de livraison »).
Rester agile, s'attendre à des changements et s'adapter à ces derniers. Comme les changements peuvent se produire souvent et au pire des moments, adopter une approche agile pour les gérer réduit au minimum les perturbations qu'ils entraînent. Pour une organisation, rester agile signifie être préparée aux changements et pouvoir s'y adapter en douceur.
Investir dans la qualité. De nombreuses organisations attachent une importance particulière à la qualité, terme souvent flou, mais ne savent pas comment la quantifier. La qualité est un élément qui doit être incorporé de manière proactive au cycle de vie de la fourniture de la solution ; elle ne s'invite pas d'elle-même.
Apprendre de toutes les expériences. Si tous les niveaux d'une organisation ne retirent rien des réussites et des échecs passés, comment peuvent-ils espérer s'améliorer la prochaine fois ? Les membres de l'équipe doivent comprendre que l'apprentissage intervient à tous les niveaux :
Au niveau du projet, par exemple, l'affinement d'un processus à l'échelle du projet
Au niveau des personnes, par exemple, l'amélioration des interactions entre les membres de l'équipe
Au niveau de l'organisation, par exemple, la détermination des mesures de qualité à collecter pour chaque projet
Nouer des partenariats avec des clients internes et externes. Vous augmentez les chances de réussite du projet quand un client collabore avec l'équipe du projet. Cela ne signifie pas que les clients effectuent le travail d'une équipe. Toutefois, quand les clients collaborent progressivement et étroitement avec une équipe, la solution fournie par cette dernière répond mieux à leurs attentes. Nouer des partenariats avec les clients est mutuellement bénéfique, car cela limite les incertitudes, réduit le temps nécessaire pour résoudre les questions liées aux contraintes et permet à une équipe de mieux comprendre les propositions de valeur de la solution grâce aux contacts réguliers.
États d'esprit
Tandis que les principes fondamentaux présentés ci-dessus portent sur l'optimisation de la réussite d'une équipe dans son ensemble, l'état d'esprit fait référence à l'optimisation de la réussite des membres de l'équipe en tant qu'individus. Chaque état d'esprit permet à chaque membre de l'équipe de prendre toute sa part à l'offre d'une solution. Dans l'idéal, les membres de l'équipe deviennent tellement à l'aise avec ces états d'esprit qu'ils les manifestent sur leur lieu de travail et en dehors de celui-ci. Voici quelques états d'esprit que chaque membre de l'équipe doit intérioriser :
Favoriser l'émergence d'une équipe de pairs. Si votre organisation peut mettre en application les principes fondamentaux du MSF, notamment la responsabilisation et la responsabilité, la gestion d'un projet avec une structure de projet hiérarchique est-elle pertinente ? Si tous les individus comprennent la mission et ses objectifs au point d'avoir une vision commune de leurs rôle et responsabilités pour proposer une solution, chacun agit en tant que pair et peut être traité sur un même pied d'égalité. Il ne s'agit pas là de proposer une organisation anarchique ou une gestion par comité, mais plutôt de suggérer que chacun partage la responsabilité de la réussite de l'offre d'une solution. Chaque rôle prend sa propre part de responsabilité dans un projet tout en étant conjointement responsable du projet dans son ensemble. Comme vous le verrez, il existe toujours un rôle de responsable de programme, mais ce rôle a pour fonction de mener à bien un projet en tenant compte de contraintes spécifiques, pas de gérer les membres de l'équipe.
Se concentrer sur la valeur commerciale. La réussite se mesure à l'aune de la valeur commerciale proposée. Cela signifie proposer aux clients quelque chose dont ils ont besoin, mais aussi qu'ils souhaitent et auquel ils attachent de la valeur. Pour proposer de la valeur, chaque membre d'une équipe doit comprendre ce que les clients jugent précieux. Si un projet ne propose pas de valeur commerciale aux clients, il court différents risques : celui de se retrouver hors course, celui de demander trop de temps, d'effort et d'argent, et celui d'être annulé.
Considérer la solution dans sa globalité. En raison de la taille et de la complexité de la plupart des projets, quand une solution est considérée à travers ses composantes exploitables, les membres de l'équipe accordent parfois trop d'attention aux petits détails et oublient de se concentrer sur la solution ultime. C'est la raison pour laquelle le principe d'une vision commune est capital. Quand les membres de l'équipe apportent leur lot de travail, ils doivent garder à l'esprit la mission, la vision et les objectifs globaux de la solution. Trop souvent, une partie de l'équipe optimise son domaine, croyant agir pour le bien commun, avant de découvrir qu'elle doit revoir certains aspects importants pour être en phase avec la solution attendue ; elle s'empêtre dans des détails et perd la solution de vue.
Être fier du travail effectué. Non seulement une équipe doit investir en qualité, mais chaque membre doit également voir que la qualité est autant sa responsabilité que celle des autres membres et qu'elle ne doit pas être déléguée ou transmise. La qualité relève de la responsabilité de chacun tout au long du cycle de vie de la proposition d'une solution. Cet état d'esprit favorise l'amélioration de la qualité des livrables de chacun des membres de l'équipe, mais également de la qualité de l'adoption du processus et de la gouvernance des projets. En outre, cet état d'esprit encourage chaque membre de l'équipe à mieux comprendre les compétences nécessaires pour accomplir la mission globale. En surveillant leur propre qualité et en donnant le meilleur d'eux-mêmes, les membres de l'équipe facilitent l'amélioration permanente du produit final.
Apprendre constamment. Parfois, être fier des compétences de votre équipe et des vôtres ne suffit pas pour atteindre l'objectif final. Les membres de l'équipe doivent acquérir de nouvelles compétences pour devenir de meilleurs pairs au sein de leur équipe. Comme la plupart des projets, des équipes et des environnements sont uniques, chaque projet offre des occasions d'apprendre, d'expérimenter et d'affiner les compétences, les processus et les procédures. Pour que ces opportunités soient exploitées au mieux, l'apprentissage et l'adaptation continus doivent être de mise à tous les niveaux d'une organisation et ne pas être limités aux membres de l'équipe.
Intérioriser les qualités de service. Les qualités de service (QoS) définissent les caractéristiques opérationnelles attendues d'une solution, telles que son niveau de disponibilité. En plus des architectes, les parties prenantes et les membres de l'équipe doivent comprendre les QoS et l'incidence de leur satisfaction sur les livrables. Sinon, ils sont susceptibles d'émettre des hypothèses implicites sur la façon dont une solution est supposée se comporter. Comme ces hypothèses concordent rarement, chaque membre de l'équipe doit, dès le départ, prendre des décisions conceptuelles explicites pour satisfaire aux QoS. Ainsi, les hypothèses implicites sont converties en contraintes de QoS explicites. En outre, les QoS sont explicitement intégrées à une solution dès le départ et ne sont pas traitées après coup.
Pratiquer le civisme. Du point de vue du développement de logiciels, le civisme fait référence au fait d'être fiable, honorable, responsable et respectueux dans tous les aspects de votre travail. Cela comprend, sans être exhaustif, la façon dont vous :
interagissez avec les autres membres de votre équipe, avec une organisation et avec les parties prenantes ;
participez à un projet et aidez à la proposition d'une solution, notamment en prenant soin des ressources de l'entreprise, du projet et informatiques. Cela comprend le partage des ressources, des informations et des connaissances de façon ouverte et volontaire. Le bon citoyen agit consciemment dans l'intérêt de tous.
Remplir ses engagements. Malgré l'intégration de nombreux bilans et vérifications, le MSF repose sur la confiance et sur la responsabilisation, en partie liées à la faculté des membres de l'équipe à tenir leurs engagements. Le MSF établit un environnement dans lequel les membres de l'équipe et les parties prenantes peuvent en toute confiance penser que les autres membres de l'équipe sont en mesure de respecter leurs engagements. Un projet étant une collection d'activités interdépendantes, quand un membre de l'équipe ne tient pas ses engagements, il déséquilibre et compromet l'ensemble du projet.
Modèle d'équipe du MSF
En règle générale, le modèle d'équipe du MSF décompose les activités et les responsabilités de proposition d'une solution en sept groupes de préconisation. Ces groupes sont interdépendants et multidisciplinaires. Comme le montre le tableau ci-après, pour que l'approche soit équilibrée, chacun de ces rôles introduit une perspective unique de ce qui est nécessaire, de ce qui doit être préconisé et des objectifs à associer à l'offre d'une solution. Ces rôles peuvent être combinés si l'équipe est de petite taille, et étendus si elle est de grande taille.
Comme ces rôles varient sensiblement d'une organisation à l'autre et d'une équipe à l'autre, ils n'impliquent ni ne suggèrent aucun organigramme ou ensemble de fonctions. En règle générale, les rôles sont répartis entre différents groupes au sein de l'organisation informatique, auxquels sont parfois associés la communauté des utilisateurs de l'entreprise, ainsi que des consultants externes et des partenaires.
Rôle |
Objectifs |
Domaines fonctionnels |
---|---|---|
Gestion de produit |
|
|
Gestion des programmes |
|
|
Architecture |
|
|
Développement |
|
|
Expérience utilisateur |
|
|
Test |
|
|
Publication/Opérations |
|
|
Modèle de gouvernance du MSF
Le modèle de gouvernance (anciennement appelé « modèle de processus ») est conçu pour fournir l'aide adéquate aux bonnes personnes en temps voulu. Il permet à une équipe de fournir les parties clés d'une solution plus rapidement que si elle se concentrait sur les fonctionnalités les plus prioritaires et traitait les autres dans le cadre de futures publications. Grâce à sa structure, le modèle fait rapidement naître un consensus sur la façon de mettre en œuvre les différents aspects d'une solution. Le modèle de gouvernance est une composante souple du MSF qui permet notamment d'améliorer le contrôle des projets, de réduire les risques au minimum, de perfectionner les solutions et d'accélérer le développement. Comme le MSF est entièrement personnalisable, une organisation peut adapter le modèle de gouvernance à ses processus d'entreprise et à ses approches en matière de proposition de solution.
Le modèle de gouvernance du MSF associe la gouvernance de projet et l'adoption de processus. La gouvernance de projet porte sur l'optimisation du processus de proposition d'une solution et sur l'utilisation efficace des ressources de projet. L'adoption de processus porte sur la définition, la création et le déploiement d'une solution qui répond aux besoins et aux attentes des parties prenantes.
Les principaux aspects du modèle de gouvernance du MSF comprennent des séquences d'activité qui se recoupent, la synchronisation des points de contrôle et une approche progressive de l'offre de valeur au client.
Séquences
Le modèle de gouvernance du MSF facilite la gouvernance de projet et l'adoption de processus à l'aide de séquences d'activité qui se recoupent. À un certain niveau, les séquences sont des regroupements coordonnés et recoupés de certaines activités visant à produire des livrables pertinents pour la séquence concernée. Toutefois, les séquences du MSF vont au-delà ; chacune a une mission distincte et introduit un changement dans le rythme et l'orientation d'un projet. Les séquences sont jalonnées de révisions et de points de synchronisation appelés points de contrôle (abordés plus loin) qui aident à déterminer si les objectifs des séquences sont atteints. En outre, les principaux points de contrôle sont utilisés pour mettre un terme à chaque séquence, ce qui permet de déplacer les responsabilités liées à la gestion de nombreuses activités et encourage une équipe à s'engager dans une nouvelle perspective plus appropriée pour les objectifs de la prochaine séquence.
Le modèle de gouvernance du MSF se compose de cinq séquences d'adoption se recoupant et d'une séquence de gouvernance persistante qui englobe les séquences d'adoption.
Diagramme de la séquence de gouvernance
Séquence de gouvernance
La séquence de gouvernance porte sur l'équilibrage de l'utilisation efficace des ressources de projet et sur la proposition d'une solution respectant un ensemble de contraintes de projet susceptibles d'évoluer. En outre, la séquence de gouvernance englobe l'amélioration constante des processus.
Une bonne gouvernance de projet procure la vue d'ensemble, les processus, l'aide et la rigueur nécessaires pour utiliser des ressources de projet, proposer une solution et opérer des choix en tenant compte d'un ensemble de contraintes de projet susceptibles d'évoluer, et ce de manière efficace. La séquence de gouvernance du MSF s'efforce de fournir une bonne gouvernance de projet et d'améliorer celle-ci en permanence. Elle se compose d'activités discrètes et persistantes qui jalonnent un projet.
Les objectifs de la séquence de gouvernance sont les suivants :
Guider les activités d'adoption pour proposer une solution avec des résultats renouvelables et fiables
Optimiser et améliorer en permanence les performances et le rendement de l'équipe, ainsi que la qualité de la solution et des processus
S'assurer auprès :
des utilisateurs que la solution répond à leurs besoins et qu'elle est exploitable ;
de l'équipe en charge des opérations que la solution peut être déployée ;
du client que le projet est terminé.
Séquences d'adoption
L'adoption de processus comprend une série d'étapes au cours desquelles une solution est définie, créée et déployée. Fondamentalement, les séquences d'adoption permettent à une équipe d'atteindre un accord de haut niveau sur ce qui est prévu et de créer des options d'offre en fonction de cette vision (séquence Prévoir), d'évaluer ces options et de planifier l'option sélectionnée (séquence Planifier), de créer la solution (séquence Créer), de s'assurer que la solution est fournie comme prévu (séquence Stabiliser) et finalement de déployer cette solution (séquence Déployer).
Les objectifs de chaque séquence d'adoption sont les suivants :
Prévoir
Bien comprendre ce qui est nécessaire en tenant compte des contraintes liées au projet.
Constituer l'équipe qui sera chargée d'imaginer des solutions avec des options et des approches qui répondent au mieux à ces besoins tout en prenant en compte ces contraintes de façon optimale.
Planifier
- Faire évoluer la solution conceptuelle vers des conceptions et des plans tangibles afin de pouvoir la générer dans une séquence Créer.
Build
- Créer les différents aspects d'une solution en fonction des livrables de la séquence Planifier, tels que les conceptions, les plans, les agendas et les contraintes.
Stabiliser
Améliorer la qualité de la solution de manière à ce que sa version réponde aux critères de déploiement dans l'environnement de production.
Vérifier que cette solution répond aux besoins et attentes des parties prenantes.
Valider la facilité d'utilisation de la solution du point de vue de l'utilisateur.
Optimiser la réussite et réduire au minimum les risques associés au déploiement de la solution et aux opérations dans les environnements cibles de celle-ci.
Déploiement
Intégrer correctement une solution à des environnements de production spécifiques.
Transférer la responsabilité du reste de la fourniture de la solution depuis une équipe de projet vers des équipes chargées des opérations et du support aussi progressivement et rapidement que possible.
Points de contrôle
Les points de contrôle, qui occupent une place centrale dans le MSF, permettent de planifier et de surveiller la progression du projet et de valider l'achèvement des livrables et des activités. Grâce aux points de contrôle, une équipe et les clients peuvent de façon explicite reconfirmer la portée du projet ou l'ajuster en fonction des besoins de l'entreprise ou des clients, ou bien des risques et des problèmes pouvant survenir au cours d'un projet. Les points de contrôle sont utilisés pour de nombreuses raisons, par exemple :
Faciliter la synchronisation des éléments de travail.
Permettre une observation externe de la progression et de la qualité.
Autoriser des corrections à mi-parcours.
Centrer les révisions sur les objectifs et les livrables.
Fournir des points d'approbation de travail intermédiaires.
Le MSF distingue deux types de point de contrôle : les points de contrôle principaux et les points de contrôle temporaires. Les points de contrôle principaux marquent l'achèvement des activités principales et des livrables principaux, y compris des activités planifiées pour une séquence donnée. Les points de contrôle temporaires sont définis par l'équipe pour indiquer la progression dans une séquence et pour décomposer les efforts majeurs en tâches réalisables.
Approche itérative
Une solution n'apporte pas de valeur commerciale tant qu'elle n'a pas été déployée dans l'environnement de production et utilisée de manière efficace. C'est la raison pour laquelle le cycle de vie du modèle de gouvernance du MSF instaure une progressivité dans le développement d'une solution et dans son déploiement au sein d'un environnement de production, garantissant la concrétisation d'une valeur commerciale, ainsi que des objectifs et de la vision stratégiques globaux d'une équipe. En permettant une forte représentation métier multidimensionnelle au sein d'une équipe et en accordant une importance explicite à l'impact sur l'entreprise tout au long du processus, le MSF garantit que les projets remplissent la promesse de la technologie.
La pratique du développement itératif est un thème récurrent dans le MSF. Les documents, conceptions, plans et autres livrables sont développés de manière itérative. En toute logique, le modèle de gouvernance du MSF est une approche itérative.
Résumé
Le MSF (Microsoft Solutions Framework) peut être un outil efficace pour les organisations qui souhaitent développer rapidement des solutions technologiques pertinentes et de haute qualité. Grâce à sa souplesse, les équipes peuvent s'adapter facilement à la plupart des projets technologiques, ainsi que communiquer et coordonner les activités critiques de manière efficace.
Bibliographie
Certaines parties de ce contenu sont tirées de l'ouvrage Microsoft Solutions Framework Essentials (ISBN 9780735623538). Microsoft Press. Tous droits réservés.
Voir aussi
Concepts
Suivre un travail avec Visual Studio ALM et TFS
Utiliser des artefacts de projet d'équipe, choisir un modèle de processus