Präsentation herunterladen
Die Präsentation wird geladen. Bitte warten
Veröffentlicht von:Kilian Kehrli Geändert vor über 10 Jahren
1
cultivate B-IT/IPEC XP Praktikum Winter School 2005
2
Roadmap Detektoren/Metriken Descriptions/Results Hierarchie Dynamische Beschreibung und Kontext Ausgewählte Arbeiten
3
Detektoren/Metriken Detektoren - alarmieren - reagieren bei An-/Abwesenheit konkreter Muster - Beispiel: Bad Smell Erkennung (For Testers Only) Metriken - Ergebniswerte - unterschiedliche interpretiert von Messwerten - Beispiel: R. C. Martin Suite Keine direkte Klassenrepräsentation im Cultivatesystem, lediglich auf Prologbasis
4
Implementiert soweit... DependencyDetector (InheritanceTree) Misnamed Testclass Sideeffects in Getters For Testers only Depth of InheritanceTree Diverse Counter (NORM, NO(a)Ch/Cl, NOD, DIT, NOI) Specialization Index Static Testcase Coverage LCOM2 R.C. Martin (Abstractness, Instability, Distance, afferent und efferent Couplings)
5
Model: Description/Result Jeder Detektor und jede Metrik verfügen jeweils über eine Beschreibung (Description) und evtl. eine Vielzahl von Ergebnissen (Result) DescriptionRepository und ResultRepository sind Aggregationsklassen
6
Description Name Hilfstext (helpText) Variante Beschreibung (dynamicDescription) Range (bei Metriken) Threshold (bei Metriken) Valuetype (bei Metriken)
7
Description
8
Detektordeklaration/Prolog :- multifile detector_/2. :- multifile detector_description/3. detector_description(Name, 'Hilfetext', [dynamische Beschreibung]). detector_(Name, [dynamischer Kontext]) :-....
9
Metrikdeklaration/Prolog :- multifile metric_/3. :- multifile metric_description/6. metric_description(Name, Ergebnistyp, range(von,bis), defaultthreshold(von,bis), 'Langer Hilfetext, 'Kurzer Hilfetext, [dynamische Beschreibung]). metric_(Name, Ergebnis, [dynamischer Kontext]) :-....
10
Dynamische Beschreibung (dynamicDescription) Am Beispiel von dependencyDetector detector_description(dependencyDetector, 'Produces a package level dependency graph., [ [packageId,packageName], [dependentId,dependeeId,sccNumber,dependencyDegree] ] ).
11
Result Zeiger auf die eigene Beschreibung Varianter Kontext (dynamicContext) get() Value (bei Metriken) boolean outOfThreshold() (bei Metriken)
12
Result
13
Backend/PrologInterface
14
Backend/Controller
15
Frontend/Viewer Eclipse GUI Komponenten
Ähnliche Präsentationen
© 2024 SlidePlayer.org Inc.
All rights reserved.