Darstellung der Variabilität von Software-Produktfamilien durch Use Cases
- Art: Diplomarbeit
- Autor: Stan Bühne
- Abgabedatum: April 2002
- Umfang: 122 Seiten
- Dateigröße: 3,0 MB
- Note: 1,0
- Institution / Hochschule: Universität - Gesamthochschule Essen Deutschland
- ISBN (eBook): 978-3-8324-5557-6
-
ISBN (Paperback) :
978-3-8324-5557-6 P - ISBN (CD) :978-3-8324-5557-6 CD
- Sprache: Deutsch
- Prämierung:
- Arbeit zitieren: Bühne, Stan April 2002: Darstellung der Variabilität von Software-Produktfamilien durch Use Cases, Hamburg: Diplomica Verlag
- Schlagworte: Requirements Engineering, UML, Software-Modellierung, Rational-Rose, funktionale/ nicht funktionale Anforderungen
In den Warenkorb
48,00 €
Diplomarbeit von Stan Bühne
Einleitung:
Ziel dieser Arbeit ist es, für den Requirements Engineering Prozess in der Applikationsentwicklung (Application Engineering) eine geeignete Darstellungsweise für die Variabilität von Software-Produktfamilien zu entwickeln, die es erlaubt die PF-Variabilität aus der Sicht des Kunden abzubilden. Aus Sicht des Kunden meint in diesem Zusammenhang, eine Betrachtung der variablen Aspekte einer Produktfamilie, die sich auf eine externe Sicht auf das System beschränkt, d.h. auf eher funktionale Aspekte die erläutern was ein System abbildet, welche Funktion es bietet oder wo es zu Nutzen ist. Unberücksichtigt bleiben aus Kundensicht Variabilitäts-Aspekte, die sich auf die Umsetzung, sprich Implementierung, etc. beziehen. Für die Darstellung der Variabilitäts-Aspekte aus Kundensicht, sollen vorhandene Use Case Modelle untersucht und ggf. erweitert werden.
Diese Modelle sollen den RE-Ingenieur bei der Anforderungserhebung im Application Engineering unterstützen, dem Kunden die Möglichkeiten und Grenzen der Produktfamilie aufzuzeigen. Zudem ermöglicht die Darstellung der Variabilität, frühzeitig die Parallelen zwischen Kundenanforderungen und der gegebenen Funktionalität (bzw. Variabilität) zu erkennen, sodass Kundenanforderungen so früh wie möglich durch die Wiederverwendung befriedigt werden können.
Gang der Untersuchung:
Das Kapitel 2 gibt eine einführende Einleitung in den Bereich der Software-Produktfamilien und erläutert hierbei kurz die Prozesse des Domain Engineering und Application Engineering, bevor grundlegende Aspekte der Variabilität besprochen werden und der RE-Kontext hergestellt wird.
Das Kapitel 3 beschreibt die Variabilität von Produktfamilien aus Kundensicht und führt hierfür eine auf die RE-Welten aufbauende differenzierte Sichtweise auf die Produktfamilien-Variabilität ein, welches eine Klassifizierung der Variabilität in unterschiedliche Variabilitäts-Sichten und –Klassen erlaubt.
Das Kapitel 4 gibt eine kurze Einführung in UML-Use Cases und untersucht die Darstellungsmöglichkeiten und Darstellungsgrenzen von Use Cases in Bezug auf die Darstellbarkeit von Produktfamilien-Aspekten.
Das Kapitel 5 untersucht die Darstellungsmöglichkeit, der in Kapitel 3 erarbeiteten Variabilitäts-Sichten und –Klassen durch Use Case Modelle und beschreibt einige Erweiterungsmöglichkeiten zur geeigneten Darstellung der durch Use Cases nicht darstellbaren Klassen, sowie derer Abhängigkeiten untereinander, bevor diese in einer ganzheitlichen Sicht zusammengefasst und beschrieben werden.
Das Kapitel 6 untersucht und beschreibt anhand eines Beispiels Umsetzungsmöglichkeiten des erarbeiteten Modells, durch ein konventionelles Modellierungs-Tool (Rational Rose) und zeigt dabei Möglichkeiten und Grenzen heutiger Werkzeuge auf.
Das Kapitel 7 gibt zum Abschluss eine zusammenfassende Beschreibung der Arbeit mit den erlangten Erkenntnissen, sowie einen Ausblick über den möglichen Nutzen dieser Arbeit.
Inhaltsverzeichnis:
| 1. | Einleitung | 1 |
| 1.1 | Motivation dieser Arbeit | 1 |
| 1.2 | Ziel der Diplomarbeit | 2 |
| 1.3 | Überblick | 3 |
| 2. | Software-Produktfamilien | 4 |
| 2.1 | Prozesse der SW-Produktfamilienentwicklung | 4 |
| 2.1.1 | Domain Engineering | 5 |
| 2.1.2 | Application Engineering | 6 |
| 2.1.3 | Effektivitäteiner Software-Produktfamilie | 6 |
| 2.2 | Variabilität in Software-Produktfamilien | 7 |
| 2.2.1 | Beschreibung von Variabilität | 7 |
| 2.2.2 | Umsetzungsarten von Variabilität | 8 |
| 2.2.3 | Auftretenvon Variabilität | 9 |
| 2.2.4 | Variabilität im RE-Kontext | 9 |
| 2.3 | Zusammenfassung | 11 |
| 3. | Variabilität einer Software-Produktfamilie aus Kundensicht | 12 |
| 3.1 | Einführung | 12 |
| 3.2 | Sichten auf Variabilität | 14 |
| 3.3 | Beispiel FIS | 14 |
| 3.4 | Modell der differenzierten Kundensicht auf Variabilität | 16 |
| 3.4.1 | Abbildungs-Variabilität | 16 |
| 3.4.1.1 | Variabilität in Geschäftsobjekten | 17 |
| 3.4.1.2 | Variabilität in der Datenqualität | 18 |
| 3.4.1.3 | Abbildungs-Variabilität am Beispiel | 18 |
| 3.4.2 | Funktions-Variabilität | 19 |
| 3.4.2.1 | Variabilität in der Benutzerfunktionalität | 20 |
| 3.4.2.2 | Variabilität in der Benutzerfreundlichkeit | 21 |
| 3.4.2.3 | Variabilität in der Benutzer-Dienstgüte | 22 |
| 3.4.2.4 | Funktions-Variabilität am Beispiel | 23 |
| 3.4.3 | Technische Variabilität | 24 |
| 3.4.3.1 | Variabilität in Geschäftssystemen | 24 |
| 3.4.3.2 | Technische Variabilität am Beispiel | 25 |
| 3.5 | Metamodell der PF-Variabilität | 26 |
| 3.6 | Zusammenfassung | 27 |
| 4. | Use Cases zur Darstellung von PF-Variabilität? | 28 |
| 4.1 | Einführung – Use Cases | 28 |
| 4.2 | Darstellung funktionaler Anforderungen | 29 |
| 4.2.1 | Einzelapplikationen | 29 |
| 4.2.2 | Produktfamilien | 30 |
| 4.2.3 | Erweiterungen des Use Case Modells | 32 |
| 4.2.4 | Darstellung von Abläufen und Daten(-flüssen) | 34 |
| 4.3 | Darstellung nicht-funktionaler Anforderungen | 35 |
| 4.3.1 | Begriff der nicht-funktionalen Anforderung | 35 |
| 4.3.2 | Einzelapplikationen | 35 |
| 4.3.3 | Produktfamilien | 36 |
| 4.4 | Zusammenfassung | 38 |
| 5. | Darstellung der Variabilitäts-Sichten | 39 |
| 5.1 | Einführung | 39 |
| 5.2 | Darstellung der Abbildungs-Variabilität | 39 |
| 5.2.1 | Untersuchung der Darstellbarkeit von Geschäftsobjekten | 39 |
| 5.2.2 | Untersuchung der Darstellbarkeit der Geschäftsqualität | 40 |
| 5.3 | Darstellung der Funktions-Variabilität | 40 |
| 5.3.1 | Untersuchung der Darstellbarkeit der Benutzerfunktionalität | 40 |
| 5.3.1.1 | Darstellung variabler Funktionen | 40 |
| 5.3.1.2 | Darstellung variablerAbläufe und Datenflüsse | 43 |
| 5.3.2 | Untersuchung der Darstellbarkeit der Dienstqualität | 44 |
| 5.4 | Darstellung der Technischen-Variabilität | 47 |
| 5.4.1 | Untersuchung der Darstellbarkeit von Geschäftssystemen | 47 |
| 5.5 | Beurteilung der Darstellbarkeit durch Use Cases | 48 |
| 5.6 | Modellerweiterungen zur Darstellung nicht-funktionaler Variabilität | 50 |
| 5.6.1 | Darstellung nicht-funktionaler Variabilität durch NFR-Trees | 50 |
| 5.6.2 | Kombination von Use Cases und NFR-Trees | 50 |
| 5.6.3 | NFR-Trees am Beispiel der Funktions-Variabilität | 52 |
| 5.7 | Abhängigkeiten zwischen Varianten | 53 |
| 5.7.1 | Abhängigkeiten an einem Variationspunkt | 53 |
| 5.7.2 | Abhängigkeiten einer Variabilitäts-Klasse | 54 |
| 5.7.3 | Abhängigkeiten einer Variabilitäts-Sicht | 55 |
| 5.7.4 | Abhängigkeiten unterschiedlicher Variabilitäts-Sichten | 55 |
| 5.7.5 | Erweiterung um Abhängigkeits-Constraints | 56 |
| 5.8 | Ganzheitliche Betrachtung der Variabilitäts-Sichten | 57 |
| 6. | Umsetzung der PF-Variabilität am Beispiel | 59 |
| 6.1 | Einführung | 59 |
| 6.2 | Darstellung von PF-Variabilität durch Rose | 60 |
| 6.2.1 | Erweiterung um Stereotype | 60 |
| 6.2.2 | REI – Rose Extensibility Interface | 61 |
| 6.2.3 | Aufteilung in Variabilitäts-Sichten | 62 |
| 6.3 | Beschreibung der Funktions-Variabilität durch Rose | 63 |
| 6.3.1 | Darstellung variabler Funktionen | 63 |
| 6.3.1.1 | Allgemeine Darstellung von Funktionen durch Rose | 63 |
| 6.3.1.2 | Darstellung variabler Funktionen | 64 |
| 6.3.1.3 | Darstellung variabler Abläufe | 65 |
| 6.3.1.4 | Abhängigkeiten zwischen UC-Varianten | 66 |
| 6.3.2 | Darstellung variabler NFRs | 67 |
| 6.3.2.1 | Allgemeine Darstellung von NFR-Trees durch Rose | 67 |
| 6.3.2.2 | Abhängigkeiten zwischen UC und NFR | 69 |
| 6.3.2.3 | Automatische Generierung von Abhängigkeitsdiagrammen | 70 |
| 6.4 | Beschreibung der Abbildungs-Variabilität durch Rose | 71 |
| 6.4.1 | Darstellung variabler Daten | 71 |
| 6.4.2 | Abhängigkeiten zwischen UC und Daten | 72 |
| 6.4.3 | Automatische Generierung von Abhängigkeitsdiagrammen | 72 |
| 6.5 | Erstellung eines Produkt-Modells | 73 |
| 6.5.1 | Erstellen der minimalen Funktionalität | 74 |
| 6.5.2 | Hinzufügen optionaler Funktionalität | 75 |
| 6.5.3 | Auffinden der notwendigen Daten und Objekte | 75 |
| 6.5.4 | Fertigstellen der Produkt-Modelle | 76 |
| 6.6 | Bewertung von Rose | 77 |
| 7. | Zusammenfassung und Ausblick | 78 |
| 7.1 | Zusammenfassung | 78 |
| 7.2 | Resümee und Ausblick | 79 |
| 8. | Literaturverzeichnis | 80 |
| Anhang A – Rose Erweiterungen | 84 |
Auch für die Darstellung der PF-Variabilität ist es, wie in Kapitel 3 erläutert, notwendig, Variabilität in nicht-funktionalen Anforderungen zu beachten (z.B. Dienstgüte). Hierzu ist es im Gegensatz zur Einzelapplikationsentwicklung erforderlich, dass zu einem Use Case mehrere nicht-funktionale Varianten (bzw. Anforderungen) betrachtet werden können (müssen). Da nicht-funktionale Anforderungen, wie in Abbildung 4-5 illustriert, am besten im Zusammenhang mit den dazugehörigen funktionalen Anforderungen betrachtet werden können, sollen an dieser Stelle UCTs genutzt werden, um die Variabilität in nicht-funktionalen Anforderungen textuell zu beschreiben. Um Variabilität zu beschreiben, sind wie bereits erwähnt Variationspunkte und Varianten notwendig. Für die Darstellung der Variabilität in nicht-funktionalen Anforderungen beschreiben Variationspunkte die allgemeinen Aspekte der nicht-funktionalen Anforderungen und Varianten sodann die speziellen Aspekte. Die folgenden beispielhaften Ausschnitte von Anwendungsfallbeschreibungen beschreiben zwei Varianten, die den Variationspunkt „Check-In“ erweitern. [...]
Darstellung der Variabilität von Software-Produktfamilien durch Use Cases Die Beschreibung nicht-funktionaler Anforderungen kann in UCTs allerdings sehr detailliert erfolgen, sodass alle zu einer Funktion gehörenden nicht-funktionalen Anforderungen beschrieben werden können. Problematisch ist allerdings eine Darstellung bzw. Prüfung von Abhängigkeiten unterhalb der nicht-funktionalen Anforderungen eines bzw. unterschiedlicher Use Cases. Um solche Abhängigkeiten überprüfbar zu machen, sind Abhängigkeits-Links erforderlich, wie sie z.B. von gängigen RE-Tools (z.B. Slate, Doors) angeboten werden, um sie durch eine Abhängigkeitsmatrix oder Abhängigkeitstabelle darstellen zu können. Eine andere Möglichkeit funktionale und nicht funktionale Anforderungen abzubilden, bietet die User Requirements Notation (URN) auf Basis von Use Case Maps (UCM), ein von der ITUT entwickelter Standard [IUT-T00]. Die NFRs (bzw. Softgoals, wie sie in diesem Ansatz genannt werden) lassen sich dabei in unterschiedlichen Modellen detaillieren. Dieser Ansatz soll an dieser Stelle jedoch nicht weiter verfolgt werden, da dies den Rahmen der Arbeit sprengen würde. [...]
Die Darstellung bzw. Beschreibung von Daten kann durch Use Case Templates nur unzureichend befriedigt werden, da weder Relationen noch Kardinalitäten dargestellt werden können. Allerdings sind Use Cases auch nicht dazu gedacht, Daten abzubilden, sondern vielmehr um Funktionalität aus abstrakter Sicht zu beschreiben. Für die Beschreibung von Daten und deren Relationen werden in der objekt-orientierten Modellierung oftmals Objektmodelle genutzt. Solche Objektmodelle können dann zusätzlich einem Use Case hinterlegt werden. An dieser Stelle soll allerdings nicht weiter darauf eingegangen werden, da es hier um die Darstellungsmöglichkeiten durch Use Cases selbst geht. Für die Beschreibung von Datenflüssen zwischen Benutzer (Akteur) und Anwendungsfall werden hingegen Sequenzdiagramme genutzt. Da Daten(-flüsse) und Abläufe i.d.R. durch Funktionen getrieben werden, erscheint es sinnvoll, variable Abläufe und Daten den dazugehörigen Use Cases zu hinterlegen. Das heißt, wenn ein Use Case Icon eine abstrakte Funktion des Systems beschreibt, dann beschreibt das 34 [...]
In den Warenkorb
48,00 €
Link zur Arbeit:
http://www.diplom.de/ean/9783832455576
Arbeit zitieren:
Bühne, Stan April 2002: Darstellung der Variabilität von Software-Produktfamilien durch Use Cases, Hamburg: Diplomica Verlag
Schlagworte:
Requirements Engineering, UML, Software-Modellierung, Rational-Rose, funktionale/ nicht funktionale Anforderungen



