Fundamentos Ingeniería del Software
Informe Ejecutivo
Stalin Rojas Morocho
METRICAS DEL PRODUCTO PARA EL SOFTWARE
1 Introducción
Las medidas y métricas de software suelen ser indirectas, las métricas se concentran en atributos específicos de los productos de trabajo de ingeniería del software y se recopilan a medida que realizan las etapas técnicas, para conseguir software de mayor calidad, nos permite no solo valorar de forma cualitativa sino cuantitativa, se debe partir de identificar las respectivas métricas apropiadas para el producto, luego la recolección de datos, se analizan para interpretar y calificar el software, esto se comprueba llegando a culminar los objetivos de las mediciones, en todo esto se proporciona una prevención de errores y corregirlos.
2 Desarrollo del tema
Calidad General
El entorno se debe regirse que el producto debe regirse por sus requisitos de funcionamiento y su desempeño estable, los requisitos necesarios dentro de este ámbito son:
• Los requisitos son la base de las medidas de calidad.
• Los estándares especificados definen un conjunto de criterios de desarrollo que sirven de guía.
• Se debe tomar en cuenta los requisitos implícitos.
Basándose en los Factores de calidad de McCall, los factores afectan en dos grandes grupo, los directos como los errores detectados, y los indirectos que son definidos por los requisitos implícitos. Para mejor entendimiento se han clasificado:
Características operativas
Corrección ¿Lo que quiero?
Fiabilidad ¿Lo hace de forma fiable todo el tiempo?
Eficiencia ¿Se ejecutara en mi hardware lo que mejor pueda?
Seguridad (Integridad) ¿Es seguro?
Facilidad de uso ¿Está diseñado para ser usado?
Calidad de soporte los cambios
Facilidad de mantenimiento ¿Puedo corregirlo?
Flexibilidad ¿Puedo cambiarlo?
Facilidad de prueba ¿puedo probarlo?
Adaptabilidad a nuevos entornos
Portabilidad ¿Podré usarlo en otra maquina?
Reusabilidad ¿Podré reutilizar alguna parte del software?
Interoperabilidad ¿Podré hacerlo interactuar con otro sistema?
Factores de calidad del estándar ISO 9126, Define seis atributos clave: funcionalidad, confiabilidad, facilidad de uso eficiencia, facilidad de mantenimiento, portabilidad, pero no siempre se prestan para una medición directa.
En todas las medidas el concepto cuantitativo, siempre estará en discusión, y en las métricas mencionadas representan medidas indirectas.
Marco conceptual para las métricas del producto
Medida: indica cuantitativamente la extensión, la cantidad, la dimensión, la capacidad o el tamaño de algún atributo de producto o proceso.
Medición: es el acto de determinar una medida.
Métrica: IEEE define como una medida cuantitativa del grado en que un sistema, componente o proceso posee un atributo determinado.
Indicador: es una métrica o una combinación de métricas que proporcionan conocimientos acerca de los aspectos de un proyecto de software.
Métricas para el modelo de análisis
Se utilizan para predecir el tamaño resultante, pues nos indica la complejidad de diseño y el esfuerzo, tomando en cuenta que el costo del SW no esta directamente relacionado con la codificación.
Métricas basadas en la función (PF)
Sus valores:
Número de entradas externas (EE), se originan del usuario o de otra aplicación.
Número de salidas externas (SE), proveniente del sistema y proporciona información al usuario.
Número de consultas externas (CE), entrada en línea generando respuesta por parte del software.
Número de archivos lógicos internos (ALI), generado dentro de los límites de la aplicación se mantienen entradas externas.
Número de archivos de interfaz externos (AIE), datos externos a la aplicación que podrían usarse.
Se recolecta los datos en una tabla, se determina los puntos de función no ajustados, determinar el valor del factor de ajuste, determinar los puntos de función ajustados.
Ej. PF = 50 X [0,65 + (0,01 X 46)] = 56
Métricas para la calidad de la especificación
Se evalúa la el modelo de diseña con la correspondencia de requisitos: especificidad, grado de avance, corrección, facilidad de comprensión, facilidad de verificación, consistencia interna y externa, facilidad para alcanzar los objetivos, concisión, facilidad para darle seguimiento, facilidad para modificase, precisión y facilidad de reutilización.
Métricas para el modelo de diseño
Según Card y Glass, definen tres medidas de la complejidad del diseño de software: estructural, de datos, del sistema. Se utiliza la prueba de caja negra, aunque rompa el diseño, no entrar en ningún caso a evaluar el código. Las métricas: complejidad del subsistema, complejidad de los módulos, complejidad del control, complejidad de los datos.
Métricas para el diseño orientado a objetos
Las métricas descritas por Whitmire, distintivas y mesurablesde un diseño orientado a objetos:
Tamaño: definido por población, volumen, longitud y funcionalidad.
Complejidad: enfocado desde lo estructural, interrelación de las clases del diseño orientado a objetos.
Acoplamiento: conexiones físicas entre los elementos del diseño.
Suficiencia: es el suficiente grado de abstracción que caracteriza el dominio de la aplicación.
Cohesión: conjunto de propiedades que posee, se encuentren representando todo el dominio del problema.
Primitivismo: grado en que una operación es atómica, es decir de su encapsulación de operaciones.
Similitud: indica el porcentaje que dos o más clases son similares, en estructura, función, comportamiento y propósito.
Volatilidad: el grado de cambios en el diseño cuando os requisitos son modificados.
Además, existen métodos como el Método de ponderados por clase (MPC), especifica que el número de métodos y su complejidad son indicadores razonables de la cantidad de esfuerzo requerido para implementar y probar una clase, a igual que es refiere tamaño de la clase, que define en sus características, número total de operaciones y de atributos.
El árbol de profundidad de la herencia (APH), describe la longitud máxima desde el nodo hasta la raíz del árbol, permitiendo indicar que muchos métodos se han heredado, una similar método es el Número de descendientes (NDD), ha mayor profundidad indica mayor reutilización.
Métricas para pruebas
Métricas de Halstead aplicadas a las pruebas
Se aplica volumen, V, el nivel de u programador, NP, el esfuerzo de Halstead, e, se calcula:
NP = 1/[(n1/2)X(N2/n2)]
e = V/NP
Métricas para pruebas orientadas a objetos
Proporcionan una calidad de diseño, es métricas se relacionan con las mencionadas con las métricas de diseño.
Métricas para el mantenimiento
El IEEE dispone en los índices de madurez de software, proporciona indicadores, que determinan la siguiente información:
Mt = el número de módulos de la versión actual.
Fc = el número de módulos cambiados en la versión actual.
Fa = el número de módulos añadidos a la versión actual.
Fd = el número de módulos de la versión anterior que se eliminaron en la versión actual.
Se calcula el índice:
IMS = [Mt – (Fa + Fc + Fd)] / Mt
Si se a cerca de 1.0, el producto se empieza a estabilizar.
3 Conclusiones
• Las métricas nos permiten controlar, en cada fase que respecta a la vida de software, prevenir y gradualmente corregir los errores presentados.
• Siempre tener en cuanta que las métricas son cuantitativas indirectamente.
• Las métricas proporcionan una base para establecer el esfuerzo a realizar.
4 Bibliografía
PRESSMAN, Roger S. Ingeniería del Software Un enfoque práctico (Sexta Edición)
Durán Rubio, Sergio Eduardo. Puntos por Función. Una métrica estándar para establecer el tamaño del software (on line). 2003 (citado 20 abr. 2008). http://www.inegi.gob.mx/inegi/contenidos/espanol/prensa/Contenidos/Articulos/tecnologia/puntosxfuncion.pdf
Carrasco, Luis de Salvador. Métricas del Software (on line). (citado 20 abr. 2008). http://www.luisdesalvador.com/Oposicion/T033_036_Metricas.pdf