21.01.2015 Aufrufe

Von der Idee zum Anforderungsmodell ohne Medienbruch

Von der Idee zum Anforderungsmodell ohne Medienbruch

Von der Idee zum Anforderungsmodell ohne Medienbruch

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

<strong>Von</strong> <strong>der</strong> <strong>Idee</strong> <strong>zum</strong><br />

Anfor<strong>der</strong>ungsmodell <strong>ohne</strong> <strong>Medienbruch</strong><br />

Dustin Wüest, Norbert Seyff, Martin Glinz<br />

GI-Fachgruppentreffen RE / 30.11.12<br />

Requirements<br />

Engineering<br />

Research<br />

Group


Übersicht<br />

• Problembeschreibung<br />

• Unser Ansatz: FlexiSketch<br />

• Tool Demo<br />

• Evaluation<br />

• Zukünftige Arbeit, Fazit<br />

28.11.12 <strong>Von</strong> <strong>der</strong> <strong>Idee</strong> <strong>zum</strong> Anfor<strong>der</strong>ungsmodell <strong>ohne</strong> <strong>Medienbruch</strong> 3


Problem: Lücke zwischen Skizzen und Modellen<br />

Quelle: http://www.agilemodeling.com/artifacts/classDiagram.htm<br />

28.11.12 <strong>Von</strong> <strong>der</strong> <strong>Idee</strong> <strong>zum</strong> Anfor<strong>der</strong>ungsmodell <strong>ohne</strong> <strong>Medienbruch</strong> 4


Problem: Lücke zwischen Skizzen und Modellen<br />

Quelle: http://www.agilemodeling.com/artifacts/classDiagram.htm<br />

28.11.12 <strong>Von</strong> <strong>der</strong> <strong>Idee</strong> <strong>zum</strong> Anfor<strong>der</strong>ungsmodell <strong>ohne</strong> <strong>Medienbruch</strong> 5


Problem: Lücke zwischen Skizzen und Modellen<br />

Quelle: http://www.agilemodeling.com/artifacts/classDiagram.htm<br />

28.11.12 <strong>Von</strong> <strong>der</strong> <strong>Idee</strong> <strong>zum</strong> Anfor<strong>der</strong>ungsmodell <strong>ohne</strong> <strong>Medienbruch</strong> 6


Problem: Lücke zwischen Skizzen und Modellen<br />

28.11.12 <strong>Von</strong> <strong>der</strong> <strong>Idee</strong> <strong>zum</strong> Anfor<strong>der</strong>ungsmodell <strong>ohne</strong> <strong>Medienbruch</strong> 8


Problem: Lücke zwischen Skizzen und Modellen<br />

Receive Or<strong>der</strong><br />

Fill Or<strong>der</strong><br />

Send Invoice<br />

[rush or<strong>der</strong>]<br />

[else]<br />

Overnight<br />

Delivery<br />

Regular<br />

Delivery<br />

Receive<br />

Payment<br />

Close Or<strong>der</strong><br />

Quelle: http://atlas.kennesaw.edu/~dbraun/csis4650/A&D/<br />

28.11.12 <strong>Von</strong> <strong>der</strong> <strong>Idee</strong> <strong>zum</strong> Anfor<strong>der</strong>ungsmodell <strong>ohne</strong> <strong>Medienbruch</strong> 9


Problem: Lücke zwischen Skizzen und Modellen<br />

Receive Or<strong>der</strong><br />

Fill Or<strong>der</strong><br />

Send Invoice<br />

[rush or<strong>der</strong>]<br />

[else]<br />

Overnight<br />

Delivery<br />

Regular<br />

Delivery<br />

Receive<br />

Payment<br />

Close Or<strong>der</strong><br />

Quelle: http://atlas.kennesaw.edu/~dbraun/csis4650/A&D/<br />

Quelle: http://www.metacase.com/<br />

28.11.12 <strong>Von</strong> <strong>der</strong> <strong>Idee</strong> <strong>zum</strong> Anfor<strong>der</strong>ungsmodell <strong>ohne</strong> <strong>Medienbruch</strong> 10


Problem: Lücke zwischen Skizzen und Modellen<br />

Receive Or<strong>der</strong><br />

Fill Or<strong>der</strong><br />

Send Invoice<br />

[rush or<strong>der</strong>]<br />

[else]<br />

Overnight<br />

Delivery<br />

Regular<br />

Delivery<br />

Receive<br />

Payment<br />

Close Or<strong>der</strong><br />

Zeit<br />

28.11.12 <strong>Von</strong> <strong>der</strong> <strong>Idee</strong> <strong>zum</strong> Anfor<strong>der</strong>ungsmodell <strong>ohne</strong> <strong>Medienbruch</strong> 12


Problem: Lücke zwischen Skizzen und Modellen<br />

Receive Or<strong>der</strong><br />

Fill Or<strong>der</strong><br />

Send Invoice<br />

[rush or<strong>der</strong>]<br />

[else]<br />

Overnight<br />

Delivery<br />

Regular<br />

Delivery<br />

Receive<br />

Payment<br />

Close Or<strong>der</strong><br />

<strong>Medienbruch</strong><br />

• zeitaufwändig<br />

• fehleranfällig<br />

Zeit<br />

28.11.12 <strong>Von</strong> <strong>der</strong> <strong>Idee</strong> <strong>zum</strong> Anfor<strong>der</strong>ungsmodell <strong>ohne</strong> <strong>Medienbruch</strong> 14


Ziel<br />

Einen flexiblen Prozess <strong>zum</strong> Skizzieren / Modellieren im RE<br />

unterstützen<br />

! Dem Benutzer erlauben, während dem Zeichnen seine eigene<br />

Notation / Sprache zu definieren.<br />

Meta-<br />

Modellieren<br />

Modellieren<br />

Sketch<br />

Recognition<br />

28.11.12 <strong>Von</strong> <strong>der</strong> <strong>Idee</strong> <strong>zum</strong> Anfor<strong>der</strong>ungsmodell <strong>ohne</strong> <strong>Medienbruch</strong> 15


Verwandte Arbeiten<br />

Software Tools<br />

Für mobile Geräte (Apps) Für Desktops /<br />

elektronische Whiteboards<br />

Freies<br />

Zeichnen<br />

Modellieren<br />

Formales<br />

Modellieren mit<br />

Sketch<br />

Recognition<br />

Informales<br />

Modellieren mit<br />

Formalisierungs-<br />

Funktionen<br />

Developer Whiteboard, !<br />

28.11.12 <strong>Von</strong> <strong>der</strong> <strong>Idee</strong> <strong>zum</strong> Anfor<strong>der</strong>ungsmodell <strong>ohne</strong> <strong>Medienbruch</strong> 16


Verwandte Arbeiten<br />

Software Tools<br />

Für mobile Geräte (Apps) Für Desktops /<br />

elektronische Whiteboards<br />

Freies<br />

Zeichnen<br />

Modellieren<br />

Formales<br />

Modellieren mit<br />

Sketch<br />

Recognition<br />

Informales<br />

Modellieren mit<br />

Formalisierungs-<br />

Funktionen<br />

DroidDia, Smart Diagram Pro, !<br />

28.11.12 <strong>Von</strong> <strong>der</strong> <strong>Idee</strong> <strong>zum</strong> Anfor<strong>der</strong>ungsmodell <strong>ohne</strong> <strong>Medienbruch</strong> 17


Verwandte Arbeiten<br />

Software Tools<br />

Für mobile Geräte (Apps) Für Desktops /<br />

elektronische Whiteboards<br />

Freies<br />

Zeichnen<br />

Modellieren<br />

Formales<br />

Modellieren mit<br />

Sketch<br />

Recognition<br />

Informales<br />

Modellieren mit<br />

Formalisierungs-<br />

Funktionen<br />

<br />

28.11.12 <strong>Von</strong> <strong>der</strong> <strong>Idee</strong> <strong>zum</strong> Anfor<strong>der</strong>ungsmodell <strong>ohne</strong> <strong>Medienbruch</strong> 18


Verwandte Arbeiten<br />

Software Tools<br />

Für mobile Geräte (Apps) Für Desktops /<br />

elektronische Whiteboards<br />

Freies<br />

Zeichnen<br />

Modellieren<br />

Formales<br />

Modellieren mit<br />

Sketch<br />

Recognition<br />

Informales<br />

Modellieren mit<br />

Formalisierungs-<br />

Funktionen<br />

SUMLOW, Tahuti, !<br />

28.11.12 <strong>Von</strong> <strong>der</strong> <strong>Idee</strong> <strong>zum</strong> Anfor<strong>der</strong>ungsmodell <strong>ohne</strong> <strong>Medienbruch</strong> 19


Verwandte Arbeiten<br />

Software Tools<br />

Für mobile Geräte (Apps) Für Desktops /<br />

elektronische Whiteboards<br />

Freies<br />

Zeichnen<br />

Modellieren<br />

Formales<br />

Modellieren mit<br />

Sketch<br />

Recognition<br />

Informales<br />

Modellieren mit<br />

Formalisierungs-<br />

Funktionen<br />

Calico, Electronic Cocktail Napkin, Sketch for Eclipse<br />

28.11.12 <strong>Von</strong> <strong>der</strong> <strong>Idee</strong> <strong>zum</strong> Anfor<strong>der</strong>ungsmodell <strong>ohne</strong> <strong>Medienbruch</strong> 20


Verwandte Arbeiten<br />

Tools <strong>zum</strong> Entwerfen von Modellierungssprachen<br />

• Benötigen Metamodellierung zu Beginn<br />

! Freies Zeichnen wird nicht wirklich unterstützt<br />

• Metamodell-Editor erstellt einen Modell-Editor<br />

• MetaEdit+, MaramaSketch<br />

Meta-<br />

Modellieren<br />

Modellieren<br />

Sketch<br />

Recognition<br />

28.11.12 <strong>Von</strong> <strong>der</strong> <strong>Idee</strong> <strong>zum</strong> Anfor<strong>der</strong>ungsmodell <strong>ohne</strong> <strong>Medienbruch</strong> 21


Übersicht<br />

• Problembeschreibung<br />

• Unser Ansatz: FlexiSketch<br />

• Tool Demo<br />

• Evaluation<br />

• Zukünftige Arbeit, Fazit<br />

28.11.12 <strong>Von</strong> <strong>der</strong> <strong>Idee</strong> <strong>zum</strong> Anfor<strong>der</strong>ungsmodell <strong>ohne</strong> <strong>Medienbruch</strong> 22


Unser Ansatz<br />

Meta-<br />

Modellieren<br />

Modellieren<br />

Sketch<br />

Recognition<br />

Modellieren<br />

Meta-<br />

Modellieren<br />

Sketch<br />

Recognition<br />

i) Freies Zeichnen<br />

ii)<br />

iii)<br />

Zuweisen von Bedeutung<br />

durch Annotationen<br />

schrittweise<br />

Verschönerung und<br />

Formalisierung<br />

28.11.12 <strong>Von</strong> <strong>der</strong> <strong>Idee</strong> <strong>zum</strong> Anfor<strong>der</strong>ungsmodell <strong>ohne</strong> <strong>Medienbruch</strong> 23


Hardware-Plattform<br />

• Input (Finger, Stylus)<br />

• Kosten<br />

• Verbreitung / Verfügbarkeit<br />

• Mobilität / Gebrauch an Ort und Stelle<br />

• Android Tool ! Desktop/Windows Portierung<br />

28.11.12 <strong>Von</strong> <strong>der</strong> <strong>Idee</strong> <strong>zum</strong> Anfor<strong>der</strong>ungsmodell <strong>ohne</strong> <strong>Medienbruch</strong> 24


FlexiSketch Tool – für Android 3.0+<br />

• Erhältlich auf Google Play<br />

28.11.12 <strong>Von</strong> <strong>der</strong> <strong>Idee</strong> <strong>zum</strong> Anfor<strong>der</strong>ungsmodell <strong>ohne</strong> <strong>Medienbruch</strong> 25


FlexiSketch Tool – für Android 3.0+<br />

• Erhältlich auf Google Play<br />

28.11.12 <strong>Von</strong> <strong>der</strong> <strong>Idee</strong> <strong>zum</strong> Anfor<strong>der</strong>ungsmodell <strong>ohne</strong> <strong>Medienbruch</strong> 26


Übersicht<br />

• Problembeschreibung<br />

• Unser Ansatz: FlexiSketch<br />

• Tool Demo<br />

• Evaluation<br />

• Zukünftige Arbeit, Fazit<br />

28.11.12 <strong>Von</strong> <strong>der</strong> <strong>Idee</strong> <strong>zum</strong> Anfor<strong>der</strong>ungsmodell <strong>ohne</strong> <strong>Medienbruch</strong> 27


Evaluation<br />

• Benutzbarkeit und Nützlichkeit<br />

• Zwei kontrollierte<br />

Experimente mit 8 Studenten<br />

und 9 RE Praktikern<br />

• Anwendungsfalldiagramme<br />

• Beliebige Diagramme<br />

F3<br />

Modellieren<br />

F1<br />

F2<br />

Meta-<br />

Modellieren<br />

Sketch<br />

Recognition<br />

• F3: Adoption von FlexiSketch in <strong>der</strong> Praxis<br />

• Wie/Warum werden Skizzen benutzt<br />

• Welche Arten von Diagrammen werden gezeichnet<br />

• Wie werden Skizzen wie<strong>der</strong>verwendet<br />

28.11.12 <strong>Von</strong> <strong>der</strong> <strong>Idee</strong> <strong>zum</strong> Anfor<strong>der</strong>ungsmodell <strong>ohne</strong> <strong>Medienbruch</strong> 31


Adoption in <strong>der</strong> Praxis<br />

1) Wie/Warum werden Skizzen benutzt<br />

• Alle benutzen Stift und Papier und/o<strong>der</strong> Whiteboards /<br />

Flipcharts<br />

• Whiteboards > Stift und Papier<br />

28.11.12 <strong>Von</strong> <strong>der</strong> <strong>Idee</strong> <strong>zum</strong> Anfor<strong>der</strong>ungsmodell <strong>ohne</strong> <strong>Medienbruch</strong> 33


Adoption in <strong>der</strong> Praxis<br />

1) Wie/Warum werden Skizzen benutzt<br />

Kommunikation, gemeinsames Verständnis<br />

• Alle benutzen Stift und Papier und/o<strong>der</strong> Whiteboards /<br />

Flipcharts<br />

Gruppen-Support: Kollaboration mehrerer Personen<br />

• Whiteboards > Stift und Papier<br />

Freiheit, kein Meta-Modell<br />

Schneller und einfacher als Tools<br />

Gruppen-Support: Sichtbarkeit<br />

Mobilität<br />

0%<br />

11%<br />

22%<br />

33%<br />

44%<br />

55%<br />

28.11.12 <strong>Von</strong> <strong>der</strong> <strong>Idee</strong> <strong>zum</strong> Anfor<strong>der</strong>ungsmodell <strong>ohne</strong> <strong>Medienbruch</strong> 34


Adoption in <strong>der</strong> Praxis<br />

2) Welche Arten von Diagrammen werden gezeichnet<br />

Prozessmodelle (Blockdiagramme, Ereignisse und Aktivitäten, BPM)<br />

Geschäftsmodelle (Klienten, Aufträge, Speichergrössen)<br />

Mindmaps<br />

Flussdiagramme<br />

Architekturdiagramme<br />

Anwendungsfalldiagramme<br />

Systemarchitektur-Modelle (Abhängigkeiten zwischen Modulen)<br />

Rechtecke und Pfeile<br />

Vereinfachte Aktivitätsdiagramme (Rechtecke verbunden mit Signalen)<br />

Transaktionen (Systeme und Informationsflüsse)<br />

Entitäts-Diagramme<br />

Kein spezieller Diagrammtyp, abhängig von Kunden<br />

Sequenzdiagramme<br />

12/11/12 <strong>Von</strong> <strong>der</strong> <strong>Idee</strong> <strong>zum</strong> Anfor<strong>der</strong>ungsmodell <strong>ohne</strong> <strong>Medienbruch</strong> 35


Adoption in <strong>der</strong> Praxis<br />

2) Welche Arten von Diagrammen werden gezeichnet<br />

• “Eine vereinfachte Version von !”<br />

• “Etwas Ähnliches wie ..., aber abweichend”<br />

• “Die Diagrammart hängt vom Wissen des Kunden ab”<br />

• UML-ähnliche Diagramme, aber Einführung eigener Notation<br />

• Gemeinsamkeit: Knoten und Kanten<br />

28.11.12 <strong>Von</strong> <strong>der</strong> <strong>Idee</strong> <strong>zum</strong> Anfor<strong>der</strong>ungsmodell <strong>ohne</strong> <strong>Medienbruch</strong> 36


Adoption in <strong>der</strong> Praxis<br />

3) Wie werden Skizzen wie<strong>der</strong>verwendet<br />

• Fotos dienen als Referenzen für Modellerstellung<br />

• Fotos direkt in Dokumente einfügen, mit Beschreibungen<br />

• Verbale Kommunikation, keine Dokumentation<br />

• Skizzen sind nur für einige Wochen gültig (keine Updates)<br />

28.11.12 <strong>Von</strong> <strong>der</strong> <strong>Idee</strong> <strong>zum</strong> Anfor<strong>der</strong>ungsmodell <strong>ohne</strong> <strong>Medienbruch</strong> 37


Adoption in <strong>der</strong> Praxis<br />

Export-Funktionalität von FlexiSketch: Verschiedene Wünsche<br />

• Option <strong>zum</strong> Verteilen/Versenden <strong>der</strong> Zeichnungen<br />

• Verschönerung vs. skizzenhaftes Aussehen<br />

• Export in einer editierbaren Form<br />

• Export als Liste von Objekten in ein Office Tool<br />

• Iteratives Arbeiten mit FlexiSketch und einem an<strong>der</strong>en<br />

Modellierungs-Tool (Export und Import)<br />

Freies Zeichnen wichtiger als Formalisierungs-Möglichkeiten<br />

28.11.12 <strong>Von</strong> <strong>der</strong> <strong>Idee</strong> <strong>zum</strong> Anfor<strong>der</strong>ungsmodell <strong>ohne</strong> <strong>Medienbruch</strong> 38


Evaluation – Zusammenfassung<br />

FlexiSketch erhielt positives und ermutigendes Feedback von<br />

Studenten und Praktikern<br />

28.11.12 <strong>Von</strong> <strong>der</strong> <strong>Idee</strong> <strong>zum</strong> Anfor<strong>der</strong>ungsmodell <strong>ohne</strong> <strong>Medienbruch</strong> 39


Übersicht<br />

• Problembeschreibung<br />

• Unser Ansatz: FlexiSketch<br />

• Tool Demo<br />

• Evaluation<br />

• Zukünftige Arbeit, Fazit<br />

28.11.12 <strong>Von</strong> <strong>der</strong> <strong>Idee</strong> <strong>zum</strong> Anfor<strong>der</strong>ungsmodell <strong>ohne</strong> <strong>Medienbruch</strong> 40


Zukünftige Arbeit<br />

• Leichtgewichtige Metamodellierung für Endbenutzer<br />

• Geführte Metamodellierung (die über das Zuordnen von Typen<br />

hinausgeht)<br />

! Export von Diagrammen zu an<strong>der</strong>en SE Modellierungs-Tools<br />

• Hardware für natürliches Zeichnen<br />

• Feldstudien<br />

28.11.12 <strong>Von</strong> <strong>der</strong> <strong>Idee</strong> <strong>zum</strong> Anfor<strong>der</strong>ungsmodell <strong>ohne</strong> <strong>Medienbruch</strong> 41


Take-away Message<br />

Kontakt:<br />

http://tinyurl.com/9selny5<br />

wueest@ifi.uzh.ch<br />

Meta-<br />

Modellieren<br />

Flexibilität des uneingeschränkten<br />

Zeichnens<br />

Modellieren<br />

Sketch<br />

Recognition<br />

Macht des<br />

semi-formalen Modellierens<br />

28.11.12 <strong>Von</strong> <strong>der</strong> <strong>Idee</strong> <strong>zum</strong> Anfor<strong>der</strong>ungsmodell <strong>ohne</strong> <strong>Medienbruch</strong> 45

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!