Es ist schwierig, jemanden zu finden, der nicht möchtemit Respekt behandelt werden. Aber es muss einen Grund für diesen Zustand geben. Zum Beispiel, wenn eine Person ein hochqualifizierter anerkannter Spezialist auf dem Gebiet der Softwareentwicklung ist. Und dafür musst du lernen. Im Rahmen dieses Artikels werden wir uns überlegen, was Agile ist, welche Vorteile es bietet und wie diese Technologie zu verstehen ist.
allgemeine Informationen
Lassen Sie uns zunächst die technischen Aspekte behandelnMomente. Was ist agil? Die Übersetzung (wörtlich) dieses Wortes aus der englischen Sprache ist "lebhaft, mobil", etwas seltener wird "flexibel" erwähnt. Dies ist übrigens eine Reduzierung. Der vollständige Name dieses Ansatzes lautet Agil Software-Entwicklung. Aber da es zu lang ist, wurde beschlossen, es zu schneiden. Und jetzt sagen sie einfach Agile. Die Übersetzung als "flexibel" wird verwendet, da sie für die reale Situation am relevantesten ist.
Was ist hier enthalten?
Wir überlegen weiterhin, was Agile ist. Hier möchte ich mich auf die Tatsache konzentrieren, dass dies ein flexibler Ansatz ist, der auf vielen verschiedenen Methoden basiert (Scrum, XP, Kanban, Lean). Um das Thema besser zu verstehen, ziehen wir Parallelen. Nehmen wir an, dass agile Technologien der Ursprung des Universums sind. Das Endprodukt ist die eigentliche Welt. Und der Urknall ist das schmerzhafteste Problem, mit dem wir uns befassen müssen - die Änderung der Liste der Produktanforderungen. Bei Erstellungsprozessen wird normalerweise ein Wasserfallmodell verwendet. In diesem Fall läuft alles nacheinander und schrittweise ab. Dieser Ansatz kann kurz ausgedrückt werden: Ich sehe das Ziel - ich gehe dorthin. Und wenn sich die Anforderungen an das Endergebnis ändern, muss manchmal fast alles neu gemacht werden. Was diese Situation noch komplizierter macht, ist der Versuch, so zu tun, als sei alles in Ordnung und wir müssten vorwärts gehen.
Und jetzt ist Agile, eine Managementmethode, darauf ausgelegtBekämpfe dies alles mit deiner Flexibilität. Dieses vorgefertigte Durcheinander minimiert verschiedene Risiken durch die Verwendung von Grundsätzen. All dies spiegelt sich im 2001 veröffentlichten Agile Manifest wider. Kurz gesagt, sie klingen so:
- Hauptsache Menschen, nicht Dinge.
- Arbeiten Sie zusammen, lesen Sie den Vertrag nicht.
- Die Dokumentation darf die Arbeit nicht beeinträchtigen.
- Ändern Sie so schnell wie möglich.
Es mag zu vage und nicht genau erscheinen, aber lassen Sie uns detaillierter werden.
Prozessanordnung
Wenn wir uns ansehen, was Agile ist, wenden wir uns einer der beliebtesten Methoden zu, die als Scrum bekannt ist. Was bietet sie? Zuerst brauchst du:
- Wählen Sie einen Product Owner aus. Ein Mensch ist für diese Rolle geeignet, was er sieht, zu welchem Ziel er gehen muss und was am Ende passieren wird.
- Entscheiden Sie sich für ein Team. Dies erfordert eine Gruppe von drei bis zehn Personen, die die Fähigkeiten haben, Ergebnisse zu erzielen.
- Wählen Sie einen verantwortlichen Spezialisten. Dies ist die Person, die die Entwicklung des Projekts verfolgt und dem Team hilft, Schwierigkeiten zu umgehen.
- Mit Schwierigkeiten umgehen.Alle bestehenden Produktanforderungen sollen an einem Ort gesammelt und Prioritäten gesetzt werden. Hier sollte der Product Owner all seine Wünsche sammeln. Dann wertet das Team sie aus und versteht, ob es umsetzbar ist und wie lange es dauert.
- Teilen Sie die gesamte Arbeitsbelastung in Zeitabschnitte auf, ein oder zwei Wochen, in denen das Team bestimmte Aufgaben erledigt.
- Die Sitzungen sollten täglich stattfinden und dürfen nicht länger als fünfzehn Minuten dauern. Die Tagesordnung sollte diskutieren, was gestern getan wurde, was für heute geplant ist und welche Hindernisse uns daran hindern, den Höhepunkt zu erreichen.
- Machen Sie für die Woche (zwei) Rezensionen, in denen das Team darüber spricht, was getan wurde. In diesem Fall ist es erforderlich, die Funktionalität von Teilen des Produkts nachzuweisen.
- Nach jedem Zeitraum müssen Probleme besprochen und Lösungen gesucht werden. Außerdem müssen alle Entwicklungen sofort umgesetzt werden.
Woran erkennen Sie Agil?
Die Managementmethodik weist unabhängig von der gewählten Richtung immer die folgenden Merkmale auf:
- Risiken minimieren. Dies ist das Hauptziel jedes flexiblen Ansatzes.
- Iterative Entwicklung. In diesem Fall bedeutet es, in kleinen Zyklen zu arbeiten.
- Das Wichtigste sind die Menschen und die Kommunikation zwischen ihnen.
Stellen wir uns einen Fluss vor. Der Kunde ist bei einer Bank. Der zweite ist das Team. In diesem Fall hat agile Entwicklung Vorteile für alle:
- Der Kunde braucht ein minimal effizientes Produkt. Während der Erstellung können sich jedoch die Bedingungen ändern.
- Es ist nützlich für das Team, mit Kollegen und dem Kunden zu kommunizieren.In diesem Fall wird das Risiko von Missverständnissen minimiert, die Transparenz von Prozessen erhöht, Probleme schnell gelöst und die Chance auf Überraschungen bei der Produkterstellung reduziert.
Sozialer Faktor
Wenn Sie erklären, was Agile ist, normalerweiseausschließlich über positive Aspekte sprechen. Tatsächlich verbessert sich die Kommunikation innerhalb des Teams. Alle Menschen konzentrieren sich auf eine Idee, schaffen keine Geheimnisse untereinander, gehen Verpflichtungen ein. Dadurch arbeitet das Team in einer angenehmen Umgebung und in einem hohen Tempo. Dieser Ansatz ermöglicht es Ihnen, das Chaos zu rationalisieren.
Seit seiner Einführung ist es in der Lage zu findenAnerkennung in der Technologiebranche. Derzeit wird es häufig für das Design neuer Softwareprodukte verwendet. In der allgemeinen Geschäftspraxis ist dieser Ansatz jedoch noch wenig bekannt. Daher wird es von denen, die noch nie zuvor mit Agile in Berührung gekommen sind, mit Vorsicht behandelt. Es sollte auch verstanden werden, dass es nur in Fällen verwendet werden sollte, in denen Menschen mit der Aufgabe der intellektuellen Arbeit konfrontiert sind.
Ein kleines Beispiel
Schauen wir uns an, wie diese Methoden funktionierenSoftware-Entwicklung. Nehmen wir an, wir haben Peter, den Product Owner. Die technischen Details kennt er nicht, aber er hat den Weitblick. Er weiß, warum das Produkt benötigt wird, welche Probleme es löst und wen es zufrieden stellt. Es gibt auch Stakeholder. Sie können das Produkt verwenden, seine Erstellung unterstützen oder anderweitig an seiner Erstellung beteiligt sein. Sie können auch User Stories hinzufügen, die die Wünsche der Stakeholder zum Ausdruck bringen. Zum Beispiel: Das System für die Buchung von Tickets für die Linienbusse Moskau-St. Petersburg muss eine Suche nach Flügen haben. Peter wird Interessenten helfen. Es übernimmt die Kontrolle über die Implementierung von User Story-Ideen. Es gibt auch ein Entwicklungsteam. Dies sind die Leute, die das funktionierende System aufbauen werden.
Da die agile Methodik verwendet wirdEntwicklung, dann werden User Stories erst bei einem großen Release angesammelt, sondern sofort nach Fertigstellung und so oft wie möglich veröffentlicht. Die Anzahl der verarbeiteten Anfragen ist der Durchsatz des Teams für eine Woche. Um nicht an Schwung zu verlieren und sich in manuellen Tests zu verzetteln, muss das Team an der automatisierten Integration arbeiten. Was ist es? Für jeden Arbeitsmoment wird ein automatischer Test geschrieben. Wenn es zu viele Geschichten gibt, kann es zu Hektik, Motivationsverlust, Produktivitäts- und Qualitätsverlust kommen. Für solche Fälle bietet sich die Methode "Wetter von gestern" an. Es liegt darin, dass Sie den Arbeitsaufwand strikt begrenzen und sorgfältig auswählen müssen, was genau umgesetzt wird. Das bereits erwähnte „Kanban“ schlägt vor, ein Aufgabenlimit festzulegen.
Was tun mit der Warteschlange?
Okay, das Team hat beschlossen, dass sie es könnenvier Geschichten pro Woche verarbeiten. Aber wie findet man sich in allem zurecht? Nehmen wir an, Benutzer reichen zehn Geschichten pro Woche ein. Vier werden verarbeitet. Somit wird die Warteschlange ständig wachsen. In diesem Fall gibt es nur eine wirksame Methode - das Wort "Nein". Dies ist für den Product Owner extrem wichtig. Ja zu sagen ist nicht schwer. Es ist viel schwieriger und wichtiger zu entscheiden, was man nicht tun soll. Darüber hinaus ist es auch notwendig, dafür Verantwortung zu tragen. Daher gilt es zu entscheiden, worauf jetzt geachtet und was verschoben werden soll. Die richtige Priorisierung erfordert, dass der Product Owner den Wert und den Umfang jeder Story versteht.
Wir treffen Entscheidungen
Einige der Geschichten werden dringend benötigt.Andere sind nur ein netter Bonus. Manche Geschichten brauchen mehrere Stunden, um sich zu entwickeln. Andere brauchen Monate, um sie zu erstellen. Viele Leute ziehen oft eine Beziehung zwischen der Größe einer Geschichte und ihrem Wert. Aber das ist nicht immer richtig. Mehr ist nicht gleich besser. Die Komplexität und der Wert der anstehenden Aufgabe helfen Peter dabei, die richtigen Prioritäten zu setzen. Wie kann man diese Eigenschaften quantifizieren? Auf keinen Fall. Dies ist ein echtes Ratespiel. Und für mehr Effizienz ist es notwendig, viele Leute daran zu beteiligen. Dabei handelt es sich sowohl um ein Entwicklungsteam, das über den Arbeitsumfang als auch die Interessengruppen informiert. Es versteht sich jedoch, dass alle auf diese Weise erhaltenen Daten ungefähre Schätzungen sind. Genaue Zahlen gibt es hier nicht. Anfangs wird es Fehlschläge geben. Aber mit zunehmender Erfahrung nehmen ihre Zahl und ihr Umfang ab.
Mögliche Risiken
Um Probleme zu vermeiden, sind ehrliche Antworten auf eine Reihe von Fragen erforderlich. Das:
- Tun wir das Richtige? Dies ist ein Geschäftsrisiko.
- Können wir das Notwendige umsetzen? Dies ist ein soziales Risiko.
- Wird das Projekt auf dieser Plattform funktionieren. Dies ist ein technisches Risiko.
- Werden wir genug Geld haben und werden wir es rechtzeitig schaffen? Dies sind die Risiken der Implementierungszeit und -kosten.
In diesem Fall ist Wissen gefragt.Sie können als das Gegenteil von Risiken angesehen werden. Wenn eine signifikante Unsicherheit erfasst wird, dann erwerben wir Wissen – erstellen beispielsweise Schnittstellenprototypen oder technische Experimente. Und da wir sie bereits besitzen, treffen wir Entscheidungen über die Richtung, in die wir uns bewegen.
Wie lernt man?
Die IT-Branche entwickelt sich extrem schnell, undUm am Ende nicht zu verlieren, ist es notwendig, ständig zu lernen, Fähigkeiten und Arbeitseffizienz zu verbessern. Daher sind die Themen Training und Implementierung aktueller denn je. Wo soll ich anfangen? Am besten kooperieren Sie mit einem Unternehmen, das bereits Agile einsetzt. Das Training wird dann von Leuten durchgeführt, die nicht vom Hörensagen wissen, was Agil ist. Aber das ist leider nicht immer möglich. Meistens ist ein externer Spezialist beteiligt, der weiß, was Agile ist. Die Umsetzung dieses Ansatzes erfolgt unter seiner Aufsicht. Die Dienste eines solchen Spezialisten kosten zwar Geld. Aber wenn Sie eine wirklich sachkundige Person bekommen, zahlen sich alle Kosten hundertfach aus. Tatsächlich spielt in der modernen Welt die Effektivität der Mitarbeiter eine wichtige Rolle.
Was ist in der Zukunft?
Die Methoden der Softwareentwicklung entwickeln sich ständig weiter.Sie suchen nach neuen Wegen und Möglichkeiten, um die Effizienz von Aktivitäten und Arbeiten zu verbessern. Zu sagen, was uns in Zukunft erwartet, ist ziemlich problematisch. Wahrscheinlich wird das flexible Entwicklungssystem in die Automatisierung von Produktionsprozessen integriert. So wird es beispielsweise möglich sein, Probleme auch außerhalb des Unternehmensstandorts zu lösen. Die Zukunft wird in vielerlei Hinsicht von neuen Informationstechnologien bestimmt. Denn wenn sie entstehen, müssen Sie neue Methoden der Arbeit mit ihnen beherrschen. Und in diesem Fall gibt es eine Entwicklung, die sich in einem Kreislauf schließt.
Abschließend
Damit endet die Exkursion in agile Methoden.Entwicklung. Aber es sollte daran erinnert werden, dass Theorie eine Sache ist und Praxis eine ganz andere. Ständig entstehende neue Informationstechnologien stellen eine große Entwicklergemeinde vor Herausforderungen. Wie können Sie Ihr Team effizienter machen? Die Antwort auf diese Frage findet jeder selbst. Die hier präsentierten Informationen können verwendet werden, um das Rückgrat zu formen. In der Praxis muss man aber mit dem bestehenden Modell arbeiten und den Stand der Dinge auf einen Stand der Übereinstimmung mit den bestehenden Herausforderungen bringen. Dann wird das Team in der Lage sein, die ihm gesetzten Ziele effektiv zu erfüllen.