Softwareentwicklungsprojekte. Phasen der Softwareentwicklung


Trabajo Escrito, 2019

18 Páginas, Calificación: 2,0


Extracto


Inhaltsverzeichnis

Abbildungsverzeichnis

1. Einleitung und Problemstellung

2. Allgemeines
2.1 Software
2.2 Systementwicklung
2.3 Aufgaben der Systementwicklung
2.4 Problematik der Systementwicklung
2.5 Gestaltungsstrategien der Systementwicklung

3. Projektphasen der Softwareentwicklung
3.1 Planungsphase
3.1.1 Vorarbeit
3.1.2 Lastenheft
3.1.3 Projektplan
3.1.4 Kalkulation und Aufwandsabschätzung
3.2 Analysephase
3.2.1 Ist-Analyse
3.2.2 Soll-Konzept
3.2.3 Modellierung der Anforderungen
3.2.4 Make or Buy
3.3 Entwurfsphase
3.4 Realisierungsphase
3.5 Validierungsphase
3.6 Inbetriebnahme

4. Literaturverzeichnis

Abbildungsverzeichnis

Abb. 1 Phasen der Softwareentwicklung

Abb. 2 Beispiel einer erweiterten ereignisgesteuerten Prozesskette

1. Einleitung und Problemstellung

Software nimmt in unserem Alltag eine immer größere Rolle ein. Die permanente Nutzung und die daraus resultierende Abhängigkeit von Rechnern in Form von Computern, Smartphones oder Tablets sind in der heutigen Zeit zur Normalität geworden. Die Verwendung dieser Geräte bietet eine gigantische Auswahl an unterschiedlichsten Softwaresystemen, die sowohl unseren Arbeitsalltag als auch das Privatleben komfortabler gestalten. Dass sich beim übermäßigen Einsatz von Rechnern ebenso Probleme für den Menschen ergeben, ist ebenfalls ein aktuelles Themengebiet, dessen weitere Erörterung den Rahmen der vorliegenden Hausarbeit allerdings überschreiten würde.

Das Ziel dieser Arbeit ist es, zu beschreiben, welche Schritte notwendig sind, um ein funktionierendes Softwaresystem zu erstellen. Dabei wird die Software im Allgemeinen und die Motivation für ihren Einsatz im Besondern als Ausgangspunkt gewählt Außerdem wird weiterhin erläutert, welche Problematiken und Risiken bei der Entwicklung von Softwaresystemen bestehen und wie diese angegangen werden, um letztendlich eine einsatzfähige Software zu erhalten.

Der erste Teil der Arbeit befasst sich mit den Grundlagen von Softwaresystemen. Dazu gehören die Motivation und die Risiken für den Einsatz von Software sowie die Problematiken bei der Entwicklung. Zudem wird beschrieben, wie die Softwareentwicklung strukturiert ist, um deren Schwierigkeiten zu behandeln und um den Prozess der Entwicklung möglichst übersichtlich zu gestalten. Im zweiten Abschnitt der vorliegenden Arbeit wird der Entwicklungsprozess erläutert, wobei näher beschrieben wird, welche Arbeitsschritte die einzelnen Phasen beinhalten und wie diese in Zusammenhang stehen.

2. Allgemeines

2. 1 Software

Was genau ist Software? Ein nutzbarer Rechner oder Computer besteht aus zwei Hauptkomponenten, welche dessen Betrieb ermöglicht. Die Hardware stellt den physikalischen, den greifbaren Teil des Rechners dar und umfasst sämtliche elektronische und mechanische Bauteile des Gerätes. Darunter fallen Computerkomponenten wie Mainboard, Prozessor, Netzteil und Festplatte, ebenso wie die dazugehörigen Peripheriegeräte wie Monitor, Tastatur und Maus. Unter dem Begriff Software hingegen wird allgemein lediglich das ausführbare Programm verstanden. Tatsächlich beinhaltet Software jedoch die Gesamtheit aller Informationen, die dem physischen Teil zugespielt werden müssen, um die vorgesehen Anforderung zu erfüllen. Die Software besteht folglich aus den ausführbaren Programmen und den dazugehörigen Daten, welche auf Speichermedien abgelegt sind.1 Darüber hinaus zählt auch die, während der Entwicklung entstandene, Dokumentation des Programms zum Oberbergriff Software. Diese dient vor allem den Entwicklern als Informationsquelle für Wartungs- und Weiterentwicklungsmaßnahmen der Anwendung.

2.2 Systementwicklung

Software dient dazu, bestimmte Probleme zu lösen oder bei der Problemlösung zu unterstützen. Hierbei können vor allem die Prozesse, die automatisiert werden können durch die hohe Verarbeitungsgeschwindigkeit eines Rechners, deutlich beschleunigt werden. Somit ist es Ziel einer erfolgreichen Softwareentwicklung, eine Anwendung zu erschaffen, die ein vorgegebenes Problem möglichst effizient löst bzw. zur Lösung beiträgt. Die Softwareentwicklung geht zudem über das reine Codieren, das Schreiben des Quellcodes, hinaus. Zur Softwareentwicklung zählt außerdem das dazugehörige Projektmanagement, welches das zu lösende Problem analysiert, Anforderungen spezifiziert und Lösungsalternativen ausarbeitet, sowie nach der Programmierung die Anwendung testet, in Betrieb nimmt und wartet.2 Diese ‚Nebentätigkeiten‘ der Entwicklung sind für 80-90% der Gesamtkosten einer Software verantwortlich, da diese deutlich mehr Zeit und Personal in Anspruch nehmen als das Codieren als Solches. Aus diesem Grund spricht man in der Wirtschaftsinformatik auch von Systementwicklung

2.3 Aufgaben der Systementwicklung

Zur eindeutigen Abgrenzung, muss zwischen den Begriffen Softwareentwicklung und Systementwicklung differenziert werden. Die Softwareentwicklung beschreibt lediglich die Summe aller Tätigkeiten, um eine bestimmten Anwendung zu erstellen. Umfassender ist hingegen die Systementwicklung, welche das Ziel hat, ein Gesamtsystem für den Kunden/Anwender zu entwerfen.3 Dieses kann aus mehreren Softwareanwendungen bestehen, welche eigens entwickelt oder zugekauft werden. Darüber hinaus umfasst die Systementwicklung die Konfiguration der benötigten Hardware sowie die Organisation des Gesamtprojektes. So wird vor und neben der Erstellung des Programms die Erfüllung zahlreichen Aufgaben notwendig, um das Gesamtsystem realisieren zu können. Dazu zählen Tätigkeiten wie die Problem- und Anforderungsanalyse sowie der Systementwurf und die Datenmodellierung. Ebenso zugehörig ist die Entwicklung von organisatorischen Konzepten, welche Personalplanungen und den Projektablauf umfassen können. Darüber hinaus müssen die Wirtschaftlichkeit des Gesamtsystem bzw. Teile dessen überprüft oder rechtliche Aspekte berücksichtigt werden. Zu den Aufgaben der Programmentwicklung zählt neben dem Codieren auch die Definition der Hardware, die Festlegung des Betriebssystems und der dazugehörige Schnittstellen sowie die Erstellung der Benutzeroberfläche über die das Programm später bedient wird. All diese Tätigkeiten werden durch eine Projektleitung koordiniert, kontrolliert, überwacht und dokumentiert.

2.4 Problematik der Systementwicklung

Die Entwicklung eines Anwendungssystems ist aufwendig und dadurch sehr kostspielig, denn je komplexer das Problem, desto umfassender und teurer die dazu benötigte Software. Bereits bei der Erstellung des reinen Quellcodes bzw. der Softwarefunktionen muss akribisch darauf geachtet werden, Fehler und Fehlfunktionen rechtzeitig zu erkennen und zu beseitigen. Selbst kleinste Fehler in der Software können zu immensen Kosten führen. Als Beispiel dient hier der Jungfernflug der Ariane-5-Rakete. Durch einen Softwarefehler stellte sich die Rakete kurz nach dem Abheben in der Luft quer und sprengte sich aus Sicherheitsgründen selbst. Mit einem Schaden von ca. 370 Mio. US-Dollar stellte dies den bis dahin teuersten Softwarefehler der Geschichte dar. Neben fehlerhafter Programmierung können jedoch auch Fehlplanungen im Projektablauf zu Kostenexplosionen führen. So führte der verschobene Start des LKW- Maut-System Toll Collect vom 31. August 2003 auf den 1. Januar 2006 zu Einnahmeausfällen in Höhe von 3,5 Milliarden Euro.

Obwohl die Entwicklung und Einführung einer neuen Software bereits hohe Kosten verursacht, stellen diese nicht den größten Teil der Gesamtkosten im Lebenszyklus einer Software dar. Der Großteil besteht, wie in der vorausgegangenen Arbeit bereits festgehalten, in der der Weiterentwicklung und der stetigen Anpassung der Anwendung. Dies rührt daher, dass Unternehmen neue Software aufgrund der bereits hohen Entwicklungs- und Einführungskosten als Investitionsgut ansehen, welches für einen langen Betrieb vorgesehen ist. Da die Datenverarbeitung aber eine sehr dynamische Branche ist, müssen bestehende Anwendungen ständig an die sich veränderte Umwelt und deren Anforderungen angepasst, gewartet und gepflegt werden.

2.5 Gestaltungsstrategien der Systementwicklung

Ein System kann auf unterschiedlichste Art und Weise entwickelt werden. Welche Gestaltungsstrategie angewendet wird, ist dabei von mehreren Faktoren abhängig. So können zunächst die angedachten Funktionen des Endprogramms oder die vorhandenen oder zu verarbeitenden Daten und Informationen als Ausgangspunkt der Entwicklung gewählt werden. Arbeitet man mit bereits bestehenden Strukturen und Abläufen spricht man von einer induktiven Strategie. Sollen jedoch neue Konzepte zum Erreichen der Ziele festgelegt werden, handelt es sich um eine deduktive Strategie. Des Weiteren kann auch die Umwelt des Systems als Start dienen, damit sichergestellt ist, dass alle nötigen Schnittstellen vorhanden sein werden. Hierbei handelt es ich sich um das Outside-in-Prinzip, wohingegen die gegenläufige Strategie, das Inside-out-Prinzip, sich zunächst mit internen Funktionen und Daten befasst. Ähnlich dazu ist die Herangehensweise zur Erledigung der Teilaufgaben. So wird mit dem Top-down- Vorgehen die Gesamtanforderung in mehrere Teilaufgaben gegliedert, welche daraufhin von unabhängigen Stellen erledigt werden können. Ähnlich wie beim Inside- Out-Prinzip, werden beim Bottom-up-Vorgehen zunächst die internen Funktionen und Datenstrukturen bestimmt, welche dann durch Teilaufgaben erstellt und später zum Gesamtsystem zusammengefasst werden.4

Wie zu erkennen ist, sind sowohl die Anwendung selbst, als auch deren Entwicklungsstrategie, stark von unterschiedlichen Faktoren abhängig. So beeinflussen die Programmfunktionen, welche zur Problemlösung benötigt werden, als auch die äußeren Gegebenheiten die Gestaltungsstrategie, die wiederum aus der Kombination von mehreren einzelnen Strategien bestehen kann.

[...]


1 (Lassmann, 2006)

2 (lerneprogrammieren.com, abgerufen am 12.06.19)

3 (Pfeifer, 2014)

4 (Schwarze, 1989)

Final del extracto de 18 páginas

Detalles

Título
Softwareentwicklungsprojekte. Phasen der Softwareentwicklung
Universidad
AKAD University of Applied Sciences Stuttgart
Calificación
2,0
Autor
Año
2019
Páginas
18
No. de catálogo
V492641
ISBN (Ebook)
9783668990159
ISBN (Libro)
9783668990166
Idioma
Alemán
Palabras clave
softwareentwicklungsprojekte, phasen, softwareentwicklung
Citar trabajo
Tim Lutz (Autor), 2019, Softwareentwicklungsprojekte. Phasen der Softwareentwicklung, Múnich, GRIN Verlag, https://www.grin.com/document/492641

Comentarios

  • No hay comentarios todavía.
Leer eBook
Título: Softwareentwicklungsprojekte. Phasen der Softwareentwicklung



Cargar textos

Sus trabajos académicos / tesis:

- Publicación como eBook y libro impreso
- Honorarios altos para las ventas
- Totalmente gratuito y con ISBN
- Le llevará solo 5 minutos
- Cada trabajo encuentra lectores

Así es como funciona