Documentos de Académico
Documentos de Profesional
Documentos de Cultura
información. Entre los usos más frecuentes de las métricas del software están el
software.
medida que nos permitiera conocer el tamaño del reto al que como
¿Cuáles son los métodos más utilizados para determinar métricas del software?
función.
sistemas de métricas para tiempo de ejecución más comunes hoy en día son los
usados en los profilers o aplicaciones para probar las aplicaciones Este tipo de
máximas, etcétera. Así, las métricas tratan de servir de medio para entender,
Halstead usa las medidas primitivas para desarrollar expresiones para la longitud
global del programa; volumen mínimo potencial para un algoritmo; el volumen real
(una medida de la complejidad del software); nivel del lenguaje (una constante
N = n1 log2 n1 + n2 log2 n2
real del programa. Por tanto L, debe ser siempre menor de uno. En términos de
L = 2/n1*n2/N2
Halstead propuso que todos los lenguajes pueden categorizarse por nivel de
lenguaje, I, que variará según los lenguajes. Halslead creó una teoría que suponía
que el nivel de lenguaje es constante para un lenguaje dado, pero otro trabajo
[Pressman ‘98] indica que el nivel de lenguaje es función tanto del lenguaje como
del programador.
aplicación o producto de alta calidad. Para lograr este objetivo, los ingenieros de
producto es tan buena como los requisitos que detallan el problema, el diseño que
modela la solución, el código que transfiere a un programa ejecutable y las
pruebas que ejercita el software para detectar errores. Un buen ingeniero del
software emplea mediciones que evalúan la calidad del análisis y los modelos de
diseño, así como el código fuente y los casos de prueba que se han establecido al
ingeniero debe utilizar medidas técnicas, que evalúan la calidad con objetividad,
calidad en grupos o en particulares. Por ejemplo los errores detectados por hora
de revisión y los errores detectados por hora de prueba suministran una visión
eliminación de defectos en cada una de las actividades del marco de trabajo del
proceso.
que solamente pueden ser medidos con respecto al cómo el producto, proceso o
para comprar. Desgraciadamente los atributos externos son los más difíciles de
entidad de software tiene varios atributos que pueden ser medidos. Es por eso que
se necesita hacer una distinción entre atributos que son internos o externos y
de objetos que hagan única a esa clase. Como en todas las métricas los objetivos
calidad del trabajo realizado a nivel del proyecto. Se conoce que las medidas y las
progresado con mucha más lentitud que la utilización de los demás métodos OO
[Luis A. Laranjeira ‘90]. Sin embargo, a medida que los sistemas OO van siendo
más habituales, resulta fundamental que los ingenieros del software dispongan de
implemente de forma efectiva los requisitos del cliente. Pero a medida que los
beneficiosa una visión más objetiva de las características del diseño, tanto para el
del diseño debería de tener un componente cuantitativo y esto nos lleva a las
métricas 00, en donde se pueden aplicar no solo al modelo de diseño, sino
Los objetivos principales de las métricas orientadas a objetos son los mismos que
software, la calidad del producto debe de ser lo esencial. ¿Cómo se puede medir
podrá probar, que será fácil de modificar, y lo que es más importante, resultará
orientados a objetos:
Estas métricas, en líneas generales, permiten averiguar cuán bien están definidas
sistema.
Las métricas para software, como otras métricas, no son perfectas; muchos
emplear bien las métricas de diseño. Sin embargo, el diseño sin medición es una
diseñador una mejor visión interna y así el diseño evolucionara a un mejor nivel de
calidad.
Métricas de rendimiento:
muestran un valor mensurable del progreso de los objetivos comerciales de una
empresariales, sino que también elijas las más adecuadas para percibirlas.
el rendimiento del sistema actual utilizando métricas. Puede evaluar el estado del
bajo. Consulta las métricas del servicio de informes y determina que el número de
Margen bruto
equipo del proyecto. Gilb [Len O. Ejiogo ‘90] sugiere definiciones y medidas para
cabo una función requerida. La medida más común de corrección son los defectos
a todos los usuarios. En promedio, los programas que son más fáciles de
mantener tendrán un TMC más bajo (para tipos equivalentes de cambios) que los
programas que son más difíciles de mantener. Hitachi ha empleado una métrica
desperdicios en el costo global del proyecto se simboliza como una función del
aparato de ingeniería, cuya calidad pueda ser medida y que pueda ser producido
eficientemente.
Las métricas de software se aplican a todas las fases del desarrollo de software
dos criterios, por un lado, como entidades pueden ser procesos, productos y
recursos.
integración, etc.)
Por otro lado, como atributos que pueden ser internas y externas.
Atributos internos de una entidad son los que pueden ser medidos en términos de
etc.)
Atributos externos de una entidad son aquellos que solo pueden ser medidos en
anidaciones, y configuración
de calidad
modularidad, pruebas, mantenimiento.
de competencia
competencia
de desempeño
estilizadas
convenciones, limitaciones, etc.
que pueda ser usada para medir el desempeño de algún aspecto del proyecto que
sea importante y queramos controlar. Como ya se intuye por esta definición, una
métrica debe ser o estar basada en un valor numérico que nos dé una visión
objetiva del estado de esta variable. De esta forma vamos a tener métricas
relacionadas con los costes, los plazos, los entregables, la calidad, etc.
observables que requiera de algún cálculo, como el EV (valor ganado), ETC (coste
Herramientas disponibles
fiable para su cálculo, y en algunos casos hacer este de forma más o menos
Las métricas tienen dos funciones principales, la primera a nivel del proyecto como
como herramienta para reportar y controlar de forma simple el estado del conjunto
de proyectos.
Desde el punto de vista del director del proyecto las métricas permiten conocer de
incluso aunque las funciones que realice sean valiosas. La facilidad de uso es un
intento de cuantificar “lo amigable que pude ser con el usuario” y se consigue
(2) el tiempo requerido para alcanzar a ser moderadamente eficiente en el uso del
sistema;
disposición de los usuarios hacia el sistema. Los cuatro factores anteriores son
sólo un ejemplo de todos los que se han propuesto como medidas de la calidad
del software.
Riesgo en proyecto de software:
los plazos, nos hacen pensar en cómo se pueden gestionar para minimizarlos.
Cualquier cosa que lo retrase, impida que avance al ritmo esperado o que
En definitiva, cualquier aspecto del proceso que suponga una desviación del plan
Análisis de riesgos
Además, si los riesgos están por todas partes y no se pueden evitar, ¿para qué
preocuparse?
software.
En 1982, la empresa Allstate quiso automatizar las actividades administrativas.
La realidad fue bien diferente: 6 años y 15 millones de dólares más tarde, tuvieron
que redefinir el plan con una nueva fecha de entrega y un presupuesto que
alcanzó los 100 millones, casi 7 veces más que el presupuesto original.
Los riesgos son una realidad y la gestión de riesgos una forma de acotarlos y
¿Son el presupuesto y el plazo de entrega los dos únicos riesgos a los que se
Ni mucho menos, más bien son la consecuencia de los muchos riesgos que
buen puerto.
empleados pueden llevar al fracaso incluso con el partner más entusiasta. Una
que abarca la rotación de los consultores hace acto de presencia (nuevo personal,
establecer claramente quién debe realizar cada una de las fases del plan, algo que
sucede con frecuencia en los casos de migración de un sistema a uno más actual.
de trabajo en el equipo del proveedor y por tanto no es viable cumplir los hitos /
fases planificados.
asumir esa tarea. Incluso tener que pasar datos de unas tablas a otras, algo en
trabajo que supone el proyecto, son algunos de los riesgos más comunes.
Por último, existe una gran variedad de riesgos derivados del propio producto a
Por último, señalar que todos estos riesgos pueden coexistir en el mismo proyecto
implantación de software.
experiencia al proyecto.
McDermid ‘91] definieron un juego de factores de calidad como los primeros pasos
el software desde tres puntos de vista distintos: (1) operación del producto
(utilizándolo), (2) revisión del producto (cambiándolo) y (3) transición del producto
“portándolo”) Los autores describen la relación entre estos factores de calidad (lo
que llaman un ‘marco de trabajo’) y otros aspectos del proceso de ingeniería del
software: En primer lugar el marco de trabajo proporciona al administrador
que casi todos los aspectos del cálculo han sufrido cambios radicales con el paso
de los años desde que McCall y Cavano hicieron su trabajo, teniendo gran
calidad del software siguen siendo los mismos. Si una organización de software
evaluar la calidad del software, es probable que el software construido hoy siga
exhibiendo la buena calidad dentro de las primeras décadas del siglo XXI. Incluso,
cuando las arquitecturas del cálculo sufrán cambios radicales (como seguramente
indicadores de calidad.
Se llaman básicas porque son adecuadas para personas con poca formación en
Las siete herramientas básicas están en contraste con los métodos más
operaciones.
Diagrama Causa – Efecto
categorías útiles.
utiliza como punto de partida para trazar el origen del problema hacia su causa
raíz.
cerrar o como un objetivo que se debe lograr. El mecanismo para encontrar las
llegue a identificar la causa raíz o hasta que se hayan agotado las opciones
razonables
Diagrama de flujo
en un proceso que transforma una o más entradas en una o más salidas. Los
Estratificación
La estratificación es una técnica utilizada en combinación con otras herramientas
Esta técnica los separa para que los patrones se puedan ver.
Hojas de verificación
calidad.
realizan inspecciones para identificar defectos. Por ejemplo, los datos sobre
Diagrama de Pareto
eje horizontal van disminuyendo en magnitud, hasta llegar a una fuente por
defecto denominada “otros” que recoge todas las causas no especificadas. Por lo
general, el diagrama de Pareto se organiza en categorías que miden frecuencias o
consecuencias.
Histogramas
las especificaciones. Los límites de control superior e inferior son diferentes de los
Diagramas de dispersión
cero). En caso de que se pueda establecer una correlación, se puede calcular una