Projektmanagement in der Softwareentwicklung. Vorstellung und Vergleich von Vorgehensmodellen


Hausarbeit, 2016

17 Seiten, Note: 2,3

Anonym


Leseprobe

Inhaltsverzeichnis

1. Einleitung
1.1. Einblick in die Geschichte der Softwareentwicklung
1.2. Probleme in der Softwareentwicklung
1.3. Definition: Software-Engineering
1.4. Entstehung des Software-Engineerings

2. Projektmanagement in der Softwareentwicklung
2.1. Definition: Projekt
2.2. Phasen in Projekten

3. Vorstellung von Vorgehensmodellen
3.1. Was ist ein Vorgehensmodell?
3.2. Vorstellung klassischer Vorgehensmodelle
3.2.1. Das Wasserfallmodell
3.2.2. Das Spiralmodell
3.3. Vorstellung agiler Vorgehensmodelle
3.3.1. Extreme Programming
3.3.2. Scrum

4. Fazit
4.1. Kritische Betrachtung der Vorgehensmodelle
4.2. Zusammenfassung der Ergebnisse

5. Quellenverzeichnis

1. Einleitung

Die Hausarbeit beschreibt die schriftliche Ausarbeitung zum Thema „Vorstellung und Vergleich von Vorgehensmodellen in der Softwareentwicklung“. Sie ist Bestandteil des Faches Software-Engineering im Studiengang Wirtschaftsinformatik. Mit dem ersten Kapitel sollen zunächst Grundbegriffe der Softwareentwicklung erläutert werden. Dabei wird der Begriff Software definiert und zu Beginn die geschichtliche Entwicklung des Software-Engineerings näher erläutert.

1.1. Einblick in die Geschichte der Softwareentwicklung

Durch die erzielten Fortschritte im Bereich der Technik, konnten immer leistungsstärkere Rechner entwickelt werden, die auch für sehr komplexe Rechenprozesse bzw. Aufgaben nur noch Bruchteile von Sekunden benötigen. Diese Performancesteigerung war die Basis zur Entwicklung von deutlich komplexeren Anwendungen und Softwaresystemen. Software wurde früher nur für wenige Bereiche wie für wissenschaftliche Einrichtungen, das Militär oder für Große Unternehmen hergestellt. Dadurch, dass die Gerätevielfallt für den Einsatz von Software anstieg, haben immer mehr Verbraucher auch ohne professionelle Kenntnisse mit dem Computer, Software bezogen.

Nun aber haben wir einen Standpunkt erreicht, in dem es so gut wie kein Unternehmen oder sogar kein Haushalt gibt, welches keine Software gesteuerten Geräte wie z.B. Computer benutzen. Technologien wie Computer, Tablets, Notebooks oder Smartphones sind längst fester Bestandteil unseres Alltags.

Um diesen Wandel zu überstehen wurde im Gebiet der Softwareentwicklung stets reagiert. Um neue Anforderungen und die damit entstehenden komplexen Herausforderung zu überstehen, wurden immer neue Methoden und Werkzeuge entwickelt um die Probleme zu lösen. Eine wichtige Entwicklung ist dabei beispielsweise die objektorientierte Programmierung. Diese schafft virtuelle Objekte, die mit Eigenschaften und Methoden ausgestattet werden können. Durch diese Programmiertechnik können komplexe Prozesse einfach dargestellt werden. In der heutigen Zeit ist die objektorientierte Programmierung deswegen zu einem unverzichtbaren Ansatz der modernen Entwicklung von Softwares-Lösungen geworden. Aber es sind auch weitere Methoden und Techniken im Laufe der Zeit entstanden sind. Einige dieser Methoden werden in den nachfolgenden Kapiteln definiert und vorgestellt.

1.2. Probleme in der Softwareentwicklung

So gut wie jeder Mensch auf dieser Welt im Jahr 2016 ist umgeben von Techniken die Software enthalten. Für all diese Geräte wie z.B. Smartphones, Waschmaschinen, Laptops, Kühlschränke, Steuerung der Wohnungselektronik von außen und vieler weiterer Geräte und Möglichkeiten müssen eigene Software-Lösungen geschaffen werden.

Bei der Entwicklung all dieser individuellen Software für die unterschiedlichsten Anforderungen und Ziele besteht das Problem darin, immer eine Lösung anzubieten, die den geplanten Ressourceneinsatz für die Softwareentwicklung nicht übersteigt und dabei eine Lösung hervorbringt, die den Kunden zufrieden stellt. Damit diese Ergebnisse erzielt werden können, ist es sehr wichtig mit dem Kunden eng zusammen zu arbeiten. Zusätzlich sollte aber auch die Betrachtung des Projektmanagements in der Softwareentwicklung, also das sogenannten Software-Engineering stets genutzt werden. Software-Engineering ist ein wichtiger Bestandteil der heutigen Entwicklung von Software-Lösungen. Im nächsten Unterkapitel wird deswegen der Begriff Software-Engineering näher erläutert.

1.3. Definition: Software-Engineering

Der Begriff Software-Engineering umfasst alle Bereiche der Softwareentwicklung und begleitet eine Software über den gesamten Lebenszyklus. Alle Phasen von der Systemspezifikation bis hin zur Wartung der Software werden betrachtet. Dabei werden aber nicht nur technische Anforderungen, sondern auch die gesamte Projektstruktur angesprochen. Das bedeutet, dass im Software Engineering auch darauf Wert gelegt wird, dass Tools und Theorien im Rahmen des Projektes entwickelt werden können, welches die Softwareentwicklung vereinfachen. Zusammengefasst kann gesagt werden, dass die Aufgaben des Software-Engineerings damit alle Aktivitäten der Softwarespezifikation, der Softwareentwicklung, der Softwarevalidierung und der Softwareweiterentwicklung ein- schließt.1

1.4. Entstehung des Software-Engineerings

Der Begriff „Software Crisis“ war in den späten Sechzigerjahren ein großes Problem und sorgte für viele Diskussionen. Die meisten Softwareprojekte haben trotz eines großen Aufwandes und die motivierte Arbeit von Entwicklern kein zufrieden stellendes Ergebnis erzielt. Viele Projekte haben gegebene Ziele bei der Nutzung von Ressourcen nicht einhalten können. Es war üblich, dass mehr Kosten entstanden sind als geplant oder viele Projekte nicht zeitgerecht abgeschlossen wurden.

Im Laufe dieser Ereignisse entwickelte sich der Wunsch nach Werkzeugen und Methoden, um Softwareprojekte optimal zu steuern. Der Wunsch nach fehlerfreien und optimalen Softwarelösungen war so hoch, dass es auch ein sehr wichtiges Thema bei der Vorbereitung für die NATO-Konferenz in Garmisch war (1969).2 Mit folgenden Worten des F.L. Bauer während dieser Vorbereitung begann das Zeitalter des Software Engineerings:

„The whole trouble comes from the fact that there is so much tinkering with software. It is not made in a clean fabrication process, which it should be.

What we need, is software engineering.“3

2. Projektmanagement in der Softwareentwicklung

In Dieses Kapitel hat das Ziel grundlegende Elemente eines Projektes zu erläutern. Dazu wird unter anderem das Wort Projekt an sich definiert. Im Anschluss wird erläutert, wann ein Prozess oder ein Ablauf als Projekt bezeichnet werden darf und wann nicht.

2.1. Definition: Projekt

Nach DIN 69901 lautet die Definition eines Projekts wie folg:

„Ein Projekt ist ein Vorhaben, das im Wesentlichen durch Einmaligkeit der Bedingungen in ihrer Gesamtheit gekennzeichnet ist, wie z. B.: Zielvorgabe, zeitliche, finanzielle, personelle oder andere Bedingungen, Abgrenzungen gegenüber anderen Vorhaben und projektspezifische Organisation.“4

2.2. Phasen in Projekten

Für Projekte ist es üblich, dass sie in verschiedene Phase unterteilt werden. Dadurch wird das Projektziel auf Teilbereiche aufgeteilt und somit die Komplexität des gesamten Projektes reduziert. Zusätzlich ist es dadurch einfacher zu ermitteln ob die geplanten Ressourcen z.B. für Kosten oder Personaleinsatz im Rahmen der einzelnen Prozesse geeignet ist. Jede Phase wird mit einem Meilenstein abgeschlossen. Ein Meilenstein wird auch als Entscheidungspunkt bezeichnet, da durch das Ergebnis des Meilensteins die geplante Fortsetzung eines Projektes entschieden wird.

3. Vorstellung von Vorgehensmodellen

Im dritten Kapitel wird nun das Hauptthema dieser Hausarbeit vorgestellt. Im ersten Schritt wird das Ziel und die Unterschiede zwischen Vorgehensmodellen vorgestellt. Daraufhin werden eines der gängigen und bekanntesten Modelle vorgestellt. Dazu werden diese zuerst definiert und dann die jeweiligen Vor- und Nachteile aufgelistet.

3.1. Was ist ein Vorgehensmodell?

Bei einem Vorgehensmodelle handelt es sich um die Organisation von Software-Projekten und die Zuordnung von Methoden und Elementen in diesen Prozess. Jedes Vorgehensmodell basiert auf die Phasen Analyse, Entwurf, Implementierung und Test. Bei Vorgehensmodellen werden zwischen verschiedenen Modellen und Versionen unterschieden, je nach Vorgehensmodell gibt es unterschiedliche Strukturen und Prioritäten auf die während eines Projektes zurückgegriffen werden. Der größte Unterschied liegt darin, dass Vorgehensmodelle entweder klassisch oder agil sind. Vorgehensmodelle haben die Aufgabe verschiedene Bereiche des Software-Engineerings abzudecken. Dazu gehören unter anderem das Risikomanagement oder das Projektmanagement. Mit all diesen Eigenschaften und Funktionen von Vorgehensmodellen sollen Ressourcen wie Zeit oder Kosten optimal eingesetzt werden können. Um eine hervorragender Software-Qualität anbieten zu können ist die Verteilung von Aufgaben und Rollen in Vorgehensmodellen bzw. in Software-Projekten Pflicht. Es ist zu empfehlen je nach Vorgehensmodell und Phase Verantwortlichkeiten zu verteilen aber auch Richtlinien festzuhalten für die Entwicklung und Dokumentation des jeweiligen Projekts. Dazu hat das Projektmanagement die Aufgabe diesen Prozess von Anfang an zu begleiten und zu steuern.5

3.2. Vorstellung klassischer Vorgehensmodelle

In den folgenden Abschnitten werden nun zwei der bekanntesten klassischen Vorgehensmodelle vorgestellt. Doch zuvor soll die Bedeutung eines klassischen Vorgehensmodells erläutert werden. Bei einem klassischen Vorgehensmodell wird ein Software-Projekt in übersichtliche, zeitlich aufgeteilte Phasen mit verschiedenen Methoden und Prozessen aufgeteilt. Jeder dieser Phasen wird nacheinander erarbeitet. Damit mit einer neuen Phase begonnen werden kann, muss die Vorgängerphase eine abschließende Dokumentation erstellen und der nächsten Phase zur Verfügung stellen. Durch diese Methode soll das Management eines Software-Projektes vereinfacht werden und die Komplexität gesenkt werden.

3.2.1. Das Wasserfallmodell

Bei dem Wasserfallmodell handelt es sich um eines der bekanntesten klassischen Vorgehensmodelle. Bei diesem Vorgehensmodell wird ein Softwareprojekt in feste und einzelne Phasen aufgeteilt. Damit mit einer nachfolgenden Phase begonnen werden kann muss erst die aktuelle Phase komplett abgeschlossen sein. Jede Phase wird mit der Erstellung einer umfangreichen Dokumentation über die jeweilige Phase beendet. In dem Basismodell des Vorgehensmodells sind Rücksprünge zu vergangenen Phasen nicht möglich. Bei dem erweiterten Modell sind Rücksprünge zwischen den Phasen erlaubt. Dabei muss aber beachtet werden, dass bei einem Rücksprung die Ergebnisse der aktuellen Phase komplett verfallen.6

In der Regel wird das Wasserfallmodell in folgende Phasen aufgeteilt:

- Analysephase: Die Analysephase hat die Aufgabe die Entwicklertruppe mit den Kunden zusammen zu bringen. Gemeinsam werden hier die Anforderungen und Möglichkeiten zur Lösung des Kundenproblems festgehalten.
- Designphase: In der Designphase wird die gezielte Systemarchitektur erfasst. Dazu werden verschiedene Fragen geklärt die sowohl die Hardware- und auch die Softwaretechnik betreffen. Dazu zählen unteranderem die Performance eines Systems, die Software-Usability aber auch das Thema Datenschutz und Datensicherheit eine große Rolle.
- Realisierungsphase: Mit dem Abschluss der Designphase kann die Realisierung einer Anwendung beginnen. In der Realisierungsphase wird die gewünschte Software mittels Programmiertätigkeiten entwickelt.
- Testphase: Die Testphase hat die Aufgabe zu überprüfen, ob die Entwickelte Software-Lösung den Anforderungen des Projektziels entspricht und somit den Kundenwunsch zufriedenstellend erfüllt. Je nach Anwendung gibt es verschiedene Möglichkeiten um dies zu testen. In der Regel wird der Software ein Input gegeben und dann überprüft, ob ein richtiger Output generiert wurde.

Das Wasserfallmodell bietet einige Vor- und Nachteile die in der folgenden Auflistung vorgestellt werden sollen:

- Vorteile:
- Einfaches Modell: Ein Wasserfallmodell ist einfach aufgebaut und einfach aufgebaut.
- Sichere Überprüfung: Das gesamte Projekt kann durch den Einsatz von Meilensteinen und Dokumentation ohne viel Aufwand kontrolliert werden. Es lässt sich somit gut organisatorisch warten.
- Wenig Managementaufwand: Da es sich beim Wasserfallmodell um einfaches und verständliches Werkzeug handelt ist wenig erklärungsbedarf von der Managementseite notwendig.
- Nachteile:
- Falsche Prioritäten: Es besteht die Möglichkeit, dass das eigentlich Projektziel durch die strenge Dokumentationsvorgabe in den Hintergrund gedrängt wird, weil die Dokumentation wichtiger wird.
- Nicht flexibel: Ein großes Problem bei diesem Modell ist es, das es problematisch ist Änderungen oder Anforderungen, die im Nachhinein entstehen im laufenden Prozess einzubinden.

[...]


1 Vgl. I. Sommerville Software-Engineering 9., aktualisierte Auflage, 2012, S. 33-36

2 Vgl. J. Ludewig u. H.Lichtler, Software Engineering Grundlagen, Menschen, Prozesse, Techniken, 2010 S. 46

3 Zitat F.L. Bauer, Historische Notizen zur Informatik, 2009, S. 72

4 T. Möller, F. Dörrenberg, Projektmanagement, 2003, S. 22.

5 Vgl. I. Sommerville, Software Engineering, 9. Aktualisierte Auflage, 2012, S. 56

6 Vgl. B. Hindel, K. Hörmann, M. Müller, J. Schmied, Basiswissen Software-Projektmanagement 2., überarbeitete und erweiterte Auflage, 2006, S. 17-18

Ende der Leseprobe aus 17 Seiten

Details

Titel
Projektmanagement in der Softwareentwicklung. Vorstellung und Vergleich von Vorgehensmodellen
Hochschule
FOM Essen, Hochschule für Oekonomie & Management gemeinnützige GmbH, Hochschulleitung Essen früher Fachhochschule
Note
2,3
Jahr
2016
Seiten
17
Katalognummer
V992846
ISBN (eBook)
9783346360953
ISBN (Buch)
9783346360960
Sprache
Deutsch
Anmerkungen
Einführung in Projektmanagament Tools in der Softwareentwicklung, kompakt dargestellt.
Schlagworte
SCRUM, Vorgehensmodelle, Software, Engineering, Softwareentwicklung, Spiralmodell, Wasserfallmodell, Extreme Programming, Projektmanagament
Arbeit zitieren
Anonym, 2016, Projektmanagement in der Softwareentwicklung. Vorstellung und Vergleich von Vorgehensmodellen, München, GRIN Verlag, https://www.grin.com/document/992846

Kommentare

  • Noch keine Kommentare.
Im eBook lesen
Titel: Projektmanagement in der Softwareentwicklung. Vorstellung und Vergleich von Vorgehensmodellen



Ihre Arbeit hochladen

Ihre Hausarbeit / Abschlussarbeit:

- Publikation als eBook und Buch
- Hohes Honorar auf die Verkäufe
- Für Sie komplett kostenlos – mit ISBN
- Es dauert nur 5 Minuten
- Jede Arbeit findet Leser

Kostenlos Autor werden