Messung. Mariem Ben Rehouma 14.04.2009

Ähnliche Dokumente
Software-Metriken. Dipl.-Ing.(BA) Henning Sievert Seminar Software-Entwurf WS 2004/05

Verwendung von OO-Metriken zur Vorhersage

Klassenentwurf. Wie schreiben wir Klassen, die leicht zu verstehen, wartbar und wiederverwendbar sind? Objektorientierte Programmierung mit Java

Zeichen bei Zahlen entschlüsseln

Korrelation (II) Korrelation und Kausalität

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren

Werkzeuggestützte Softwareprüfungen Statische Analyse und Metriken

Erfahrungen mit Hartz IV- Empfängern

1 Mathematische Grundlagen

Comparison of Software Products using Software Engineering Metrics

Management von Softwaresystemen Systembewertung: Metriken und Prozess

Java: Vererbung. Teil 3: super()

Verhindert, dass eine Methode überschrieben wird. public final int holekontostand() {...} public final class Girokonto extends Konto {...

Softwaremetriken verstehen und nutzen

1. Man schreibe die folgenden Aussagen jeweils in einen normalen Satz um. Zum Beispiel kann man die Aussage:

Stellen Sie bitte den Cursor in die Spalte B2 und rufen die Funktion Sverweis auf. Es öffnet sich folgendes Dialogfenster

Professionelle Seminare im Bereich MS-Office

Grundbegriffe der Informatik

Teambildung. 1 Einleitung. 2 Messen der Produktivität

Objektorientierte Programmierung für Anfänger am Beispiel PHP

Benchmark zur Kompetenzbestimmung in der österreichischen SW Industrie. Mag. Robert Kromer NCP / AWS Konferenz Wien,

Bernadette Büsgen HR-Consulting

Fachdidaktik der Informatik Jörg Depner, Kathrin Gaißer

Ist Fernsehen schädlich für die eigene Meinung oder fördert es unabhängig zu denken?

Java Kurs für Anfänger Einheit 5 Methoden

Würfelt man dabei je genau 10 - mal eine 1, 2, 3, 4, 5 und 6, so beträgt die Anzahl. der verschiedenen Reihenfolgen, in denen man dies tun kann, 60!.

QM: Prüfen -1- KN

Software Engineering in der Praxis

Objektorientierte Programmierung OOP

Software-Metriken. Wolfgang Globke. Seminar Moderne Softwareentwicklung SS Software-Metriken. Wolfgang Globke. Metriken und Qualitätsmodelle

Ohne Fehler geht es nicht Doch wie viele Fehler sind erlaubt?

Die Post hat eine Umfrage gemacht

Mathematik. UND/ODER Verknüpfung. Ungleichungen. Betrag. Intervall. Umgebung

Fortgeschrittene Statistik Logistische Regression

Fassade. Objektbasiertes Strukturmuster. C. Restorff & M. Rohlfing

Die obige Aufzählung der ganzen Zahlen gibt auch gleichzeitig in aufsteigender Folge deren natürliche Anordnung wieder.

Einführung und Motivation

Use Cases. Use Cases

Excel Funktionen durch eigene Funktionen erweitern.

4. AUSSAGENLOGIK: SYNTAX. Der Unterschied zwischen Objektsprache und Metasprache lässt sich folgendermaßen charakterisieren:

Übung Grundlagen der Programmierung. Übung 03: Schleifen. Testplan Testergebnisse

Übungen zu C++ Kapitel 1

Klausur zur Einführung in die objektorientierte Programmierung mit Java

Sollsaldo und Habensaldo

Was meinen die Leute eigentlich mit: Grexit?

Orientierungstest für angehende Industriemeister. Vorbereitungskurs Mathematik

Second Steps in eport 2.0 So ordern Sie Credits und Berichte

Skript und Aufgabensammlung Terme und Gleichungen Mathefritz Verlag Jörg Christmann Nur zum Privaten Gebrauch! Alle Rechte vorbehalten!

Übungen Programmieren 1 Felix Rohrer. Übungen

Objektorientierte Programmierung. Kapitel 12: Interfaces

7 Rechnen mit Polynomen

ERGÄNZUNGEN ZUR ANALYSIS II MITTELWERTSATZ UND ANWENDUNGEN

Software Engineering Klassendiagramme Assoziationen

Data Mining: Einige Grundlagen aus der Stochastik

Grundlagen der Inferenzstatistik

Grundbegriffe der Informatik

Wintersemester Maschinenbau und Kunststofftechnik. Informatik. Tobias Wolf Seite 1 von 22

a n auf Konvergenz. Berechnen der ersten paar Folgenglieder liefert:

Programmierkurs Java

OECD Programme for International Student Assessment PISA Lösungen der Beispielaufgaben aus dem Mathematiktest. Deutschland

Software Survivability

Client-Server-Beziehungen

Kapitalerhöhung - Verbuchung

Unterrichtsmaterialien in digitaler und in gedruckter Form. Auszug aus: Übungsbuch für den Grundkurs mit Tipps und Lösungen: Analysis

Elemente der Analysis I Kapitel 2: Einführung II, Gleichungen

IRF2000 Application Note Lösung von IP-Adresskonflikten bei zwei identischen Netzwerken

Bevor lineare Gleichungen gelöst werden, ein paar wichtige Begriffe, die im Zusammenhang von linearen Gleichungen oft auftauchen.

Codierungsverfahren SS Reed-Solomon-Codes zur Mehrblock-Bündelfehler-Korrektur

10 größten SLA Irrtümer. Seminar: 8663 Service-Level-Agreement. Qualified for the Job

Fachhochschule Deggendorf Platzziffer:...

Bauteilattribute als Sachdaten anzeigen

Künstliches binäres Neuron

geben. Die Wahrscheinlichkeit von 100% ist hier demnach nur der Gehen wir einmal davon aus, dass die von uns angenommenen

HTML5. Wie funktioniert HTML5? Tags: Attribute:

How to do? Projekte - Zeiterfassung

1.3 Die Beurteilung von Testleistungen

Profil A 49,3 48,2 50,7 50,9 49,8 48,7 49,6 50,1 Profil B 51,8 49,6 53,2 51,1 51,1 53,4 50, ,5 51,7 48,8

Primzahlen und RSA-Verschlüsselung

3. LINEARE GLEICHUNGSSYSTEME

Daniel Warneke Ein Vortrag im Rahmen des Proseminars Software Pioneers

Infrarot Thermometer. Mit 12 Punkt Laserzielstrahl Art.-Nr. E220

Simplex-Umformung für Dummies

Zahlen und das Hüten von Geheimnissen (G. Wiese, 23. April 2009)

Qualitätsmanagement im Projekt

EinfÅhrung in die objektorientiere Programmierung (OOP) unter Delphi 6.0. EDV Kurs 13/2

Vorkurs Mathematik Übungen zu Polynomgleichungen

Projektmanagement. Vorlesung von Thomas Patzelt 9. Vorlesung

DAS PARETO PRINZIP DER SCHLÜSSEL ZUM ERFOLG

Tangentengleichung. Wie lautet die Geradengleichung für die Tangente, y T =? Antwort:

SWE12 Übungen Software-Engineering

1 topologisches Sortieren

Bürgerhilfe Florstadt

Berechtigungsgruppen TimeSafe Leistungserfassung

Rente = laufende Zahlungen, die in regelmäßigen Zeitabschnitten (periodisch) wiederkehren Rentenperiode = Zeitabstand zwischen zwei Rentenzahlungen

«Eine Person ist funktional gesund, wenn sie möglichst kompetent mit einem möglichst gesunden Körper an möglichst normalisierten Lebensbereichen

6. Bayes-Klassifikation. (Schukat-Talamazzini 2002)

SEP 114. Design by Contract

Eine mathematische Reise ins Unendliche. Peter Koepke Universität Bonn

Prof. Dr. Uwe Schmidt. 21. August Aufgaben zur Klausur Objektorientierte Programmierung im SS 2007 (IA 252)

Anleitung für Aussteller So funktioniert s!

Transkript:

Messung Mariem Ben Rehouma

Gliederung Motivation Definition von Messung Metriken Klassifikation von Metriken Beispiele Objektorientierte Metriken Charakteristiken von Messungen Skala-Arten Messungsarten 2

Motivation Zentrale Rolle in empirischer Studien Auswirkung bestimmter Inputs auf das untersuchte Objekt Bedarf der Messung von Inputs und Outputs Input messen, um die Ursache der Auswirkung auf das Output beschreiben zu können. Output messen. Ohne Messung keine (gewünschte) Kontrolle 3

Definition von Messung DeMarco: you cannot control what you cannot measure Fenton90: Measurement is a mapping from the empirical world to the formal, relational world. Consequently, a measure is the number or symbol assigned to an entity by this mapping in order to characterize an attribute Anstatt die reale Entität werden die Messungen untersucht. Metriken sind nötig! 4

Metriken Metrik in der Mathematik Abstand zwischen zwei Dingen (axiomatisch definiert) Softwaremetrik: eine Funktion, die eine Software-Einheit in einen Zahlenwert abbildet. Dieser Wert ist interpretierbar als der Erfüllungsgrad einer Qualitätseigenschaft der Software- Einheit (Quellcode). (IEEE Standard 1061) Metrik: Als Bezeichnung für die gemessene Einheit (LOC) Konkrete Prüfgegenstände und Sollwerte Keine Bewertung der Fehlerfreiheit oder Korrektheit Prognosen über den voraussichtlichen Aufwand und die Menge zu erwartender Fehler. 5

Klassifikation von Metriken Prozess-Metrik: Ressourcen-Aufwand (Mitarbeiter, Zeit, Kosten) Kommunikationsaufwand Produkt-Metrik: Umfang (LOC, Wiederverwendung, Prozeduren,...) Komplexität Lesbarkeit (Stil) Entwurfsqualität (Modularität, Bindung, Kopplung,...) Produktqualität (Testergebnisse, Testabdeckung,...) Projektlaufzeit-Metrik Entwicklungszeit Durchschnittliche Entwicklungszeit Meilenstein-Trend-Analyse Termintreue 6

Beispiele Flexibilität: Leichtigkeit, mit der ein System abgeändert werden kann, um es in Anwendungen oder Umgebungen zu benutzen für die es nicht entwickelt wurde. Metrik: # Abstrakte Klassen+ # Interfaces #Gesamtklassen+ # Interfaces Wertebereich: [0,1], schlecht 0, optimal ein drittel, 1(alles abstrakt, sinnvoll?) 7

Beispiele Korrektheit: Ausmaß, in dem SW ihre Spezifikation erfüllt- Metrik: # erfolgreiche Abnahmetests # Abnahmetests Wertebereich [0,1], schlecht 0, gut > 0.8, optimal 1 8

Beispiel LOC Wie viele LOC hat dieses Programm? public void buyticket() { // Adults pay more if ( isadult ) { // Payment delegated payfullfee(); } else { // all others pay less payreducedfee(); } //In all cases print the ticket printticket(); } alle Zeilen 17 ausführbarer Code 12 +Kommentare 16 Zeilen mit Semikolon 3 9

OO-Metriken Objektorientierte Metriken nach Chidamber und Kemerer: Weighted Methods per Class (WMC) McCabe für alle Methoden der Klasse, addiert. Depth in Inheritance Tree (DIT) Wie viele Oberklassen darüber? Je mehr, desto fehlerbehafteter. Coupling Between Objects (CBO) Anz. Klassen, mit denen kommuniziert wird. Je mehr, desto höhere Kopplung. Diese Metriken werden auf Klassen angewendet. 10

Skala-Arten Nominalskala: Zuordnung einen Namen oder Symbol. Niedrigste Skalenniveau! Mögliche logische bzw. mathematische Operationen: =/ Beispiele: Merkmal Namen / Kategorien Kontotyp Privatkonto, Girokonto Geschlecht Weiblich, männlich 11

Skala-Arten Intervallskala: Abstände zwischen den verschiedenen Merkmalsausprägungen exakt bestimmen. Allerdings existiert kein natürlicher Nullpunkt für die Skala. Quotienten aus Differenzen immer gleich: (a-b)/(c-d) ist also in allen Intervallskalen immer gleich. Wir kennen die Temperaturen von Tag A, Tag B und Tag C. Jetzt bilden wir das Verhältnis der Differenzen: (A-B) / (A-C). Angenommen, das Verhältnis ist 2. Dann wäre eine zulässige Aussage: "Der Temperaturunterschied zwischen Tag A und B ist doppelt so groß wie der Temperaturunterschied zwischen Tag A und C. Beispiel: War es z. B. gestern 10 Grad Celsius und Heute ist es zwanzig Grad, dann kann man zwar behaupten: Es ist zehn Grad Celsius wärmer, aber nicht: Es ist doppelt so warm wie gestern. 12

Skala-Arten Ordinalskala: Ordnungserhaltend, =/ ; </> Formale Bedingungen: Konnexivität: Es gilt entweder a größer b, oder b größer a, oder a gleich b. Transitivität: Wenn a größer b und b größer c, dann muss a größer c gelten. Beispiele: Merkmal Energieeffizienzklassen Einkommen 1 Zufriedenheit mit einem Produkt Kategorie "A" besser als "B" besser als "C" besser als "D" besser als "E" besser als "F" besser als "G" hoch > mittel > niedrig sehr zufrieden > eher zufrieden > eher unzufrieden > sehr unzufrieden 13

Skala-Arten Rationalskala: Höchste Skalenniveau! Im Unterschied zur Intervallskala existiert jedoch ein absoluter Nullpunkt (z. B. Blutdruck, Temperatur in Kelvin, Lebensalter). Einzig bei diesem Skalenniveau sind Multiplikation und Division sinnvoll und erlaubt. Verhältnisse von Merkmalswerten dürfen also gebildet werden (z. B. x = y z). Merkmal Temperatur in Kelvin Preis in Prozentzahlen 0-100 Nullpunkt Absoluter Nullpunkt kostenlos 0 Prozent 14

Charakteristiken von Messungen Bewahrung der empirischen Observation auf das Attribut z.b.: A länger als B Maß A größer als Maß B Validität: Bewahrung der erforderlichen Eigenschaften eines Attributes Reine mathematische Charakterisierung Skala: jeder unterschiedliche Art einer Zuordnung z.b.: Attribut (Länge eines Objektes), Skalen (Meter, Zentimeter, Inch) 15

Charakteristiken Rescaling: Wenn es, bei einer Transformation eines Maßes in ein anders Skala, die Beziehung zwischen den Objekten erhalten bleibt erlaubte (admissible) Transformation Aussagekräftige (meaningful) Statement: wenn sie wahr sind. Sonst sinnlos (meaningless) z.b.: Messen der Länge der Objekte A und B mit 1m bzw. 2m Statement: B ist doppelt zu lang wie A Beim Messen von Temperatur im Raum A und B mit 10C mit bzw. 20C Statement: Raum B ist doppelt zu heiß wie A. Mit rescale von Temperatur auf Fahrenheit-Skala A ist 50F und B ist 68F! 16

Messungsarten Objektiv Subjektiv Direkt Indirekt Kein Urteil auf den gemessenen Wert. Abhängig nur vom Objekt Gleicher Wert bei verschiedenen Messungen Z.B.: LOC Urteil Abhängig vom Objekt und View Kann unterschiedlich sein. Z.B.: Usability Direkt auf das Objekt, unabhängig von anderen Messungen. Abgeleitet von anderen Messungen 17

Beispiel für f r interne und externe Messungen Klasse Objekte Type Maß Produkt Code Intern Umfang Extern Prozess Testen Intern Zuverlässigkeit Aufwand Extern Kosten 18

Zusammenfassung Messen Eigenschaften der realen Welt Zahlen oder Zeichen zuordnen Maß Zuordnung einer Zahl oder Zeichens und einer Einheit (z.b. 1 m) Metrik Prüfgegenstände und Sollwerte Skalen Sehr wichtig in der empirischen Studien für statistische Analyse Bestimmen welche Transformation mit entsprechend skalierten Variablen durchgeführt werden können, ohne Information zu verlieren bzw. zu verändern. Bestimmen welche Information das entsprechende Merkmal liefert, welche Interpretationen Ausprägungen des entsprechenden Merkmals zulassen. 19