Bachelorarbeit, 2004
101 Seiten, Note: 1,0
1 Einleitung
1.1 Motivation
1.2 Anforderungen an den Leser
1.3 Aufbau der Arbeit
2 Wiederverwendung von SW-Komponenten
2.1 Begriffsklärungen
2.1.1 Begriff der SW-Komponente
2.1.2 Begriff der Wiederverwendung
2.2 Ziele der Wiederverwendung
2.3 Facetten der Wiederverwendung
2.4 Arten der Wiederverwendung
2.4.1 Ad Hoc-Wiederverwendung
2.4.2 Geplante Wiederverwendung
2.4.2.1 Generative Wiederverwendung
2.4.2.2 Kompositionelle Wiederverwendung
3 Use Cases
3.1 Einordnung von Use Cases in den SW Engineering Prozess
3.2 Zweck und Aufgaben von Use Cases
3.3 Aufbau von Use Cases
3.3.1 Allgemeines
3.3.2 Akteure und Ziele
3.3.3 Standardablauf
3.3.4 Alternativablauf
3.3.5 Beziehungen zwischen Use Cases
3.3.6 Aufbau von Use Cases bei der VW-Bank
3.4 Use Cases und UML
3.4.1 Allgemeines
3.4.2 Grafischer Aufbau eines Use Case Model
3.4.3 Generalisierung/Spezialisierung
3.5 Ein Use Case Problem liegt im Detail
4 Aufwandsabschätzung bei SW Projekten
4.1 Überblick über vorhandene Modelle
4.2 Abschätzung von Projektaufwand mittels UCP-Methode
4.3 Beurteilung der UCP-Methode
5 Use Case basierte Wiederverwendung von SW-Komponenten bei der Volkswagen Bank
5.1 Analyse der Ausgangssituation
5.1.1 Beschreibung von SEP (VW Richtlinie zur SW Entwicklung)
5.1.1.1 SEP als Konzernstrategie
5.1.1.2 Modellbeschreibung
5.1.2 SW-Entwicklung auf der Grundlage von Use Cases
5.1.2.1 Beschreibung des Ist-Zustands
5.1.2.2 Vorzunehmende Veränderungen
5.1.3 Beschreibung der Produkte der Volkswagen-Bank, I-SEP
5.2 Generelles zur Beschreibung der Systematik zur Aufwands- und Wiederverwendungsabschätzung von SW-Komponenten
5.2.1 Vorstellung des Konzepts als Metaprozess
5.2.2 Einordnung des Konzepts anhand bereits vorhandener Ansätze
5.2.3 Durchführung von Entwicklerinterviews
5.3 Vorstellung des Konzepts im Detail
5.3.1 Idee
5.3.2 Vorbedingungen
5.3.3 Entscheidungsgrundlage
5.3.4 Bewertung der Elemente eines Use Case
5.3.5 Suche nach einem "ähnlichen" Use Case
5.3.6 Bewertung und Korrektur durchzuführender Tätigkeiten
5.3.7 Festlegung der Skalierung
5.3.8 Die Korrekturfaktoren
5.3.8.1 Zweck der Tätigkeitskorrekturfaktoren
5.3.8.2 Zweck des zweiten Korrekturfaktors
5.3.9 Umwandlung des gemessenen Aufwands in Zeiteinheiten
5.3.9.1 Vorgehen und Ergebnisse
5.3.9.2 Probleme während des Vorgangs
5.3.9.3 Änderungsvorschläge
5.4 Simulation eines Auswahlvorganges zur Wiederverwendung von SW-Komponenten
5.4.1 Analyse der Simulationsumgebung und Bewertung der neuen Anforderungen
5.4.1.1 Allgemeines
5.4.1.2 Beschreibung des neuen Use Case (UC_A)
5.4.1.3 Ermittlung der Komplexität für UC_A
5.4.1.4 Beschreibung von UC_B
5.4.1.5 Beschreibung von UC_C
5.4.2 Suche nach dem ähnlichen Use Case
5.4.3 Aufwandsermittlung bei einer Wiederverwendung
5.4.3.1 Ermittlung des Aufwands im Vergleich zu UC_B
5.4.3.2 Ermittlung des Risikofaktors für UC_B
5.4.3.3 Ermittlung des Gesamtaufwands für UC_B
5.4.3.4 Ermittlung des Aufwands im Vergleich zu UC_C
5.4.3.5 Ermittlung des Risikofaktors für UC_C
5.4.3.6 Ermittlung des Gesamtaufwands für UC_C
5.4.4 Berechnung des Wiederverwendungsquotienten
5.4.4.1 Wiederverwendungsquotient für UC_B
5.4.4.2 Wiederverwendungsquotient für UC_C
5.4.5 Auswahl der Komponente
5.5 Beurteilung des Konzepts
6 Vorschlag für eine toolbasierte Unterstützung des Konzepts
7 Fazit/Ausblick
8 Anhang
Das Ziel der Arbeit ist die Entwicklung eines Modells zur Aufwandsabschätzung und Beurteilung der Wiederverwendbarkeit von Softwarekomponenten auf Basis textueller Use-Case-Beschreibungen. Dabei soll insbesondere die Effizienz der Wiederverwendung durch die Berechnung eines Wiederverwendungsquotienten messbar gemacht werden.
5.1.2 SW-Entwicklung auf der Grundlage von Use Cases
Wie aus Abbildung 5-1 hervorgeht, bildet die Ansammlung einzelner Use Cases die Grundlage zur Programmierung. Die Entwickler benutzen diese als (Haupt-) Entwicklungsvorlage. Des Weiteren dienen auch verschiedene Diagramme dazu, bestimmte Funktionen zu erklären. Im Vordergrund stehen allerdings die Use Cases, mit denen die Programmfunktionen dargestellt und erklärt werden. Um den Entwicklungsprozess via Use Cases in Abstimmung mit dem Auftraggeber darzustellen, kann folgendes Entity Relationship Model betrachtet werden:
VW-intern ist der Fachbereich Kunde und Auftraggeber zugleich, da dieser den Auftrag zur Erstellung eines neuen SW-Produkts erteilt und das fertig gestellte Produkt auch am Ende prüft und abnimmt. Somit erstellt der Fachbereich Aufträge und gibt diese an die Entwicklungsabteilung weiter. Diese schreiben auf der Grundlage des Auftrages ein Angebot. Innerhalb des Angebotes werden die Kosten und Umstände festgelegt, zu denen der Auftrag des Fachbereiches von der Entwicklung umgesetzt werden kann. Dieses Angebot erhält der Fachbereich, damit er über eine Annahme oder Ablehnung entscheiden kann. Ist der finanzielle Aufwand zu tragen, so wird der Fachbereich das Angebot annehmen und die Use Cases für den Auftrag verfassen. Diese werden an die Auftragnehmer weitergegeben. Nach intensiver Prüfung der funktionalen Anforderungen durch die Entwicklungsabteilung kann die Implementierung anhand der Use Cases beginnen. An der Kardinalität zwischen den Entitäten "Use Case" und "Programmierung" ist bereits zu erkennen, dass ein und derselbe Use Case unter Umständen als Vorlage für verschiedene Projekte genutzt - also wieder verwendet - werden kann.
In der Realität weichen der Aufbau und die Zusammensetzung von Use Cases auf textueller Basis von dem theoretischen Ansatz ab. Bei der Volkswagen Bank finden die Use Cases ihren Platz innerhalb der Requirementsanalyse und auch in der Analyse des Systemdesigns. Eine Softwareentwicklung, größtenteils basierend auf der Grundlage von Use Cases, benötigt sehr ausführliche und transparent dargestellte Dokumentation. Deshalb werden, abweichend vom theoretischen Ansatz, innerhalb der Use Cases viele Detailinformationen verwendet.
1 Einleitung: Beschreibt die Motivation zur Aufwandsabschätzung in Softwareprojekten und definiert das Ziel, ein Modell zur Beurteilung der Wiederverwendbarkeit von Softwarekomponenten mittels Use Cases zu erstellen.
2 Wiederverwendung von SW-Komponenten: Erläutert die theoretischen Grundlagen der Software-Wiederverwendung, ihre Ziele wie Qualitätssteigerung und Kostensenkung sowie verschiedene Arten und Facetten der Wiederverwendung.
3 Use Cases: Definiert Use Cases als Mittel zur Kommunikation funktionaler Anforderungen und beschreibt deren Aufbau sowie deren Einordnung in den Software-Engineering-Prozess.
4 Aufwandsabschätzung bei SW Projekten: Gibt einen Überblick über bestehende Schätzmodelle und stellt die UCP-Methode nach Gustav Karner als algorithmische Grundlage für das entwickelte Konzept vor.
5 Use Case basierte Wiederverwendung von SW-Komponenten bei der Volkswagen Bank: Das Kernkapitel, welches das entwickelte Modell als Metaprozess vorstellt, die Ausgangssituation bei der Volkswagen Bank analysiert und das Verfahren in einer Simulation evaluiert.
6 Vorschlag für eine toolbasierte Unterstützung des Konzepts: Skizziert eine Drei-Schichten-Architektur für eine Softwareanwendung, die die manuelle Berechnung des Modells effizient unterstützen könnte.
7 Fazit/Ausblick: Reflektiert die Ergebnisse der Arbeit, identifiziert Stärken sowie Schwachstellen des Konzepts und gibt Anregungen für zukünftige Experimente zur Validierung der Faktoren.
8 Anhang: Enthält detaillierte Dokumentationen, beispielhafte Use-Case-Formblätter der Volkswagen Bank und Berechnungsbeispiele der Skalierung.
Software-Wiederverwendung, Use Cases, Aufwandsabschätzung, UCP-Methode, Software-Engineering, Volkswagen Bank, Systementwicklung, Wiederverwendungsquotient, Komplexitätsanalyse, Metaprozess, Softwarekomponenten, Requirementsanalyse, Projektmanagement, Wirtschaftlichkeit, IT-Prozess
Die Arbeit beschäftigt sich mit der Entwicklung eines methodischen Modells, um den Aufwand für die Implementierung von Softwarefunktionen zu schätzen und gleichzeitig Potenziale für die Wiederverwendung bereits vorhandener Softwarebausteine in einem frühen Stadium des Software-Engineerings zu identifizieren.
Im Zentrum stehen die Konzepte der Software-Wiederverwendung, die Methodik der funktionalen Anforderungsanalyse mittels Use Cases sowie algorithmische Ansätze zur Aufwandsvorhersage in Softwareprojekten, insbesondere unter Anwendung der UCP-Methode.
Das Hauptziel ist die Erstellung eines Konzepts, das auf Basis von textuellen Use-Case-Beschreibungen quantifizierbare Aussagen über den Implementierungsaufwand und die Effizienz einer Wiederverwendung treffen kann, um Planungssicherheit zu erhöhen.
Die Arbeit basiert auf einem algorithmischen Hybridansatz. Sie adaptiert die Use Case Point (UCP) Methode von Gustav Karner und erweitert diese durch spezifische Korrekturfaktoren und detaillierte Gewichtungen für GUI-Elemente und Tätigkeiten, die aus empirischen Entwicklerinterviews bei der Volkswagen Bank abgeleitet wurden.
Der Hauptteil analysiert die Systementwicklungsprozesse (SEP) bei der Volkswagen Bank, entwickelt das Metaprozess-Modell zur Bewertung der Use Cases, führt eine detaillierte Gewichtungsskala ein und validiert das Konzept durch eine praktische Simulation an drei konkreten Fallbeispielen.
Zentrale Begriffe sind neben der Software-Wiederverwendung und den Use Cases insbesondere die Aufwandsabschätzung, der UCP-Metaprozess, die Modellierung von Anforderungen sowie die praktische Anwendung in IT-Prozessen der Automobilfinanzierung.
Die Volkswagen Bank dient als reales Anwendungsumfeld (Domäne der Verkäuferarbeitsplätze). Ihre spezifischen internen Richtlinien zur Softwareentwicklung (SEP) bilden die Basis für die Anpassung des Modells und die Bereitstellung von historischen Daten zur Kalibrierung der Aufwandskennzahlen.
Es ist eine berechnete Kennzahl, die den Nutzen einer Wiederverwendung im Vergleich zur Neuimplementierung widerspiegelt. Er wird durch eine mathematische Formel ermittelt, die den Aufwand der Wiederverwendung (inklusive Anpassungstätigkeiten) gegen den Aufwand einer vollständigen Neuentwicklung abwägt.
Da Standardmethoden die GUI oft pauschal bewerten, führt das Modell eine detaillierte Punktbewertung für einzelne Elemente wie Buttons, Textfelder oder Menüs ein, um den tatsächlichen Implementierungsaufwand der Benutzerschnittstelle präziser abzubilden.
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!

