Diplomarbeit, 2006
155 Seiten, Note: 1,3
1 Einleitung
1.1 Wandel in der Software-Entwicklung
1.2 Motivation, Vorgehen und Aufbau der Arbeit
1.2.1 Limitationen agiler Methoden
1.2.2 Definition von Projekten im industriellen Umfeld
1.2.3 Vorgehen und Aufbau der Arbeit
1.3 Stand der Wissenschaft
1.3.1 Barry Boehm und Richard Turner
1.3.2 Philippe Kruchten
1.3.3 Jutta Eckstein
1.3.4 Fazit
2 Agile Software-Entwicklung
2.1 Traditionelle Software-Entwicklung
2.2 Entstehung der agilen Bewegung
2.3 Das agile Manifest
2.3.1 Einführung
2.3.2 Die vier agilen Werte
2.3.3 Die zwölf agilen Prinzipien
3 Methoden der agilen Software-Entwicklung
3.1 Extreme Programming – XP
3.1.1 Die vier Werte von XP
3.1.1.1 Kommunikation
3.1.1.2 Einfachheit
3.1.1.3 Feedback
3.1.1.4 Courage
3.1.1.5 Verzahnung der einzelnen Werte
3.1.2 Praktiken
3.1.2.1 Planungsspiel
3.1.2.2 Kleine Release
3.1.2.3 Systemmetapher
3.1.2.4 Einfaches Design
3.1.2.5 Tests
3.1.2.6 Refaktorisierung
3.1.2.7 Programmieren in Paaren
3.1.2.8 Gemeinsames Eigentum am Code
3.1.2.9 Kontinuierliche Code-Integration
3.1.2.10 40-Stunden-Woche
3.1.2.11 Kundenvertreter im Team
3.1.2.12 Programmierrichtlinien
3.2 Scrum
3.2.1 Praktiken
3.2.1.1 Product Backlog
3.2.1.2 Daily Scrum Meeting
3.2.1.3 Sprint Planning Meeting
3.2.1.4 Sprint
3.2.1.5 Sprint Review Meeting
4 Problembereiche agiler Methoden im industriellen Umfeld und deren Lösung
4.1 Organisatorisches Umfeld und Kultur
4.1.1 Unternehmensweite Vorgehensweise
4.1.2 Organisationsstruktur
4.1.2.1 Projektplanung und -steuerung
4.1.2.2 Werkzeuge und Tools
4.1.2.3 Qualitätssicherung und -kontrolle
4.1.3 Kulturunterschiede
4.1.4 Vertragsgestaltung
4.2 Initialisierung des Projektes und Aufbau der Teamstruktur
4.2.1 Entwicklung eines Basissystems
4.2.2 Aufbau der Teamstruktur
4.2.3 Einbeziehung örtlich getrennter Teams
4.3 Beteiligung des Kunden
4.3.1 Kein expliziter Kunde pro Team
4.3.2 Unterschiedliche Kundeninteressen
4.3.3 Örtliche Trennung von Team und Kunde
4.4 Koordination des Projektes
4.4.1 Länge der Release- und Iterationszyklen
4.4.2 Iterationsplanung
4.4.3 Regelmäßige Abstimmung
4.4.4 Gesamtkoordination im Projekt
4.4.5 Codeverantwortlichkeit
4.4.6 Integration
4.4.7 Abhängigkeiten zu anderen Projekten
4.5 Kommunikation der Beteiligten
4.5.1 Direkte Kommunikation
4.5.1.1 Besprechungen
4.5.1.2 Kommunikationsteam
4.5.1.3 Austausch von Teammitgliedern
4.5.2 Informelle Kommunikation
4.5.3 Kommunikationshilfsmittel
5 Analyse von Projekten
5.1 Projekt A
5.1.1 Organisatorisches Umfeld und Kultur
5.1.2 Kunde
5.1.3 Methodisches Vorgehen
5.1.4 Koordination und Kommunikation
5.1.5 Lessons Learned
5.2 Projekt B
5.2.1 Organisatorisches Umfeld und Kultur
5.2.2 Kunde
5.2.3 Methodisches Vorgehen
5.2.4 Kommunikation und Koordination
5.2.5 Lessons Learned
5.3 Projekt C
5.3.1 Organisatorisches Umfeld und Kultur
5.3.2 Kunde
5.3.3 Methodisches Vorgehen
5.3.4 Koordination und Kommunikation
5.3.5 Lessons Learned
5.4 Projekt D
5.4.1 Organisatorisches Umfeld und Kultur
5.4.2 Kunde
5.4.3 Methodisches Vorgehen
5.4.4 Kommunikation und Koordination
5.4.5 Lessons Learned
5.5 Projekt E
5.5.1 Organisatorisches Umfeld und Kultur
5.5.2 Kunde
5.5.3 Methodisches Vorgehen
5.5.4 Kommunikation und Koordination
5.5.5 Lessons Learned
5.6 Projekt F
5.6.1 Organisatorisches Umfeld und Kultur
5.6.2 Kunde
5.6.3 Methodisches Vorgehen
5.6.4 Kommunikation und Koordination
5.6.5 Lessons Learned
5.7 Fazit
5.7.1 Organisatorisches Umfeld und Kultur
5.7.2 Kunde
5.7.3 Methodisches Vorgehen
5.7.4 Kommunikation und Koordination
6 Theorie vs. Praxis
6.1 Organisatorisches Umfeld und Kultur
6.2 Initialisierung des Projektes und Aufbau der Teamstruktur
6.3 Beteiligung des Kunden
6.4 Koordination des Projektes
6.5 Kommunikation der Beteiligten
6.6 Fazit
7 Schlussbetrachtungen
7.1 Fazit
7.2 Zukünftiger Forschungsbedarf
Die vorliegende Arbeit untersucht die Anwendbarkeit agiler Softwareentwicklungsmethoden, insbesondere Scrum und Extreme Programming (XP), in einem industriellen Umfeld. Das Hauptziel besteht darin, die spezifischen Herausforderungen, Beschränkungen und notwendigen Anpassungen aufzuzeigen, die sich ergeben, wenn agile Ansätze in industriellen Projekten eingesetzt werden, die sich durch Komplexität, verteilte Teams und starre Organisationsstrukturen auszeichnen.
1.1 Wandel in der Software-Entwicklung
Seit Jahren nimmt Software einen immer größer werdenden Teil unseres täglichen Lebens ein. Dies trifft nicht nur auf große Computersysteme zu, sondern selbst triviale technische Geräte werden heutzutage oft durch Software gesteuert oder kontrolliert. Die Entwicklung von Software geschieht meist anhand von Methoden, die das Vorgehen beschreiben. Bis zum heutigen Tag werden dazu in der Regel traditionelle Methoden, die oft auch „schwergewichtige“ Software-Entwicklungsmethoden genannt werden, eingesetzt. Diese starten mit dem Finden und ausgedehnten Dokumentieren der kompletten Anforderungen an das System, gefolgt von Design, Programmierung und Testen des zu entwickelnden Systems [Cohen03, 1].
Diese traditionellen Methoden versuchen den Entwicklungsprozess so zu definieren, dass er immer wieder auf die gleiche Art und Weise ausgeführt und somit Software von immer gleicher Qualität erzeugt werden kann. Die Anforderungen an das zu entwickelnde System werden bereits zu Beginn des Projektes festgelegt und die Software auf Grundlage dieser geplant und entwickelt. Dadurch sind Änderungen der Anforderungen, die erst spät in der Entwicklung bekannt werden, schwierig umzusetzen und verursachen nicht selten erheblichen Zusatzaufwand.
Aufgrund des sich schnell ändernden Marktes und vor allem bei Neuentwicklungen sind Kunden aber oft nicht in der Lage, Anforderungen bereits zu Beginn eines Projektes definitiv zu bestimmen. Außerdem gewinnen die Beteiligten erst im Laufe der Zeit Kenntnis und Verständnis des Problembereiches der Anwendung und können so die Relevanz der einzelnen Funktionen der Software besser einschätzen.
1 Einleitung: Dieses Kapitel motiviert die Arbeit, führt in die Problematik agiler Methoden im industriellen Kontext ein und definiert den methodischen Aufbau sowie den Stand der Wissenschaft.
2 Agile Software-Entwicklung: Das Kapitel erläutert die Grundlagen der agilen Softwareentwicklung, grenzt diese von traditionellen Methoden ab und führt in das Agile Manifest sowie dessen Prinzipien ein.
3 Methoden der agilen Software-Entwicklung: Hier werden die populären agilen Methoden Extreme Programming (XP) und Scrum mit ihren jeweiligen Werten und Praktiken detailliert vorgestellt.
4 Problembereiche agiler Methoden im industriellen Umfeld und deren Lösung: Das Kapitel identifiziert fünf zentrale Problembereiche (Kultur, Initialisierung, Kundenbeteiligung, Koordination, Kommunikation) und erarbeitet Lösungsansätze.
5 Analyse von Projekten: In diesem Kapitel werden sechs industrielle Projekte praxisnah analysiert, um Erfolgs- und Misserfolgsfaktoren beim Einsatz agiler Methoden zu identifizieren.
6 Theorie vs. Praxis: Hier werden die theoretischen Lösungsansätze aus Kapitel 4 mit den empirischen Ergebnissen aus den Fallstudien der Projekte verglichen.
7 Schlussbetrachtungen: Das abschließende Kapitel fasst die Erkenntnisse zusammen und formuliert den weiteren Forschungsbedarf auf diesem Gebiet.
Agile Methoden, Software-Entwicklung, Scrum, Extreme Programming, industrielle Projekte, Projektmanagement, Software-Architektur, Kundenbeteiligung, Prozessverbesserung, Teamstruktur, Skalierung, industrielle Organisation, Software-Qualität, Anforderungsmanagement, Change Management
Die Diplomarbeit befasst sich mit der Anwendung agiler Softwareentwicklungsmethoden in einem industriellen Umfeld und analysiert, wie diese Methoden an die spezifischen Anforderungen großer, komplexer Projekte angepasst werden können.
Die zentralen Themen umfassen die organisatorische Anpassung an agile Prozesse, die Initialisierung und Strukturierung von Teams, die Einbeziehung von Kunden, die Koordination großer Projekte sowie die Gestaltung effektiver Kommunikation.
Das primäre Ziel ist es, Wege aufzuzeigen, wie agile Vorgehensweisen in industriellen Projekten erfolgreich implementiert werden können, um von deren Flexibilität zu profitieren, ohne an den starren Strukturen großer Organisationen zu scheitern.
Der Autor führt eine theoretische Analyse der Problemfelder durch und kombiniert diese mit einer empirischen Untersuchung in Form von Experteninterviews, um reale Projekterfahrungen auszuwerten.
Im Hauptteil werden sowohl theoretische Identifikationen von Problembereichen bei der Agilisierung industrieller Projekte vorgenommen als auch eine tiefgehende Analyse von sechs ausgewählten Industrieprojekten durchgeführt.
Typische Schlagworte sind Agile Software-Entwicklung, Scrum, Extreme Programming (XP), Industrielles Umfeld, Projektkoordination, Skalierung agiler Methoden und Software-Qualitätsmanagement.
Durch die Interviews mit Projektbeteiligten bietet das Dokument einen direkten Einblick in die Praxis und validiert theoretische Annahmen durch reale Erfolge und Misserfolge aus der industriellen Softwareentwicklung.
Die Arbeit macht deutlich, dass es keinen universellen Ansatz gibt, sondern dass eine Anpassung der Methoden an das spezifische Projektumfeld, die Unternehmenskultur und die technischen Abhängigkeiten zwingend erforderlich ist.
Der GRIN Verlag hat sich seit 1998 auf die Veröffentlichung akademischer eBooks und Bücher spezialisiert. Der GRIN Verlag steht damit als erstes Unternehmen für User Generated Quality Content. Die Verlagsseiten GRIN.com, Hausarbeiten.de und Diplomarbeiten24 bieten für Hochschullehrer, Absolventen und Studenten die ideale Plattform, wissenschaftliche Texte wie Hausarbeiten, Referate, Bachelorarbeiten, Masterarbeiten, Diplomarbeiten, Dissertationen und wissenschaftliche Aufsätze einem breiten Publikum zu präsentieren.
Kostenfreie Veröffentlichung: Hausarbeit, Bachelorarbeit, Diplomarbeit, Dissertation, Masterarbeit, Interpretation oder Referat jetzt veröffentlichen!

