Warum agil werden ? Dies ist die erste Frage, die mir einfällt, wenn ich daran denke, agil zu werden. Was sind die möglichen finanziellen Vorteile, die man durch Agilität erzielen kann?
Die meisten von uns sehen Kunden und Kunden sicherlich gerne als jemanden, der nicht weiß, was sie wollen. Warum ihnen überhaupt helfen? Warum nicht ihr Geld als parasitäres Unternehmen lutschen und sie von Tag zu Tag dümmer machen? Die traditionelle Softwareentwicklung ist nicht schlecht und wahrscheinlich (soweit ich gesehen habe) eine viel einfachere Umgebung als agile Projekte.
Warum also überhaupt agil werden? Was kann Agile zusätzlich (ich meine finanziell) geben, was herkömmliche Softwareentwicklung nicht kann?
agile
development-methodologies
minus sieben
quelle
quelle
Antworten:
Agile bessere Ergebnisse (näher an , was der Kunde braucht nicht unbedingt das, was er am Anfang , sagt er will ), in weniger Zeit = Geld (oder zumindest mit zuverlässigen Schätzungen). Es ist einfach eine bessere Art, Projekte durchzuführen (im Vergleich zu "Wasserfall"). Kunden sind glücklicher. Programmierer sind glücklicher. Projekte sind besser. Kommunikation ist wahr und transparent. Das leben ist gut. Was mag man beruflich nicht?
Wenn Sie gute Verkäufer haben, können Sie Ihren Kunden möglicherweise Mist verkaufen und ihnen mehr in Rechnung stellen. Finanziell macht dies Sinn. Die Realität ist viel komplizierter als die leichtgläubige Ansicht: "Wenn Sie Kunden glücklich machen, steigt Ihr Umsatz. Wenn Sie sie enttäuschen, sinkt Ihr Umsatz." Die Welt ist kein fairer Ort. Sie können Ihren Lebensunterhalt als Arschlochparasit verdienen. Viele tun es. Sie haben die Wahl, ob Sie einer sein möchten. Wenn Sie sind, werde ich nicht mit Ihnen spielen.
Ebenfalls:
quelle
Ich vermute, dass Sie mit "traditionell" eine Art Wasserfall-Workflow meinen.
Die monetären Vorteile sind vielfältig. Die Arbeitsstunden, die für die Implementierung einer zusätzlichen Funktion erforderlich sind, sind die Hauptsache. Sie können den Prozess nicht stoppen, sobald Sie ihn gestartet haben. Wenn der Client mit dem, was er erhält, nicht zufrieden ist (und "dumm" ist, kümmert sich der Client nur darum, seine Arbeit zu erledigen. Wenn Ihre Software diesen Job also nicht erledigt richtig verlieren Sie den Client).
Eine andere ist die Garantie der Kundenzufriedenheit, die auch zu mehr Verkäufen und zufriedeneren Kunden führt (und das wollen wir aus geschäftlicher Sicht).
Die Möglichkeit, Feedback zum Entwicklungszyklus zu geben, bedeutet auch, dass Sie sich an technologische Verbesserungen anpassen können (z. B. asp.NET mvc 4, die gerade verfügbar sind), was ebenfalls viel Zeit spart. Nachdem Sie eine strenge Spezifikation für das Projekt festgelegt haben, können Sie kein Upgrade auf eine neuere / bessere Technologie / Bibliothek / Asset durchführen, die möglicherweise auch Zeit spart.
Zeit ist Geld.
quelle
Ich habe eine Demonstration gesehen, die eine ziemlich gute Analogie zu den Vorteilen von Agile gegenüber traditionelleren Methoden darstellt. Es basiert auf dem Spiel Battleship. Sie und der andere Spieler setzen sich zum normalen Schlachtschiff-Gitter. Sie haben beide 20 Schüsse, die jeweils 5.000 US-Dollar kosten, was einer anfänglichen Gesamtkosten von 100.000 US-Dollar entspricht. Hier ist der Haken; Sie müssen ALLE Ihre Schüsse planen, bevor Sie einen einzigen abfeuern. Ihr Gegner wird seine Schüsse "normal" abfeuern; Machen Sie einen Schuss, sehen Sie, was passiert, machen Sie einen weiteren Schuss.
Ratet mal, wer nach 20 Schüssen mehr Treffer erzielt hat?
Die Analogie lässt sich ziemlich sauber in Agile vs Waterfall übersetzen. In Agile können Sie die Gesamtsumme von allem, was Sie bereits getan haben, berücksichtigen, wenn Sie planen, was Sie als Nächstes tun werden. Sie haben eine grundlegende Vorstellung von den Bereichen, die schwierig sein werden, und von den Bereichen, die aufgrund von Schwierigkeiten oder mangelnden Schwierigkeiten, die Sie bereits erlebt haben, einfach sein werden. Sie haben auch Feedback von Ihrem Kunden in kleineren Teilen erhalten, das besagt, dass ihm das gefallen hat oder nicht gefallen hat, und können dieses Wissen schnell einbinden, ohne viel zusätzlichen Code auf etwas aufgebaut zu haben, das der Kunde für falsch hält .
Bei herkömmlichen Wasserfallmethoden werden das gesamte System und der Entwicklungsplan geplant, bevor die Codierung jemals beginnt. Dies ist der Ansatz "Planen Sie alle Schüsse, bevor Sie einen abfeuern". Möglicherweise können Sie genau das liefern, was der Kunde verlangt hat, aber er kann es sich ansehen und sagen: "Das brauchen wir nicht." Ja, Sie erhalten Ihr Geld, weil Sie gemäß den Vertragsbedingungen geliefert haben, aber Ihre Entwickler haben ihre Zeit verschwendet, Ihr Kunde hat ihr Geld verschwendet und keiner ist mit dem Ergebnis zufrieden. Agile soll dabei helfen, indem sich die Anforderungen des Projekts während der Entwicklung ändern. Alles, was Sie noch nicht getan haben, kann sich ändern. Alles, was Sie bereits getan haben, kann sich auch ändern.
Da der Kunde entscheiden kann, woran Sie zuerst arbeiten, und Sie häufiger kleine Teile der abgeschlossenen Arbeit liefern, verfügt der Kunde möglicherweise über ein System, das er früher verwenden kann. Dies ist ein sichtbarer ROI für Ihren Kunden, wodurch der Kunde in der Regel eher bereit ist, sich an diesem komplexeren Entwicklungsprozess zu beteiligen.
quelle
Für mich kommt der Vorteil bei Festgebotsverträgen. Ich war in der Lage, feste Gebotsverträge zu gewinnen und einen effektiven Stundensatz zu erzielen, für den ich mich schämen würde, mit agilen Methoden zu sprechen. Aber es erfordert auch ein talentiertes Team, das sich zusammengetan hat, damit es sich lohnt.
Du hast recht, es ist einfacher, einen pissarmen Job zu machen und die ganze Zeit abzurechnen. Nachdem ich 16 Jahre in der Branche gearbeitet habe, habe ich meinen fairen Anteil an Skandalen gesehen. Besonders während des Dotcom-Booms. Es ist sogar möglich, denselben Betrug auszuführen und wiederholt damit davonzukommen. Aber das Gleiche ist in jeder Branche möglich. Ich wurde von Autowerkstätten betrogen. Sogar die angeblich "seriösen". Sie hören praktisch jeden Tag Geschichten über Buchhalter, die von ihren Kunden unterschlagen wurden, Prediger, die aus ihrer Kirche stehlen, Politiker, die Bestechungsgelder von großen Unternehmen entgegennehmen. Und diese werden alle als "Wirtschaftsverbrechen" eingestuft, als ob es sie besser macht. Oh, sie haben ihren Aktionären Millionen von Dollar gestohlen, aber es war ein Wirtschaftsverbrechen.
Nichts hindert Sie daran, das Vertrauen und die Erwartungen der Menschen zu nutzen. Persönlich ist es eine Frage des Stolzes. Ich würde lieber ins Bett gehen und wissen, dass ich die Erwartungen derer, mit denen ich arbeite, übertroffen habe.
quelle
Agile löst das Problem der "Lieferung" von Qualitätssoftware mit:
a) Ändern von Anforderungen - Selbst wenn der Problembereich sehr klar ist, können nicht funktionale Anforderungen wie Leistung, Sicherheit, Compliance usw. die Kernfunktionalität ändern.
b) Kurze Lieferzeiten - Die Markteinführungszeit ist äußerst wichtig, sodass Entscheidungen darüber getroffen werden müssen, was fertig ist und die Kunden mit dem Erhalt rechnen können.
c) Sich schnell ändernde Technologien - Änderungen in der Technologie sind so schnell, dass es für Projekte schwierig ist, Schritt zu halten.
d) Verbesserungen und sich ändernde Marktbedingungen - Lösungen müssen sich schnell weiterentwickeln, um den sich ändernden Marktbedingungen gerecht zu werden, und Funktionen hinzufügen, um mit anderen Produkten zu konkurrieren.
quelle
Nun, Agile zielt darauf ab, ein fertiges Produkt bis zu einem genauen Datum zu erhalten.
Traditioneller Wasserfall sollte das Gleiche tun, leidet jedoch häufig daran, dass das Scope Creep nicht richtig verwaltet wird.
Agile soll dies besser verwalten, um das "Geschäft" dazu zu führen, dass wichtige Funktionen eine höhere Priorität erhalten und zuerst bereitgestellt werden. Die Priorität von Elementen kann sich im Laufe des Projekts ändern, sobald neue Informationen verfügbar werden.
Der Vorteil ist, dass Sie etwas Nützlicheres liefern, anstatt ständig Termine zu verpassen.
quelle
Wenn Sie durch das Erstellen besserer Software nicht mehr Geld verdienen, haben Sie ein Geschäftsproblem und kein Problem mit der Entwicklungsmethodik.
Warum bieten Sie dem Unternehmen, in dem es die Verbindung zwischen Ihren Diensten und seiner Rentabilität herstellt, keinen tatsächlichen Nutzen?
quelle