XP2006
March 16th, 2010 by admin![]()
7. Konferenz über Agile Softwareentwicklung und Extreme Programmierung
In der Konferenz XP2006 drehte sich bereits zum siebten Mal in Folge alles rund um die Agile Softwareentwicklung und die Extreme Programmierung. Beide Möglichkeiten im Bereich der Softwareentwicklung hängen eng miteinander zusammen und werden von führenden Programmierern immer wieder gerne genutzt, um neue Software möglichst fehlerfrei zu entwickeln. Um ihren Horizont in diesen Bereichen zu erweitern, nahmen die führenden Programmierer auch an der XP2006 Konferenz teil. Zahlreiche Vorträge, Workshops und Reden erwarteten die Besucher. Klar und deutlich wurden die Vorteile der Extreme Programmierung, der Agilen Softwareentwicklung und der testgetriebenen Softwareentwicklung vermittelt und noch einmal dazu aufgerufen, diese Prozesse evtl. auch in die eigenen Programmieraufgaben zu übernehmen.
Vorteile der neuen Softwareentwicklungsmethoden
Die Vorteile bei der Agilen Softwareentwicklung, der Extreme Programmierung und der testgetriebenen Softwareentwicklung liegen vor allen Dingen in der Geschwindigkeit, mit der die Entwicklungen vonstatten gehen. Auch die Fehlerfreiheit der erstellten Software ist ein wichtiger, nicht zu unterschätzender Vorteil. Zudem lassen sich Budgets besser einhalten und Kundenwünsche besser umsetzen.
Wer bereits einmal auf diese Weise die Softwareentwicklung erlebt hat, weiß um die Vorzüge selbiger bestens Bescheid. Dabei können Kunden und Programmierer gleichermaßen profitieren.
Kommunikation ist alles
![]()
Ein besonderes Augenmerk bei all diesen Methoden zur Softwareentwicklung liegt dabei auf der Kommunikation. Sie muss zwischen den einzelnen Programmierern gegeben sein, aber auch zwischen Entwicklungsteam und Kunden. Während die Kommunikation zwischen den Programmierern dafür sorgt, dass auch bei Ausfällen durch Krankheit das Projekt weiter entwickelt werden kann, verhilft die Kommunikation mit Kunden zu besseren Ergebnissen.
So geht man bei diesen Formen der Softwareentwicklung davon aus, dass ein Kunde zu Beginn eines Projekts noch nicht konkret sagen kann, was er sich von diesem erwartet. Aus diesem Grund wird es auch alles andere als einfach, bereits zu Anfang konkrete Aussagen über die Softwareentwicklung und deren Ziele zu treffen.
Bei der Agilen Softwareentwicklung geht es hingegen darum, zunächst eine Software in winzigen Schritten zu erstellen. Sobald ein Modul funktionstüchtig ist, wird es dem Kunden vorgestellt. Sollte dieser Änderungswünsche haben oder erkennen, dass mittlerweile ein ursprünglich angedachtes Modul für den spezifischen Bedarf nicht mehr sinnvoll ist, lässt sich dieses noch recht einfach verändern.
Testen, Testen, Testen
Bei der Agilen Softwareentwicklung, ebenso wie bei der Extreme Programmierung und der testgetriebenen Programmierung geht es weiterhin darum, viele Tests durchzuführen. In winzigen Schritten wird ein Teilbereich eines Moduls entwickelt. Die Tests, um dieses auf Fehlerfreiheit zu prüfen, werden bereits vor der Entwicklung der Softwarekomponente entwickelt. Erst wenn diese Tests positiv bestanden wurden, wird der nächste Schritt in der Softwareentwicklung eingeführt.
Dadurch wird es möglich, dass am Ende der Softwareentwicklung ein nahezu fehlerfreies Produkt auf den Markt bzw. an den Kunden gebracht wird. Denn die Tests werden solange durchgeführt, bis die Funktionen einwandfrei funktionieren. Beim Durchfallen durch die Tests wird die Programmierung solange verbessert, bis der Fehler behoben ist.
Nichts ist so beständig wie die Veränderung
Ein weiterer Grundsatz bei der Extreme Programmierung ist die stete Veränderung. Während der Softwareentwicklung wird immer wieder klar, dass die einst festgelegten Ziele nicht mehr aktuellen Anforderungen genügen werden, wenn das Produkt fertiggestellt wird. Solche Änderungen sind bei der herkömmlichen Softwareentwicklung nur schwer in den Entwicklungsprozess zu integrieren, da kaum Absprachen zwischen Entwicklungsteam und Kunden stattfinden.
Bei der Extreme Programmierung dagegen findet eine ständige Kommunikation statt, sämtliche Änderungswünsche können zeitnah umgesetzt werden und auch spätere Änderungen, nach Abschluss des Projektes, werden aufgrund sehr einfach strukturierter Codes problemlos möglich sein.
Insofern zeigen sich die vielfältigen Vorzüge der Agilen Softwareentwicklung und der Extreme Programmierung in der praktischen Anwendbarkeit besonders deutlich. Ziel ist es, den Kunden so zufrieden wie nur irgend möglich zu stellen. Dafür muss der Kunde aber auch stets aktiv mitarbeiten und möglichst konkrete Vorstellungen von den Funktionen haben, die später mit der Software durchgeführt werden sollen.
Bilder: © Michael Hirschka, © Christian Seidel – www.pixelio.de