Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Formalización de medidas
z Ontología de la medición
z PtSM
ONTOLOGÍA DE LA MEDICIÓN
1
ONTOLOGÍA DE LA MEDICIÓN
ONTOLOGÍA DE LA MEDICIÓN
{ Hemos estudiado las siguientes fuentes:
z De IEEE:
{ IEEE Std. 610.12-1992 (Standard Glossary of Software
Engineering Terminology)
{ IEEE Std. 1061-1998 (IEEE Standard for a Software
Quality Metrics Methodology).
z De ISO/IEC:
{ ISO/IEC 14598:2001 series (Software engineering –
Product evaluation)
{ ISO/IEC 15939 (Software engineering – Software
measurement process).
{ ISO/IEC 9126 series was not considered because their
terms are already incorporated in ISO/IEC 14598.
2
ONTOLOGÍA DE LA MEDICIÓN
z También las siguientes propuestas de investigación:
{ L. Briand, S. Morasca, and V. Basili, “An Operational
Process for Goal-driven Definition of Measures,” IEEE
Trans. Software Eng., vol. 28, no. 12, Dec. 2002, pp.
1106-1125
{ Barbara Kitchenham et al B. Kitchenham, R.T. Hughes,
and S.G. Linkman, “Modeling Software Measurement
Data,” IEEE Trans. Software Eng., vol. 27, no. 9, Sep.
2001, pp. 788-804.
{ Henry Kim was also included in the analysis, since it
contains a sub-ontology with measurement concepts and
terms. H.M. Kim, Representing and Reasoning about
Quality using Enterprise Models, PhD Thesis, Dept.
Mechanical and Industrial Engineering, University of
Toronto, Canada, 1999.
ONTOLOGÍA DE LA MEDICIÓN
Term Source Definition
A set of operations having the object of determining a value of a measure, for a given attribute of an
Measurement
entity, using a measurement approach.
The use of a metric to assign a value (which can be a number or category) from a scale to an attribute
14598-1
of an entity.
The process by which numbers or symbols are assigned to attributes of entities in the real world in
Kim such a way as to describe them according to clearly defined rules. Measurement can be discussed as
the means by which an entity is determined to be of conforming quality.
The act or process of assigning a number or category to an entity to describe an attribute of an entity.
IEEE 1061
A figure, extent, or amount obtained by measuring.
Kim [Measurement Point]. A value for a measured attribute of an entity at a given point in time.
Briand
IEEE 1061 [Metric Value]. A metric output or an element that is from the range of a metric.
3
ONTOLOGÍA DE LA MEDICIÓN
Ontología de la medición
I nformation Need
(from Characterization and Objectives)
is associated with 1.. *
0..*
Type of Scale
(from Software Measures)
satisfies
1 1
includes
0..* belongs to
Quality Model evaluates 1..*
(from C haracteriz atio n and Objectives)
Measurable Concept
(fro m Characteriz ation and Objectives) Scale Unit of Measurement
kind 1..* 1..* (from Software Measures) (from Software Measures)
0 .. *
1..*
* 1
0..1
relates has
defined for
transform ation expressed in
1
1..* 0..* 1.. * 1..*
0..*
Entity Class has Attribute defined for Measure
1..* 0..* 1..*
(from C haracteriz atio n and Objectives) (fro m Characteriz ation and Objectives) (from Software Measures)
1 1..*
0..* 0..* 1
1..* 1
uses
includes belongs to
Is performed on
1..*
* *
0..* Is performed on
Measurement Base Measure Derived Measure Indicator
Entity (fro m Measu rement) (fro m So ftwar e Measur es) (from Software Measures) (from Software Measures)
(from C haracteriz atio n and Objectives)
1 * LocationInTime
0..* 0 .. * 0..*
0..* 1 .. * 1..*
1
* uses calculated with
composed of produces uses uses calculated with
1 uses
Measurement Result 0..*
1 0..* 0..* 1
(from Measurement)
value Measurement Method Measurement Function Analysi s Model
(from Measurement Approaches) (from Measurement Approaches) (fro m Measu rement Approaches)
0..*
1.. *
uses
Characterization and Objectives
Software Measures
1 .. *
Measurement
Measurement Approach
(from Measurement)
1
4
ONTOLOGÍA DE LA MEDICIÓN
Software Measurement
Ontology
Characterization
and Objectives
Software
SoftwareMeasures
Metrics
Measurement
Approaches
Measurement
Measurement Action
ONTOLOGÍA DE LA MEDICIÓN
Ontology 1..n
is associated with
1 0..n
Quality Model evaluates
Characterization kind
1..n 1..n
Measurable Concept
and Objectives n
1..n 0..n
includes
relates
defined for
Software
SoftwareMeasures
Metrics
includes
0..n
1 1..n
Measurement belongs to
Approaches 0..n
0..n Entity
Measurement
Measurement Action
composed of
5
Ontología de la medición
Necesidad de información
Definición
Información necesaria para gestionar un proyecto (sus
objetivos, hitos, riesgos y problemas).
Relaciones
Una necesidad de información se asocia a un concepto
medible.
Una necesidad de información se satisface con uno o
más indicadores.
producto software satisface las expectativas del cliente.
Ejemplos
Conocer el nivel de productividad de los programadores
del proyecto en comparación con lo habitual en otros
proyectos en la organización (ver ejemplo
desarrollado).
Determinar si los recursos del proyecto son adecuados
para satisfacer sus objetivos.
Evaluar el rendimiento de la actividad de codificación.
Ontología de la medición
Concepto medible
Definición
Relación abstracta entre atributos y necesidades de
información
Relaciones
Un concepto medible se asocia a una o varias
necesidades de información.
Un concepto medible puede incluir otros conceptos
medibles.
Un concepto medible relaciona uno o más atributos.
Un concepto medible está incluido en uno o más
modelos de calidad.
Ejemplos
Ratio de productividad de un equipo de desarrollo
frente a un grado de productividad objetivo.
Adecuación de la tecnología.
6
Ontología de la medición
Ontología de la medición
Categoría de entidad
Definición
Una colección de entidades caracterizadas por satisfacer un
cierto predicado común.
Relaciones
Una categoría de entidad puede “incluir a” una o varias
categorías de entidad, y puede “estar incluida en” una o
varias categorías de entidad.
Una categoría de entidad tiene uno o varios atributos.
Una categoría de entidad puede tener definidos varios
modelos de calidad.
Ejemplos
“Programas”, “Programas en C”, “Componentes software”,
“Componentes COTS”, “Componentes software para
comunicaciones”, etc.
Procesos, productos, servicios, proyectos, o recursos son
ejemplos de categorías de entidad.
7
Ontología de la medición
Entidad
Definición
Un objeto que va a ser caracterizado mediante una
medición de sus atributos [ISO-15939]
Relaciones
Una entidad puede pertenecer a una o más categorías de
entidad.
Una medición se realiza sobre los atributos de una entidad
Ejemplos
El programa “holaMundo.c”.
Notas
Una entidad puede ser un proceso, un producto, un
servicio, un proyecto, o un recurso concreto.
Una entidad puede ser física –tangible– (p.e. un
ordenador) o abstracta (p.e. un programa en C).
Ontología de la medición
Atributo
Definición
Una propiedad mensurable, física o abstracta, que comparten
todas las entidades de una categoría de entidad.
Relaciones
Un atributo solo puede pertenecer a una categoría de entidad.
Una medición se realiza sobre los atributos de una entidad
Un atributo tiene definida cero, una o varias métricas.
Un atributo está relacionado con uno o más conceptos
medibles.
Ejemplos
El atributo “tamaño de código fuente”, como atributo de la
categoría de entidad “programas en C” va a ser diferente
del atributo “tamaño de código fuente” de la categoría de
entidad “programa en Ada”.
El “tamaño” de un “módulo en C” no es el mismo atributo
(aunque tenga el mismo nombre) que el “tamaño” de un
“diagrama de clases UML”.
Tamaño de código fuente, precio.
8
ONTOLOGÍA DE LA MEDICIÓN
ONTOLOGÍA DE LA MEDICIÓN
Software Measurement
Ontology Attribute
(from Characterization and Obj ectiv es)
Unit of Measurement
1..n
0..n
0..n
Measure
1..n has Scale
transformation
1..n 1
Software
SoftwareMeasures
Metrics 0..n 1..n
belongs to
1
Type of Scale
Measurement
Approaches Base Measure Derived Measure Indicator
Measurement
Measurement Action
9
Ontología de la medición
Atributo
Definición
Una propiedad mensurable, física o abstracta, que comparten
todas las entidades de una categoría de entidad.
Relaciones
Un atributo solo puede pertenecer a una categoría de entidad.
Una medición se realiza sobre los atributos de una entidad
Un atributo tiene definida cero, una o varias métricas.
Un atributo está relacionado con uno o más conceptos
medibles.
Ejemplos
El atributo “tamaño de código fuente”, como atributo de la
categoría de entidad “programas en C” va a ser diferente del
atributo “tamaño de código fuente” de la categoría de
entidad “programa en Ada”.
El “tamaño” de un “módulo en C” no es el mismo atributo
(aunque tenga el mismo nombre) que el “tamaño” de un
“diagrama de clases UML”.
Tamaño de código fuente, precio.
Ontología de la medición
Medida
La forma de medir (método de medición, función de cálculo o modelo de análisis) y
la escala de medición.
Relaciones
Una medida está definida para uno o más atributos. Un atributo puede tener varias
medidas asociadas.
Dos medidas pueden relacionarse mediante una función de transformación. El tipo
de dicha función de transformación va a depender del tipo de escala de las
escalas.
Una medida puede expresarse en una unidad de medición (sólo para medidas cuya
escala sea de tipo intervalo o ratio). Una unidad de medición sirve para
expresar una o varias medidas cuyo tipo de escala sea intervalo o ratio.
Una medida tiene una escala. Una escala puede estar relacionada con una o más
medidas.
Ejemplos
La medida “líneas de código” puede ser definida para realizar mediciones del
“tamaño” de un “módulo en C” y para realizar mediciones del “tamaño” de un
“programa en Ada”.
10
Ontología de la medición
Unidad
Definición
Una cantidad particular, definida y adoptada por
convención, con la que poder comparar otras cantidades
de la misma clase para expresar sus magnitudes
respecto a esa cantidad particular [ISO-15939]
Relaciones
Una unidad sirve para expresar una o varias métricas cuyo
tipo de escala sea intervalo o ratio.
Ejemplos
Kilómetros, metros, millas.
Líneas de código, Páginas, Persona-mes,
Número de módulos, Número de clases,...
Dólares, Pesetas, Horas, días, Meses, Años,...
Ontología de la medición
Escala
Definición
Un conjunto de valores con propiedades definidas
[ISO 14598-1]
Relaciones
Toda escala es de un cierto “Tipo de Escala”.
Ejemplos
Los valores que puede tomar la métrica “lenguaje
de Programación usado en un proyecto”: Pascal,
C, Java (Nominal).
El nivel de madurez CMM: 1, 2, 3, 4, 5 (Ordinal).
El tamaño de un código software expresado en
líneas de código: Conjunto de los números
naturales (Ratio).
La temperatura expresada en grados centígrados o
grados Fahrenheit (Intervalo).
11
Ontología de la medición
Tipo de Escala
Definición
Indica la naturaleza de la relación entre los
valores de la escala [ISO 15939]
Relaciones
A un Tipo de Escala pertenecen una o más
Escalas.
Ejemplos
Nominal, Ordinal, Intervalo, Ratio y
Absoluta
Ontología de la medición
Medida base
Definición
Una medida de un atributo que no depende
de ninguna otra medida, y cuya forma de
medir es un método de medición.
Relaciones
Una medida base es una medida
Ejemplos
LCF (líneas de código fuente escritas).
HPD (horas-programador diarias).
CHP (coste por hora-programador, en
unidades monetarias).
12
Ontología de la medición
Medida derivada
Definición
Una medida que es derivada de otra medida
base o derivada, utilizando una función de
cálculo como forma de medir.
Relaciones
Una medida derivada es una medida
Ejemplos
HPT (horas-programador totales).
LCFH (líneas de código fuente por hora de
programador).
CTP (coste total actual del proyecto, en unidades
monetarias).
CLCF (coste por línea de código fuente).
Ontología de la medición
Indicador
Definición
Una medida que es derivada de otras
medidas utilizando un modelo de análisis
como forma de medir.
Relaciones
Un indicador es una medida
Un indicador satisface necesidades de
información.
Ejemplos
PROD (productividad de los programadores).
CAR (carestía del proyecto).
13
ONTOLOGÍA DE LA MEDICIÓN
ONTOLOGÍA DE LA MEDICIÓN
0..n
Characterization satisfies
Software
SoftwareMeasures
Metrics
1..n 1..n
uses
uses calculated with calculated with
uses
1 0..n 1 1
0..n
Measurement Method Measurement Function Analysis Model
Measurement 1..n 1..n
0..n
0..n 1..n
Measurement Approach
Measurement
Measurement Action
Measurement Tool Decision Criteria
(from Measurement)
14
Ontología de la medición
Medida
La forma de medir (método de medición, función de cálculo o modelo de análisis) y
la escala de medición.
Relaciones
Una medida está definida para uno o más atributos. Un atributo puede tener varias
medidas asociadas.
Dos medidas pueden relacionarse mediante una función de transformación. El tipo
de dicha función de transformación va a depender del tipo de escala de las
escalas.
Una medida puede expresarse en una unidad de medición (sólo para medidas cuya
escala sea de tipo intervalo o ratio). Una unidad de medición sirve para
expresar una o varias medidas cuyo tipo de escala sea intervalo o ratio.
Una medida tiene una escala. Una escala puede estar relacionada con una o más
medidas.
Ejemplos
La medida “líneas de código” puede ser definida para realizar mediciones del
“tamaño” de un “módulo en C” y para realizar mediciones del “tamaño” de un
“programa en Ada”.
Ontología de la medición
Medida base
Definición
Una medida de un atributo que no depende de ninguna otra
medida, y cuya forma de medir es un método de medición.
Relaciones
Una medida base es una medida
Una medida base usa un método de medición. Un método de
medición define una o más medidas base.
Una función de cálculo puede usar varias medidas base. Una
medida base puede usarse en funciones de cálculo.
Ejemplos
LCF (líneas de código fuente escritas).
HPD (horas-programador diarias).
CHP (coste por hora-programador, en unidades monetarias).
15
Ontología de la medición
Medida derivada
Definición
Una medida que es derivada de otra medida base o
derivada, utilizando una función de cálculo como forma
de medir.
Relaciones
Una medida derivada es una medida
Una medida derivada es calculada con una función de cálculo.
Una función de cálculo define una o más medidas derivadas.
Una función de cálculo puede usar varias medidas derivadas.
Una medida derivada puede usarse en funciones de cálculo.
Ejemplos
HPT (horas-programador totales).
LCFH (líneas de código fuente por hora de programador).
CTP (coste total actual del proyecto, en unidades
monetarias).
CLCF (coste por línea de código fuente).
Ontología de la medición
Indicador
Definición
Una medida que es derivada de otras medidas utilizando
un modelo de análisis como forma de medir.
Relaciones
Un indicador satisface necesidades de información.
Un indicador es calculado con un modelo de análisis. Un
modelo de análisis puede definir uno o más indicadores.
Un indicador satisface necesidades de información. Una
necesidad de información se satisface con uno o más
indicadores.
Ejemplos
PROD (productividad de los programadores).
CAR (carestía del proyecto).
16
Ontología de la medición
Necesidad de información
Definición
Información necesaria para gestionar un proyecto (sus
objetivos, hitos, riesgos y problemas).
Relaciones
Una necesidad de información se asocia a un concepto
medible.
Una necesidad de información se satisface con uno o más
indicadores.
Ejemplos
Conocer el nivel de productividad de los programadores del
proyecto en comparación con lo habitual en otros
proyectos en la organización (ver ejemplo desarrollado).
Determinar si los recursos del proyecto son adecuados para
satisfacer sus objetivos.
Evaluar el rendimiento de la actividad de codificación.
Evaluar si un producto software satisface las expectativas
del cliente.
Ontología de la medición
Método de medición
Definición
La forma de medir una medida base. Secuencia lógica de
operaciones, descritas de forma genérica, usadas para
realizar mediciones de un atributo respecto de una
escala específica.
Relaciones
Ejemplos
Contar líneas de código.
Anotar cada día las horas dedicadas por los
programadores al proyecto.
Valorar el grado de dificultad de un problema.
17
Ontología de la medición
Función de cálculo
Definición
La forma de medir una medida derivada.
Algoritmo o cálculo realizado para combinar
dos o más medidas base y/o derivadas.
Relaciones
Ejemplos
Véanse los ejemplos descritos en la sección 4.
LCFH = LCF / HPT [métrica indirecta definida en base a 2
métricas directas].
[métrica indirecta definida en base a sólo 1 métrica
directa].
CTP = CHP * HPT [métrica indirecta definida en base a 2
métricas, una directa y otra indirecta].
Ontología de la medición
Modelo de análisis
Definición
La forma de medir un indicador. Algoritmo o cálculo realizado para combinar
una o más medidas (base, derivadas o indicadores) con criterios de
decisión asociados.
Relaciones
Una función de cálculo puede usar varias medidas derivadas. Una medida
derivada puede usarse en funciones de cálculo.
Un modelo de análisis usa uno o más criterios de decisión. Un criterio de
decisión puede usarse en uno o más modelos de análisis.
Ejemplos
Véanse los ejemplos descritos en la sección 4.
Modelo de Análisis para obtener la métrica PROD. Utiliza los valores de
las métricas LCF, HPT, LCFH y CTP para establecer un valor cualitativo
de la productividad de los programadores en este proyecto. El modelo
se basa en extraer de una base histórica de proyectos de la
organización los valores medios de LCF, HPT, LCFH (LCFHvm) y CTP
del subconjunto de proyectos similares (aquellos que tienen LCF entre
el 80% y el 120%)
18
Ontología de la medición
Instrumento de medición
Definición
Instrumento que asiste o es útil a un método de
medición.
Relaciones
Un instrumento de medición asiste a uno o más
métodos de medición.
Ejemplos
Un reloj es un instrumento de medición que asiste al
método de medición contar el paso del tiempo.
Una herramienta CASE que sirva para contar líneas de
código es un instrumento de medición que asiste al
método de medición contar líneas de código.
Ontología de la medición
Criterio de decisión
Definición
Valores umbrales, objetivos, o patrones, usados para
determinar la necesidad de una acción o
investigación posterior, o para describir el nivel de
confianza de un resultado dado.
Relaciones
Un criterio de decisión es utilizado en uno o más
modelos de análisis.
Ejemplos
Véase los ejemplo descritos en la sección 4.
LCFH/LCFHvm < 0’70 => PROD=’muy baja’.
0’70 ≤ LCFH/LCFHvm < 0’90 => PROD=’baja’.
0’90 ≤ LCFH/LCFHvm < 1’10 => PROD=’normal’.
1’10 ≤ LCFH/LCFHvm < 1’30 => PROD=’alta’.
1’30 ≤ LCFH/LCFHvm => PROD=’muy alta’.
19
ONTOLOGÍA DE LA MEDICIÓN
Ontología de la medición
I nformation Need
(from Characterization and Objectives)
is associated with 1.. *
0..*
Type of Scale
(from Software Measures)
satisfies
1 1
includes
0..* belongs to
Quality Model evaluates 1..*
(from C haracteriz atio n and Objectives)
Measurable Concept
(fro m Characteriz ation and Objectives) Scale Unit of Measurement
kind 1..* 1..* (from Software Measures) (from Software Measures)
0 .. *
1..*
* 1
0..1
relates has
defined for
transform ation expressed in
1
1..* 0..* 1.. * 1..*
0..*
Entity Class has Attribute defined for Measure
1..* 0..* 1..*
(from C haracteriz atio n and Objectives) (fro m Characteriz ation and Objectives) (from Software Measures)
1 1..*
0..* 0..* 1
1..* 1
uses
includes belongs to
Is performed on
1..*
* *
0..* Is performed on
Measurement Base Measure Derived Measure Indicator
Entity (fro m Measu rement) (fro m So ftwar e Measur es) (from Software Measures) (from Software Measures)
(from C haracteriz atio n and Objectives)
1 * LocationInTime
0..* 0 .. * 0..*
0..* 1 .. * 1..*
1
* uses calculated with
composed of produces uses uses calculated with
1 uses
Measurement Result 0..*
1 0..* 0..* 1
(from Measurement)
value Measurement Method Measurement Function Analysi s Model
(from Measurement Approaches) (from Measurement Approaches) (fro m Measu rement Approaches)
0..*
1.. *
uses
Characterization and Objectives
Software Measures
1 .. *
Measurement
Measurement Approach
(from Measurement)
1
20
Indice
Formalización de medidas
z Ontología de la medición
z PtSM
PtSM
21
PtSM
determinar el mejor
portlet
PtSM
detectar puntos
débiles
PtSM
• Otras características:
22
PtSM
PtSM
Fiabilidad
Funcionalidad Usabilidad
PtQM
Eficiencia Reusabilidad
23
Necesidad de Informaci ón
Ontología de la
está relacionado con 1..*
(f rom Caracterización y Objetiv os)
1
pertenece a
1 0..* 1..*
Modelo de Cal idad
1..* evalúa 1..* Concepto Medible Escala Unidad de Medición
(f rom Caracterización y Objetiv os)
(f rom Caracterización y Objetiv os) incluye (f rom Medidas Sof tware)
clase (f rom Medidas Sof tware)
1..* 1
1
se realiza sobre usa
pertenece a usa
0..*
Enti dad 1
conjunto de portlets que proporcionan un
*
*
Medición
(f rom Acción de Medir) * 1..*
(f rom Caracterización y Objetiv os)
conjunto apropiado de funciones para las
se realiza sobre instanteTemporal
Medida Base Medida Derivada Indicador
0..*
un portlet concreto al que se le aplica la (f rom Medidas Sof tware) (f rom Medidas Sof tware) (f rom Medidas Sof tware)
v alor
(f rom Acción de Medir)
usuarios usa
usa
usa
calculada con
cal culado con
1 0..* 1 1
0..*
Método de Medición Función de Cálculo Modelo de Análisis 0..*
(f rom Formas de Medir) (f rom Formas de Medir) (f rom Formas de Medir)
1..*
ejecuta
usa
1..*
Forma de Medir Criterio de Decisión
1 (f rom Acción de Medir) (f rom Formas de Medir)
PtSM
CARACTERÍSTICA: FUNCIONALIDAD
24
está relacionado con 1..* Necesidad de Informaci ón
El que se presenta
1 0..* 1..*
Modelo de Cal idad
son candidatos a ser integrados para
(f rom Caracterización y Objetiv os)
clase
la 1..* evalúa 1..* Concepto Medible
(f rom Caracterización y Objetiv os) incluye
Escala
(f rom Medidas Sof tware)
Unidad de Medición
(f rom Medidas Sof tware)
0..* 0..* 1 exactitud, seguridad, autosuficiencia, 1..* 0..* 0..* 1..* 1..*
1..* 1
1
se realiza sobre usa
pertenece a usa
0..* *
Medición
Enti dad 1 *
* (f rom Acción de Medir) 1..*
(f rom Caracterización y Objetiv os)
se realiza sobre instanteTemporal
Medida Base Medida Derivada Indicador
0..* (f rom Medidas Sof tware) (f rom Medidas Sof tware) (f rom Medidas Sof tware)
produce 1 *
1
compuesta de Resultado de la Medición 1..* 0..* 0..* 1..* 1..*
(f rom Acción de Medir)
usa usa cal culado con
v alor usa calculada con
1 0..* 1 1
0..*
Método de Medición Función de Cálculo Modelo de Análisis 0..*
(f rom Formas de Medir) (f rom Formas de Medir) (f rom Formas de Medir)
1..*
ejecuta
usa
1..*
Forma de Medir Criterio de Decisión
1 (f rom Acción de Medir) (f rom Formas de Medir)
PtSM
CONCEPTO MEDIBLE: EXACTITUD
• Relaciona a los atributos:
•Medidas
25
PtSM
CONCEPTO MEDIBLE: SEGURIDAD
• Relaciona a los atributos:
•Medidas
PtSM
26
PtSM
CONCEPTO MEDIBLE: SEGURIDAD
PtSM
27
PtSM
•Medidas
PtSM
•Medidas
28
PtSM
CONCEPTO MEDIBLE: CONFORMIDAD
• Relaciona a los atributos:
• Medidas
PtSM
29
PtSM
PtSM
30
PtSM
PtSM
INDICADOR DE FUNCIONALIDAD
31
PtSM
PtSM
32
PtSM
33
PtSM
Ejercicios
34