27
1|26 Erfahrungen aktiv suchen: FOCUS, GQM zum zielorientierten Messen und Experimentieren Seminar Seminar Erfahrungen und Experimente Erfahrungen und Experimente im Software Engineering im Software Engineering Erfahrungen aktiv suchen: FOCUS, GQM zum zielorientierten Messen und Experimentieren Yvonne Bernard 30.11.2005

1|26 Erfahrungen aktiv suchen: FOCUS, GQM zum zielorientierten Messen und Experimentieren Seminar Erfahrungen und Experimente im Software Engineering Erfahrungen

Embed Size (px)

Citation preview

Page 1: 1|26 Erfahrungen aktiv suchen: FOCUS, GQM zum zielorientierten Messen und Experimentieren Seminar Erfahrungen und Experimente im Software Engineering Erfahrungen

1|26Erfahrungen aktiv suchen: FOCUS, GQM zum zielorientierten Messen und Experimentieren

Seminar Seminar Erfahrungen und Experimente im Erfahrungen und Experimente im

Software EngineeringSoftware Engineering

Erfahrungen aktiv suchen:

FOCUS, GQM zum zielorientierten Messen und Experimentieren

Yvonne Bernard30.11.2005

Page 2: 1|26 Erfahrungen aktiv suchen: FOCUS, GQM zum zielorientierten Messen und Experimentieren Seminar Erfahrungen und Experimente im Software Engineering Erfahrungen

2|26Erfahrungen aktiv suchen: FOCUS, GQM zum zielorientierten Messen und Experimentieren

• Einleitung• FOCUS• GQM anhand eines studentischen Beispiels• GQMI• Goal-Driven Software Measurement• Fazit

GliederungGliederung

Page 3: 1|26 Erfahrungen aktiv suchen: FOCUS, GQM zum zielorientierten Messen und Experimentieren Seminar Erfahrungen und Experimente im Software Engineering Erfahrungen

3|26Erfahrungen aktiv suchen: FOCUS, GQM zum zielorientierten Messen und Experimentieren

EinleitungEinleitung

• Warum zielorientiert?

„Projects without clear goals will not achieve their goal clearly.“ (Tom Gilb)

• Warum Messen?- Charakterisieren- Evaluieren- Vorhersagen- Verbessern

von Softwareprozessen und –produkten

• Begriff der Metrik: kein Industriestandard

Page 4: 1|26 Erfahrungen aktiv suchen: FOCUS, GQM zum zielorientierten Messen und Experimentieren Seminar Erfahrungen und Experimente im Software Engineering Erfahrungen

4|26Erfahrungen aktiv suchen: FOCUS, GQM zum zielorientierten Messen und Experimentieren

FOCUS: GrundideeFOCUS: Grundidee

• Prototypen sind mehr als „Programmer‘s Toys“• Wissen und Erfahrungen aus Prototypen extrahieren

und bewahren• Wenig zusätzlicher Aufwand (light-weight way)

Page 5: 1|26 Erfahrungen aktiv suchen: FOCUS, GQM zum zielorientierten Messen und Experimentieren Seminar Erfahrungen und Experimente im Software Engineering Erfahrungen

5|26Erfahrungen aktiv suchen: FOCUS, GQM zum zielorientierten Messen und Experimentieren

PrototypingPrototyping

• Explorativ– Anforderungen feststellen

• Experimentell– Alternativen suchen

• Evolutionär– ständige Anpassung des Systems an

geänderte Anforderungen• Pilotsysteme

Page 6: 1|26 Erfahrungen aktiv suchen: FOCUS, GQM zum zielorientierten Messen und Experimentieren Seminar Erfahrungen und Experimente im Software Engineering Erfahrungen

6|26Erfahrungen aktiv suchen: FOCUS, GQM zum zielorientierten Messen und Experimentieren

PrototypenPrototypen

• Anforderungsanalyse• Stellen mögliche Lösungskonzepte dar• Sagen oft mehr als viele Dokumente• Können Missverständnisse ausräumen• Kaum dokumentiert• Oft schnell entwickelt• „Papierkorb“

Page 7: 1|26 Erfahrungen aktiv suchen: FOCUS, GQM zum zielorientierten Messen und Experimentieren Seminar Erfahrungen und Experimente im Software Engineering Erfahrungen

7|26Erfahrungen aktiv suchen: FOCUS, GQM zum zielorientierten Messen und Experimentieren

Dokumentation von PrototypenDokumentation von Prototypen

• Erst nach Ende der chaotischsten Phase einer Änderung sinnvoll

• Begründungen für wesentliche Änderungen festhalten

• Gerade weggeworfene Prototypen sollten dokumentiert werden

Page 8: 1|26 Erfahrungen aktiv suchen: FOCUS, GQM zum zielorientierten Messen und Experimentieren Seminar Erfahrungen und Experimente im Software Engineering Erfahrungen

8|26Erfahrungen aktiv suchen: FOCUS, GQM zum zielorientierten Messen und Experimentieren

WissensbewahrungWissensbewahrung

• Mensch-zu-Mensch-Erklärungen- Effizient, Kontext berücksichtigt- Direktes Feedback- Flexibel- Spaß, Erfolgserlebnis

• Automatisiert- Menschen sind vergesslich- Fokussiert- Strukturiert- Erklärung mit Artefakt selbst verknüpfen

Page 9: 1|26 Erfahrungen aktiv suchen: FOCUS, GQM zum zielorientierten Messen und Experimentieren Seminar Erfahrungen und Experimente im Software Engineering Erfahrungen

9|26Erfahrungen aktiv suchen: FOCUS, GQM zum zielorientierten Messen und Experimentieren

FOCUS: ErklärungssitzungenFOCUS: Erklärungssitzungen

• Rollen: Explainer & Listener• „Units of discussion“ werden druchgesprochen• Graphenstruktur:

- Units = Knoten- Pfade verbinden Knoten

• Pfade werden automatisiert erfasst• Screen Capture Software• Audioerklärungen werden aufgenommen• Textuelle Zusammenfassung der Erklärungen

Page 10: 1|26 Erfahrungen aktiv suchen: FOCUS, GQM zum zielorientierten Messen und Experimentieren Seminar Erfahrungen und Experimente im Software Engineering Erfahrungen

10|26Erfahrungen aktiv suchen: FOCUS, GQM zum zielorientierten Messen und Experimentieren

FOCUSFOCUS

• Drei Arten von Pfaden (Paths):- Execution Paths- Change Paths- Paths along static code structur

• Pfade durch den Code bilden ein Netz (hyperstructured web) von Informationen

Page 11: 1|26 Erfahrungen aktiv suchen: FOCUS, GQM zum zielorientierten Messen und Experimentieren Seminar Erfahrungen und Experimente im Software Engineering Erfahrungen

11|26Erfahrungen aktiv suchen: FOCUS, GQM zum zielorientierten Messen und Experimentieren

FOCUS: InformationssucheFOCUS: Informationssuche

• Erklärungen erneut abspielbar• Entstandene Fragen im Informationsnetz

erfassen, in der nächsten Sitzung klären• „hyperstructured browsing“• „guided tours“• Information unabhängig vom Erklärer

organisationsweit jederzeit verfügbar• FOCUS Tools können Netz analysieren und

darstellen

Page 12: 1|26 Erfahrungen aktiv suchen: FOCUS, GQM zum zielorientierten Messen und Experimentieren Seminar Erfahrungen und Experimente im Software Engineering Erfahrungen

12|26Erfahrungen aktiv suchen: FOCUS, GQM zum zielorientierten Messen und Experimentieren

GQM - PhasenGQM - Phasen

1. Planning2. Definition3. Data Collection4. Interpretation

Page 13: 1|26 Erfahrungen aktiv suchen: FOCUS, GQM zum zielorientierten Messen und Experimentieren Seminar Erfahrungen und Experimente im Software Engineering Erfahrungen

13|26Erfahrungen aktiv suchen: FOCUS, GQM zum zielorientierten Messen und Experimentieren

GQM anhand eines studentischen BeispielsGQM anhand eines studentischen Beispiels

Zeitplanung meiner BachelorarbeitZeitplanung meiner Bachelorarbeit

Page 14: 1|26 Erfahrungen aktiv suchen: FOCUS, GQM zum zielorientierten Messen und Experimentieren Seminar Erfahrungen und Experimente im Software Engineering Erfahrungen

14|26Erfahrungen aktiv suchen: FOCUS, GQM zum zielorientierten Messen und Experimentieren

30.05. 30.06. 30.07. 30.08. 30.09.

Einarbeitung in Literatur und Simulator

Implementierung und Testen der Simulation

Ausarbeitung

Zeit

Aufgaben Zeitplanung meiner BachelorarbeitZeitplanung meiner Bachelorarbeit

Studentisches Beispiel zu GQMStudentisches Beispiel zu GQM

1. Planning

Page 15: 1|26 Erfahrungen aktiv suchen: FOCUS, GQM zum zielorientierten Messen und Experimentieren Seminar Erfahrungen und Experimente im Software Engineering Erfahrungen

15|26Erfahrungen aktiv suchen: FOCUS, GQM zum zielorientierten Messen und Experimentieren

Studentisches Beispiel zu GQMStudentisches Beispiel zu GQM

2. Definition

Analyse Time spend on Bachelor Thesis

For the purpose of Finishing on time

With respect to Timetable of 4 Months

Quality of Thesis

From the viewpoint of Author

In the context of Study

Page 16: 1|26 Erfahrungen aktiv suchen: FOCUS, GQM zum zielorientierten Messen und Experimentieren Seminar Erfahrungen und Experimente im Software Engineering Erfahrungen

16|26Erfahrungen aktiv suchen: FOCUS, GQM zum zielorientierten Messen und Experimentieren

Studentisches Beispiel zu GQMStudentisches Beispiel zu GQM2. Definition

Bachelor Thesis

Keepto schedule

Time Author Study

Effort in Hours Errors, Illness, Requirements

Thesis is on time Provoke delays

Page 17: 1|26 Erfahrungen aktiv suchen: FOCUS, GQM zum zielorientierten Messen und Experimentieren Seminar Erfahrungen und Experimente im Software Engineering Erfahrungen

17|26Erfahrungen aktiv suchen: FOCUS, GQM zum zielorientierten Messen und Experimentieren

Studentisches Beispiel zu GQMStudentisches Beispiel zu GQM2. Definition: GQM-Plan

Q.1 Welche Teilziele meiner BA brauchen länger als erwartet?M.1 Liste von Aufgaben(typen)

Q.2 Ist Fehlersuche und –behebung unter Kontrolle?M.2 Stundenaufwand für FehlersucheM.3 Stundenaufwand für FehlerbehebungM.4 Zahl der gefundenen und behobenen Fehler

Q.3 Welche Ereignisse führen zu Zeitausfall?M.5 KrankheitM.6 Freizeit

Page 18: 1|26 Erfahrungen aktiv suchen: FOCUS, GQM zum zielorientierten Messen und Experimentieren Seminar Erfahrungen und Experimente im Software Engineering Erfahrungen

18|26Erfahrungen aktiv suchen: FOCUS, GQM zum zielorientierten Messen und Experimentieren

Studentisches Beispiel zu GQMStudentisches Beispiel zu GQM2. Definition: GQM-Plan

Q.4 Ändern sich die Anforderungen während des Projekts

M.7 Anzahl der anfänglichen Anforderungen

M.8 Anzahl hinzugefügter Anforderungen

M.9 Anzahl der erfüllten Anforderungen

M.10 Flüchtigkeit der Anforderungen

Q.5 Wieviel Zeit geht durch technische Probleme verloren?

M.11 Stundenaufwand für technische Probleme

Page 19: 1|26 Erfahrungen aktiv suchen: FOCUS, GQM zum zielorientierten Messen und Experimentieren Seminar Erfahrungen und Experimente im Software Engineering Erfahrungen

19|26Erfahrungen aktiv suchen: FOCUS, GQM zum zielorientierten Messen und Experimentieren

GQMGQM3. Data Collection

• Entwicklung eines Measurement Plans• Kick-off-Session: lege Form der zu sammelnden

Daten fest• Nutzung eines Measurement Support Systems zum

- Sammeln- Speichern- Verarbeiten- Darstellen- und Verpacken der Daten

Page 20: 1|26 Erfahrungen aktiv suchen: FOCUS, GQM zum zielorientierten Messen und Experimentieren Seminar Erfahrungen und Experimente im Software Engineering Erfahrungen

20|26Erfahrungen aktiv suchen: FOCUS, GQM zum zielorientierten Messen und Experimentieren

GQMGQM

4. Interpretation• Abhalten einer Feedback Session (alle 6-8

Wochen)• Ausgewertete Messdaten werden durch das

Projektteam (nicht GQM-Team) interpretiert• Action Points• Erstellen eines Feedback Reports

Page 21: 1|26 Erfahrungen aktiv suchen: FOCUS, GQM zum zielorientierten Messen und Experimentieren Seminar Erfahrungen und Experimente im Software Engineering Erfahrungen

21|26Erfahrungen aktiv suchen: FOCUS, GQM zum zielorientierten Messen und Experimentieren

Goal(s) Questions Indicators Measures Goal(s) Questions Indicators Measures (GQIM)(GQIM)

• Ziel: Identifizierung und Definition von Softwaremaßen

• Vermeidung des Begriffs der Metrik

Page 22: 1|26 Erfahrungen aktiv suchen: FOCUS, GQM zum zielorientierten Messen und Experimentieren Seminar Erfahrungen und Experimente im Software Engineering Erfahrungen

22|26Erfahrungen aktiv suchen: FOCUS, GQM zum zielorientierten Messen und Experimentieren

Goal-Driven Software MeasurementGoal-Driven Software Measurement

• Ausgangspunkt: Unternehmensziel(e)

Page 23: 1|26 Erfahrungen aktiv suchen: FOCUS, GQM zum zielorientierten Messen und Experimentieren Seminar Erfahrungen und Experimente im Software Engineering Erfahrungen

23|26Erfahrungen aktiv suchen: FOCUS, GQM zum zielorientierten Messen und Experimentieren

Ziele Identifizieren

1. Unternehmensziele

2. Was möchte ich wissen/lernen?

3. Subziele identifizieren

4. Entities und Attribute der Subziele

5. Formalisiere Messziele

Goal-Driven Software Measurement:Goal-Driven Software Measurement:10 Stufen-Plan10 Stufen-Plan

Page 24: 1|26 Erfahrungen aktiv suchen: FOCUS, GQM zum zielorientierten Messen und Experimentieren Seminar Erfahrungen und Experimente im Software Engineering Erfahrungen

24|26Erfahrungen aktiv suchen: FOCUS, GQM zum zielorientierten Messen und Experimentieren

Goal-Driven Software MeasurementGoal-Driven Software Measurement

Page 25: 1|26 Erfahrungen aktiv suchen: FOCUS, GQM zum zielorientierten Messen und Experimentieren Seminar Erfahrungen und Experimente im Software Engineering Erfahrungen

25|26Erfahrungen aktiv suchen: FOCUS, GQM zum zielorientierten Messen und Experimentieren

Indikatoren definieren

6. Quantifizierbare Fragen und passende Indikatoren suchen

7. Datenelemente für die Indikatoren bestimmen

8. Maße für die Beantwortung der Fragen festlegen

Erstelle einen Aktionsplan

9. Aktionen zur Implementierung der Maßnahmen

10. Plan zur Durchführung der Maßnahmen

Goal-Driven Software Measurement:Goal-Driven Software Measurement:10 Stufen-Plan10 Stufen-Plan

Page 26: 1|26 Erfahrungen aktiv suchen: FOCUS, GQM zum zielorientierten Messen und Experimentieren Seminar Erfahrungen und Experimente im Software Engineering Erfahrungen

26|26Erfahrungen aktiv suchen: FOCUS, GQM zum zielorientierten Messen und Experimentieren

FazitFazit

• FOCUS- Spezialansatz für Prototypen- Wenig Aufwand- Bei guter Ausführung großer Nutzen- FOCUS- als Eclipse-Plugin in Planung /Arbeit

• GQM/GQIM, Goal-Driven Software Measurement- Vielseitig einsetzbar- Zielorientierter Ansatz- Aufwendig

Page 27: 1|26 Erfahrungen aktiv suchen: FOCUS, GQM zum zielorientierten Messen und Experimentieren Seminar Erfahrungen und Experimente im Software Engineering Erfahrungen

27|26Erfahrungen aktiv suchen: FOCUS, GQM zum zielorientierten Messen und Experimentieren

QuellenQuellen• Kurt Schneider: Rationale as By-Product• Kurt Schneider: Prototypes as Assets, not Toys• Van Solingen/Berghout: The Goal/Question/Metric Method,

ISBN 0077095537• Park/Goethert/Florack: Goal-Driven Software Measurement

– A Guidebook, CMU/SEI-96-HB-002,1996• Lindström: A Software Measurement Case Study Using

GQM• GQM-Handbook, IESE-Report No. 008.03/E, 2003• Van Solingen: Experience Using the Goal/Question/Metric -

Paradigm