Stellen Sie sich vor, Sie sind der Leiter einer neuen Lebensmittel-Handelskette. Ihre qualitativ
hochwertigen Produkte finden bei der Kundschaft so reißenden Absatz, dass Sie seit mehreren
Monaten stark expandieren. Dabei hat natürlich auch die Anzahl Ihrer Mitarbeiter beträchtlich
zugenommen. Doch mit Ihrem eingesetzten Gehaltsabrechnungssystem (GAS) stoßen Sie
langsam an Grenzen. Um Ihre weitere Planung einhalten zu können, benötigen Sie bis zum
Jahresende ein für Sie adäquates GAS, das sich durch genauso hohe Qualität wie Ihre Produkte
auszeichnet. Unter hoher Qualität verstehen Sie in diesem Kontext Software, die sowohl (nahezu)
intuitiv bedienbar und (möglichst) fehlerfrei ist, als auch funktional das bietet, auf was Sie
wirklich angewiesen sind. Auf überflüssige Funktionalität verzichten Sie gerne, denn Sie erhöht
nur das Risiko einer Terminverzögerung und damit nicht nur die Gefahr eines Budgetüberzugs...
Weiterhin würde es Ihnen sehr entgegenkommen, wenn Sie in regelmäßigen Zeitabständen eine
funktionierende (Vorab-)Version des GASs erhielten. Schließlich könnten Sie auf diese Weise
sehen, was aus Ihrem investierten Kapital geworden ist und Sie könnten die Software teilweise
schon einsetzen und dabei gleich auch noch testen! Gäbe es eine Software-Schmiede, die Ihre
Wünsche und Vorstellungen bezüglich des GASs umsetzen würde, dann wären Sie auch dazu
bereit, den Entwicklern Ihre Mitarbeiter über die gesamte Projektdauer vor Ort zur Verfügung
zu stellen.
Ein u.a. für diese Ansprüche geeigneter Ansatz zur Softwareentwicklung entstand, als Kent
Beck, Ward Cunningham und Ron Jeffries im Jahre 1996 mit der Entwicklung von Extreme
Programming (XP) begannen [11]. Nach der Vollendung von XP beschrieb Beck dessen Prinzipien
in seinem Manifest [1]. Da ein Manifest jedoch eine Erklärung von Grundsätzen darstellt,
befasst es sich nicht mit einer Umsetzung dieser. Der folgende Text zeigt deshalb Möglichkeiten
auf, wie XP in der Praxis realisiert werden kann. Zuvor soll sich aber noch eine Erläuterung
von XP im nächsten Kapitel anschließen.
Inhaltsverzeichnis
- 1 Motivation
- 2 eXtreme Programming
- 3 Der XP-Entwicklungsprozess
- 4 Der Kunde vor Ort
- 5 User Stories
- 6 Akzeptanz-Tests
- 7 Release- und Iterations-Planung
- 7.1 Release-Planung
- 7.2 Iterations-Planung
- 8 Programmierung
- 9 Programmieren in Paaren
- 10 Testen, Testen, Testen
- 11 Fortlaufende Integration
- 12 Abschließende Betrachtung
Zielsetzung und Themenschwerpunkte
Diese Studienarbeit untersucht die praktische Umsetzung von Extreme Programming (XP) in der Softwareentwicklung. Ziel ist es, die Prinzipien und Verfahren von XP zu erläutern und anhand von Beispielen deren Anwendung aufzuzeigen. Die Arbeit fokussiert auf die Herausforderungen und Möglichkeiten agiler Softwareentwicklung in kleinen Teams.
- Agile Softwareentwicklung mit XP
- Die Rolle des Kunden in der XP-Methode
- Testgetriebene Entwicklung und kontinuierliche Integration
- Paarprogrammierung und ihre Vorteile
- Iterative und inkrementelle Entwicklungsplanung
Zusammenfassung der Kapitel
1 Motivation: Dieses Kapitel führt in die Thematik ein, indem es ein Szenario einer expandierenden Lebensmittel-Handelskette beschreibt, die ein neues Gehaltsabrechnungssystem benötigt. Es werden die Anforderungen an dieses System erläutert, die hohe Qualität, intuitive Bedienbarkeit, Fehlerfreiheit und zeitnahe Lieferung von funktionierenden Versionen beinhalten. Die Notwendigkeit eines agilen Ansatzes wie XP wird dadurch begründet, dass die Anforderungen flexibel und sich schnell ändern könnten. Die Einführung von XP durch Kent Beck, Ward Cunningham und Ron Jeffries im Jahr 1996 wird erwähnt, und der Fokus der Arbeit auf die praktische Umsetzung von XP wird hervorgehoben.
2 eXtreme Programming: Dieses Kapitel beschreibt XP als agilen Softwareentwicklungsprozess, der speziell für kleine Teams mit vagen oder sich schnell ändernden Anforderungen konzipiert ist. Es betont die Bedeutung der Zusammenarbeit mit dem Kunden vor Ort zur effizienten Beantwortung von Fragen und zur Sicherstellung der termingerechten Entwicklung qualitativ hochwertiger Software. Die vier zentralen Werte von XP – Einfachheit, Kommunikation, Feedback und Courage – werden erläutert und in Verbindung mit den zwölf Hauptverfahren gebracht. Die Bedeutung der Anpassung an Veränderungen wird hervorgehoben, da sich Anforderungen, Umgebung und Team im Laufe des Projekts verändern können.
3 Der XP-Entwicklungsprozess: Im Gegensatz zu traditionellen Softwareentwicklungsprozessen, zeichnet sich XP durch seine Agilität und Code-Zentrierung aus. Dieses Kapitel betont die Abwesenheit von klar definierten Phasen und Leitfäden im XP-Prozess. Es wird hervorgehoben, dass der Entwicklungsprozess im Wesentlichen mit dem Codieren beginnt und sich iterativ weiterentwickelt. Die Agilität und die Fokussierung auf den Code als zentrales Element werden hier explizit behandelt. Die Kapitel 3, 4, und weitere werden als Basis für das Verständnis der praktischen Umsetzung der XP-Prinzipien angekündigt.
Schlüsselwörter
eXtreme Programming (XP), Agile Softwareentwicklung, Kundenintegration, Testgetriebene Entwicklung, Paarprogrammierung, Iterative Entwicklung, Softwarequalität, Anforderungsmanagement, Change Management.
Häufig gestellte Fragen (FAQ) zu "eXtreme Programming (XP) in der Softwareentwicklung"
Was ist der Inhalt dieser Studienarbeit?
Diese Studienarbeit untersucht die praktische Umsetzung von Extreme Programming (XP) in der Softwareentwicklung. Sie erläutert die Prinzipien und Verfahren von XP anhand von Beispielen und fokussiert auf die Herausforderungen und Möglichkeiten agiler Softwareentwicklung in kleinen Teams. Der Inhalt umfasst eine Motivation, eine Einführung in XP, eine Beschreibung des XP-Entwicklungsprozesses, die Rolle des Kunden, User Stories, Akzeptanztests, Release- und Iterationsplanung, Programmierung, Paarprogrammierung, Testverfahren, kontinuierliche Integration und eine abschließende Betrachtung. Ein Inhaltsverzeichnis, eine Zusammenfassung der Kapitel und Schlüsselwörter sind ebenfalls enthalten.
Welche Themenschwerpunkte werden behandelt?
Die Arbeit behandelt agile Softwareentwicklung mit XP, die Rolle des Kunden in der XP-Methode, testgetriebene Entwicklung und kontinuierliche Integration, Paarprogrammierung und ihre Vorteile sowie iterative und inkrementelle Entwicklungsplanung.
Welche Methode der Softwareentwicklung wird untersucht?
Die Studienarbeit konzentriert sich auf Extreme Programming (XP), einen agilen Softwareentwicklungsprozess, der speziell für kleine Teams mit vagen oder sich schnell ändernden Anforderungen konzipiert ist.
Welche Rolle spielt der Kunde in XP?
Der Kunde spielt eine zentrale Rolle in XP. Er ist vor Ort involviert, um Fragen effizient zu beantworten und die termingerechte Entwicklung qualitativ hochwertiger Software sicherzustellen.
Wie wird die Entwicklungsplanung in XP gestaltet?
XP verwendet eine iterative und inkrementelle Entwicklungsplanung mit Release- und Iterationsplanung. Im Gegensatz zu traditionellen Methoden, gibt es keine klar definierten Phasen.
Welche Bedeutung hat das Testen in XP?
Testen spielt eine zentrale Rolle in XP. Es wird "Testen, Testen, Testen" betont. Testgetriebene Entwicklung und kontinuierliche Integration sind wichtige Bestandteile des Prozesses.
Was ist Paarprogrammierung und welche Vorteile bietet sie?
Paarprogrammierung ist ein Kernprinzip von XP, bei dem zwei Entwickler gemeinsam an einem Code arbeiten. Die Arbeit beschreibt die Vorteile dieser Methode.
Welche Werte sind zentral für XP?
Die vier zentralen Werte von XP sind Einfachheit, Kommunikation, Feedback und Courage.
Welche Kapitel sind im Detail beschrieben?
Die Zusammenfassung der Kapitel beschreibt detailliert die Motivation (inkl. eines Beispielszenarios), die Einführung in XP, und den XP-Entwicklungsprozess. Weitere Kapitel werden kurz angerissen.
Welche Schlüsselwörter beschreiben die Arbeit?
Schlüsselwörter sind: eXtreme Programming (XP), Agile Softwareentwicklung, Kundenintegration, Testgetriebene Entwicklung, Paarprogrammierung, Iterative Entwicklung, Softwarequalität, Anforderungsmanagement, Change Management.
- Citation du texte
- Bastian Helfert (Auteur), 2003, eXtreme Programming in der Praxis, Munich, GRIN Verlag, https://www.grin.com/document/13378