Descargar la presentación
La descarga está en progreso. Por favor, espere
Publicada porjavier gil Modificado hace 7 años
1
Ingeniería de Software Unidad I Gestión de Proyectos de Software Métricas en la gestión de proyectos de software Tema Semana 4
2
Objetivos Generales: Comprender correcta y eficientemente los conceptos y principios del espectro de técnicas de Ingeniería de Software que puedan ser aplicadas en proyectos de software. Desarrollar una cultura de ingeniería de software.
3
Objetivos Específicos: Aplicar correctamente los conceptos y principios relacionados a la Ingeniería de Software en la resolución de casos prácticos para la gestión de proyectos de software de calidad. Utilizar herramientas para el modelado y gestión de proyectos de software. Utilizar metodologías agiles en el desarrollo de software.
4
Objetivos Instruccionales: Tener una visión mas profunda proporcionando un mecanismo para realizar una evaluación objetiva. Aplicación de la medición al proceso de software con el intento de mejorarlo sobre una base continua.
6
Contenidos Fundamentos de métricas de gestión Métricas del proceso de software Métricas del proyecto de software Categorías básicas de mediciones Métricas y Productividad
7
Razones para medir los procesos, productos y recursos Caracterizar: Entender el proceso actual, entorno, etc. Disponer de información de la situación anterior al cambio. Evaluar: Determinar la consecución de objetivos Identificar fortalezas y debilidades del proceso Predecir: Entender las relaciones entre procesos y productos Establecer objetivos alcanzables de calidad, costes y agendas Mejorar: Identificar causas y oportunidades de mejora Seguir el rendimiento de los cambios y compararlo con líneas base Fundamentos de métricas de gestión
8
Medidas, Métrica, e Indicadores Medida: Proporciona una indicación cuantitativa de la extensión, cantidad, dimensiones, capacidad o tamaño de algunos atributos de un proceso o producto. Medición: Es el acto de obtener una medida. Métrica: Es el resultado de efectuar evaluaciones durante un periodo largo de tiempo sobre algún(os) aspecto(s) que un conjunto de proyectos, procesos que servirán de línea base. Indicador: Permite ajustar el producto, el proyecto o el proceso para que las cosas salgan mejor. Fundamentos de métricas de gestión
9
El Proceso e Indicadores del Proyecto Las métricas deben recopilarse para que los indicadores del proceso y del producto puedan ser ciertos. Los indicadores del proyecto permiten al gestor de proyectos del software: Evaluar el estado del proyecto en curso. Seguir la pista de los riesgos potenciales. Detectar las áreas problemas antes de que se conviertan en criticas. Ajustar el flujo y las tareas del trabajo. Evaluar la habilidad del equipo del proyecto en controlar la calidad de los productos de trabajo del software. Fundamentos de métricas de gestión
10
Que es: Es lo primero que hay que hacer antes de empezar la labor técnica de un proyecto. Finalidad : Determinar cuanto va a costar (en tiempo y dinero), Cuantos recursos son necesarios, Que tareas se van a realizar. Que tiempo: Su actividad se prolonga a lo largo de todo elproyecto corrigiendo desviaciones y previniendo riesgos Gestión de un proyecto… Fundamentos de métricas de gestión
11
¿Que se gestiona? Métricas Se mide para mejorar. Debemos saber cuanta es nuestra productividad, cuanta calidad damos, que productos aumentan la productividad, quien produce mas y quien menos. Las métricas están relacionadas con los costes, el tiempo. Planificación Estimar el esfuerzo humano requerido, la duración cronológica del proyecto y su coste monetario. Generalmente se hace en base a experiencias anteriores, de ahí la importancia de las métricas. …Gestión de un proyecto… Fundamentos de métricas de gestión
12
¿Que se gestiona? Análisis de riesgos Localizar todos los problemas que le pueden surgir a nuestro proyecto, y preparar tácticas para combatirlas: Identificación de riesgos Calculo de riesgos Priorización de riesgos Estrategias de control de riesgos Resolución de riesgos Supervisión de riesgos …Gestión de un proyecto… Fundamentos de métricas de gestión
13
¿Que se gestiona? Planificación temporal Se identifican las tareas de ingeniería a realizar Se establecen sus interdependencias Se estima su coste (esfuerzo, duración, disponibilidad de recursos) Se asignan recursos Se establece la red de tareas Seguimiento y control El gestor controla el proyecto y corrige desviaciones …Gestión de un proyecto Fundamentos de métricas de gestión
14
Determinantes de la calidad del software y de la efectividad de la organización Métricas del proceso de software Producto Personas Tecnología Proceso Condiciones del negocio Características del cliente Entorno de desarrollo
15
Métrica del Proceso (Propósito estratégico) Métricas privadas: Sólo es conocido por el equipo del proyecto, pero publicas por todos los miembros del equipo Índices de defecto por individuo o módulo Líneas de código o puntos de función por modulo y función Errores encontrados durante la revisión con técnicas formales Métricas públicas: Asimilan información que originalmente era privada de particulares y equipos permitiendo a las organizaciones hacer los cambios estratégicos para mejorar el proceso del software. Índice de defectos a nivel de proyecto Métricas del proceso de software
16
Utiliza el análisis de fallos del software para recopilar información de errores y defectos encontrados al desarrollar y utilizar una aplicación de sistema o producto. Funciona de la siguiente manera: Todos los errores se categorizan Se registra tanto el coste de corregir cada error como el del defecto El numero de errores y defectos de cada categoría se cuentan y se ordenan Se computa l coste global de errores y defectos de cada categoría Los datos resultantes se analizan para detectar las categorías que producen el coste mas alto para la organización Se desarrollan planes para modificar el proceso con el intento de eliminar la clase de errores y defectos que sean mas costosos. Mejora estadística de proceso del software Métricas del proceso de software La mejora estadística del proceso de software ayuda a la organización a descubrir donde ellos son fuertes y donde no
17
Causas de defectos y su origen para cuatro proyectos de software Métricas del proceso de software Lógica (20%) Manejo de datos (10.9%) Estándares (6.9%) Especificaciones (25.5%) Interfaz de usuario (11.7%) Comprobación de errores (10.9%) Interfaz hardware (7.7%) Interfaz de software (6.0%)
18
Diagrama de espina para el factor de calidad: Defectos de especificación (25.5%) Métricas del proceso de software Defecto de especificación Requisitos perdidos Especificación ambigua Requisitos incorrectos Requisitos cambiados Cliente dio información equivocada Información anticuada utilizada Cliente equivocado consultado Peticiones inadecuadas «La colección de métricas del proceso es el conductor para la creación del diagrama de espina»
19
La métrica del proyecto de software se usa por el equipo del software para adaptar el flujo de trabajo del proyecto y las actividades técnicas. La utilización de métricas para el proyecto tiene dos aspectos fundamentales: Se utilizan para minimizar la aplicación de desarrollo haciendo los ajustes necesarios que eviten retrasos y reduzcan problemas y riesgos potenciales. Se utilizan para evaluar la calidad de los productos en el momento actual y cuando sea necesario. Métrica del Proyecto (Carácter táctico) Métricas del proyecto de software
20
Todo proyecto debe medir: Entradas: La dimensión de los recursos (personas, entornos) que se requiere para realizar el trabajo. Salidas: Medidas de la entrega o productos creados durante el proceso de ingeniería de software. Resultados: Medidas que indican la efectividad de las entregas. …Métrica del Proyecto Métricas del proyecto de software
21
Medimos para: Indicar la calidad del producto Evaluar la productividad personal Evaluar beneficios Tener una línea base de estimación Justificar el uso de nuevas herramientas Métrica del Software Métricas del proyecto de software
22
Mediciones del software Medidas directas: Del proceso del software: Coste, el esfuerzo en horas o personas Del producto: LDC, velocidad de ejecución, tamaño de memoria Medidas indirectas: Funcionalidad Calidad Complejidad Eficiencia Fiabilidad Categorías básicas de mediciones
23
De productividad: Rendimiento del proceso de la ingeniería del software De calidad: Como se ajusta el software a las especificaciones del cliente Técnicas: La complejidad del software, su facilidad de mantenimiento Orientadas al tamaño: Medidas directas del software Orientadas a la función: Medidas indirectas Orientadas a la persona: Cuanto produce el personal, dependiendo de las herramientas que usan Clasificación de las métricas de un Software Categorías básicas de mediciones
24
Métricas para la Calidad… Miden el número de defectos no descubiertos en la prueba, la facilidad de mantenimiento del sistema y la eficiencia de eliminar los defectos. Factores que afectan a la calidad: Operación del producto (uso) Revisión del producto (modificación) Transporte (modificación para que funcione en otro entorno) Categorías básicas de mediciones
25
Corrección: Definición: Grado en que el software realiza la función encomendada. Medida: Defectos por KLDC (medida mas común), Defectos por PF Defecto: Carencia verificada de conformidad con los requisitos. Los comunica el usuario a lo largo de un periodo de tiempo determinado (un año). Facilidad de mantenimiento: Definición: Facilidad con la que se puede corregir un programa si se encuentra un error, adaptarlo a un cambio de entorno, o mejorarlo ante una petición del cliente Medida: No hay. Son indirectas. TMC ( Tiempo Medio de Cambio ), es el tiempo que lleva analizar, diseñar, implementar, probar y distribuir un cambio. Desperdicio: Coste de corregir los defectos encontrados después de haber distribuido el software a los usuarios finales …Métricas para la Calidad… Categorías básicas de mediciones
26
Integridad: Definición: Habilidad de un sistema para resistir ataques (accidentales o intencionados) contra su seguridad tanto a los programas como a los datos y documentos Amenaza: Probabilidad de que un ataque ocurra en un tiempo determinado Seguridad: Probabilidad de que se puede repeler el ataque Integridad = ∑ [(1-amenaza) * (1-seguridad)] para cada tipo de ataque Facilidad de uso: Definición: Es una cuantificación de la amigabilidad de uso Características: Habilidad intelectual y/o física para aprender el sistema Tiempo necesario para llegar a ser moderadamente eficiente en el uso del sistema Aumento neto en productividad cuando se utiliza eficientemente. Valoración subjetiva del usuario hacia el sistema …Métricas para la Calidad… Categorías básicas de mediciones
27
Métricas Orientadas al Tamaño… Las métricas del software orientadas al tamaño provienen de la normalización de las medidas de calidad y/o productividad, considerando el “tamaño” del software que se haya producido. Para desarrollar métricas que se puedan comparar entre distintos proyectos, se seleccionan las líneas de código como valor de normalización. Categorías básicas de mediciones
28
Proceden de la normalización de medidas de calidad y productividad considerando el tamaño del software. Ejemplo: ProyectoKLDCDinero Esfuerzo (personas-mes) Pag. DocsErroresPersonas a112,116824365293 b127,2440621224863 c120,1314431050646 Algunas métricas --> Formulas: (KLDC por persona-mes): Productividad = KLDC / persona-mes (Errores por KLDC): Calidad = Errores / KLDC (Coste por KLDC): Coste = Dinero / KLDC (Pagina de documentación por KLDC): Documentación = Paginas de documentación / KLDC Todo se basa en la KLDC pero esta medida es un artificio, que depende del lenguaje de programación utilizado. …Métricas Orientadas al Tamaño Categorías básicas de mediciones
29
Métricas orientadas a la función… Puntos de función: Funcionalidad o utilidad de la aplicación La unidad básica de medida son los Puntos de Función Calculo de puntos de función Factor de ponderación Parámetro de mediciónCuentaSimpleMedioComplejoTotal Numero de entradas del usuario x 346= Numero de salidas del usuario x457= Numero de peticiones al usuario x 346= Numero de archivos x 71015= Numero de interfaces externos x 5710= Cuenta-Total Categorías básicas de mediciones
30
Formulas: Puntos de Función = Cuenta-Total * [0,65+0,01 * sum(Fi)] Donde Fi (i = 1 hasta 14) son unos valores de ajuste de complejidad De 0 a 5 (0=sin influencia, 5=esencial) 1.¿Requiere el sistema de copias de seguridad y recuperación fiable? 2.¿Se requieren comunicaciones de datos? 3.¿Existen funciones de procesamiento distribuido? 4.¿Es critico el rendimiento? 5.¿Será ejecutado el sistema en un entorno operativo existente y fuertemente utilizado? 6.¿Necesita el sistema entrada de datos interactiva? 7.¿La entrada de datos interactiva requiere que las transacciones de entrada se lleven a cabo sobre múltiples pantallas o varias operaciones? 8.¿Se actualizan los archivos maestros de forma interactiva? 9.¿Son complejas las entradas, las salidas, los archivos o peticiones? 10.¿Es complejo el procesamiento interno? 11.¿Se ha diseñado código para ser reutilizado? 12.¿Están incluidas en el diseño la conversión y la instalación? 13.¿Se ha diseñado el sistema para soportar múltiples instalaciones en diferentes organizaciones? 14.¿Se ha diseñado la aplicación para facilitar los cambios y para ser fácilmente utilizada por el usuario? Productividad = PF / personas-mes Calidad = Errores / PF Coste = Dinero / PF Documentación = Paginas documentación / PF Categorías básicas de mediciones …Métricas Orientadas a la función…
31
Ventajas: Los PF son independientes del lenguaje de programación Se basan en datos que se puedan conocer antes de empezar el proyecto Inconvenientes: Los datos se basan en juicios subjetivos Su valor no es físico. No tiene unidades Categorías básicas de mediciones …Métricas Orientadas a la función…
32
Ejercicio Categorías básicas de mediciones …Métricas Orientadas a la función Un administrador de software esta a cargo del desarrollo de un sistema de software de seguridad critico que se diseña para controlar una maquina de radioterapia para tratar a los pacientes que sufren de cáncer. Este sistema esta incrustado en la maquina y debe ejecutarse en un procesador de propósito especial con una cantidad fija de memoria (32 MB). La máquina se comunica con un sistema de base de datos de pacientes para obtener los detalles del paciente y, después del tratamiento automáticamente registra los datos de radiación suministrada y otros detalles del tratamiento en la base de datos. La productividad media del equipo de desarrollo es de 6 PF/p- m. Estime el esfuerzo y el costo total requerido para desarrollar este sistema en Visual Basic, siendo la tarifa laboral de US$ 3,000 por p-m. Además se sabe que la LDC/PF (media) del Visual basic es 32 y que se requieren 8,000 LDC. Los valores de ajuste de la complejidad suman 53.
33
Solución del ejercicio Categorías básicas de mediciones …Métricas Orientadas a la función DATOS INFORMATIVOS: Productividad Media (PM) = 6 PF/p-m La tarifa local es de = US$ 3,000 p-m DETERMINANDO LOS PUNTOS DE FUNCION PF = (8000/32) x ( 0.65 + 0.01 x 53) = 295 ESTIMACIONES: Coste del PF = 3000 / 6 = US$ 500 Costo total = US$ 500 x 295 = US$ 147,500 Esfuerzo = 295 / 6 = 49.16 = 49 p-m
34
Factores que pueden incidir en la productividad Factor% Aproximado de variación Factores humano90 Factores del problema40 Factores del proceso50 Factores del producto140 Factores de los recursos 40 Factores humanos: El tamaño y la experiencia del equipo de desarrollo Factores del problema: La complejidad del problema a resolver y el numero de cambios en el diseño Factores del proceso: Técnicas de ingeniería del software utilizadas, y disponibilidad de herramientas CASE Factores del producto: Fiabilidad y rendimiento del sistema basado en computadora Factores de los recursos: De software (herramientas CASE...) y de hardware Métricas y Productividad
35
Consejos sobre la línea base Los datos deben ser razonablemente precisos, han de evitarse la suposición sobre proyectos anteriores. Los datos deben obtenerse de tantos proyectos como sea posible. Las medidas deben ser consistentes. LDC distintas para cada lenguaje de programación. Las aplicaciones deben ser similares a la que va a ser estimada. Métricas y Productividad
36
LDC / PF (media) Lenguaje de programaciónLDC /PF (media) Ensamblador320 Cobol106 Fortran106 Pascal90 Ada53 Lenguajes orientados a objetos30 Lenguajes de cuarta generación20 Generadores de código15 SQL12 Power Builder16 C++64 Visual Basic32 Métricas y Productividad
37
Integración de las métricas dentro del proceso de ingeniería del software Muchos diseñadores del software no coleccionan las medidas. Sin las medidas es imposible determinar si un proceso está mejorando o no. Las líneas base de métricas constan de datos recogidos de proyectos de software desarrollados anteriormente. Conseguir estos datos de proyectos históricos es muy difícil, si los diseñadores anteriores no coleccionaron los datos de una manera continua.
38
Integración de las métricas dentro del proceso de ingeniería del software Establecimiento de una Línea Base Los datos de la Línea Base deben tener los siguiente atributos: 1.Deben ser razonablemente exactos 2.Deben reunirse del mayor numero de proyectos que sea posible 3.Las medidas deben ser consistentes 4.Las aplicaciones deben ser semejantes para trabajar con la estimación.
39
Integración de las métricas dentro del proceso de ingeniería del software Colección de métricas, computo y evaluación Proceso de recopilación de métricas del software Producto de software Proyecto de software Proceso de ingeniería de software Recopilación de datos Calculo de métricas Evaluación de métricas Medidas Métricas Indicadores
40
Establecimiento de un programa de métricas de software Identifique los objetivos del negocio Identifique lo que se desea saber o aprender Identifique los subobjetivos Identificar las entidades y atributos relativos a esos subobjetivos Formalizar los objetivos de la medición Identificar preguntas que puedan cuantificarse y los indicadores que se van a usar para ayudar a conseguir los objetivos de medición. Identificar los elementos de datos que se van a recoger para construir los indicadores que ayuden a responder a las preguntas planteadas. Definir las medidas a usar y hacer que estas definiciones sean operativas. Identificar las acciones que serán tomadas para mejorar las medidas indicadas. Preparar un plan para implementar estas medidas.
41
Apreciación global El proceso del software y las métricas del producto son una medida cuantitativa que permite a la gente del software tener una visión profunda de la eficacia del proceso del software y de los proyectos que dirigen utilizando el proceso como marco de trabajo. En la dirección de proyecto de software, estamos principalmente interesados en la evaluación para determinar las mejoras en la calidad y productividad. Hay cuatro razones para medir los procesos del software y recursos: Caracterizar, Evaluar, Predecir, y Mejorar. Resumen
42
Ingeniería de Software Unidad I Gestión de Proyectos de Software Métricas en la gestión de proyectos de software Tema Semana 4
Presentaciones similares
© 2025 SlidePlayer.es Inc.
All rights reserved.