Auswahl und Einführung eines Vorgehensmodells für die Softwareentwicklung
- Art: Magisterarbeit
- Autor: Stefan Spitaler
- Abgabedatum: März 2007
- Umfang: 123 Seiten
- Dateigröße: 828,2 KB
- Note: 1,0
- Institution / Hochschule: MCI - Management Center Innsbruck GmbH Österreich
- ISBN (eBook): 978-3-8366-2260-8
- Sprache: Deutsch
- Prämierung:
- Arbeit zitieren: Spitaler, Stefan März 2007: Auswahl und Einführung eines Vorgehensmodells für die Softwareentwicklung, Hamburg: Diplomica Verlag
- Schlagworte: Softwareentwicklung, Projektmanagement, IT, Scrum, Software
48,00 €
PDF-eBook Download: 48,00 €
Magisterarbeit von Stefan Spitaler
Einleitung:
Vorgehensmodelle zur Softwareentwicklung zielen darauf ab, dass mit ihrer Hilfe Softwareprodukte mit den gewünschten Funktionalitäten zu den geplanten Kosten und innerhalb der erwarteten Zeit erstellt werden. Projekte scheitern insbesondere wegen unklarer Projektziele und unklarer Formulierung der Anforderungen sowie unmethodischem Vorgehen. Die Risiken eines Projektscheiterns werden durch den Einsatz eines Vorgehensmodells reduziert.
Im Laufe der Zeit haben sich verschiedene Modelle etabliert, wobei seit 2000 vermehrt so genannte agile Modelle angewendet werden. Frühere Modelle basieren auf einem Vorgehen, bei welchem das Hauptaugenmerk auf umfassender Planung liegt und die Softwareentwicklung als ein an die Produktion angelehnter Fertigungsprozess betrachtet wird. Agile Modelle vertreten die Auffassung, dass ein adaptives Vorgehen zielführender ist. In agilen Modellen wird dementsprechend eine schrittweise Umsetzung in kurzen Zyklen bevorzugt, wodurch ein schnelles Reagieren auf sich ändernde Anforderungen möglich wird. Das Ergebnis im Sinne von lauffähiger Software wird als oberstes Ziel definiert. Die Planungsphase wird als weniger wichtig angesehen und es erfolgt hingegen eine besondere Berücksichtigung der menschlichen Komponente. Softwareentwicklung wird in Anlehnung an die Produktentwicklung als innovativer und kreativer Prozess gesehen, was sich auch auf den Aufbau der Modelle und der verwendeten Steuerungsmechanismen auswirkt.
Diese Arbeit beschreibt die relevanten Vorgehensmodelle, welche im Anschluss verglichen werden, um die Unterschiede zwischen den Modellen festzustellen. Nachfolgend werden die Anforderungen an ein Vorgehensmodell für die Softwareentwicklung bei der Hypo Tirol Bank erhoben. Aufgrund dieser Erhebung wird ein bestimmtes Modell ausgewählt und ein Weg aufgezeigt, wie die Einführung des Modells erfolgt. Bei der Einführung des Modells gilt es darauf zu achten, dass die Rahmenbedingungen und die Ausgangssituation berücksichtigt werden. Es wird ein Leitfaden dargestellt, der das Vorgehen für eine erfolgreiche Modell-Einführung für die Softwareentwicklung beschreibt. Damit wird die Basis geschaffen, um durch das Anwenden des richtigen Vorgehensmodells den Erfolg von Softwareentwicklungsprojekten zu steigern.
Inhaltsverzeichnis:
| Inhaltsverzeichnis | I | |
| Abbildungsverzeichnis | IV | |
| Tabellenverzeichnis | V | |
| Abkürzungsverzeichnis | VII | |
| 1. | Einleitung | 1 |
| 1.1. | Problemstellung | 1 |
| 1.2. | Zielsetzung | 2 |
| 1.3. | Aufbau der Arbeit/Vorgehensweise | 3 |
| 2. | Kontext und Definitionen | 4 |
| 2.1. | Informationsmanagement | 4 |
| 2.2. | Software | 5 |
| 2.3. | Individual- und Standardsoftware | 5 |
| 2.4. | Service Orientierte Architektur (SOA) | 6 |
| 2.5. | Eigenschaften von Software | 7 |
| 2.6. | Qualität von Software | 7 |
| 2.7. | Softwareentwicklung | 10 |
| 2.8. | Softwareentwicklungsprozess | 10 |
| 3. | Vorgehensmodelle im Überblick | 12 |
| 3.1. | Build-and-Fix-Cycle | 13 |
| 3.2. | Wasserfallmodell | 13 |
| 3.3. | V-Modell | 14 |
| 3.4. | Prototypen Modell | 15 |
| 3.5. | Spiral-Modell | 17 |
| 3.6. | Unified Process (Rational Unified Process – RUP) | 18 |
| 3.7. | Microsoft Solutions Framework | 21 |
| 3.8. | Agile Vorgehensmodelle | 23 |
| 3.8.1. | Adaptive Software Development (ASD) | 25 |
| 3.8.2. | Crystal Methodenfamilie | 26 |
| 3.8.3. | Dynamic Systems Development Model (DSDM) | 28 |
| 3.8.4. | eXtreme Programming (XP) | 30 |
| 3.8.5. | Feature Driven Development (FDD) | 31 |
| 3.8.6. | Lean Software Development (LSD) | 32 |
| 3.8.7. | Scrum | 34 |
| 4. | Gegenüberstellung der Modelle | 36 |
| 4.1. | Vergleich nach Kriterien | 36 |
| 4.1.1. | Allgemeine Kriterien | 36 |
| 4.1.2. | Spezifische Kriterien | 40 |
| 4.2. | Basis-Stil der Modelle bezogen auf Kernelemente | 43 |
| 4.3. | Vergleich nach der Ausrichtung an Agilität | 43 |
| 4.4. | Vergleich nach Verwendung und Reife | 44 |
| 5. | Auswahl eines Vorgehensmodells | 49 |
| 5.1. | Empirische Sozialforschung | 49 |
| 5.1.1. | Grundlagen der empirischen Sozialforschung | 49 |
| 5.1.2. | Qualitative und Quantitative Methoden der empirischen Sozialforschung | 49 |
| 5.1.3. | Empirische Datenerhebung | 52 |
| 5.1.4. | Empirische Datenauswertung | 53 |
| 5.1.5. | Vorgehen im gegenständlichen Fall | 54 |
| 5.2. | Forschungsdesign | 55 |
| 5.2.1. | Aufbau und Struktur des Forschungsprojektes | 55 |
| 5.2.2. | Design der Datenerhebung | 55 |
| 5.2.3. | Durchführung der Befragungen | 57 |
| 5.2.4. | Auswertung | 58 |
| 6. | Einführung des Vorgehensmodells | 66 |
| 6.1. | Präzisierung des Modells Scrum | 66 |
| 6.1.1. | Scrum Basis | 66 |
| 6.1.2. | Scrum Rollen | 67 |
| 6.1.3. | Scrum Flow | 67 |
| 6.1.4. | Scrum Arbeitsergebnisse | 69 |
| 6.1.5. | Vorgaben, Standards und Konventionen | 70 |
| 6.1.6. | Hintergrundinformationen zu Scrum | 70 |
| 6.2. | Ausgangssituation | 72 |
| 6.2.1. | Unternehmensbeschreibung | 72 |
| 6.2.2. | Rahmenbedingungen | 73 |
| 6.3. | Beschreibungen einer Modell-Einführung | 73 |
| 6.3.1. | Prinzipien für agiles Methodendesign | 74 |
| 6.3.2. | Vorgehensbeschreibungen für die Einführung | 75 |
| 6.4. | Leitfaden zur Einführung | 81 |
| 6.4.1. | Vorgehen bei der Leitfaden-Erstellung | 81 |
| 6.4.2. | Vorbereiten der Einführung | 82 |
| 6.4.3. | Anwendung des Modells Scrum | 83 |
| 6.4.4. | Nachbetreuung der Einführung | 84 |
| 6.4.5. | Daueraufgaben zur Pflege des Vorgehensmodells | 84 |
| 6.4.6. | Zeitplan für die Scrum-Einführung | 85 |
| 6.4.7. | Vorteile für die Organisation | 87 |
| 7. | Schlussbemerkung und Ausblick | 88 |
| Literaturverzeichnis | 91 | |
| Anhang | 96 |
Textprobe:
Kapitel 2.3, Individual- und Standardsoftware:
Individualsoftware wird für eine bestimmte Problemstellung bzw. für einen bestimmten Anwender erstellt. Standardsoftware wird für den Gebrauch bei mehreren Anwendern entwickelt. Als Branchensoftware bezeichnet man eine Standardsoftware, die für den Einsatz in einem bestimmten Bereich, z.B. im Finanzsektor, entwickelt wird.
Anwendungssoftware wird bezogen auf den Standardisierungsgrad in kundenindividuelle Neuentwicklung (Individualsoftware), kundenindividuelle Anpassungsentwicklung (Anpassung einer Standardsoftware) sowie konfigurierbare und nicht konfigurierbare Standardprodukte (Standardsoftware) unterteilt.
Die in einem Unternehmen zum Einsatz gelangenden Anwendungsprogramme dienen der Lösung eines bestimmten Problems oder der Unterstützung verschiedener Unternehmensprozesse. Bei der Umsetzung einer Idee für ein Anwendungsprogramm steht am Anfang die Make-or-Buy-Entscheidung. Eine Software-Eigenentwicklung wird dann eingesetzt, wenn keine adäquate Lösung auf dem Markt erhältlich ist. Vom Einsatz der Standardsoftware erwartet man sich niedrigere Kosten, Gewährleistung von Programmwartung und –weiterentwicklung und schnellere Einsatzfähigkeit. Andererseits muss berücksichtigt werden, dass eventuell unternehmensspezifische Anforderungen unvollständig abgedeckt werden und eine Integration in eine vorhandene Systemlandschaft aufwendig sein kann, weil zusätzliche Schnittstellen nötig sind. Außerdem wird es durch die Verwendung von Standardsoftware schwierig, sich im Bereich der IT strategisch zu differenzieren.
Kapitel 2.4, Service Orientierte Architektur (SOA):
Eine aktuelle (2007) Tendenz in der Systemarchitektur, die von namhaften Herstellern wie IBM und SAP forciert wird, geht in Richtung Service- und Komponenten-Orientierung. Dieser Ansatz versucht die Softwareentwicklung in Richtung Innovationsstärke, Flexibilität und Produktivität gleichermaßen zu optimieren. Software wird hier in Form von wiederbenutzbaren Komponenten bzw. Services entworfen, welche die Geschäftslogik enthalten. Diese werden dann über einer gemeinsamen, auf Standardformaten basierenden Plattform (Middleware-Server bzw. Business Process Plattform) zu verschiedenen Anwendungen zusammengebaut. Damit wird das Ziel verfolgt, die IT flexibel zu halten und sich schnell an sich ändernde Geschäftsprozesse anzupassen. Die IT entwickelt sich vom daten-zentrierten- zum prozess-zentrierten-computing.
Für die Softwareentwicklung ergibt sich daraus auf längere Sicht, dass künftig weniger Software neu entwickelt wird, sondern dass vermehrt neue Software aus Mustern, Vorlagen bzw. Komponenten zusammengebaut wird und durch die Kombination vorhandener Elemente neue Softwareprodukte entstehen. Dieser Weg der Software-Entstehung stellt eine Vermischung von Standard- und Individualsoftware dar, da einzelne Komponenten aus einer Standardsoftware-Bibliothek stammen und andere Komponenten individuell entwickelt werden können. In letzter Zeit prägt sich dafür der Begriff Composition. Diese neue Art der Softwareentwicklung hat zwar Auswirkungen auf die Art und Weise des Entwurfes und der Architektur der Software, der Softwareentwicklungsprozess an sich bleibt jedoch unverändert.
48,00 €
PDF-eBook Download: 48,00 €
Link zur Arbeit:
http://www.diplom.de/ean/9783836622608
Arbeit zitieren:
Spitaler, Stefan März 2007: Auswahl und Einführung eines Vorgehensmodells für die Softwareentwicklung, Hamburg: Diplomica Verlag
Schlagworte:
Softwareentwicklung, Projektmanagement, IT, Scrum, Software



