Als das Agile Manifest erstellt wurde, gab es einige „leichtgewichtige“ Entwicklungsprozesse; Andere derartige Verfahren sind seitdem entstanden. Sie werden heute zusammenfassend als „agile“ Methoden bezeichnet.
- Agilität ist eine Denk- und Handlungsweise.
- Agilität ist eine Geisteshaltung, eine Reihe von Werten und Prinzipien.
- Bei Agile geht es um kurze Zyklen, iterative und inkrementelle Bereitstellung, schnelle Fehler, das Einholen von Feedback, die frühzeitige Bereitstellung von Geschäftswert für Kunden sowie um Menschen, Zusammenarbeit und Interaktion.
Agilität ist eine Denkweise über Transparenz, Inspektion und Anpassung. Agile enthält jedoch keine Rollen, Ereignisse oder Artefakte. Dies ist ein Geisteszustand.
Zum Beispiel
Scrum ist eines der weit verbreiteten Frameworks unter dem Dach der agilen Methoden.
Es kann Ihnen helfen, agiler zu werden, aber es gibt mehr Frameworks in der agilen Bewegung, wie z. B. Kanban, XP, Crystal usw., wie in der folgenden Abbildung gezeigt:
1. Gedränge
Dies ist eine sehr beliebte Methode, die sich den Namen Football Scrum ausleiht und ihn als Metapher verwendet für:
- Tägliche Standup- Meetings,
- Scrum hat kurze Iterationen. Jede Iteration konzentriert sich auf die Bereitstellung funktionierender Software, die vom Scrum-Team entwickelt wurde.
- Sprint und Produkte haben eine strikte Priorität „Backlog“ und
- Zur Festlegung der Priorität wird eine Rolle „ Product Owner “ zugewiesen.
- Ein „ Scrum Master “ zur Aufrechterhaltung der agilen Best Practices
2. Extreme Programmierung (XP)
XP ist eine Reihe von Engineering-Praxis. Entwickler müssen über ihre Fähigkeiten hinausgehen, um diese Praktiken zu implementieren. Das Team plant einen kleinen Arbeitsaufwand und baut in einem kurzen Zeitraum, der als 1–4-wöchige Iteration bezeichnet wird.
Der Hauptunterschied zwischen XP und anderen iterativen Frameworks besteht darin, dass XP sich auf Software-Engineering-Praktiken konzentriert, die ein extremes Niveau erreichen müssen. Zum Beispiel betrachtet XP Code-Review als extrem und fördert Peer-Review in 100 % der Fälle durch Pair Programming.
3. Schnelle Anwendungsentwicklung (RAD)
Rap ist nicht nur der allgemeine Name einer Reihe von agilen und iterativen Methoden, sondern auch eine von James Martin (1991) beschriebene Methode. Rad ist für die Analyse-, Design-, Build- und Testphasen verantwortlich und entwickelt iterativ Prototypen und Versionen mit zunehmenden Funktionen.
4. Dynamische Systementwicklungsmethode (DSDM)
DSDM ist eine agile Softwareentwicklungsmethode. Es ist eine iterative und inkrementelle Methode, die hauptsächlich auf der Methode der schnellen Anwendungsentwicklung (RAD) basiert.
Der RAD-Ansatz ist jedoch normalerweise unstrukturiert und es gibt keinen gemeinsamen Prozess zwischen den RAD-Teams. Infolgedessen hat jede Organisation ihre eigenen Methoden und Rahmenbedingungen sowie geteilte Standards entwickelt, was es schwierig macht, erfahrene RAD-Praktizierende zu rekrutieren. Um dieses Problem zu lösen, wurde DSDM ins Leben gerufen.
Die Methode bietet einen vierstufigen Rahmen, einschließlich:
- Machbarkeits- und Betriebsstudie
- Funktionsmodell-/Prototyp-Iteration
- Entwerfen und erstellen Sie Iterationen
- Implementierung
5. Einheitlicher Prozess (UP)
Up ist ein iteratives und inkrementelles Framework mit mehreren Implementierungen, darunter RUP, Open-UP und Agile-UP. Ein hochgradig anpassbares Framework mit architekturzentriertem und risikozentriertem Rad-Ansatz. Jede Phase von UP wird Anfangsphase, Ausarbeitungsphase, Konstruktionsphase und Übergangsphase genannt, und jede Phase hat unterschiedliche Schwerpunkte.
6. Lean-Ansatz
Lean entstand in den 1970er Jahren in der Fertigungsindustrie. Mary und Tom Popendieck (2003) wendeten Lean-Prinzipien in ihrem Buch Lean Software Development auf die Softwareentwicklung an. Lean konzentriert sich darauf, Kunden einen Mehrwert zu bieten und Verschwendung in Prozessen zu vermeiden.
7. Kanban-Board
Kanban : ein Ansatz, der aus dem Lean Manufacturing stammt und von David Anderson (2010) weiterentwickelt wurde. Kanban basiert auf der Workflow-Visualisierung, typischerweise auf einem physischen Board, um Probleme anzugehen, die Probleme verursachen, die laufende Arbeit des Teams einzuschränken und die Anforderungen an das Team auszugleichen.
Zusammenfassung
Agile Entwicklung ist eines der Schlagworte in der Softwareentwicklungsbranche. Es ist eine andere Art, Softwareentwicklungsprojekte zu verwalten. Es ist keine spezifische Softwareentwicklungsmethode, sondern ein allgemeiner Begriff für eine Reihe von Methoden und Praktiken, die auf den im Agilen Manifest ausgedrückten Werten und Prinzipien basieren. Lösungen werden durch die Zusammenarbeit zwischen selbstorganisierenden, funktionsübergreifenden Teams entwickelt, wobei geeignete Praktiken angewendet werden, die ihrer Umgebung entsprechen.
Heutzutage sind viele andere agile Methoden im Einsatz. Dazu gehören hybride Methoden wie Scrumban , Crystal , BDD, TDD , FDD usw. sowie viele interne Anpassungen, die von verschiedenen Unternehmen entwickelt wurden.
стоимость проведения соут соут москва цена