kapitel 11 rationale management - sewiki.iai.uni-bonn.de · rationale sind die Überlegungen, die...

34
Vorlesung „Softwaretechnologie“ Wintersemester 2009 R O O T S Kapitel 11 Kapitel 11 Rationale Management Nach Bernd Bruegge, Allen Dutoit: Object-Oriented Software Engineering Conquering Complex and Changing SystemsObject Oriented Software Engineering Conquering Complex and Changing Systems , Prentice Hall, 2000 Stand: 05.02.2009

Upload: others

Post on 18-Oct-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Kapitel 11 Rationale Management - sewiki.iai.uni-bonn.de · Rationale sind die Überlegungen, die zum System (in seiner jetzigen Form) geführt habenForm) geführt haben. Rationale

Vorlesung „Softwaretechnologie“Wintersemester 2009 R O O T Ste se este 009

Kapitel 11 Kapitel 11 Rationale Management

Nach Bernd Bruegge, Allen Dutoit: Object-Oriented Software Engineering – Conquering Complex and Changing Systems“„Object Oriented Software Engineering Conquering Complex and Changing Systems ,

Prentice Hall, 2000

Stand: 05.02.2009

Page 2: Kapitel 11 Rationale Management - sewiki.iai.uni-bonn.de · Rationale sind die Überlegungen, die zum System (in seiner jetzigen Form) geführt habenForm) geführt haben. Rationale

Vorlesung „ Softwaretechnologie“Kapitel 11: Rationale Management R O O T Sap te at o a e a age e t

Motivation

Page 3: Kapitel 11 Rationale Management - sewiki.iai.uni-bonn.de · Rationale sind die Überlegungen, die zum System (in seiner jetzigen Form) geführt habenForm) geführt haben. Rationale

Ein Flugzeugbeispiel

A320E t P i fl it Fl b Wi “ St Erstes Passagierflugzeug mit „Fly-by-Wire“-Steuerung

150 Sitzplätze, kurze bis mittlere Reichweite

A319 & A321 Nachfolgermodelle des A320g Gleiche Handhabung wie beim A320

„Rationale“ (engl. für „Begründung“, „vernunftsmäßige Erklärung“, „Argumentation“)

Reduzieren der Kosten für Pilotenausbildung und Wartung Reduzieren der Kosten für Pilotenausbildung und Wartung Mehr Flexibilität für die Fluglinie

© 2000-2009 Dr. G. Kniesel Vorlesung „Softwaretechnologie“ (SWT) Seite 11-4 R O O T S

Page 4: Kapitel 11 Rationale Management - sewiki.iai.uni-bonn.de · Rationale sind die Überlegungen, die zum System (in seiner jetzigen Form) geführt habenForm) geführt haben. Rationale

Ein Flugzeugbeispiel (2)

A330 & A340L t k b Ult l t k fl Langstrecken- bzw. Ultralangstreckenflugzeug

2x Sitzplätze, 3x Reichweite Handhabung ähnlich wie bei der A320 Familie Handhabung ähnlich wie bei der A320 Familie

Rationale Nach nur minimaler Umschulung können A320-Piloten die Zulassung

zum Flug der A330 und A340 erwerben.

Konsequenz Jede Änderung an einem der fünf Flugzeugtypen muss diese Jede Änderung an einem der fünf Flugzeugtypen muss diese

Ähnlichkeiten beibehalten.

© 2000-2009 Dr. G. Kniesel Vorlesung „Softwaretechnologie“ (SWT) Seite 11-5 R O O T S

Page 5: Kapitel 11 Rationale Management - sewiki.iai.uni-bonn.de · Rationale sind die Überlegungen, die zum System (in seiner jetzigen Form) geführt habenForm) geführt haben. Rationale

Überblick

Rationale W i t ? Was ist es? Warum ist es wichtig?

Verfahren... ... zur Repräsentation von Rationale

f ... zum Erfassung von Rationale ... zum Zugriff auf Rationale

Aktueller Stand in Praxis & Forschung

Zusammenfassung

© 2000-2009 Dr. G. Kniesel Vorlesung „Softwaretechnologie“ (SWT) Seite 11-6 R O O T S

Page 6: Kapitel 11 Rationale Management - sewiki.iai.uni-bonn.de · Rationale sind die Überlegungen, die zum System (in seiner jetzigen Form) geführt habenForm) geführt haben. Rationale

Was ist „Rationale“?

Rationale sind die Überlegungen, die zum System (in seiner jetzigen Form) geführt habenForm) geführt haben.

Rationale beinhaltetRationale beinhaltet Fragen (issues), die angegangen wurden, Alternativen, die in Betracht gezogen wurden, Entscheidungen, die getroffen wurden um die Fragen zu klären, Kriterien, die als Grundlage für die Entscheidungsfindung dienten,

sowiesowie Diskussionen, durch die die Entwickler zu den Entscheidungen

gekommen sind.

© 2000-2009 Dr. G. Kniesel Vorlesung „Softwaretechnologie“ (SWT) Seite 11-7 R O O T S

Page 7: Kapitel 11 Rationale Management - sewiki.iai.uni-bonn.de · Rationale sind die Überlegungen, die zum System (in seiner jetzigen Form) geführt habenForm) geführt haben. Rationale

Warum „Rationale Management“?

Softwaresysteme ähneln PassagierflugzeugenSi i d F l i ß A hl E t h idSie sind Folge einer großen Anzahl von Entscheidungen, die über einen ausgedehnten Zeitraum getroffen wurden.

Gemeinsame Probleme Sich verändernde Annahmen Veraltete Entscheidungen Konflikte zwischen verschiedenen Kriterien

Daraus resultieren Hohe Wartungskosten Hohe Wartungskosten Informationens-Verlust und aufwendige „Wiederbeschaffung“

© 2000-2009 Dr. G. Kniesel Vorlesung „Softwaretechnologie“ (SWT) Seite 11-8 R O O T S

Page 8: Kapitel 11 Rationale Management - sewiki.iai.uni-bonn.de · Rationale sind die Überlegungen, die zum System (in seiner jetzigen Form) geführt habenForm) geführt haben. Rationale

„Rationale“ hilft beim Umgang mit VeränderungenVeränderungen

Verbessert die Wartbarkeit D W t l hält Ei bli k i d E t f k t t Das Wartungspersonal erhält Einblick in den Entwurfskontext.

Erleichtert das Erlernen Neues Personal kann den Entwurf verstehen, indem es die

Entscheidungen durchspielt, die zu dem Entwurf geführt haben.

Verbessert Analyse und Entwurf Vermeidet wiederholtes Auswerten untauglicher Alternativeng Ermöglicht eine konsistente und explizite Abwägung von Alternativen ... und somit wohlbegründete Entscheidungen

© 2000-2009 Dr. G. Kniesel Vorlesung „Softwaretechnologie“ (SWT) Seite 11-9 R O O T S

Page 9: Kapitel 11 Rationale Management - sewiki.iai.uni-bonn.de · Rationale sind die Überlegungen, die zum System (in seiner jetzigen Form) geführt habenForm) geführt haben. Rationale

Vorlesung „ Softwaretechnologie“Kapitel 11: Rationale Management R O O T Sap te at o a e a age e t

Rationale Management an einem Rationale Management an einem Beispiel

CRC-SystemeIssues

AlternativesCriteria

ArgumentsResolution

Page 10: Kapitel 11 Rationale Management - sewiki.iai.uni-bonn.de · Rationale sind die Überlegungen, die zum System (in seiner jetzigen Form) geführt habenForm) geführt haben. Rationale

Beispiel: Zugleitsystem (Centralized Traffic Control)Traffic Control)

Züge

GleiseS2 S3

Signale WeichenSW1 SW2

S1 S4

CTC-Systeme ermöglichen es, Züge ferngesteuert zu kontrollieren und zu überwachen.

CTC Systeme ermöglichen die Streckenplanung sowie die CTC-Systeme ermöglichen die Streckenplanung, sowie die Neuplanung in Problemfällen.

© 2000-2009 Dr. G. Kniesel Vorlesung „Softwaretechnologie“ (SWT) Seite 11-11 R O O T S

Page 11: Kapitel 11 Rationale Management - sewiki.iai.uni-bonn.de · Rationale sind die Überlegungen, die zum System (in seiner jetzigen Form) geführt habenForm) geführt haben. Rationale

Zugleitsystem (2)

CTC-Systeme sind ein ideales Beispiel für Rationale-Erfassung

Langlebige Systeme Manche CTC-Systeme enthalten Relais aus dem 19 Jahrhundert! Manche CTC-Systeme enthalten Relais aus dem 19. Jahrhundert! Ausgedehnter Wartungslebenszyklus Ursprüngliche Entwickler stehen nicht (mehr) zur Verfügung.

Ausfallzeiten sind teuer (wenn auch nicht sicherheitskritisch) Niedrige Toleranz gegenüber Bugs Niedrige Toleranz gegenüber Bugs Übergang zu ausgereifter Technologie

© 2000-2009 Dr. G. Kniesel Vorlesung „Softwaretechnologie“ (SWT) Seite 11-12 R O O T S

Page 12: Kapitel 11 Rationale Management - sewiki.iai.uni-bonn.de · Rationale sind die Überlegungen, die zum System (in seiner jetzigen Form) geführt habenForm) geführt haben. Rationale

Probleme / Fragen (engl. „issues“)

Konkrete Probleme, für die es typischerweise keine eindeutige, korrekte Lösung gibtkorrekte Lösung gibt.

Probleme werden als Fragen formuliert

input?:Issuedisplay?:Issue

Wie soll ein Gleisabschnitt visualisiert werden?

Wie soll der Streckenfahrdienstleiter mit dem

System interagieren?System interagieren?

© 2000-2009 Dr. G. Kniesel Vorlesung „Softwaretechnologie“ (SWT) Seite 11-13 R O O T S

Page 13: Kapitel 11 Rationale Management - sewiki.iai.uni-bonn.de · Rationale sind die Überlegungen, die zum System (in seiner jetzigen Form) geführt habenForm) geführt haben. Rationale

Lösungsvorschläge („Proposals”)

Lösungsvorschläge sind mögliche Alternativen zum Lösen eines Problems.Problems.

Ein Lösungsvorschlag kann mehreren Problemen zugeordnet sein.input?:Issuedisplay?:Issue

addressed byaddressed byaddressed by

point&click:Proposaltext-based:Proposal

Für den Streckenfahrdienstleiter genügt eine einfache Textanzeige. Gl i b h itt kö it

Die vom Streckenfahrdienstleiter verwendete Benutzerschnittstelle könnte

lGleisabschnitte können mit Sonderzeichen dargestellt werden.

alsPoint & Click UI realisiert werden.

© 2000-2009 Dr. G. Kniesel Vorlesung „Softwaretechnologie“ (SWT) Seite 11-14 R O O T S

Page 14: Kapitel 11 Rationale Management - sewiki.iai.uni-bonn.de · Rationale sind die Überlegungen, die zum System (in seiner jetzigen Form) geführt habenForm) geführt haben. Rationale

Folgeprobleme („Consequent issues“)

Folgeprobleme sind Probleme, die durch die Einführung eines Lösungsvorschlags entstehenLösungsvorschlags entstehen.

input?:Issuedisplay?:Issue

addressed byaddressed byaddressed by

point&click:Proposaltext-based:Proposal

t i l? I

raises

terminal?:Issue

Was für eine Terminalemulation soll für die Anzeige verwendet

werden?

© 2000-2009 Dr. G. Kniesel Vorlesung „Softwaretechnologie“ (SWT) Seite 11-15 R O O T S

Page 15: Kapitel 11 Rationale Management - sewiki.iai.uni-bonn.de · Rationale sind die Überlegungen, die zum System (in seiner jetzigen Form) geführt habenForm) geführt haben. Rationale

Kriterien

Ein Kriterium ist ein Maß für die Güte von Vorschlägen.K it i i d ft E t f i l d i ht f kti l A f d Kriterien sind oft Entwurfsziele oder nicht-funktionale Anforderungen.

input?:Issuedisplay?:Issue

addressed byaddressed byaddressed by

point&click:Proposaltext-based:Proposal

raises meetsmeets

t i l? I

failsfails

terminal?:Issue

availability$:Criterionusability$:Criterion

Das CTC System sollte eineDie zur Eingabe eines Kommandos Das CTC-System sollte eine Verfügbarkeit von mindestens 99%

aufweisen.

Die zur Eingabe eines Kommandos benötigte Zeit sollte weniger als zwei

Sekunden betragen.

Page 16: Kapitel 11 Rationale Management - sewiki.iai.uni-bonn.de · Rationale sind die Überlegungen, die zum System (in seiner jetzigen Form) geführt habenForm) geführt haben. Rationale

Argumente

Argumente repräsentieren die Debatten, durch die die Entwickler zur Lösung eines Problems gekommen sindLösung eines Problems gekommen sind.

Argumente könne für oder gegen einen beliebigen anderen Teil des Rationale geführt werden.

Argumente machen den größten Teil des Rationale aus.

© 2000-2009 Dr. G. Kniesel Vorlesung „Softwaretechnologie“ (SWT) Seite 11-17 R O O T S

Page 17: Kapitel 11 Rationale Management - sewiki.iai.uni-bonn.de · Rationale sind die Überlegungen, die zum System (in seiner jetzigen Form) geführt habenForm) geführt haben. Rationale

Arguments (2)

input?:Issue

addressed byaddressed by

display?:Issue

addressed byaddressed byaddressed by

meetsmeets

point&click:Proposaltext-based:Proposal

terminal?:Issue

raises meetsmeets

availability$:Criterionusability$:Criterion

failsfails is opposed by

yy

is supported by

availability-first!:Argument

Point & click UIs sind in ihrer Implementierung komplexer als Text-basierte Schnittstellen. Infolge dessen sind sie komplizierter zu testen. Wir würden riskieren, schwere Fehler in das Systemdessen sind sie komplizierter zu testen. Wir würden riskieren, schwere Fehler in das System

einzuführen. Das würde jeden Benutzbarkeits-Vorteil aufwiegen, den eine solche Benutzerschnittstelle hätte.

Page 18: Kapitel 11 Rationale Management - sewiki.iai.uni-bonn.de · Rationale sind die Überlegungen, die zum System (in seiner jetzigen Form) geführt habenForm) geführt haben. Rationale

Lösungen („Resolutions“)

Lösungen repräsentieren Entscheidungen.Ei Lö f t d ählt Lö hl i di Eine Lösung fasst den ausgewählten Lösungsvorschlag, sowie die Argumente, die für ihn sprechen, zusammen.

Ein gelöstes Problem („issue“) wird als „geschlossen“ („closed“)Ein gelöstes Problem („issue ) wird als „geschlossen („closed ) bezeichnet, ein ungelöstes als „offen” („open”).

Ein gelöstes Problem kann, wenn nötig, jederzeit neu „eröffnet“ (engl. reopened“) erden„reopened“) werden.

In diesem Fall wird die Lösung zur Alternative zurückgestuft.

© 2000-2009 Dr. G. Kniesel Vorlesung „Softwaretechnologie“ (SWT) Seite 11-19 R O O T S

Page 19: Kapitel 11 Rationale Management - sewiki.iai.uni-bonn.de · Rationale sind die Überlegungen, die zum System (in seiner jetzigen Form) geführt habenForm) geführt haben. Rationale

Lösungen (2)

text-based&keyboard:Resolution

input?:Issue

resolvesresolves

display?:Issue

addressed byaddressed byaddressed by

point&click:Proposaltext-based:Proposal

i l? I

raises meetsmeets

point&click:Proposaltext based:Proposal

terminal?:Issue

failsfails is opposed by

usability$:Criterion availability$:Criterion

is supported by

availability-first!:Argument

is supported by

Page 20: Kapitel 11 Rationale Management - sewiki.iai.uni-bonn.de · Rationale sind die Überlegungen, die zum System (in seiner jetzigen Form) geführt habenForm) geführt haben. Rationale

Vorlesung „ Softwaretechnologie“Kapitel 11: Rationale Management R O O T Sap te at o a e a age e t

Rationale Repräsentation Erfassung Rationale Repräsentation, Erfassung, Zugriff

Ebenen von Rationale ManagementRepräsentation: Rationale-Modell

ÜErfassung: ÜbersichtErfassung: Record-and-replay Beispiel

Zugriff: Ansätze, Tools

Page 21: Kapitel 11 Rationale Management - sewiki.iai.uni-bonn.de · Rationale sind die Überlegungen, die zum System (in seiner jetzigen Form) geführt habenForm) geführt haben. Rationale

Ebenen von „Rationale Management”

Keine Rationale-Erfassung R ti l i t i F M O li K ik ti d i d Rationale ist nur in Form von Memos, Online-Kommunikation oder in den

Köpfen der Entwickler vorhanden.

Rationale-Rekonstruktion Rationale besteht aus einem Dokument, das den endgültigen Entwurf

begründet (nachträglich)begründet (nachträglich).

Rationale-Erfassung Rationale wird zusammen mit dem Entwurf dokumentiert, noch während er

entwickelt wird.

Rationale-Integration Rationale ist die treibende Kraft des Entwurfs.

© 2000-2009 Dr. G. Kniesel Vorlesung „Softwaretechnologie“ (SWT) Seite 11-22 R O O T S

Page 22: Kapitel 11 Rationale Management - sewiki.iai.uni-bonn.de · Rationale sind die Überlegungen, die zum System (in seiner jetzigen Form) geführt habenForm) geführt haben. Rationale

“Rationale Integration”: Methodisches Vorgehen / An Rationale Management orientierter Entwicklungsprozessg g p

Anforderungen

HerausforderungÄnderung

F ?

gÄnderung

Frage ?

Antwort !

E l tiBegründung .Entscheidung

Evolution

© 2000-2009 Dr. G. Kniesel Vorlesung „Softwaretechnologie“ (SWT) Seite 11-23 R O O T S

Page 23: Kapitel 11 Rationale Management - sewiki.iai.uni-bonn.de · Rationale sind die Überlegungen, die zum System (in seiner jetzigen Form) geführt habenForm) geführt haben. Rationale

Repräsentation von Rationale: Problemmodelle ( Issue models“)Problemmodelle („Issue models )

löst

Problem?Lösung.

löst

Vorschlag Kriterium$genügt +

genügt nichtnicht -

befürwortet +beanstandet -

befürwortet +beanstandet -

Argument!

© 2000-2009 Dr. G. Kniesel Vorlesung „Softwaretechnologie“ (SWT) Seite 11-24 R O O T S

Page 24: Kapitel 11 Rationale Management - sewiki.iai.uni-bonn.de · Rationale sind die Überlegungen, die zum System (in seiner jetzigen Form) geführt habenForm) geführt haben. Rationale

Repräsentation von Rationale (Fortsetzung) (Fortsetzung)

Es wurden schon viele verschiedene Problemmodelle vorgeschlagenIBIS QOC DRL Wi Wi IBIS, QOC, DRL, WinWin

Ähneln sich im Wesentlichen Unterscheiden sich in dem Maß an Detailliertheit das erfasst werden Unterscheiden sich in dem Maß an Detailliertheit, das erfasst werden

kann

Herausforderungen: Erfordern Werkzeuge für Erfassung und Zugriff Erfordern Integration in CASE- und Projektmanagementwerkzeugen Erfordern Integration in Methodik

© 2000-2009 Dr. G. Kniesel Vorlesung „Softwaretechnologie“ (SWT) Seite 11-25 R O O T S

Page 25: Kapitel 11 Rationale Management - sewiki.iai.uni-bonn.de · Rationale sind die Überlegungen, die zum System (in seiner jetzigen Form) geführt habenForm) geführt haben. Rationale

Erfassung von Rationale

AnsätzeR k t kti Rekonstruktion

Record & replay Inkrementelle und halbautomatische Strukturierung Inkrementelle und halbautomatische Strukturierung

Herausforderungen g Große Menge von Informationen muss erfasst werden Störend für Entwickler Formalisierung von Wissen ist teuer.

© 2000-2009 Dr. G. Kniesel Vorlesung „Softwaretechnologie“ (SWT) Seite 11-26 R O O T S

Page 26: Kapitel 11 Rationale Management - sewiki.iai.uni-bonn.de · Rationale sind die Überlegungen, die zum System (in seiner jetzigen Form) geführt habenForm) geführt haben. Rationale

Record & Replay-Beispiel: Meeting ManagementManagement

Der Moderator verschickt eine Tagesordnung. T d kt i d P bl Tagesordnungspunkte sind Probleme.

Die Teilnehmer antworten auf die Tagesordnung. Vorgeschlagene Zusätze/Änderungen sind Lösungsvorschläge oder Vorgeschlagene Zusätze/Änderungen sind Lösungsvorschläge oder

zusätzliche Probleme. Der Moderator vervollständigt die Tagesordnung und führt das Meeting

durchdurch. Jede der Diskussionen umfasst einen einzelnen Problem-Baum.

Der Protokollant zeichnet das Meeting auf.g Der Protokollant hält die Diskussionen in Form von Problemen,

Vorschlägen, Argumenten, und Kriterien fest. Der Protokollant verzeichnet Entscheidungen als Lösungen und Action Der Protokollant verzeichnet Entscheidungen als Lösungen und Action

Items. Action Items halten fest, wer, was, (bis) wann, tun soll.

© 2000-2009 Dr. G. Kniesel Vorlesung „Softwaretechnologie“ (SWT) Seite 11-27 R O O T S

Page 27: Kapitel 11 Rationale Management - sewiki.iai.uni-bonn.de · Rationale sind die Überlegungen, die zum System (in seiner jetzigen Form) geführt habenForm) geführt haben. Rationale

Record & Replay-Beispiel: Tagesordnungspunkte eines Meetings Tagesordnungspunkte eines Meetings

TOP 3. Diskussion

I[1] Auf welche Weise sollen Gleisabschnitte aus der Datenbank geladen werden?geladen werden?

I[2] Wie sollen die Gleisabschnitte in den Transaktionen kodiert d ?werden?

I[3] Welche Abfragesprache soll für die Datenbankanfragen verwendet dwerden?

© 2000-2009 Dr. G. Kniesel Vorlesung „Softwaretechnologie“ (SWT) Seite 11-28 R O O T S

Page 28: Kapitel 11 Rationale Management - sewiki.iai.uni-bonn.de · Rationale sind die Überlegungen, die zum System (in seiner jetzigen Form) geführt habenForm) geführt haben. Rationale

Record & Replay-Beispiel: Diskussion

I[1] Auf welche Weise sollen Gleisabschnitte aus der Datenbank geladen werden?g

Jim: Wie wäre es, wenn wir einfach nur den einen, angefragten Abschnitt laden? Das ist einfach zu implementieren, und wir können uns immer noch damit beschäftigen wenn es sich als zukönnen uns immer noch damit beschäftigen, wenn es sich als zu langsam herausstellen sollte.

A Ei P f t hi d b hb t Gl i b h itt ä hAnn: Ein Prefetching der benachbarten Gleisabschnitte wäre auch nicht viel schwieriger und um einiges schneller.

Sam: Bei der Streckenplanung brauchen wir die benachbarten Abschnitte in der Regel ohnehin. Die meisten Anfragen sind Anfragen zur Streckenplanung.

Jim: OK, dann lasst uns die Prefetching-Variante probieren. Wenn es zu kompliziert wird, können wir uns immer noch eine einfachere Lösung überlegen

© 2000-2009 Dr. G. Kniesel Vorlesung „Softwaretechnologie“ (SWT) Seite 11-29 R O O T S

Lösung überlegen.

Page 29: Kapitel 11 Rationale Management - sewiki.iai.uni-bonn.de · Rationale sind die Überlegungen, die zum System (in seiner jetzigen Form) geführt habenForm) geführt haben. Rationale

Record & Replay-Beispiel:DiskussionsprotokollDiskussionsprotokoll

3. Diskussion

I[1] Auf welche Weise sollen Gleisabschnitte aus der Datenbank geladen werden?

P[1.1] einzelne Abschnitte!

A- Geringer Durchsatz.

A+ Einfacher.A+ Einfacher.

P[1.2] Gleisabschnitte + benachbarte Abschnitte!

A+ Insgesamt bessere Performance: Bei der Streckenplanungwerden die benachbarten Abschnitte ohnehin benötigtwerden die benachbarten Abschnitte ohnehin benötigt.

{ref: 1/31 Meeting „Streckenplanung“}

R[1] Wir implementieren P[1.2]. Das Prefetching sollte aber in der Datenbankschicht implementiert werden, um diese Entscheidung zu kapseln. Wenn alle Stricke reißen, kommen wir auf P[1.1] zurück.

© 2000-2009 Dr. G. Kniesel Vorlesung „Softwaretechnologie“ (SWT) Seite 11-30 R O O T S

zurück.

Page 30: Kapitel 11 Rationale Management - sewiki.iai.uni-bonn.de · Rationale sind die Überlegungen, die zum System (in seiner jetzigen Form) geführt habenForm) geführt haben. Rationale

Zugriff auf Rationale

Blättern & Suchen V llt t h ö li ht d A ffi d i t t Ei t ä Volltextsuche ermöglicht das Auffinden interessanter Einträge. Verknüpfungen im Problemmodell ermöglichen ein schnelles Durchsehen

verwandter Probleme.

Passive & aktive Entwurfs-Bewertung R ti l Wi k t ti i t i b i t B t Rationale-Wissen kann zur automatisierten, wissensbasierten Bewertung

von Entwürfen genutzt werden.

Herausforderungen Sich entwickelnde Terminologie N i ti i i ß fl h R Navigation in einem großen, flachen Raum

© 2000-2009 Dr. G. Kniesel Vorlesung „Softwaretechnologie“ (SWT) Seite 11-31 R O O T S

Page 31: Kapitel 11 Rationale Management - sewiki.iai.uni-bonn.de · Rationale sind die Überlegungen, die zum System (in seiner jetzigen Form) geführt habenForm) geführt haben. Rationale

Aktueller Stand in der Praxis

Problembasierte Stand-alone-Werkzeuge Q tM QuestMap

Problemmanagementwerkzeuge Problemmanagementwerkzeuge Work-flow-Anwendungen verfolgen Probleme und Lösungen. Integriert in die Konfigurationsverwaltung Einige Werkzeuge (e.g., ClearQuest) erlauben eine Anpassung des

Schemas.

RequisitePro Anforderungsverwaltung Integriert in die Konfigurationsverwaltung Explizite Erfassung des Rationale hinter einer bestimmten Änderung

© 2000-2009 Dr. G. Kniesel Vorlesung „Softwaretechnologie“ (SWT) Seite 11-32 R O O T S

Page 32: Kapitel 11 Rationale Management - sewiki.iai.uni-bonn.de · Rationale sind die Überlegungen, die zum System (in seiner jetzigen Form) geführt habenForm) geführt haben. Rationale

Aktueller Stand in der Forschung

Es existieren viele Lösungen für die Repräsentation von Rationale, die sich auf spezifische Lösungen zuschneiden lassensich auf spezifische Lösungen zuschneiden lassen.

Fortschritte in Hypertexttechnologie und Verarbeitung natürlichsprachlicher Anfragen erleichtern Rationale-Zugriff

Momentane Herausforderungen Integration in Methodik Integration in Werkzeuge Aufwand Aufwand

© 2000-2009 Dr. G. Kniesel Vorlesung „Softwaretechnologie“ (SWT) Seite 11-33 R O O T S

Page 33: Kapitel 11 Rationale Management - sewiki.iai.uni-bonn.de · Rationale sind die Überlegungen, die zum System (in seiner jetzigen Form) geführt habenForm) geführt haben. Rationale

Offene Fragen

Formalisierung von Wissen ist teuer. Ei k i t t E t f d ll fl i t t Ein konsistentes Entwurfsmodell zu pflegen ist teuer. Das Erfassen und Pflegen von Rationale ist noch teuerer.

Der Nutzen von Rational wird von den augenblicklichen Entwicklern nicht wahrgenommen. W d j i d di A b it ht i ht it d j i d ih Wenn derjenige, der die Arbeit macht, nicht mit demjenigen, der von ihr

profitiert, identisch ist, erhält diese Arbeit eine niedrigere Priorität. 40-90% aller Standart-Softwareprojekte sind abgeschlossen, bevor das

P d k li f i dProdukt ausgeliefert wird. Rationale-Erfassung ist meistens lästig.

Momentane Ansätze skalieren nicht mit den tatsächlichen Problemen.

© 2000-2009 Dr. G. Kniesel Vorlesung „Softwaretechnologie“ (SWT) Seite 11-34 R O O T S

Page 34: Kapitel 11 Rationale Management - sewiki.iai.uni-bonn.de · Rationale sind die Überlegungen, die zum System (in seiner jetzigen Form) geführt habenForm) geführt haben. Rationale

Zusammenfassung

Erfassung von Rationale ist wichtig. Di k i Alt ti Diskussion von Alternativen Explizite Entwurfskriterien Information hat Relevanz für die Zukunft / für zukünftige Änderungeng g

Problemmodelle liefern eine gute Repräsentationf bieten strukturierte Lösung zum Erfassen von Rationale

machen es leichter, in Rationale Informationen zu navigieren

Rationale muss in jeder Phase des Prozesses integriert sein kurzfristige Motivation wichtig Einstiegsaufwand reduzieren!

© 2000-2009 Dr. G. Kniesel Vorlesung „Softwaretechnologie“ (SWT) Seite 11-35 R O O T S