© saicle/Shutterstock.com
PHP Magazin
Agile Methoden

Kolumne: A2 - alles Agile

Agile Softwareentwicklung ist aus der heutigen IT-Landschaft nicht mehr wegzudenken. Immer mehr Unternehmen haben die Vorteile dieses Ansatzes erkannt und setzen ihn vermehrt nicht nur in der Softwareentwicklung sondern im gesamten Unternehmen ein. In diesem Teil werden wir einen Blick auf agile Methoden im Allgemeinen werfen.

René Schröder


Die agile Softwareentwicklung unterteilt sich vornehmlich in drei Teilbereiche: dem agilen Prinzip, den agilen Methoden und den agilen Prozessen. Agile Prinzipien sind im agilen Manifest zusammengefasst, welches aus zwölf Unterpunkten besteht. So sind z. B. die Selbstorganisation und die Selbstreflexion der Teams essenziell für die agile Softwareentwicklung. Für mich der wichtigste Punkt im agilen Manifest ist die Zufriedenheit des Kunden, bzw. der Stakeholder, welche dadurch erreicht wird, schnell und zuverlässig gute Software bereitzustellen. Diese zwölf Prinzipien werden unter anderem dadurch erreicht, dass agile Methoden angewandt werden, welche ich im folgenden anreißen möchte.Viele dieser Methoden spielen ihre Stärken auch deshalb aus, weil sie die Kommunikation zwischen beteiligten Parteien fördern oder forcieren. Aus eigener Erfahrung kann ich vermehrt feststellen, dass schlechte Software auch deshalb entsteht, weil an den entscheidenden menschlichen Schnittstellen zu wenig oder zu unstrukturiert kommuniziert wird. Oft kommt es vor, dass Anforderungen interpretiert werden, wo eine konkrete Nachfrage vonnöten wäre – eine Nachfrage aber aus dem Grund ausbleibt, da die betreffende Person nicht als „schwer von Begriff“ dastehen möchte. Nachfragen bleiben auch deshalb aus, weil die Notwendigkeit nicht erkannt wurde; es vermeintlich eindeutig ist. Das Kommunikationsproblem kann durch zwei Methoden verbessert werden: dem Pair Programming und den Code-Reviews. Bei beiden Methoden arbeiten immer zwei Entwickler an einer konkreten Implementierung und reflektieren sich gegenseitig.Pair ProgrammingDas Konzept darf nicht so verstanden werden, dass immer der gleiche Entwickler schreibt und der zweite kontrolliert. Beide Entwickler sind gleichberechtigt in der Ausführung beider Aufgaben und müssen sich regelmäßig abwechseln. Ebenso zu empfehlen ist, dass die Zweierteams möglichst oft durchgetauscht werden. Auch dieses Prinzip erhöht die Kommunikation und damit perspektivisch die Softwarequalität. Es ist neben vielen angesprochenen Nebeneffekten das Hauptziel des Pair Programming, dass sich die Softwarequalität erhöht. Neben der erhöhten Softwarequalität vermindert das Pair Programming auch Codeinseln, welche nur ein oder wenige Entwickler kennen; die Codebasis wird von vielen Entwicklern gepflegt und gekannt.Code-ReviewsEin Code-Review kann wie folgt ablaufen: Hat ein Entwickler im Team ein Requirement implementiert, bittet er einen anderen Entwickler, sich di...

PHP Magazin
Agile Methoden

Kolumne: A2 - alles Agile

Agile Softwareentwicklung ist aus der heutigen IT-Landschaft nicht mehr wegzudenken. Immer mehr Unternehmen haben die Vorteile dieses Ansatzes erkannt und setzen ihn vermehrt nicht nur in der Softwareentwicklung sondern im gesamten Unternehmen ein. In diesem Teil werden wir einen Blick auf agile Methoden im Allgemeinen werfen.

René Schröder


Die agile Softwareentwicklung unterteilt sich vornehmlich in drei Teilbereiche: dem agilen Prinzip, den agilen Methoden und den agilen Prozessen. Agile Prinzipien sind im agilen Manifest zusammengefasst, welches aus zwölf Unterpunkten besteht. So sind z. B. die Selbstorganisation und die Selbstreflexion der Teams essenziell für die agile Softwareentwicklung. Für mich der wichtigste Punkt im agilen Manifest ist die Zufriedenheit des Kunden, bzw. der Stakeholder, welche dadurch erreicht wird, schnell und zuverlässig gute Software bereitzustellen. Diese zwölf Prinzipien werden unter anderem dadurch erreicht, dass agile Methoden angewandt werden, welche ich im folgenden anreißen möchte.Viele dieser Methoden spielen ihre Stärken auch deshalb aus, weil sie die Kommunikation zwischen beteiligten Parteien fördern oder forcieren. Aus eigener Erfahrung kann ich vermehrt feststellen, dass schlechte Software auch deshalb entsteht, weil an den entscheidenden menschlichen Schnittstellen zu wenig oder zu unstrukturiert kommuniziert wird. Oft kommt es vor, dass Anforderungen interpretiert werden, wo eine konkrete Nachfrage vonnöten wäre – eine Nachfrage aber aus dem Grund ausbleibt, da die betreffende Person nicht als „schwer von Begriff“ dastehen möchte. Nachfragen bleiben auch deshalb aus, weil die Notwendigkeit nicht erkannt wurde; es vermeintlich eindeutig ist. Das Kommunikationsproblem kann durch zwei Methoden verbessert werden: dem Pair Programming und den Code-Reviews. Bei beiden Methoden arbeiten immer zwei Entwickler an einer konkreten Implementierung und reflektieren sich gegenseitig.Pair ProgrammingDas Konzept darf nicht so verstanden werden, dass immer der gleiche Entwickler schreibt und der zweite kontrolliert. Beide Entwickler sind gleichberechtigt in der Ausführung beider Aufgaben und müssen sich regelmäßig abwechseln. Ebenso zu empfehlen ist, dass die Zweierteams möglichst oft durchgetauscht werden. Auch dieses Prinzip erhöht die Kommunikation und damit perspektivisch die Softwarequalität. Es ist neben vielen angesprochenen Nebeneffekten das Hauptziel des Pair Programming, dass sich die Softwarequalität erhöht. Neben der erhöhten Softwarequalität vermindert das Pair Programming auch Codeinseln, welche nur ein oder wenige Entwickler kennen; die Codebasis wird von vielen Entwicklern gepflegt und gekannt.Code-ReviewsEin Code-Review kann wie folgt ablaufen: Hat ein Entwickler im Team ein Requirement implementiert, bittet er einen anderen Entwickler, sich di...

Neugierig geworden?


   
Loading...

Angebote für Teams

Für Firmen haben wir individuelle Teamlizenzen. Wir erstellen Ihnen gerne ein passendes Angebot.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang