C’est la crise…. faites évoluer les contrats!

scrumbut

Très régulièrement le débat sur les contrats agiles est relancé:

 “mais comment faire avec une démarche itérative et incrémentale?”

“Comment faire les contrats en interne?”

“Régie ou forfait?”

“et toi tu fais comment?”

En clair, c’est pas simple.

Lors de l’Agile Tour Maroc, j’ai ressorti mes présentations sur les contrats agiles que vous pourrez trouver ici. En clair, il s’agit des recherches d’Alistair Cockburn et de Jeff Sutherland sur le sujet, soient:

Prix Fixe, Périmètre Fixe (et potentiellement durée fixe)

  • Le forfait béni par le client, honni par les SSII: l’engagement exige une obligation de résultat.
  • Le problème c’est que cela fonctionne avec des équipes agiles matures ayant l’habitude de travailler ensemble (commando connaissant leur vélocité).
  • Le risque de surcharge (overtime) est important.
  • Si la collaboration ne fonctionne pas, c’est une catastrophe.

Prix Fixe par Point de Fonction ou Story Point

  • Approche éprouvée permettant le statu quo dans la négociation mais déplorable pour le projet: tout le monde se concentre sur la gestion du projet et pas sur la livraison.
  • Le prestataire aura tendance à faire durer en ajoutant des points de fonction.
  • Ici le vainqueur c’est le prestataire.

Temps et matériel ou “Régie”

  • Ici c’est de l’intérim.
  • Le prestataire propose des CV dans un appel d’offre.
  • Le client s’engage avec le moins offrant.
    • C’est la formule la plus communément utilisée.
    • Le client est content, le prestataire est content.
    • Le client ne gère qu’un budget fixé sur l’année, le prestataire consomme le budget.
    • Nous sommes dans la configuration des grands appels d’offre où la perversion démarre dès la signature du contrat:

–             Le moins offreur facture tous les changements au tarif fort où ne les fait pas

–             Les consultants en place ont pour mission de rester le plus longtemps possible

–             L’approche qualité n’existe pas, il s’agit de consommer le budget.

  • La régie a encore de beaux jours devant elle.

NTE-FF: ne pas dépasser le budget

  • Une alternative intéressante où le projet s’arrête lorsque le budget est consommé.
  • L’effet induit est “agile” car les deux parties au contrat vont se concentrer pour délivrer un résultat qualitatif.

Venture Capital Financing Model

  • Alternative proche de NTE-FF où la nuance est définie par la notion de cash-back: le projet s’arrête quand le cash-back est atteint.
  • Idem que précédemment.
  • Très présent dans les contrats de startups.
  • Le seul problème est dans l’implication de l’investisseur: nombre d’investisseurs ne souhaitent pas suivre les projets.

 Norvegian PS 2000 Standard

  • Les grands projets doivent être divisés en un certain nombre de livraisons mineures pour être en mesure de réduire les risques et améliorer la qualité.
  • Les résultats peuvent être livrés au cours du projet pour être en mesure de vérifier la valeur commerciale.
  • La direction peut être modifiée au cours du projet.
  • Le développement Agile se traduira par une meilleure hiérarchisation, orientation des objectifs, la motivation et l’influence des membres du projet et un meilleur contrôle du risque technologique.
  • Les modifications principales par rapport à la version standard sont les suivantes:
    • PS2000 étapes peuvent être mappées directement à un sprint comme il est documenté dans Scrum.
    • Les principaux critères de réussite est que les parties sont d’accord sur le contenu du Backlog de produit, les sprints et les points de contrôles (Review).
    • En général, il y a plus de texte de guidage (Release Plan) inclus dans le contrat et en particulier dans les annexes A et B. selon les méthodes agiles.
    • La matrice d’incertitude est étendue aux expériences incluses à partir de projets agiles.
    • Les rôles de chef de projet et Product Owner sont divisés.
    • Les rôles de projet du fournisseur responsable (SPOC) et Scrum master sont divisés.
    • Les obligations des clients sont étendues, en particulier en ce qui concerne sa responsabilité au Product Backlog.
    • Le sous-Statut des Burndown sont proposés en complément de la courbe en S.
    • Le processus Scrum est documenté.
    • Il est souligné que la livraison de la phase de description de la solution comprend un Backlog de produit priorisé et des estimations mises à jour.
    • D’autres lignes directrices concernant les analyses et la conception, le développement et la phase de test sont inclus.
    • Des exigences supplémentaires pour les points de contrôles sont incluses.
  • Ce contrat est souvent appliqué dans les grandes structures matures.
  • Certaines nuances interviennent dans les exigences de connaissances de Scrum.
  • Des variantes existent, celles-utilisent un contrat cadre ou Statement-of-Work (SOW) et les Sprints font l’objet de Change Requests.
  • Un contrat agile intéressant obligeant toutes les parties et prenant en compte la notion de résultat et de qualité.
  • Cependant il ya une surcharge dans le dédoublement des rôles et responsabilités.

Missing in Action: livraison partielle avec changements obligatoires

  • Ici l’accent est mis sur le changement permanent.
  • Nous sommes entre la régie et le contrat de support.
  • L’accent est mis sur le développement et non le résultat et la qualité des livrables.
  • Démarche à proscrire pour les projets importants.
  • Les risques marquants:
    • pas de livrables,
    • pas de qualité,
    • mutli-tâche,
    • pas de focus.

Contrât à coût cible.

  • Proche NTE-FF.
  • Le projet s’arrête lorsque le seuil de coût est atteint.
  • Contrat intéressant si l’équipe projet est mature et si le Product Owner travaille avec elle.
  • Ce dernier assurera la livraison régulière permettant de réduire les coûts et faire en sorte que le coût cible ne soit pas atteint.

Money for Nothing, Change for Free

  • Le client travaille avec la Scrum Team.
  • 100% Scrum
  • Si la livraison est faite avant l’heure: “Money for Nothing”:
    • le client paie l’intégralité du projet au prestataire qui fait une marge conséquente.
    • L’engagement du client nous permet de caler le système sur la dernière business value connue.
    • Toutes les exigences sur lesquelles il n’a pas été encore travaillé peuvent être échangées par des exigences de même valeur (maintien de la vélocité).
    • Le client peut changer les priorités des exigences.
    • Le client peut commander de nouvelles versions en mode régie.
    • Le client peut rompre le contrat lorsqu’il reste 20% à réaliser.
    • Ne fonctionne qu’avec des équipes Scrum matures.

Et moi?

Comme nous sommes en période de crise, j’ai adapté mes contrats selon ces nouvelles conditions.

Les missions Scrum Coach

Elles fonctionnent en mode ticket avec un budget annuel fixe “consommé”, c’est à dit que le budget est facturé et non reportable:

  • Ex : un budget de 20.000€ pour 20 jours, soit 20 tickets.
  • un nombre de jours annuel est donné.
  • un budget est defini.
  • chaque jour (ou souvent paquets de jours) sont considérés comme des sprints avec des livrables
  • support à distance à l’aide de Wiki

Les missions Product Owner

Elles ont évoluées pour réduire la charge de conseil.

Le contrat en lui-même est réduit pour couvrir les frais du consultant (moi), dont un prix journalier faible (<400€/j), à cela s’ajoute un intéressement sur le CA généré.

Cette démarche permet d’optimiser le développement pour livrer plus rapidement des solutions “done”. “Done” signifie répondant à tous les critères de qualité (donc testés, documentés, intégrés, etc…) pour une solution déployée.

Approche centrée Win/Win.

 

Bonne inspiration

-Pierre-

Laisser un commentaire

Entrez vos coordonnées ci-dessous ou cliquez sur une icône pour vous connecter:

Logo WordPress.com

Vous commentez à l'aide de votre compte WordPress.com. Déconnexion / Changer )

Image Twitter

Vous commentez à l'aide de votre compte Twitter. Déconnexion / Changer )

Photo Facebook

Vous commentez à l'aide de votre compte Facebook. Déconnexion / Changer )

Photo Google+

Vous commentez à l'aide de votre compte Google+. Déconnexion / Changer )

Connexion à %s