2009-07-21 9 views
2

En tant que programmeur, je suis tout à fait en faveur de la méthodologie agile, nous savons tous qu'elle fait la différence, mais comment la vendez-vous à un tiers? Le travail que nous faisons est généralement à prix fixe et il est habituel pour nous d'avoir seulement une vue de haut niveau des exigences quand nous citons car c'est souvent une situation concurrentielle. Nous constatons souvent que lorsque nous gagnons un contrat et que nous examinons les détails, les fonctionnalités prennent de l'ampleur. Bien que nous ayons un mécanisme pour gérer ce fléau, il n'est pas assez robuste et transparent, ce qui nous amène généralement à concéder des jours.comment gérer un projet agile avec un tiers

La méthodologie agile peut dire qu'il n'y a pas de fluage de portée, mais dans le monde réel, nous savons tous qu'il y a. Quand un client vous demande de fournir une solution, à un prix fixe et à l'échelle de temps (ce qui sera toujours le cas), puis changez les poteaux de but à mi-projet, ce qui est un fluage de portée. À la fin de leur budget, il est fort probable qu'ils se retrouveront avec quelque chose de différent de ce qu'ils avaient initialement prévu et qui pourrait ne pas répondre entièrement à leurs besoins initiaux. À ce moment-là, ils vont revenir et prétendre qu'ils n'ont pas ce qu'ils ont payé - la seule protection que nous avons contre cela est une spécification qui énonce exactement ce qu'ils vont mettre en avant que nous pouvons livrer contre, clairement pas la manière agile.

Je sais que les gens vont dire que le client doit être tenu informé à tout moment de ce qu'ils obtiennent et de ce qui est déplacé hors de portée bla bla bla ... mais dans le monde REAL autant que je peux voir vous aurez toujours des clients qui diront ensuite à la fin - ce n'est pas ce que vous avez promis de livrer/nous avons payé. Comment gérons-nous cette situation?

Répondre

3

C'est là que certains des concepts de SCRUM portent leurs fruits.

  1. Le chef d'entreprise DOIT être impliqué dans chaque étape du processus.
  2. Choisir les histoires qui font un sprint particulier DOIT être fait avec le chef d'entreprise.
  3. Ne faites rien dans un sprint qui n'est pas planifié pour ce sprint sans l'ajouter au graphique du backlog de sprint pour ce sprint. Il est bon de montrer des choses qui ont été ajoutées à un sprint dans une couleur différente. De cette façon, vous pouvez voir le plan d'origine (espérons-le sur le calendrier) et les ajouts (ce qui provoque le retard).
  4. Produire quelque chose qui "pourrait aller à la production" dans chaque sprint. L'entreprise verra que cela rapporte quelque chose pour son argent. Ils peuvent également ajuster les futurs sprints en fonction de ce qu'ils voient. Chaque sprint fait un bon point d'arrêt.

- EDIT -
Hmmm. Peut-être un DVD de la vidéo Ray suggéré (ou this one) devrait être inclus dans la proposition de projet.Cela pourrait faire la différence en essayant de commencer le travail. Le client devrait savoir comment fonctionne votre groupe AVANT de vous embaucher. Il fera de votre entreprise plus qu'un simple «atelier de carrosserie».

Si vous êtes un "carrossier" ...
1. Vous ne serez probablement pas en mesure de contrôler votre projet. Vous collecterez les heures.
2. Si vous voyez que le projet va mal, commencez à laisser des indications au client "Si MY company exécutait ce projet ...". Vous pouvez obtenir le prochain projet!

0

Conserver un graphique de classement du projet.

Quand ils le verront, ils l'obtiendront. Ils connaîtront la vitesse des projets et verront les implications du fluage de l'étendue. Ils peuvent également voir la valeur de réduction d'étendue en élaguant des éléments de faible priorité. Burndown charts est un moyen de vous tenir informé, vous et votre client. Une fois que vous voyez tous les deux la Grande Image, vous pouvez négocier comment avancer - équitablement.

Cette video est une bonne étude de cas.

3

Vous ne pouvez pas réaliser un projet agile sans l'adhésion du client.
Et vous n'aurez pas l'adhésion de vos clients à votre approche préférée s'ils ne comprennent pas pourquoi leur approche est défectueuse.
Vous devez éduquer le client sur les défis et les méthodologies de développement logiciel.
Même si cela prend du temps et n'est pas garanti pour réussir.

(ou vous pouvez aller avec le flux et essayer de développer un logiciel avec horaire fixe et un budget fixe et la portée de plus en plus que nous savons tous est impossible, mais qui ne conduisent à des problèmes que vous avez décrits ci-dessus.)

0

une spécification qui expose exactement ce qu'ils vont obtenir à l'avance que nous pouvons livrer contre

est un conte de fées. Je n'en ai jamais vu, je ne le ferai jamais. La seule chose qu'il est est un créateur d'une situation perdant-perdant. La première chose à faire est de commencer à nommer les choses par leur vrai nom. Un conte de fées est un conte de fées, même si on l'appelle une spécification