Frage

Meine Firma erhielt gerade seine erste groß angelegte Untersuchung Entwicklungsprojekt, und ich möchte einen agilen Prozess verwenden. Der Kunde hat eine Vision für die Anwendung aber offen zugibt sehr wenige Anforderungen zu haben und erkennt an, dass wir durch die Stunde berechnen müssen. Aus diesem Grunde habe ich alle, aber ihn auf einem agilen Ansatz verkauft.

Das Problem ist, dass er eine Figur Budget will um. Ich habe eine Reihe von Artikeln gelesen, dass so ziemlich Anwalt gegen eine Schätzung geben, weil das Client Budget für diese Nummer und sogar der Anforderungen ändern, die Zahl in dem Kopf und in den Büchern nicht.

Ich habe gelesen, in dem Preis im Vertrag eine Reihe von Möglichkeiten gibt es Faktor, aber fast alle von ihnen (außer eine) enthalten eine Upfront-Nummer. Dies scheint nur die gesamte Reihe von Prinzipien der agilen Entwicklung zu verletzen.

Meine Frage ist also, wenn Sie ein Agile-Shop sind, wie wollen Sie diese Unter Catch-22 von Agile Entwicklung zu umgehen?

War es hilfreich?

Lösung

Hier ist die grundlegende Frage.

Wann wird der Kunde denkt, dass sie gemacht?

Wenn sie denken, werden sie im Juni getan werden, dann setzen Sie ein Agile-Team vor Ort. Das ist für 4-6 Personen für 6 Monate. Das ist das Budget. Im Wesentlichen haben Sie die Multiplikation für sie. Team * Rate * 6 Monate.

Wenn sie denken, werden sie meist von Juni getan werden, aber es wird mehr Arbeit danach sein, dann sind Sie möglicherweise auf 9 Monate Arbeit suchen. Auch hier tust du nur eine mehrfach, dass sie für sich selbst tun konnte. Team * Rate * 9 Monate.

Wenn sie denken, dass Sie ihr Entwicklungsteam für die absehbare Zukunft sein werden, gibt ihnen einen Preis, der das Projekt bis zum Ende des Jahres bekommen. Team * Rate * 12 Monate.

Da jede Veröffentlichung ist eine Gelegenheit, reprioritize, sollten Sie jede Veröffentlichung als als separate Stück Arbeit werden, die Preisgestaltung auf der Grundlage der Dinge, die Sie wird in diesem Release getan. Da es Schema ihre Priorität ist, steuern sie, was Sie bauen sie das Budget, Phase für Phase zu steuern.

Oft Ihr Kunde wirklich will, wissen, wie viel ein bestimmtes Feature-Set kostet. Statt der von fragen, fragen sie über Gesamtbudget (das ist dumm). Verbringen Sie viel Zeit auf der ersten Veröffentlichung zeigen, was sie bekommen und wie viel das erste Release kostet.

Schließlich werden sie die grundlegende Wahrheit sehen.

Sie kaufen die Eigenschaften von am wichtigsten unwichtigste . Wenn sie richtig zu priorisieren, können sie Geld jederzeit aufhören zu verbringen und haben etwas Nützliches.

Fertig ist ein relativer Begriff. Einige Projekte sind „done“, weil es kein Geld mehr. Andere getan werden, weil es keine Zeit mehr ist. In seltenen Fällen (zumindest in der Softwareentwicklung) ist ein Projekt, das je getan, weil wir aus den Dingen liefen zu tun.

Andere Tipps

Für diese Situation haben wir eine Schätzung für das erste Stück Arbeit zur Verfügung gestellt, und lassen Sie dann den Client Kauf mehr Sprint als erforderlich, um die Arbeit auf den gewünschten Level zu beenden.

Wenn Sie mehr des Systems entwickelt bekommen, und integrieren Feedback von den Kunden in die Sprint zu erbringenden Leistungen, werden Sie beide bekommen ein besseres Gefühl für die Menge der Arbeit beteiligt und damit verbunden Kosten.

Edit: Cool. Art und Weise ausgezeichnet! Aus der Tatsache, dass man sie auf einem agilen Ansatz habe verkauft, BTW gut !, die Chancen sind Sie in der Lage sein werden, sie seel auf es von einer agilen Sicht in Bezug auf den Funktionen näher umgesetzt werden. Vielleicht „href="http://itc.conversationsnetwork.org/shows/detail350.html#" rel="noreferrer"> Einführung in Scrum “ auf diese haben ein hören Podcast. Sie könnten in der Lage sein, sie auf der Tatsache zu verkaufen, dass sie wahrscheinlich nicht alle Glocken und Trillerpfeifen haben müssen, dass sie denken, tha sie jetzt brauchen.

HTH

prost,

Rob

Sehen Sie, es gibt einen Kern der Tat hier. Sie werden gefragt, Kosten zu schätzen, für einen bestimmten Liefertermin Vertrag, und zu einem vollständigen Satz von Funktionen geliefert begehen.

Sie können alle drei nicht tun.

Nicht „Sie sollten nicht“ oder „wäre es klug, nicht zu“; Sie (für alle praktischen Zwecke) nicht. Damit meine ich, dass die Wahrscheinlichkeit, erfolgreich alle drei tun extrem klein ist.

Die beste Antwort ist auf eine Kosten-und Zeitplan, und zu einem iterativen Prozess mit schnellen Iterationen und regelmäßigem Feedback, zu begehen und dann den Vertrag schreiben, so dass das, was gemacht unde die fest Kosten und Zeitplan ist das, was geliefert wird. Das heißt, Sie halten die Bereitstellung neuer Funktionen (und Änderungen), bis die Zeit und Geld abläuft.

Die Wahrheit ist, auch wenn Sie Sie registrieren, um alle drei, das Beste, was Sie jemals in der Lage sein werden, ist zwei von drei zu tun sowieso. Es könnte aber auch darüber offen sein.

Hier ist, wie eine mürrische alte Regierung Auftragnehmer ich vor kurzem sie weiß ausdrückte: „Wie die Prostituierte sagen, zuerst müssen du sie nach oben bekommen“

Das ist nicht Ihre Frage nicht beantworten, aber es ist daran zu erinnern. Wenn sie nicht nach oben, ohne Nummer vorne kommen werden (und sie werden nicht), haben Sie ihnen eine Nummer zu geben.

Wer ein Software-Projekt Sponsoring muss eine Vorstellung davon haben, welche Art von Rückkehr sie für ihre Investitionen zu bekommen sind, so dass sie beurteilen können, ob die Investition wert ist zu machen. Ein Projekt kann sich lohnen, zu tun, wenn es 1 Mio. $ und dauert 12 Monate kostet. Es kann nicht sein lohnt sich, wenn es $ 2m und dauert 24 Monate kostet.

Die eigentliche Frage ist: können Sie dieses Projekt innerhalb eines Zeitrahmens tun und Budget, das es möglich, dass der Client stellt eine angemessene Rendite auf ihre Investitionen zu realisieren? Wenn Ihre Antwort auf diese Frage ist alles andere als „ja“, dann sollten sie mieten Sie das Projekt nicht zu tun. Ansonsten sind sie nur Geld und die Würfel rollen.

Wenn Ihre aktuelle Antwort auf diese Frage ist: „Wir wissen noch nicht,“ dann sollten sie mieten Sie das Projekt nicht zu tun. Aber das bedeutet nicht, dass sie nicht mieten, sollten Sie herausfinden, ob das Projekt lohnt sich. Eine gute Beratung-Firma Schlagwort hierfür ist „preliminary Vorstudie.“

Agile Entwicklung geht es um eine Kurve in drei Dimensionen zu verwalten: Geld ausgegeben, Kalenderzeit, und Feature-Set. Es ist selbstverständlich, dass, wenn das Budget und Zeitplan festgelegt sind, muss das Feature-Set variabel sein. Sie können nicht wissen, was die letzte Feature-Set wird, diese Einschränkungen gegeben. Aber Sie können wissen, ob a Feature-Set, dass Sie innerhalb dieser Einschränkungen produzieren können, fällt in einen Bereich, der Ihr Kunde akzeptabel finden.

Sie können dies wissen, und Sie können es herausfinden. dass aus zu finden, ist etwas, das Ihr Unternehmen tun können, und Ihr Kunde kann nicht. Es ist ein Dienst, den Sie ihnen bieten können und dass sie Sie bezahlen. Vermeiden Sie die Versuchung dies kostenlos zu tun, und es ist ein Umsatzkosten zu nennen. Scoping ist ebenso sehr ein Teil von professionellen Dienstleistungen wie Software-Entwicklung. Sie tun dies nicht, einen Verkauf zu schließen; Sie tun dies Ihre Klienten zu helfen, eine geschäftliche Entscheidung zu treffen, die sie noch nicht genügend Informationen, um zu machen.

Aber zuerst musst du sie nach oben kommen.

Diese Antworten sind wirklich toll. Ich habe nicht viel Erfahrung zu teilen, aber ich dachte an eine Analogie:

Im vergangenen Jahr meine Frau und ich umgebaut unsere Küche. Der Auftragnehmer vorgeschlagene Abrechnung auf Zeit und Materialien statt dessen eine Schätzung geben, weil wir nicht wussten, was wir in Bezug auf Sanitär entdecken würde, Unterbodenschäden, und so weiter. Wir waren uns einig, weil ich von zu Hause bin zu arbeiten und ich war ständig für Fragen zur Verfügung. Der Auftragnehmer und ich hatte ein gutes Verhältnis so, wenn etwas kam, fühlte er sich frei auf meiner Bürotür zu klopfen und wir würden es diskutieren. Entscheidungen wurde es schnell und die Arbeit wurde getan, um die Art und Weise wollte ich gemacht. Das scheint ähnlich die Agile Priorität auf häufige Kundenbewertung .

Im Gegensatz dazu Cousin meiner Frau ist die Umgestaltung auch sein Haus. Er ist ein Notarzt und er ist nicht vor Ort während der Umgestaltung zur Verfügung. So beschrieb er von den Auftragnehmern zu machen wichtige Entscheidungen regelmäßig überrascht zu werden, ohne ihn zu Beratung ( „Was? Ich nicht, dass Aussichtsfenster wollte abgeblockt! Die Wand herauszureißen und umrahmen das Fenster, wie es war!“). Das ist natürlich schmerzhaft teuer und bläst den Zeitplan aus dem Wasser. Auf jeden Fall nicht Agile.

So eine Möglichkeit, einen Kunden davon zu überzeugen, dass eine Zeit & Materialien Modus kann arbeiten, ihnen versichern Sie, häufige Fortschrittsberichte machen werden ihr Feedback zu bekommen. Ich glaube, das ist schon eine Kern Empfehlung der meisten Agile Methodologien. Um zu beginnen, natürlich erfordert dies der Kunden gibt ihr Vertrauen an den Berater.

Als eigenständige Ressource Ich suchte und fand ein Buch zu diesem Thema: „ Agile Estimating und Planung “von Mike Cohn. Lesen Sie das Lob Zitate auf dieser Seite, von einer beeindruckenden Reihe von Agile Experten.

Zunächst einmal möchte ich sagen, ich denke, es ist großartig, man ihm ein auf agile Ansatz und pro Stunde Preis verkauft haben. Das ist sehr schwer zu tun.

In Bezug auf Ihr Dilemma, ich glaube, Sie ihn mit einer groben Preisschätzung vorlegen sollen und die Funktionen / Umfang es enthält. Während des Entwicklungsprozesses, wenn Sie etwas Wichtiges kommen sehen, die den Umfang / Kosten wird sich ändern, sagen Sie dem Kunden „stop - das ist toll, aber verstehen, dass es den ursprünglichen Umfang ändert diskutierten wir.“

An diesem Punkt der Kunde das Privileg der Vereinbarung hat, sich dessen bewusst, dass er mehr bezahlen, als er ursprünglich gedacht, oder die Neuentwicklung jetzt zu stoppen. Viele agile Projekte werden in vielen Mini-Stufen gebaut - für die Sie ziemlich genaue Schätzung der Preis- / Zeit geben. Vor jeder neuen Mini-Bühne beginnen, ist es wichtig, dass Sie und der Kunde sehen, Auge in Auge auf, was als nächstes ist und wie viel Zeit / Kosten werden dafür ausgegeben werden.

Wie immer gibt es Qualität, Funktionalität und Zeit (= Ressourcen), die Ihre wichtigsten Parameter sind. Wir sind nicht mit Qualität verwirren mehr, so gibt es nur Funktionen und linken Ressourcen. Ziemlich oft können Sie weg mit überzeugend, dass eine bestimmte Menge an Ressourcen bei mindestens einem bestimmten Feature-Set erreichen. Also, solange Sie eine Menge von Ressourcen finden können, die ein plausible Feature-Set liefert ich glaube, das ist genug für eine ganze Reihe von Kunden. Der Vorteil ist, dass sie Fortschritte während der Fahrt kontrollieren können, und es gibt immer die Möglichkeit, rückwärts aus.

Die Art und Weise, dass ich dies getan haben, meine aktuelle Geschwindigkeit zu verwenden ist und schätzen eine Reihe basiert auf groben Schätzungen von Komplexität (Anzahl der Stockwerke). Sie würden diese aktualisieren, wie Sie planen, die Anwendung beginnen, so dass die Entfernungsabschätzung allmählich besser und besser wird.

Zum Beispiel, um eine Schätzung von 6mos zu 2 Jahren geben (wenn Sie sicher sind, dass es weniger Zeit als 2 Jahre dauern wird. Wie Sie es nach unten in Funktionen brechen, dann für diese Funktionen planen, kommen Sie mit einem besseren und bessere Schätzungen, so dass nach 6mos können Sie sicher sagen (abwesend andere Änderungen), werden wir in weiteren 2-3 Monate (insgesamt 8-9 Monate) erfolgen. Schließlich erhalten Sie bis zu dem Punkt, wo man sagen kann, wir würde nach der nächsten Iteration (2 Wochen bis 1 Monat) durchgeführt werden.

Sie müssen dies koppeln lassen den Kunden wissen, dass das Hinzufügen von Funktionen, die Zeit bis zur Fertigstellung erhöhen, dann lassen Sie sie entscheiden, wie es weitergeht - entweder die Drop-Funktion oder die Zeit erhöhen. Für jedes Projekt, Umfang und Zeit sind wirklich die einzigen Variablen, die Sie effektiv ändern können. Qualität und Ressourcen sind ziemlich fixiert. Eigentlich kann man Ressourcen hinzufügen, aber in der Regel sehen Sie eine Zunahme in der Zeit und Abnahme der Qualität zunächst so das funktioniert nur, wenn Ihr Zeithorizont lang ist.

Ein Ansatz Sie nehmen könnte, ist dem Kunden eine allgemeine Schätzung zu geben, dass Sie glauben, relativ nahe ist. Auch geben Sie einen Prozentsatz. Der Prozentsatz wird eine Zunahme oder Abnahme Zuteilung im Budget aufgrund Anforderungen ändern.

. Beispiel: Allgemeine Schätzung von $ 10.000, aber da die Anforderungen sind vage und das Projekt könnte natürlich leicht gibt es eine +/- 30% Preisanpassung Option ändern

Auf diese Weise kann der Kunde eine allgemeine Vorstellung von dem, was zu Budget und Sie haben eine gewisse Flexibilität für das Projekt bei der Aufladung.

Dies ist eine wirklich schwierige Frage. Sehen Sie, was Robert Glass über das Thema in seinem Buch „ Fakten und Irrtümer des Software Engineering zu sagen hat “. ( Beachten Sie, dass Amazon Bücher zur Verfügung neuer für weniger hat, als sie zur Verfügung zweite Hand sind [Stand 2009-01-05 00.20 -08: 00];!. Auch bei Google Büchern )

Wenn Sie erfolgreich den Kunden ein auf Agile Ansatz verkauft haben, und die Abrechnung von Stunde zu Stunde, nicht geben ihnen eine Schätzung, wie viel es kosten wird, um das Projekt abzuschließen! . Selbst wenn sie sagen, dass sie es für Haushaltszwecke nur wollen, tut es nicht! .

Der Grund dafür ist, dass jede Schätzung von Kosten kommt als definitive Verpflichtung behandelt werden; egal, wie oft man sagen, es ist nicht, und wie oft der Kunde sagt, dass sie verstehen, dass, wird es als eine Verpflichtung behandelt werden. Auch wenn der Kunde versteht, wird ihr Chef nicht, und obwohl sie nicht in der Lage sein wird, Sie rechtlich für den Preis zu liefern zu zwingen, sagte Sie, Sie zu bekannten als Unternehmen kommen, die nicht liefern, was es versprach. eine Schätzung bietet den Vorteil, alle wegwirft von in erster Linie agil zu sein.

Was ich vorschlagen, ist ihnen zu sagen, dass Sie nicht mehr als so und einer solchen Menge vor dem Ende des Geschäftsjahres verbringen (oder was auch immer andere Abrechnungsperiode Ihr Kunde interessiert sich). Das sollte genug sein, um sie finanziell in irgendeiner Weise ohne planen zu sagen, dass das Projekt bis dahin fertig wird.

  

Dies war mein beantworten zu einem Frage geschlossen Geschichte Punkte bezogen. Ich benutze diese die ganze Zeit für Makroschätzung.

Wenn ich auf die Punkte eingeschaltet, habe ich beschlossen, es nur, wenn ich die beiden folgenden Punkte erfüllen könnten; 1) finden und das Argument, das den Schalter rechtfertigen, und das wird das Team 2) Finden Sie eine einfache Methode überzeugen, es zu benutzen.

überzeugend

Es hat mich viel über das Thema gelesen hatte, aber eine fand schließlich das Argument, das mich und mein Team überzeugt: Es ist fast unmöglich ist, zwei Programmierer zu finden, die auf die Zeit eine Aufgabe nehmen zustimmen, aber die gleichen zwei Programmierer wird mit ziemlicher immer einig, welche Aufgabe die größte ist, wenn zwei verschiedene Aufgaben gezeigt.

Dies ist die einzige Fähigkeit, die Sie benötigen, um Ihre Rückstau ‚schätzen‘. Hier verwende ich das Wort ‚schätzen‘, aber in diesem frühen Stadium mehr, es ist wie der Rückstand von schwer zu leicht zu bestellen.

Putting Punkte im Backlog

Dieser Schritt mit der Teilnahme des gesamten Scrum-Teams durchgeführt wird.

Starten Sie die Geschichten nacheinander in einer neuen Tabelle fallen, während die folgende Reihenfolge halten: die größte Geschichte an der Spitze und die kleinste an der Unterseite. Tun Sie das, bis alle Geschichten in der Liste enthalten sind.

Jetzt ist es Zeit, Punkte auf jene Geschichten zu setzen. Ich persönlich verwende das Poker Planung Scale (1 / 2,1,2,3,5,8,13,20,40,100), so ist dies, was ich für dieses Beispiel verwenden. Am unteren Ende dieser Liste werden Sie wahrscheinlich haben Mikro-Aufgaben (Dinge, die 4 Stunden oder weniger zu tun dauern). Geben Sie zu jedem Mikro Aufgaben den Wert von 1/2. Dann weiter auf die Liste den Wert 1 (nächste in der Skala) gibt die Geschichten, bis klar ist, dass eine Geschichte ist viel größer (2 statt 1, so zweimal größer). Sie nun den Wert mit ‚2‘, weiter oben die Liste, bis Sie eine Geschichte finden, die eindeutig eine 3 anstelle eines 2. diesem Prozess den ganzen Weg an die Spitze der Liste fortsetzen sollte.

Hinweis: Versuchen Sie, die überwiegende Mehrheit der Punkte zwischen 1 und 13. Die erste Zeit zu halten könnten Sie eine Reihe von großen Geschichten haben (20, 40 und 100), und Sie werden zu bremsen sie nach unten in Stücke haben kleinere oder gleich 13.

Das ist es für die Punkte und den ursprünglichen Rückstand. Wenn Sie jemals eine neue Geschichte haben, vergleichen Sie sie auf diese Liste zu sehen, wo es passt (größer / kleiner Prozess) und geben ihm den Wert seiner Nachbarn.

Velocity & Estimation (Makroplanung)

Um abzuschätzen, wie lange es dauern wird Sie durch diesen Rückstand zu gehen, tun die erste Sprint-Planung. Sprechen Sie die Summe der an den Geschichten angebracht Punkte die Teams gepflückt und VOILA !, das ist Ihre erste Geschwindigkeit zu messen. Sie können dann mit dieser Geschwindigkeit die Summe der Punkte im Rückstand teilen, zu wissen, wie viele Sprints benötigt werden.

Die Geschwindigkeit ändert und in dem ersten 2-3 Sprint absetzen, so dass es immer gut ist, auf diesem Wert im Auge zu behalten

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top