Wie zu meiner Großmutter, was Agile für 15 Minuten mit Bildern zu erklären,
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
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.
Diese Akteure. Sie werden das Produkt verwenden, um sie zu unterstützen oder wie jemand anderes an der Entwicklung beteiligt zu sein.
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."
Haben Interessenten eine Menge Ideen, und Pat hilft, die Ideen der User Stories machen.
Dies ist ein Team von Entwicklern. Diejenigen, die ein funktionierendes System zu bauen.
Kapazität
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.
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.
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.
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"
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.
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
- 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:
Im Hinblick auf den Wert für den Kunden sieht diese Kurve wie.
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
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?
Im Idealfall - alle drei auf einmal, aber in Wirklichkeit müssen wir wählen.
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:
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:
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
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
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.
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?
Dies ist eine Frage mit einem festen Gehalt und unbestimmt. Zur Beantwortung Pat verwendet zwei Trendlinien. Die Antwort - im April oder Mai.
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.
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
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
Kommentare
im Auge kommentierte halten , dass der Inhalt und der Ton Ihrer Nachrichten , die Gefühle von echten Menschen verletzen können, Respekt und Toleranz gegenüber seinen Gesprächspartnern, auch wenn Sie Ihr Verhalten in Bezug auf die Meinungsfreiheit und die Anonymität des Internets, ändert ihre Meinung nicht teilen, nicht nur virtuell, sondern realen Welt. Alle Kommentare werden aus dem Index, Spam - Kontrolle versteckt.