Métricas de Diseño
Las métricas de diseño. Son las que permiten medir de forma cuantitativa la calidad de los atributos internos del software. Esto permite al ingeniero evaluar la calidad durante el desarrollo del sistema.
Como ya se ha visto por las distintas métricas estudiadas, la complejidad de un programa crece con su tamaño: los programas largos son más difíciles de escribir y comprender, contienen habitualmente más errores, y su depuración resulta más compleja. Con objeto de reducir esta complejidad, los diseñadores de software han hecho un uso progresivo de técnicas de modularización y diseño estructurado.
Entre las diversas ventajas de las técnicas de diseño se pueden destacar las siguientes:
- Comprensibilidad: programadores y usuarios pueden comprender fácilmente la lógica del programa.
- Manejabilidad: los gestores pueden asignar fácilmente personal y recursos a los distintos módulos representados por tareas.
- Eficiencia: el esfuerzo de implementación puede reducirse.
- Reducción de errores: los planes de prueba se simplifican notablemente.
- Reducción del esfuerzo de mantenimiento: la división en módulos favorece que las distintas funciones las lleven a cabo módulos diferenciados.
Aunque
estos beneficios también son discutidos y para ello se alega toda clase de
inconvenientes, en general se admite que el paso a la modularidad es un gran
salto adelante. Pero el problema que se plantea ahora se refiere a los módulos
en sí: ¿Cuál es el tamaño idóneo, la complejidad máxima, la extensión adecuada
de un módulo?
Atributos de calidad
Las métricas se centran en
cuantificar tanto la complejidad, como la funcionalidad y eficiencia inmersa en
el desarrollo de software. Inclina sus objetivos a mejorar la comprensión de la
calidad del producto, a estimar la efectividad del proceso y mejorar la calidad
del trabajo.
- Responsabilidad. Consiste en la responsabilidad asignada a una clase en un marco de modelado de un dominio o concepto, de la problemática propuesta.
- Complejidad de implementación. Consiste en el grado de dificultad que tiene implementado un diseño de clases determinado.
- Reutilización. Consiste en el grado de reutilización presente en una clase o estructura de clase,dentro de un diseño de software.
- Acoplamiento. Consiste en el grado de dependencia o interconexión de una clase o estructura de clase, con otras, está muy ligada a la característica de Reutilización.
- Complejidad del mantenimiento. Consiste en el grado de esfuerzo necesario a realizar para desarrollar un arreglo, una mejora o una rectificación de algún error de un diseño de software. Puede influir indirecta, pero fuertemente en los costes y la planificación del proyecto.
- Cantidad de pruebas. Consiste en el número o el grado de esfuerzo para realizar las pruebas de calidad (Unidad) del producto (componente,módulo, clase, conjunto de clases, etc.) diseñado.
Comentarios
Publicar un comentario