Wie zu meiner Großmutter, was Agile für 15 Minuten mit Bildern zu erklären,

Agile für 15 Minuten mit Bildern
Big Bild in einem neuen Fenster drücken!

Agile Entwicklung (Englisch Agile Software - Entwicklung, agile-Methoden.) - Eine Reihe von Ansätzen zur Software - Entwicklung orientierte Nutzung von iterative Entwicklung einer dynamischen Bildung von Anforderungen und die Gewährleistung ihrer Umsetzung als Folge der ständigen Interaktion innerhalb der selbstorganisierenden Arbeitsgruppen, bestehend aus Experten aus verschiedenen Bereichen. Es gibt verschiedene Techniken, um die Klasse der agilen Entwicklungsmethoden im Zusammenhang, wie Extreme Programming, DSDM-, Scrum, FDD.

Es wird als eine wirksame Praxis der Organisation von kleinen Gruppen von Arbeit im Zusammenhang mit der Verwaltung des kombinierten (liberalen und demokratischen) Methode (die eine einheitliche kreative Arbeit machen) verwendet. Die meisten agilen Methoden sind auf die Minimierung des Risikos ausgerichtet durch Iterationen Informationen für eine Reihe von kurzen Zyklen genannt zu entwickeln, die dauern in der Regel zwei bis drei Wochen. Jede Iteration in sich selbst sieht aus wie ein Miniatur-Software-Projekt und enthält alle erforderlichen Aufgaben für die Ausgabe des Mini-Zuwachs Funktionalität: Planung, Bedarfsanalyse, Design, Programmierung, Test und Dokumentation. Obwohl eine separate Iteration, in der Regel, um die neue Version des Produkt-Release nicht ausreichend ist, ist es selbstverständlich, dass die flexible Software-Projekt zur Veröffentlichung bereit am Ende jeder Iteration. Am Ende jeder Iteration führt das Team eine Neubewertung der Entwicklungsprioritäten.

Agile-Methoden konzentrieren sich auf die direkte Kommunikation von Angesicht zu Angesicht. Die meisten agile-Befehle im selben Büro befinden, manchmal Englisch. bullpen. Auf ein Minimum, es enthält und "Kunden" (Englisch Product Owner - der Kunde oder sein Bevollmächtigter, der Festlegung der Anforderungen an das Produkt ;. Diese Rolle der Projektmanager durchführen können, Business Analyst oder Client). Das Büro kann auch Tester, Interface Designer, technische Redakteure und Manager. Die wichtigsten metrischen agile-Methoden ist ein funktionierendes Produkt. Möglichst direkte Kommunikation, reduzieren agile-Methoden, um die Menge an schriftlichen Unterlagen im Vergleich zu anderen Methoden. Dies hat zu Kritik an diesen Methoden als widerspenstig geführt.

Die am häufigsten betrachteten Video auf YouTube agile Thema. 744625 Ansichten zum Zeitpunkt der Veröffentlichung dieses Artikels. Einfache Art des Schreibens, Bilder, und nur 15 Minuten - das Beste, was ich je gesehen habe. TED ruht.

"Jedes Unternehmen dauert immer länger als erwartet, auch in das Gesetz Konto Hofstadter nehmen." - Gesetz Hofstadter

Rolle

Agile за 15 минут с картинками

Es ist Pat, der Besitzer des Produkts. Sie weiß nicht, die technischen Details, aber es hat eine Vision des Gesamtbildes, wir wissen, warum wir das Produkt zu tun, welche Probleme es zu lösen und für wen.

Agile за 15 минут с картинками

Diese Akteure. Sie werden das Produkt verwenden, um sie zu unterstützen oder wie jemand anderes an der Entwicklung beteiligt zu sein.

Agile за 15 минут с картинками

Diese User Stories. Sie äußerten Wünsche der betroffenen Personen. Zum Beispiel, "auf dem Ticket-Reservierungssystem, muss der Benutzer für Flüge zu suchen."

Agile за 15 минут с картинками

Haben Interessenten eine Menge Ideen, und Pat hilft, die Ideen der User Stories machen.

Agile за 15 минут с картинками

Dies ist ein Team von Entwicklern. Diejenigen, die ein funktionierendes System zu bauen.

Agile за 15 минут с картинками

Kapazität

Agile за 15 минут с картинками

Da das Team eine flexible Entwicklungsmethode verwendet, speichern Sie sie nicht alle diese Geschichten auf die große Release, im Gegenteil, sie sie unverzüglich freizulassen und so oft wie möglich. Sie produzieren in der Regel 4-6 User Stories in der Woche. Es ist ihre Bandbreite. Es ist sehr einfach zu messen - die Zahl der User Stories in den letzten 7 Tagen.

Einige Geschichten sind groß, können sie in zwei in Betracht gezogen werden, einige sind klein, können sie für die Hälfte berücksichtigt werden.

Um diesen Rhythmus und nicht zu halten in der manuellen Regressionstests zu verzetteln, arbeitet das Team hart testirovaniemi automatische kontinuierliche Integration. Daher ist für jeden müssen Sie Auto-Tests schreiben, und die meisten der Code hat eine integrierte Auto-Tests.

Agile за 15 минут с картинками

Das Problem ist, dass viele der Betroffenen und ihre Bedürfnisse nicht 4-6 Geschichten pro Woche erfüllt werden.

Jedes Mal, wenn wir eine User Story zu implementieren, sie haben ein paar Ideen, aus denen es weitere Anfragen folgt.

Was passiert, wenn wir das tun, was sie für uns fragen? Wir werden überlasten.

Agile за 15 минут с картинками

Zum Beispiel wird die Team 10 neue Geschichten für diese nedelyu.Esli Einlass zu machen 10 und dem Ausgang 4-6, wird das Team überlastet werden. Wird eilen zwischen den Aufgaben zu wechseln, verlieren die Motivation, als Folge der reduzierten Produktivität und Qualität. Dies ist eine verlorene Strategie.

Scrum und XP in diesem Fall die Methode der "gestrigen Wetter." Das Team sagt: "Vor kurzem haben wir eine Woche 4-6 Merkmale haben, 4-6 Funktionen, die wir nächste Woche tun?"

Product Owner Ziel ist es intelligent zu entscheiden, welche User Stories in dieser Woche umgesetzt werden.

Kanban wird empfohlen, mehrere Aufgaben zu begrenzen - WIP Grenze. Lassen Sie das Team entscheidet, dass die 5 - ist eine akzeptable Anzahl von Benutzergeschichten, über die sie in der gleichen Zeit ohne Nachladen arbeiten können, nicht von einem zum anderen zu springen.

Agile за 15 минут с картинками

Beide Ansätze funktionieren gut und sie sowohl eine Task-Warteschlange zu erstellen, die das Backlog in Scrum genannt wird, oder eine Liste von Aufgaben priorisiert.

Diese Warteschlange ist auch notwendig, upravlyat.Esli Beteiligten 10 Geschichten in der Woche anfordert, und das Team realisiert die 4-6 Geschichten, wird dieser Ort mehr und mehr. Und bald wird Ihr Backlog in den nächsten sechs Monaten lackiert werden. Das ist eine andere Geschichte für 6 Monate warten.

Es gibt nur einen Weg, um eine Liste der Aufgaben unter der Aufsicht zu halten - das Wort "nein"

Agile за 15 минут с картинками

Dies ist das wichtigste Wort für den Product Owner. Er muss es trainieren jeden Tag in den Spiegel.

Sagen Sie "Ja" - leicht. Aber wichtiger Aufgabe - zu entscheiden, was zur Rechenschaft zu tun und nicht gehalten werden. Der Product Owner legt auch die Reihenfolge von dem, was wir jetzt tun, und was später. Es ist harte Arbeit, und es muss zusammen mit dem Entwicklungsteam und mindestens ein Interessent durchführen.

Agile за 15 минут с картинками

Priorisieren, sollte das Produkt Eigentümer den Wert jeder Geschichte zu verstehen und ihr Volumen.

Entscheidungs

Einige Geschichten sind wichtig, und einige sind nur Bonus-Features. Die Entwicklung einiger Geschichten werden ein paar Stunden für die Entwicklung von anderen nehmen - Monate.

Wie funktioniert die Größe der Geschichte und ihren Wert? Nichts.

Mehr bedeutet nicht besser. Wert und Komplexität des Problems - das ist, was macht Pat priorisieren.

Als der Besitzer des Produkts bestimmt den Wert und das Volumen der Geschichten? Nichts.

Es ist ein Ratespiel. Und das Beste in allem. Pat kommuniziert ständig mit den betroffenen Personen den Wert jeder Geschichte zu wissen, beschäftigt sich mit dem Entwicklungsteam, um die Menge an Arbeit zu wissen, aber es ist grobe Schätzung, gibt es keine genauen Zahlen. Zu Beginn wird es immer Fehler und das ist in Ordnung. Viel wertvoller ist die Kommunikation als extrem genaue Zahlen.

Jedes Mal, wenn die Entwickler etwas Neues veröffentlicht, erfahren wir mehr Informationen und sind besser in der Lage zu navigieren.

Eine Priorisierung genug. Zur Herstellung von Geschichten schnell und müssen oft in Stücke gebrochen werden, die in ein paar Tagen getan werden kann. Wir wollen im Anfang des Trichters waren klein und deutlich Geschichte und am Ende - eine große und unsicher. Im Laufe der Zeit eine solche Panne zu tun, können wir die Vorteile unserer neuesten Entdeckungen über das Produkt und die Bedürfnisse des Benutzers übernehmen. Es ist die Reinigung Backloga genannt.

Pat trifft Backloga jeden Mittwoch von 11 bis 12 Reinigung Normalerweise es an das ganze Team geht und manchmal mehrere Akteure. Der Inhalt der Sitzungen ist unterschiedlich. Die Konzentration auf die Auswertung auf den Abbau von Geschichten auf die Annahmekriterien.

Der Inhaber eines IT-Produkts müssen ständig mit allen kommunizieren

Am schlimmsten Besitzer des Produktes Release 2-Komponenten des Erfolgs: Leidenschaft für die Arbeit und Kommunikation. Was sind die Ziele des Produkts Eigentümer entscheidet, mit dem Team zu platzieren.

Die Balance zwischen Design-Komplexität und der Wert der Benutzergeschichten

In einem frühen Stadium der Balance droht Unsicherheit und mehrere Risiken.

Risiken

Agile за 15 минут с картинками

  • Geschäftsrisiko: "Tun wir das Richtige?"
  • Soziale Risiko: "Wird es möglich sein, zu tun, was Sie brauchen?"
  • Technisches Risiko: "Wird der Projektarbeit auf der Plattform?"
  • Risiken in Bezug auf die Kosten und den Zeitpunkt der Umsetzung: "Wir werden es dort zu machen, und wenn das Geld ist genug?"

Wissen kann als das Gegenteil von Risiko zu sehen. Wenn die Unsicherheit groß ist, konzentrieren wir uns auf den Erwerb von Wissen - Interface Prototypen, technische Experimente.

Die Trade-off zwischen dem Wert des Wissens und der Wert für den Kunden

Aus der Perspektive des Kunden Kurve sieht wie folgt aus:

Agile за 15 минут с картинками

Im Hinblick auf den Wert für den Kunden sieht diese Kurve wie.

Agile за 15 минут с картинками

Wie Unsicherheit reduziert wird, können wir auf den Kundennutzen konzentrieren. Wir wissen, was zu tun ist. Es bleibt nur noch zu tun. Sobald die grundlegende Geschichte umgesetzt, werden wir Bonus-Features machen oder ein neues Projekt zu starten.

Die Trade-off zwischen kurzfristigen und langfristiges Denken

Agile за 15 минут с картинками

Wie in erster Linie umgesetzt? Dringend fix Bugs oder beginnen eine erstaunliche Eigenschaft zu entwickeln, die Anwender begeistern wird. Oder komplexe Plattform-Upgrade, das die Arbeit in der Zukunft beschleunigen wird. Es ist notwendig, ständig ein Gleichgewicht zwischen reaktiven und proaktiven Arbeit aufrechtzuerhalten.

Tun Sie das Richtige, die Dinge richtig tun oder schnell zu tun?

Agile за 15 минут с картинками

Im Idealfall - alle drei auf einmal, aber in Wirklichkeit müssen wir wählen.

Agile за 15 минут с картинками

Angenommen, wir sind hier. Wir versuchen, das perfekte Produkt mit Hilfe eines idealen Architektur zu schaffen. Wenn wir eine Menge Zeit damit verbringen, können wir nicht in die "Marketing-Box" erhalten und wir werden ein Problem mit Geld. oder:

Agile за 15 минут с картинками

Wir tun unser Bestes, um schnell Produktprototyp. Für die kurze Sicht ist es nicht schlecht. Auf lange Sicht - wir bekommen das technische Risiko. Und die Entwicklungsgeschwindigkeit auf Null zu verringern. oder:

Agile за 15 минут с картинками

Wir sind hier, wir schaffen einen schönen Tempel in Rekordzeit. Aber der Benutzer brauchte keinen Tempel, er brauchte einen Campervan.

Zwischen Rollen in Scrum ist es eine gesunde Opposition

Agile за 15 минут с картинками

Der Product Owner ist auf den Aufbau, die richtigen Dinge konzentriert. Das Team konzentriert sich auf, wie die Dinge zu bauen, richtig. Scrum-Master-oder agile-Trainer konzentriert sich auf die Verringerung der Rückkopplungsschleife.

Wir sollten betonen auch die Bedeutung der Geschwindigkeit, so KKAK kurze Feedback-Zyklus Lernen beschleunigt. Dies ermöglicht es uns, schnell herauszufinden, was sind die Dinge richtig und wie man richtig zu bauen.

Die Trade-off zwischen der Entwicklung neuer Produkte und die Verbesserung der alten

Agile за 15 минут с картинками

Das Produkt kann nie fertig werden, denn er ändert sich ständig benötigt. Wenn die Teamarbeit an einem neuen Produkt beginnt, was passiert dann mit dem alten? Produkttransfer von einem Team zum anderen - ein sehr teuer und riskant. Normalerweise steht das Team das alte Produkt, eine neue zu entwickeln. Daher eher das Konzept der "Rückstand" bezieht sich nicht auf das Produkt und für das Team. Backlog - eine Liste der Dinge, die der Besitzer ein Produkt aus einem Team will. Und eine Reihe von Geschichten für verschiedene Produkte. Produkt Besitzer sollte immer wählen, die am besten für die Umsetzung.

Zeitplan Zerstörung Geschichten

Von Zeit zu Zeit werden die Interessengruppen Pat fragen: "Wenn meine Freilassung You" oder "Wie viele Funktionen für Weihnachten freigegeben?". Der Product Owner sollte in der Lage sein, die Erwartungen der Benutzer zu verwalten. Und die Erwartungen realistisch zu verwalten.

Agile за 15 минут с картинками

Zwei Trend - optimistische und pessimistische (man kann auf das Auge). Der Abstand zwischen der Trend zeigt, wie instabil die Geschwindigkeit des Teams. Im Laufe der Zeit werden diese Trends zu stabilisieren und die Unsicherheit Kegel abnehmen wird.

Angenommen, die betreffende Person fragt, wo ist wird diese Funktion gemacht werden?

Agile за 15 минут с картинками

Dies ist eine Frage mit einem festen Gehalt und unbestimmt. Zur Beantwortung Pat verwendet zwei Trendlinien. Die Antwort - im April oder Mai.

Agile за 15 минут с картинками

Der Interessent fragt Pat: "Was wird für Weihnachten zu tun?" Diese Frage ist ein fester Begriff und unsichere Inhalte. Trendlinien schneiden auf der vertikalen Skala des wahrscheinlich abgeschnitten, die Zeit zu implementieren haben.

Agile за 15 минут с картинками

Der Interessent fragt: "Werden wir diese Funktionen hier zu Weihnachten machen können?" Diese Frage eine feste Zeitrahmen und Fixed Content. Die Konzentration auf Trends, Pat antwortete: "Nein". Hinzufügen: "Bis Weihnachten wir Zeit so viel zu tun haben, aber so viel Zeit, die wir brauchen ganz all diese Arbeit zu vollenden."

Normalerweise ist es am besten, den Inhalt des Projekts zu reduzieren, als die Zeit zu erhöhen. Wenn wir den Inhalt reduzieren, werden wir in der Lage sein, Bedingungen zu entfernen. Wir können hier etwas loslassen, und der Rest - später.

Das Produkt Besitzer macht wöchentliche Zahlungen und verwendet ausschließlich empirische Evidenz, kein Wunschdenken. Er spricht offen über die Unsicherheit. Das Team hält das Tempo der Arbeit, und Pat ist kein Druck auf sie, beschleunigt zu verursachen.

Mehrere Teams

Agile за 15 минут с картинками

Lassen Sie uns ein paar Produkt Besitzer und mehrere Teams haben. Das Modell ist das gleiche - Bandbreiten-Management, Kommunikation mit den Beteiligten, Entscheidungs ​​über Abweichung User Stories. Die Rate ist die Summe der Geschwindigkeiten aller Teams. Forecasting kann generell oder für jedes Team sein. Die Besitzer der Produkte gibt es ein zusätzliches Problem - die Kommunikation mit anderen Produkt Eigentümer. Es ist notwendig, die Arbeit an Backlogami zu organisieren Abhängigkeit zu minimieren und die Synchronisation zu gewährleisten. Bei großen Projekten erfordern Chief Product Owner (CPO), alle anderen zu synchronisieren.

Videos in Englisch

Video auf Russisch

Um Via Agile das Produkt das Eigentum auf den Punkt a & habrahabr.ru & das Wiki