
Aufwandsschätzung in der Systemfamilienentwicklung
Dokumentinformationen
Autor | René Kluge |
Schule | Technische Universität Ilmenau, Fakultät für Informatik und Automatisierung |
Fachrichtung | Wirtschaftsinformatik |
Dokumenttyp | Diplomarbeit |
Sprache | German |
Format | |
Größe | 2.59 MB |
Zusammenfassung
I.Systemfamilien und Wirtschaftlichkeitsbetrachtungen in der Anwendungsentwicklung
Diese Arbeit untersucht die Integration von Wirtschaftlichkeitsbetrachtungen in den Prozess der Anwendungsentwicklung im Kontext von Systemfamilien. Der Fokus liegt auf der effizienten Entwicklung von Software durch Wiederverwendung bestehender Komponenten. Die Anforderungsanalyse spielt eine zentrale Rolle, indem sie Kundenanforderungen mit den Merkmalen der Systemfamilie abgleicht. Unterschiedliche Szenarien (Integration neuer Merkmale, Anpassung bestehender Elemente, Neuerstellung/Anpassung der Systemfamilie) werden betrachtet, um die optimale Vorgehensweise bei der Aufwandsschätzung zu bestimmen. Dabei wird das COCOMO II Verfahren als Grundlage für die Aufwandsschätzung verwendet, ergänzt durch die Nutzung einer Erfahrungskurve und Function Points. Die eXtensible Markup Language (XML), speziell das im FORE-Projekt verwendete Format, wird als mögliches Datenformat zur Erfassung und Verwaltung von Anforderungen vorgeschlagen.
1. Einleitung Wirtschaftlichkeitsbetrachtungen in der Anwendungsentwicklung mit Systemfamilien
Die Arbeit fokussiert die Integration von Wirtschaftlichkeitsaspekten in die Anwendungsentwicklung im Kontext von Systemfamilien. Ausgangspunkt sind die in einer Systemfamilie definierten Merkmale, welche die Komponenten und Funktionalitäten potentieller Anwendungen widerspiegeln. Dies wird gegenüber den in der Anforderungsanalyse erfassten Kundenanforderungen gestellt. Verschiedene Szenarien werden betrachtet, in denen bestehende Systemkomponenten die Anforderungen nicht oder nur teilweise abdecken, was zusätzliche Entwicklungen notwendig macht. Die Arbeit stellt den Ansatz der Systemfamilien vor, inklusive der notwendigen Schritte zu deren Bildung. Die Anforderungsanalyse (Requirements Engineering) spielt eine entscheidende Rolle bei der Festlegung und Aufbereitung von Kundenanforderungen für nachfolgende Entwicklungsschritte. Eine geeignete Notation ist essentiell, um die Merkmale der zu entwickelnden Softwaresysteme präzise abzubilden, um Anforderungen widerspruchsfrei zu erfassen und zu klären. Die Zielsetzung ist die Aufzeigen von Möglichkeiten zur Integration von Wirtschaftlichkeitsbetrachtungen in den Entwicklungsprozess, um Kosten und Zeitaufwand zu optimieren und gleichzeitig die geforderte Qualität zu gewährleisten.
2. Zielstellung Zeit Kosten und Qualität in der Softwareentwicklung
Moderne Softwareentwicklung wird durch die drei Faktoren Zeit, Kosten und Qualität bestimmt. Im wettbewerbsorientierten Umfeld gewinnt die Qualität zunehmend an Bedeutung. Aus Kundensicht bedeutet hohe Qualität die bestmögliche Erfüllung der Anforderungen. Die Anforderungsanalyse muss daher vollständig und widerspruchsfrei sein. In der Systemfamilienentwicklung ist die Analyse der Anforderungen im Hinblick auf vorhandene Systemkomponenten besonders wichtig. Die Arbeit untersucht, wie Wirtschaftlichkeitsaspekte in diesen Prozess integriert werden können, um die Entwicklung effizienter und kostengünstiger zu gestalten, ohne Kompromisse bei der Qualität einzugehen. Die Herausforderung besteht darin, die Kundenanforderungen optimal mit den Möglichkeiten der Wiederverwendung von Komponenten innerhalb der Systemfamilie zu vereinen.
3. Der Ansatz der Systemfamilien und Wiederverwendung von Software
Traditionelle Softwareentwicklung konzentriert sich auf einzelne Projekte mit dem Ziel, geforderte Funktionalitäten schnell und kostengünstig umzusetzen. Oftmals wiederholen sich ähnliche Anforderungen in verschiedenen Projekten. Der Ansatz der Systemfamilien zielt darauf ab, diese Redundanz zu vermeiden und durch Wiederverwendung bestehender Software Ressourcen zu sparen und die Effizienz zu steigern. Frühere Ansätze konzentrierten sich auf die Wiederverwendung von Programmquellcode, insbesondere im Kontext der objektorientierten Programmierung. Jedoch erwies sich die Handhabung einzelner Objekte in komplexen Systemen als aufwendig. Spätere Entwicklungen fokussierten auf Komponenten- und Framework-basierte Ansätze zur Verbesserung der Wiederverwendung. Der Aufbau einer Systemfamilie erfordert jedoch einen höheren Aufwand als die reine Nutzung wiederverwendbarer Komponenten. Es ist eine strategische und ganzheitliche Betrachtung der Wiederverwendung notwendig, die Investitionen erfordert, deren Amortisation im Vorfeld nicht klar abschätzbar ist. Die Wahl zwischen einer sukzessiven und einer schnellen Umsetzung muss im Hinblick auf die wirtschaftlichen Risiken abgewogen werden.
4. Domänenanalyse und Merkmalsauswahl bei Systemfamilien
Ein wichtiger Schritt im Aufbau einer Systemfamilie ist die Auswahl der Domäne (Scoping). Die Domäne wird durch das Anwendungsfeld des Unternehmens oder durch strategische Überlegungen zur Spezialisierung oder Erweiterung der Geschäftsbereiche bestimmt. Das Scoping definiert die Grenzen, innerhalb derer der Aufwand für den Aufbau der Systemfamilie gerechtfertigt ist. Die Auswahl der Merkmale der Systemfamilie erfolgt nicht allein durch das Unternehmen, sondern wird durch das Zusammenspiel von Anforderungs- und Domänenanalyse beeinflusst. Erfasste Merkmale dienen der Modellbildung und der konkreten Umsetzung der Systemfamilie. Gleichzeitig bilden Modelle und aufbereitete Merkmale die Basis für die Auswahl von Kundenanforderungen und gegebenenfalls die Definition neuer Merkmale. Wirtschaftliche Aspekte beeinflussen die Auswahl der Merkmale und deren Darstellung. Die Herausforderung liegt in der korrekten Zuordnung gemeinsamer und variabler Merkmale auf verschiedenen Abstraktionsebenen. Eine zu allgemeine Darstellung der Merkmale führt zu erhöhtem Aufwand bei der Anwendungserstellung. Der Umgang mit Anforderungen, die nicht durch die Merkmale der Systemfamilie abgedeckt werden, erfordert ebenfalls eine ökonomische Bewertung. Die kurzen Lebenszyklen moderner Produkte und die stetige Weiterentwicklung stellen zusätzliche Herausforderungen dar.
II.Der Ansatz der Systemfamilien und Wiederverwendung
Im Gegensatz zur traditionellen Einzelprojekt-Entwicklung von Software, bietet der Ansatz der Systemfamilien die Möglichkeit, bereits vorhandene Softwarekomponenten wiederzuverwenden. Dies reduziert den Entwicklungsaufwand und die Kosten. Die Arbeit beschreibt Grundlagen und Arbeitsschritte zur Bildung einer Systemfamilie, inklusive der wichtigen Rolle der Domänenanalyse und der Auswahl relevanter Merkmale. Die Wiederverwendung von Code, Komponenten und Frameworks wird als zentraler Aspekt für den Erfolg von Systemfamilien hervorgehoben.
1. Systemfamilien als Alternative zur Einzelprojektentwicklung
Der Abschnitt beschreibt den Ansatz von Systemfamilien als Gegenentwurf zur traditionellen Softwareentwicklung in einzelnen Projekten. Die traditionelle Vorgehensweise beginnt mit den vom Kunden geforderten Funktionalitäten, die möglichst schnell und kostengünstig umgesetzt werden sollen. Häufig treten in verschiedenen Projekten ähnliche oder identische Anforderungen auf. Die Frage, ob eine ständige Neuentwicklung bereits existierender Lösungen notwendig oder sinnvoll ist, führt zur Betrachtung von Wiederverwendungsansätzen. Die Arbeit argumentiert, dass Systemfamilien eine effizientere und kostengünstigere Alternative darstellen, indem sie die Wiederverwendung von Softwarekomponenten und -strukturen ermöglichen. Diese Wiederverwendung reduziert den Entwicklungsaufwand und die Kosten zukünftiger Projekte, indem bereits bestehende, getestete und dokumentierte Module eingesetzt werden. Der Ansatz geht über die bloße Wiederverwendung von Programmcode hinaus und integriert konzeptionelle und strukturelle Aspekte für eine ganzheitliche Wiederverwendung.
2. Entwicklungsgeschichte der Software Wiederverwendung
Die Entwicklung der Software-Wiederverwendung wird skizziert. Frühe Ansätze konzentrierten sich auf die Wiederverwendung von Programmquellcode, die ihren Höhepunkt in der objektorientierten Programmierung mit Vererbungstechniken fand. Diese ermöglichen die nachträgliche Integration von Funktionalitäten. Obwohl das Potential zur Wiederverwendung besteht, werden dabei oft nur kleine Ausschnitte des Gesamtsystems betrachtet. In komplexen Systemen entsteht dadurch ein erheblicher Aufwand bei der Handhabung einzelner Objekte. Um diesen Aufwand zu reduzieren, wurden weitere Entwicklungen angestrebt, die einzelne Bestandteile des Programmcodes zusammenfassen und eine strukturierte Umgebung für deren bessere Verwendung schaffen. Die Arbeit erwähnt hier explizit die komponentenbasierte Softwareentwicklung und den Ansatz der Frameworkentwicklung als bedeutende Fortschritte in der Richtung effizienterer Software-Wiederverwendung. Diese bilden die Grundlage für den komplexeren Ansatz der Systemfamilien.
3. Überlegungen zum Aufbau und den Herausforderungen von Systemfamilien
Der Aufbau einer Systemfamilie erfordert einen erheblichen Aufwand, der über die üblichen Ansätze der Wiederverwendung hinausgeht. Es geht nicht nur um die Nutzung bereits vorhandener Komponenten oder Frameworks, sondern um eine ganzheitliche und strategische Betrachtung der Wiederverwendung. Dies erfordert Investitionen mit ungewisser Amortisationszeit. Vorab sind Überlegungen zu monetären und personellen Ressourcen notwendig. Die Arbeit diskutiert die Abwägung zwischen einer vorsichtigen, sukzessiven und einer schnellen, umfassenden Umsetzung. Eine vorsichtige Umsetzung reduziert die wirtschaftlichen Risiken, während eine schnelle Umsetzung eine frühzeitige Nutzung der Vorteile von Systemfamilien ermöglicht. Ein wesentlicher Aspekt ist die Domänenauswahl (Scoping), die die relevanten Grenzen des Anwendungsbereichs definiert, innerhalb derer der Aufwand für den Aufbau der Systemfamilie gerechtfertigt erscheint. Die Auswahl der Merkmale einer Systemfamilie wird durch das Unternehmen und die Anforderungen der Kunden bestimmt. Erfasste Merkmale bilden die Grundlage für Modelle und die konkrete Umsetzung. Gleichzeitig beeinflussen diese Modelle die Auswahl von Kundenanforderungen und führen gegebenenfalls zur Definition neuer Merkmale. Wirtschaftliche Fragen spielen dabei eine entscheidende Rolle.
III.Aufwandsschätzung in der Softwareentwicklung
Die Aufwandsschätzung von Softwareprojekten ist entscheidend für den Erfolg. Die Arbeit analysiert Fehlerquellen und gängige Methoden (Adhoc-Methoden, Analogiemethode, Relationenmethode, Data Point Verfahren, COCOMO II). Die Aufwandsschätzung sollte frühzeitig erfolgen und die Projektgröße (z.B. in Programmcodezeilen, logischen Befehlen, Function Points) berücksichtigen. Eine umfassende Dokumentation vergangener Projekte ist essentiell, um verlässliche Schätzungen zu ermöglichen. Das COCOMO II Modell und seine Varianten (z.B. Reuse Model) werden im Detail beschrieben, inklusive ihrer Vor- und Nachteile.
1. Bedeutung und Herausforderungen der Aufwandsschätzung
In der Softwareentwicklung gewinnen frühzeitige und zuverlässige Aussagen über Zeit- und Kostenaufwand zunehmend an Bedeutung, besonders im wettbewerbsintensiven Umfeld. Vergangene Erfahrungen zeigen jedoch, dass komplexe Aufgaben oft zu erheblichen Fehleinschätzungen führen. Daher ist eine geplante und strukturierte Vorgehensweise bei der Aufwandsschätzung notwendig. Zu geringe Schätzungen führen zu Termin- und Kostenüberschreitungen und möglicherweise zu Qualitätseinbußen unter Termindruck. Umgekehrt können zu hohe Schätzungen Wettbewerbsnachteile bedeuten und zu einer ineffizienten Ressourcennutzung führen, da zu großzügig kalkulierte Zeit- und Kostenrahmen oft vollständig ausgeschöpft werden, selbst wenn die Entwicklung schneller und kostengünstiger verlaufen könnte. Eine genaue und realistische Aufwandsschätzung ist daher unerlässlich für den Erfolg von Softwareprojekten.
2. Ausgangsgrößen und Methoden der Aufwandsschätzung
Der Ausgangspunkt einer Aufwandsschätzung ist die Bestimmung der Projektgröße. Traditionell wird die Anzahl der Programmcodezeilen verwendet, jedoch ist diese Größe aufgrund der Unterschiede zwischen Programmiersprachen ungeeignet. Alternativ werden die Anzahl logischer Befehle, Funktionen oder Klassen herangezogen. Die technische Realisierung muss dabei berücksichtigt werden. Ansätze, die allein die Funktionalität aus Nutzersicht betrachten, gewinnen an Bedeutung, z.B. Function Points. Der gebräuchlichste Ansatz zur Aufwandsschätzung ist die Betrachtung abgeschlossener Projekte. Eine gute Dokumentation ist die Basis für die Nachvollziehbarkeit und Vergleichbarkeit verschiedener Projekte und bildet eine Wissensbasis für zukünftige Schätzungen. Die Arbeit kategorisiert Aufwandsschätzmethoden und diskutiert Adhoc-Methoden (Expertenschätzungen) mit ihren Vor- und Nachteilen und deren unterschiedlicher Bewertung in der Fachliteratur. Diese Methoden basieren auf Erfahrungswerten vergangener Projekte und vergleichen ein aktuelles Projekt anhand festgelegter Kriterien mit bereits abgeschlossenen Projekten. Die Genauigkeit der Schätzung steigt mit der Detailliertheit des Vergleichs. Ein Vorteil ist die frühzeitige Abschätzung des Aufwands in frühen Projektphasen.
3. Konkrete Aufwandsschätzmethoden Analogiemethode Data Point Verfahren und COCOMO II
Die Analogiemethode vergleicht Projekte anhand projektspezifischer Merkmale (Leistungsprofile) und zieht ähnliche Projekte zum Vergleich heran. Eine feinere Granularisierung durch den Vergleich von Teilprojekten erhöht die Genauigkeit. Das Data Point Verfahren schätzt den Umfang anhand eines Datenmodells und der Benutzeroberfläche (Bildschirmmasken, Berichte, Systemnachrichten) und berücksichtigt Qualitätsfaktoren und Projektbedingungen. Das COCOMO Verfahren, basierend auf den Erfahrungen von 63 Projekten, wurde durch COCOMO II weiterentwickelt, um den Anforderungen moderner Softwareentwicklung gerecht zu werden. Der Hauptkritikpunkt an COCOMO ist die Verwendung der Produktgröße (KDSI) als einzige Korrelation zum Aufwand. Die Arbeit konzentriert sich auf die Grundideen von COCOMO und beschreibt ausführlicher das COCOMO II Verfahren, dessen Submodelle (Basic, Intermediate, Detailed) und insbesondere das Post-Architecture Model, welches sich für spätere Projektphasen eignet. Das Reuse Model von COCOMO II berücksichtigt spezifische Aspekte von Anpassungs- und Weiterentwicklungsprojekten und ermöglicht die Bestimmung des Umfangs des Programmquellcodes mit zusätzlichen Einflussfaktoren. Das Early Design Model dient der Evaluation von Architekturen und Entwicklungsstrategien in frühen Projektphasen.
4. Bewertung der Aufwandsschätzmethoden und Ausblick
Die Arbeit betont die Schwierigkeiten und die Komplexität bei der Anwendung von Aufwandsschätzungsverfahren. Eine hohe Genauigkeit erfordert einen hohen Aufwand. Die Entscheidung für ein bestimmtes Verfahren ist nicht immer eindeutig begründbar, da Vergleichsmöglichkeiten in der Literatur fehlen. Die Herausforderungen bei der Aufwandsschätzung im Kontext von Systemfamilien werden diskutiert. Die alleinige Betrachtung des Aufwands ist problematisch, da Nutzenaspekte durch die Kompositionsmöglichkeiten der Systembestandteile berücksichtigt werden müssen. Die Gefahr besteht, dass wichtige Komponenten aufgrund zu hoher geschätzter Kosten nicht berücksichtigt werden. Das 'commercial-off-the-shelf (COTS) integration cost model' wird als unzureichend bewertet, da es keine Anpassungen von COTS-Komponenten berücksichtigt. Für Systemfamilien scheinen Aufwandsschätzungen sinnvoller, die nur die Entwicklung einzelner Anwendungen auf Basis der Systemfamilie betrachten. Die Anforderungsanalyse geht allen Entwicklungen voraus und bildet die Grundlage für den Abgleich mit den Merkmalen der Systemfamilie. Sind Merkmale nicht vorhanden, sind wirtschaftliche Überlegungen notwendig.
IV.Konkrete Zielstellung und Lösungsansatz
Das Hauptziel ist die Integration einer präzisen Aufwandsschätzung in den Entwicklungsprozess von Systemfamilien. Drei Szenarien werden detailliert untersucht und für jedes ein spezifisches Vorgehen zur Aufwandsschätzung entwickelt. Die Arbeit präsentiert einen Lösungsansatz, der das COCOMO II Verfahren mit einer Erfahrungskurve kombiniert und die Besonderheiten der Systemfamilienentwicklung berücksichtigt. Die Rolle einer sinnvollen Notation und der XML-basierten Datenverwaltung zur Unterstützung der Anforderungsanalyse wird hervorgehoben. Die Wirtschaftlichkeit der Wiederverwendung von Softwarekomponenten steht dabei im Mittelpunkt.
1. Die praxisorientierte Zielsetzung Integration der Aufwandsschätzung in die Systemfamilienentwicklung
Dieser Abschnitt beschreibt die konkrete Zielsetzung der Arbeit: die Integration von Aufwandsschätzungen in den Prozess der Anwendungsentwicklung innerhalb von Systemfamilien. Die theoretischen Ausführungen der vorherigen Kapitel bilden die Grundlage für die nun folgende praxisorientierte Herangehensweise. Es soll gezeigt werden, dass der Ansatz der Systemfamilien langfristig einer einmaligen Gesamtentwicklung vorzuziehen ist. Der Ausgangspunkt sind die Kundenwünsche, wie sie in der Anforderungsanalyse dargestellt werden. Mehrere Szenarien im Zusammenhang mit dem Ansatz der Systemfamilien sind denkbar. Für jedes dieser Szenarien muss ein spezifisches Vorgehen zur Aufwandsschätzung definiert werden. Ein zweiter Teil der Zielstellung konzentriert sich auf die konkrete, anwendungsorientierte Umsetzung und die Analyse der Erfassung, Aufbereitung und Darstellung der Anforderungen in geeigneten Datenformaten. Ein wichtiger Aspekt ist die verbesserte Darstellung gegenüber dem Kunden durch nachvollziehbare Kostenaussagen.
2. Lösungsansatz Einbindung der Aufwandsschätzung in den Entwicklungsprozess
Der Lösungsansatz konzentriert sich auf die Integration der Aufwandsschätzung in die Systemfamilienentwicklung. Es gilt zu untersuchen, wie Anforderungen und Merkmale sinnvoll erfasst und genutzt werden können. Eine geeignete Notation ist dabei ebenso entscheidend wie deren Verwendung. Der Lösungsansatz untersucht bestehende Möglichkeiten und präsentiert ein Vorgehen zur Einordnung der Aufwandsschätzung in den Prozess der Anwendungsentwicklung. Zentrale Punkte sind die Spezifikation des Vorgehens für verschiedene Szenarien (Integration neuer Merkmale, Anpassung bestehender Elemente, Neuerstellung/Anpassung der Systemfamilie) und die Wahl eines geeigneten Datenformats für die Darstellung der Anforderungen. Ein Datenformat steht im Mittelpunkt, wobei der Fokus auf den einzelnen Bestandteilen liegt. Die Bedeutung der Aufwandsschätzung als Grundlage aller weiteren Überlegungen wird hervorgehoben. Es werden Ansätze für die Anwendung von Aufwandsschätzungen innerhalb der typischen Abläufe im Kontext von Systemfamilien gesucht.
3. Szenarien der Aufwandsschätzung im Kontext von Systemfamilien
Die Arbeit präsentiert drei Szenarien zur Anwendungsentwicklung mit Systemfamilien und beschreibt für jedes Szenario ein spezifisches Vorgehen zur Aufwandsschätzung. Szenario 1 (Integration eines neuen Merkmals) behandelt die Erstellung eines neuen Merkmals ohne Rückgriff auf bestehende Software. Hier wird das COCOMO II Verfahren empfohlen, ergänzt um eine Erfahrungskurve, die auf bereits entwickelten Softwareelementen und den dafür benötigten Personenmonaten basiert. Szenario 2 (Anpassung bestehender Elemente) fokussiert auf die Weiterentwicklung bestehender Softwarekomponenten. Hier wird das Reuse Model von COCOMO II eingesetzt, welches die Spezifika von Anpassungsprojekten berücksichtigt. Szenario 3 (Neuerstellung und Anpassung einer Systemfamilie) geht von umfassenden und vielseitigen Anforderungen aus, die eine Umgestaltung bestehender Software erfordern. Aufgrund der hohen Risiken und Aufwendungen wird eine schrittweise, granulare Aufwandsschätzung einzelner Funktionsbestandteile empfohlen, um den Gesamtaufwand zu bestimmen. Die Bedeutung einer umfassenden Dokumentation der Aufwandsschätzung wird für alle Szenarien betont, um das Fachwissen zu vermitteln und den Schätzprozess zu verbessern.
4. Bewertung der Kosten und Nutzenaspekte von Systemfamilien
Die Arbeit beschreibt die Ermittlung der Kosten für eine geplante Softwareentwicklung und das Ziel einer eindeutigen Zuordnung von Merkmalen zu Aufwendungen. Durch einen Vergleich der verschiedenen Szenarien soll die wirtschaftlich sinnvollste Softwareerstellung bestimmt werden. Die alleinige Betrachtung der Aufwandsschätzung ist im Kontext von Systemfamilien kritisch, da wichtige Zusammenhänge und Besonderheiten berücksichtigt werden müssen. Eine Entscheidung über die zukünftige Softwareerstellung sollte Nutzenaspekte neben den Kosten berücksichtigen. Das Potential der Wiederverwendung von Komponenten im Rahmen des COCOMO II Verfahrens wird anhand eines Beispiels veranschaulicht. Die Arbeit betont die Notwendigkeit, die Nutzenaspekte der Wiederverwendung von Komponenten in der Aufwandsschätzung zu berücksichtigen, um die langfristige Wirtschaftlichkeit von Systemfamilien zu gewährleisten.
5. Datenformate und Implementierung der Aufwandsschätzung
Um das Vorgehen zur Aufwandsschätzung zu realisieren, wird ein geeignetes Datenformat benötigt, um die Ergebnisse der Anforderungsanalyse zu erfassen und weiterzuverarbeiten. XML, insbesondere das im FORE-Projekt verwendete Format, wird als vielversprechender Ansatz vorgestellt. Das XML-basierte Datenmodell ermöglicht die Erfassung von Anforderungen und Merkmalen der Systemfamilie und deren Zusammenhänge, um Modelle abzuleiten. Die Arbeit beschreibt die Anwendung von XML im Kontext der Aufwandsschätzung. Ein Prototyp wurde entwickelt, um den Lösungsansatz zu implementieren. Der Prototyp bietet sowohl die Möglichkeit der direkten Eingabe von Schätzungen (Expertenschätzung) als auch die vollständige Berechnung der Parameter mit dem COCOMO II Verfahren. Der Kompromiss zwischen Schätzgenauigkeit und einfacher Bedienbarkeit liegt in der Verantwortung des Benutzers.
V.Implementierung und Bewertung
Ein Prototyp wurde entwickelt, um den vorgeschlagenen Lösungsansatz zur Integration der Aufwandsschätzung in den Prozess der Anwendungsentwicklung mit Systemfamilien zu demonstrieren. Der Prototyp ermöglicht sowohl die direkte Eingabe von Schätzungen (Expertenschätzung) als auch die Verwendung des COCOMO II Verfahrens. Die Arbeit bewertet die entwickelten Modelle und betont die Bedeutung einer guten Dokumentation für die Verbesserung der Aufwandsschätzung und die langfristige Wirtschaftlichkeit von Systemfamilien.
1. Prototypische Umsetzung des Lösungsansatzes
Die Arbeit beschreibt die prototypische Umsetzung des erarbeiteten Lösungsansatzes zur Integration der Aufwandsschätzung in die Anwendungsentwicklung im Kontext von Systemfamilien. Ein wichtiger Aspekt war die Berücksichtigung des Zielkonflikts zwischen möglichst hoher Schätzgenauigkeit und der Komplexität der dafür notwendigen Arbeitsschritte. Das COCOMO II Verfahren, mit seinen umfassenden Einflussfaktoren, Kostentreibern und Skalengrößen, erfordert spezifisches Fachwissen. Die Implementierung des Prototyps berücksichtigt diesen Aspekt, indem sowohl einfache Eingaben als auch die vollständige Berechnung aller Parameter ermöglicht werden. Der Kompromiss zwischen Genauigkeit und Benutzerfreundlichkeit liegt somit in der Verantwortung des Nutzers. Der Prototyp bietet Einblicke in die Abläufe des COCOMO II Verfahrens und berücksichtigt alle im Lösungsansatz erarbeiteten Zusammenhänge. Die Implementierung zeigt, dass eine praktikable Integration der Aufwandsschätzung möglich ist, obwohl ein gewisser Kompromiss zwischen Genauigkeit und Benutzerfreundlichkeit eingegangen werden muss.
2. Bewertung des COCOMO II Verfahrens und der entwickelten Modelle
Die Arbeit bewertet das gewählte COCOMO II Verfahren und die im Rahmen des Lösungsansatzes entwickelten Modelle. Die Analyse zeigt, dass wirtschaftliche Belange im Zusammenhang mit Systemfamilien durch die grundsätzlichen Abläufe des COCOMO II Verfahrens nicht ausreichend abgedeckt werden. Daher wurden Anpassungen und zusätzliche Abläufe zur Bestimmung des endgültigen Aufwands entwickelt. Anhand interner, formeller Zusammenhänge des COCOMO II Verfahrens wurde ein erweitertes Vorgehensmodell entwickelt, welches die bestehenden Modelle integriert und erweitert. Eine Beispielrechnung veranschaulicht die Arbeitsschritte im Kontext von Systemfamilien. Die Arbeit untersucht die Möglichkeiten der Aufwandsschätzung als Grundlage für ökonomisch begründete Entscheidungen. Neben anwendbaren Verfahren werden grundlegende Zusammenhänge und Ursprünge der Aufwandsschätzung beleuchtet. Es wird gezeigt, dass eine Aufwandsschätzung komplexe Arbeitsschritte und spezifisches Fachwissen erfordert. Der Aufwand der Aufwandsschätzung selbst wird im Hinblick auf die wirtschaftlichen Aufwendungen in Verbindung mit einer Systemfamilie als gerechtfertigt angesehen.
3. Zusammenfassende Bewertung und Schlussfolgerungen
Abschließend fasst die Arbeit die Ergebnisse zusammen und zieht Schlussfolgerungen. Es wird deutlich, dass der Aufwand der Aufwandsschätzung selbst im Kontext von Systemfamilien gerechtfertigt ist, da präzise Kostenabschätzungen für fundierte Entscheidungen unerlässlich sind. Die Arbeit zeigt auf, wie das COCOMO II Verfahren in die Anforderungsanalyse im Umfeld einer Systemfamilie integriert werden kann und welche Vorteile dies für die Wirtschaftlichkeit der Softwareentwicklung bietet. Der entwickelte Prototyp ermöglicht einen Einblick in die Abläufe und die Möglichkeiten des Verfahrens. Der Kompromiss zwischen Genauigkeit und Benutzerfreundlichkeit wird betont. Die Arbeit liefert einen wichtigen Beitrag zur Optimierung der Softwareentwicklung im Kontext von Systemfamilien durch eine effiziente und integrierte Aufwandsschätzung. Die Ergebnisse unterstreichen die Notwendigkeit einer guten Dokumentation des gesamten Schätzprozesses zur kontinuierlichen Verbesserung der Genauigkeit und Zuverlässigkeit zukünftiger Schätzungen.