functional size bestimmt als einfach/mittel/schwierig (low/average/high) =

Ähnliche Dokumente
Marc Monecke Praktische Informatik Fachbereich Elektrotechnik und Informatik Universität Siegen, D Siegen

Softwaremanagement Projektplanung Hellsehen für Fortgeschrittene Schätzen heißt nicht raten!

Entwicklungsmethoden

Function-Point Analysis Theorie und Praxis

Projektmanagement. 3 Projektplanung Schätzmethoden. Werner Lenk

Comparison of Software Products using Software Engineering Metrics

V. Aufwands- und Kostenschätzung (Teil 1)

Evaluation of Database Design and Reverse Engineering Tools for a Large Software System

SOFTWAREPROJEKT (WI) Anforderungsanalyse. Projektveranstaltung im Wintersemester 2012/13 FG System- und Softwareengineering Dr.-Ing.

Aufwandschätzung von IT-Projekten

Lösungsvorschlag zur Klausur zu Projektorganisation und Management in der Software-Entwicklung

Aufwandsschätzungen über Anwendungsfälle

Lastenheft (Universität Paderborn, Softwaretechnikpraktikum SS2006)

Requirements Dokumentation

Testaufwandschätzung. Seminar: Software-Qualitätssicherung Yi Tan 08.Juli.2008

Alternative Architekturkonzepte

Objektorientierte Analyse (OOA) Inhaltsübersicht

VI. Die Bedeutung der Komplexität 83. VI. Die Bedeutung der Komplexität

Konzept einer Qualitätsstrategie im Kreditgewerbe

Erweiterung von Oracle CRM On Demand mit Hilfe von Web Services. DOAG 2010 Klaus Eicheler, Cirquent GmbH

6 Management der Informationssysteme (2)

Unified Modeling Language (UML)

EINFÜHRUNG IN DIE WIRTSCHAFTSINFORMATIK -ÜBUNGEN- Marina Tropmann-Frick

Objektorientierte Softwareentwicklung

Softwaremetriken. 29. April 2015

Energielabel für Zentrallüftungsgeräte Titel der Veranstaltung - Name des Verfassers

Tracing von Anforderungen Eine tool-unabhängige Betrachtung

MBEES Research Abstract Ein Framework zur automatisierten Ermittlung der Modellqualität bei eingebetteten Systemen

Pragmatische Aufwandsschätzung

Quantifizierung nicht-funktionaler Anforderungen JURISTISCHES IT-PROJEKTMANAGEMENT WS1617 DOZENT: DR. FRANK SARRE LMU MÜ NCHEN ZHENHAO LI

UML. Weiteres Vorgehen im Projekt

1. Übung zu Software Engineering

Teambildung. 1 Einleitung. 2 Messen der Produktivität

NACHRICHTENTECHNISCHER SYSTEME

Nicht-funktionale Anforderungen

Der Faktor Erfahrung bei Aufwandschätzungen. Engelhard Hess TIMELINK International GmbH.

Projektmodell Softwareentwicklung: Unified Software Development Process / Unified Process (Teil I)

Der Alpha-Beta-Algorithmus

Exkurs: Formatvorlage für Anforderungsanalyse-Dokument

Aufwandsschätzung in IT-Großprojekten Function Point Methode

Testwell CTC++ Test Coverage Analyser Testabdeckung für alle Coverage-Stufen, alle Compiler, alle Embedded Targets

effektiv erstellen Use Cases Alistair Cockburn Das Fundament für gute Software-Entwicklung Geschäftsprozesse modellieren mit Use Cases

AP2: Erfassen & Kategorisieren von Datenbeständen. nden Expertenworkshop Göttingen

Prof. Dr. N. Grau Folie 1

Poseidon for UML. Einführung. Andreas Blunk

Künstliche Neuronale Netze

Einstiege: Volumen eines Zylinders

elearning Studie Umfrage am CAMPUS 02 von Christian Krachler

Zabbix Performance Tuning

Reliabilitäts- und Itemanalyse

Softwaretechnik 2015/2016

Lastenheft Gruppe HK-03 erstellt am: Lastenheft

COSMIC FP - neue Generation der Umfangsmessung

MOBILE ENTERPRISE APPLICATION PLATFORM (MEAP)

Softwareentwicklung Lösungen zu Programmierung von Klassen mit BlueJ

MOBILE ENTERPRISE APPLICATION PLATFORM (MEAP)

Software- und Systementwicklung

Softwaretechnische Einbindung von Mess- und Stellgliedern einer optischen Strahlführung

Sequenzdiagramme. Lebenslinie. Kathrin Gaißer, Jörg Depner Didaktik der Informatik

NoSQL Datenbanken EIN ÜBERBLICK ÜBER NICHT-RELATIONALE DATENBANKEN UND DEREN POTENTIALE IM ALLGEMEINEN UND IN DER INDUSTRIE

Produktivität von Programmiersprachen

Objektorientiertes Programmieren

UML (Unified Modelling Language) von Christian Bartl

Erweitertes boolsches Retrieval

Untersuchung der Sprachkonformität und Vollständigkeit von UML 2.0 Werkzeugen

Software-Engineering

Entwicklung der Datenbanksysteme

Anwendungsfalldiagramm UseCaseDiagramm

Objektorientierte Analyse

Grundlagen des Datenschutzes und der IT-Sicherheit (9) Vorlesung im Sommersemester 2005 von Bernhard C. Witt

Das Leben nach dem F&E-Projekt Requirements Engineering für den gesamten Produktlebenszyklus. Mirko Pracht microtool GmbH

3. Das Reinforcement Lernproblem

SWE9 Slide 1. Software-Engineering. Vorlesung 9 vom Sebastian Iwanowski FH Wedel

GI-Fachgruppe 5.7 IV-Controlling

e-infrastructures Austria

Analyse und Design mituml2.1

Der Dreyfus-Wagner Algorithmus für das Steiner Baum Problem

Bildung von Noten-Durchschnitten

4. Übung zur Vorlesung Service-orientierte Architekturen

Grundlagen von Datenbanken. Abbildung ERM-RM

Diplomprüfung für Vermessungsingenieure Herbsttrimester 2009 Fach: Geoinformationssysteme

E-Government XML Strukturen für Geschäftsobjekte

Objektorientierte Systementwicklung

Pflichtenheft zum UML-Tool des Programmierpraktikums

Kapitel 1: Wiederholungsfragen Grundlagen DBS

Struktogramme II. Struktogramme S. 1/5

Software Engineering Analyse und Analysemuster

Produkt-Benchmarking Analyseinstrument zunehmendem Wettbewerbsdruck Stärken und Schwächen aufdecken eigene Leistungsfähigkeit Dieses Tool

gvsig CE (Community Edition) Nicht-interaktive Datenprozessierung

INSPIRE - Modellierung

Die abstrakte Syntax der Unified Modeling Language

SAP HANA Betriebsprozesse im Rechenzentrum

UDP User Datagramm Protokoll

Grundlagen Software Engineering

Leitfaden Nutzungsszenarios. Simply usable: Usability-Modifikation

Exceptions und Vererbung

Modellierungstipps für die Anwendungsfallmodellierung

Vorlesung Programmieren

Typbasierte Analyse von JavaScipt

Prof. Dr. Dietmar Lucht Projektmanagement Projektstrukturplan

Transkript:

Fragmente zu Softwaremessung, Teil 2 (Version 1.0, 10.5.2010) Bestimmung der Function Points: 1. Systemgrenze bestimmen mit application boundary ist etwa das Kontextdiagramm bei SA oder das Use-Case-Diagramme in UML gemeint. 2. Datenflüsse identifizieren in Zusammenarbeit mit dem Benutzer Eingabedaten Informationen, die über die Grenze ins System geht und zu Änderung von Daten in internen Files führt bzw. den Ablauf beeinflusst. Es werden nicht Datenmengen sondern logische Daten gezählt. Ausgabedaten Informationen, die über die Grenze an den Benutzer gehen. Abfragen Anfragen und Antworten ohne weitere Änderungen (interne) Datenbestände Datenhaltung im System (Relationen und Files) externe Referenzdaten Datenhaltung, die nicht im System stattfindet. 3. Datenflüsse bewerten Hierbei wird die functional size bestimmt als einfach/mittel/schwierig (low/average/high) = unadjusted function points (UFP) 4. Die Anwendung bewerten Hierbei werden nach 14 Fragen Bewertungen mit 0-5 vergeben mit application characteristic multipliern (ACM) = function points (FP) 1

Abbildung 1: (../Pictures.png/metrics012) 2

Bestimmung der Object Points 1. Bewertung des Klassenmodells (Basis für die Schätzung des Codier- und Unittest-Aufwands. Pro Klasse berechnet man ClassPoints = (#Basisattribute+2 #Referenzattribute+3 #Methoden) Neuheit Hierbei versucht Neuheit zu messen, zu welchem Prozentsatz die Klassenrealisierung nicht durch Vererbung erstellt wird, d.h. geerbte Member werden nicht gezählt. 2. Bewertung der Interaktion (Basis für die Schätzung der Integration und des Integrationstestaufwands.) Pro Operation (d.h. Methodengruppe) berechnet man MessagePoints = (#Parameter+2 #Quellen+2 #Ziele) Komplexitaet Neuheit Hierbei ist eine Quelle ein Aufrufpunkt und ein Ziel ist eine Klasse, in der die Methode definiert wurde. Die Komplexität misst die Kompliziertheit der Methode als hoch (1,25) mittel (1,0) niedrig (0,75) 3. Bewertung der Anwendungsprozesse (Basis für die Schätzung des Systemtestaufwands. Die Anwendungsprozesse entsprechen etwa den Use-Cases.) Pro Prozess berechnet man ProcessPoints = (Prozesstyp + #Varianten) Komplexitaet 3

Es werden vier Typen von Prozessen unterschieden Batch-Prozesse (2) geringe menschliche Eingriffe Online-Prozesse (4) wesentliche menschliche Eingriffe System-Prozesse (6) z.b. Backup, Recovery Realtime-Prozesse (8) gesteuert von externen Ereignissen Hierbei werden Prozesse ähnlicher Art zusammengefasst. 4. Berechnung einer Rohgröße Mit diesen Zahlen erhält man ObjectPoints = ClassPoints + MessagePoints + ProcessPoints 5. Gewichtung nach den Qualitätsanforderungen Sneed schlägt vor, die berechnete Rohgröße nach den Qualitätsanforderungen zu gewichten (12 Kriterien), die durch Metriken bestimmt werden: Zuverlässigkeit Sicherheit Zeiteffizienz Speichereffizienz Benutzbarkeit Integrität Integrierbarkeit Portabilität Wartbarkeit Datenunabhängigkeit Testüberdeckung Konformität Jeder Faktor erhält einen Wert zwischen 0 und 2: minimaler Wert (0) Industriestandard (1) Maximaler Wert (2) Der Durchschnitt dieser Werte ergibt den Qualitätsfaktor QF QualityAdjustedObjectPoints = ObjectPoints QF 4

6. Gewichtung nach Eigenschaften des Projekts Dieser Wert wird aufgrund von Eigenschaften des gesamten Erstellungsprozesses noch ein weiteres Mal gewichtet (10 Aspekte): Verfügbarkeit von Groupware zur Unterstützung des Projektteams Qualität der Benutzeroberfläche der Entwicklungsumgebung Zuverlässigkeit des Netzes, in dem die Entwickler arbeiten Reife des zu entwicklenden Prozesses technische Unterstützung des Projektteams Anwendungsgrad objekt-orientierter Methoden objekt-orientiertes Niveau der verwendeten Sprache Verfügbarkeit von objekt-orientierten CASE-Tools Anwesenheit eines Objekt-Repositorys Grad der Testautomatisierung Jede dieser Eigenschaften wird bewertet mit nicht erfüllt (0) gering erfüllt (1) teilweise erfüllt (2) hoch erfüllt (3) vollständig erfüllt (4) Durch die Summe er hält man eine Bewertung des Technologiegrades (0.6 EF = 1 /100 1.0) AdjustedObjectPoints = QualityAdjustedObjectPoints EF 5