La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Proceso de Software y Métricas de Proyectos Ing. Miguel E. Torres MSc Ing. Luis Carlos Díaz MSC Ingeniería de Software Departamento de Sistemas Facultad.

Presentaciones similares


Presentación del tema: "Proceso de Software y Métricas de Proyectos Ing. Miguel E. Torres MSc Ing. Luis Carlos Díaz MSC Ingeniería de Software Departamento de Sistemas Facultad."— Transcripción de la presentación:

1 Proceso de Software y Métricas de Proyectos Ing. Miguel E. Torres MSc Ing. Luis Carlos Díaz MSC Ingeniería de Software Departamento de Sistemas Facultad de Ingeniería Pontificia Universidad Javeriana 2007

2 Outline Planificación de Proyectos Planificación de Proyectos Factores Factores Actividades Actividades Estimación Estimación

3 Para comenzar … Ejercicio: Ejercicio: Estime el tiempo empleado para calcular la siguiente suma: Estime el tiempo empleado para calcular la siguiente suma: 50 50 ∑ (n) n=1 Tiempo estimado? _____ segundos Tiempo estimado? _____ segundos Hora inicio: ____ segundos, Hora final: ____ segundos Hora inicio: ____ segundos, Hora final: ____ segundos Tiempo real empleado: _____segundos! Tiempo real empleado: _____segundos! Resultado de la Operación Resultado de la Operación

4 Planificación de Proyectos Estimación de trabajo, recursos y tiempo para un proceso de desarrollo de software Estimación de trabajo, recursos y tiempo para un proceso de desarrollo de software Métricas Proporcionan perspectiva

5 Factores Complejidad del proyecto Complejidad del proyecto Tamaño del Proyecto: Interdependencia Tamaño del Proyecto: Interdependencia Grado de incertidumbre estructural: división de los requerimientos Grado de incertidumbre estructural: división de los requerimientos Riesgo Riesgo

6 Productividad del Software Medida de la tasa en la cual un individuo produce SW y su documentación Medida de la tasa en la cual un individuo produce SW y su documentación No esta orientado a la calidad – aunque el aseguramiento de la calidad es un factor en la medida de productividad No esta orientado a la calidad – aunque el aseguramiento de la calidad es un factor en la medida de productividad Funcionalidad útil producida por unidad de tiempo Funcionalidad útil producida por unidad de tiempo

7 Pasos Ámbito del Producto Ámbito del Producto Delimitación del Proyecto Delimitación del Proyecto División del Problema División del Problema Estimación Estimación Análisis de Riesgos Análisis de Riesgos

8 Resultados Tareas a desarrollar Tareas a desarrollar Funcionalidades a implementar Funcionalidades a implementar Costo, esfuerzo y tiempo Costo, esfuerzo y tiempo Recursos Recursos

9 Ámbito del Producto Delimitar Delimitar Descripción inicial: Descripción inicial: Control y datos a procesar Control y datos a procesar Funcionalidad – Necesidades, Metas, Objetivos Funcionalidad – Necesidades, Metas, Objetivos Rendimiento Rendimiento Restricciones Restricciones Interfaces con otros sistemas Interfaces con otros sistemas Fiabilidad – Probabilidad de buen funcionamiento Fiabilidad – Probabilidad de buen funcionamiento Viabilidad – tecnológica, financiera, temporal, recursos Viabilidad – tecnológica, financiera, temporal, recursos

10 Estimación de Recursos PersonasReutilizables Herramientas HW/ SW Descripción del Recurso Descripción del Recurso Disponibilidad Disponibilidad Fecha en la que se requiere Fecha en la que se requiere Tiempo de Uso Tiempo de Uso

11 Estimación de Recursos (cont.) Recursos humanos Recursos humanos Posición en la organización Posición en la organización Especialidad Especialidad Recursos Reutilizables Recursos Reutilizables Establecer catálogos Establecer catálogos Componentes ya desarrollados (COTS) Componentes ya desarrollados (COTS) Componentes ya implementados Componentes ya implementados Componentes con experiencia parcial Componentes con experiencia parcial Componentes nuevos Componentes nuevos

12 Estimación del Proyecto Estimar al final (lo ideal!) Estimar al final (lo ideal!) Basarse en proyectos anteriores Basarse en proyectos anteriores Técnicas de descomposición Técnicas de descomposición Modelos empíricos Modelos empíricos

13 Preguntas Fundamentales Que tanto esfuerzo requiero para una actividad? Que tanto esfuerzo requiero para una actividad? Que tanto tiempo necesitare para desarrollarla? Que tanto tiempo necesitare para desarrollarla? Cuál es el costo total de la actividad? Cuál es el costo total de la actividad?

14 Componentes del Costo Hardware y software Hardware y software Entrenamiento y desplazamiento Entrenamiento y desplazamiento Costos de Esfuerzo (factor predominante) Costos de Esfuerzo (factor predominante) Salarios Salarios Costos Sociales y de Seguros Costos Sociales y de Seguros Costos colaterales Costos colaterales Electricidad, arriendo, etc. Electricidad, arriendo, etc. Redes y telecomunicaciones Redes y telecomunicaciones Lugares (e.g librería, cafetería, etc.) Lugares (e.g librería, cafetería, etc.)

15 Métricas de Productividad Relativo al Tamaño: basado en el resultado del proceso - KLOC, Clases, componentes, documentos Relativo al Tamaño: basado en el resultado del proceso - KLOC, Clases, componentes, documentos Relativo a la Funcionalidad: basado en estimacion de la funcionalidad prestada por el SW entregado. Relativo a la Funcionalidad: basado en estimacion de la funcionalidad prestada por el SW entregado.

16 Técnicas de Descomposición Orientadas al Tamaño Lógica Difusa: Comparación con proyectos anteriores Lógica Difusa: Comparación con proyectos anteriores Puntos funcionales (puede convertirse a KLOC) Puntos funcionales (puede convertirse a KLOC) Componentes, subsistemas, módulos, pantallas … Componentes, subsistemas, módulos, pantallas … Orientada al Problema División de funcionalidades División de funcionalidades

17 System development times

18 Ejemplo de Estimación (1) “Desarrollo de una aplicación CAD para ingeniería mecánica que acepte datos geométricos de dos y tres dimensiones. El usuario interactuará y controlará el sistema CAD a través de una interfaz de usuario bien diseñada. Los datos se conservarán en BD. Se desarrollarán módulos de análisis de diseño para producir salidas a dispositivos gráficos; el software deberá controlar varios tipos de dispositivos como ratón, teclado, plotter y tabla digitalizadora”

19 EJEMPLO Estimación en LDC (2) S = (S opt +4*S pro +S pes )/6 S = (S opt +4*S pro +S pes )/6 FUNCIÓN LDC Est Interfaz de usuario y control 2300 Análisis geométrico bidimensional 5300 Análisis geométrico tridimensional 6800 Gestión de bases de datos 3350 Facilidades de presentación gráfica de computador 4950 Función de control periférico 2100 Módulos de análisis de diseño 8400 Líneas De Código estimadas 33200

20 Ejemplo LDC (3) Costo y Esfuerzo Costo y Esfuerzo Uso de datos históricos: Uso de datos históricos: Productividad 620 LDC/pm Productividad 620 LDC/pm U$8000/pm U$8000/pm Luego el costo por línea de código: U$ 13/LDC Luego el costo por línea de código: U$ 13/LDCEntonces: Costo total del proyecto… U$431.000 Costo total del proyecto… U$431.000 Esfuerzo… 53pm Esfuerzo… 53pm

21 Puntos de Función (FP) Basado en la combinacion de características del SW: Basado en la combinacion de características del SW: Entradas y salidas externas Entradas y salidas externas Interacciones con el usuario Interacciones con el usuario Interfaces externas Interfaces externas Archivos usados por el sistema Archivos usados por el sistema Un peso es asociado a cada uno de ellos Un peso es asociado a cada uno de ellos Se suman para producir el total de FP del SW Se suman para producir el total de FP del SW

22 Puntos de Funcion (FP) (cont.) FPs pueden usarse para estimar LOC dependiendo del promedio de LOC por FP para un lenguaje dado FPs pueden usarse para estimar LOC dependiendo del promedio de LOC por FP para un lenguaje dado LOC = AVC * FP LOC = AVC * FP FPs son subjetivos FPs son subjetivos

23 EJEMPLO Estimación de FP (4) Valores de dominio de la información: Valores de dominio de la información: DominioOptProPesEstPesoPF Entradas externas 20243024497 Salidas externas 12152216578 Consultas Externas 16222822588 Archivos lógicos internos 44541042 Interfase externa 2232715 320

24 EJEMPLO FP (5) Factores Factores FACTORVALOR 1. Respaldo y recuperación 4 2. Comunicaciones de datos 2 3. Procesamiento distribuido 0 4. Desempeño crítico 4 5. Entorno operativo existente 3 6. Entrada de datos en línea 4 7. Transacciones de entrada sobre pantallas múltiples 5 8. ILF actualizado en línea 3 9. Complejidad de valores de dominio de información 5 10. Complejidad de procesamiento interno 5 11. Código diseñado para reutilización 4 12. Conversión/Instalación de diseño 3 13. Instalaciones múltiples 5 14. Aplicación diseñada para cambio 5 FACTOR DE AJUSTE PARA EL EJEMPLO… 1.17

25 EJEMPLO FP (6) Se tiene en cuenta la complejidad Se tiene en cuenta la complejidad Factor de ajuste de valor: 1.17 Factor de ajuste de valor: 1.17 Fa = ConteoTotal*(0,65+0.01*Factor i ) Fa = ConteoTotal*(0,65+0.01*Factor i ) Para el ejemplo: Fa = 375 Para el ejemplo: Fa = 375 Datos Históricos Datos Históricos 6,5 FP/pm 6,5 FP/pm Costo x FP = U$1230/PF Costo x FP = U$1230/PFEntonces Costo Proyecto… U$ 461000 Costo Proyecto… U$ 461000 Esfuerzo… 58pm Esfuerzo… 58pm

26 The COCOMO model An empirical model based on project experience. An empirical model based on project experience. Well-documented, ‘independent’ model which is not tied to a specific software vendor. Well-documented, ‘independent’ model which is not tied to a specific software vendor. Long history from initial version published in 1981 (COCOMO-81) through various instantiations to COCOMO 2. Long history from initial version published in 1981 (COCOMO-81) through various instantiations to COCOMO 2. COCOMO 2 takes into account different approaches to software development, reuse, etc. COCOMO 2 takes into account different approaches to software development, reuse, etc.

27 Medición y Métricas Adaptado de Pressman Cap. 4

28 El Proceso y las Métricas El Proceso requiere de medidas cuantitativas para: El Proceso requiere de medidas cuantitativas para: Estimar Estimar Control de Calidad Control de Calidad Evaluación y control de Proyectos Evaluación y control de Proyectos Toma de Decisiones Toma de Decisiones

29 El Proceso y las Métricas (Cont.) Las medidas son importantes para juzgar basados en hechos concretos. Las medidas son importantes para juzgar basados en hechos concretos. Razones para medir el proceso: Razones para medir el proceso: Caracterizar Caracterizar Evaluar Evaluar Predecir Predecir Mejorar Mejorar

30 Definiciones Medida:indicación cuantitativa (característica individual) Medida:indicación cuantitativa (característica individual) Medición: acto de determinar la medida (capturar medida) Medición: acto de determinar la medida (capturar medida) Métrica: Explicación de las medidas en comparación (relacionar mediciones) Métrica: Explicación de las medidas en comparación (relacionar mediciones) Ej: Ej: Errores Encontrados X Persona Hora Indicador: Conjunto de métricas Indicador: Conjunto de métricas

31 En la Ingeniería de Software Métricas del Proceso Métricas del Proceso Visión de eficacia Visión de eficacia Evaluación Evaluación Se recopilan de varios proyectos Se recopilan de varios proyectos Métricas del Proyecto Métricas del Proyecto Evaluación Evaluación Riesgos Riesgos Flujo de Trabajo Flujo de Trabajo

32 Métricas del Proceso Mejoramiento del Proceso: CMM, SPICE; ISO-9000, PSP Mejoramiento del Proceso: CMM, SPICE; ISO-9000, PSP Privadas o Públicas Privadas o Públicas Eficacia: Eficacia: Errores Errores Productos de trabajo Productos de trabajo Esfuerzo humano y tiempo consumido Esfuerzo humano y tiempo consumido

33 Métricas del Proyecto Fines estratégicos Fines estratégicos Planificación vs. Producto Planificación vs. Producto Entradas – Salidas – Resultados Entradas – Salidas – Resultados Adaptar el trabajo y las actividades Adaptar el trabajo y las actividades Ejemplos: Ejemplos: Páginas de documentación Páginas de documentación KLOC KLOC Errores y Defectos Errores y Defectos

34 Mediciones Directas KLOC KLOC Velocidad Velocidad Memoria Memoria Errores-Defectos Errores-Defectos PM PM Páginas Páginas Indirectas Funcionalidad Calidad Complejidad

35 Mediciones (Cont.) ProcesoProyectoProducto Individuo Agrupar Consolidar

36 Tipos de Métricas de Software Orientadas a la Función: Funcionalidad prestada Funcionalidad prestada Puntos de función Puntos de función Orientadas al Tamaño: Errores X KLOC Defectos X KLOC $ X KLOC Pag. Doc. X KLOC Errores X PM KLOC X PM

37 Métricas de Calidad de SW Corrección: Defectos X KLOC Corrección: Defectos X KLOC Mantenimiento: TMC (Tiempo Medio de Cambio) Mantenimiento: TMC (Tiempo Medio de Cambio) Integridad: de la Información Integridad: de la Información Facilidad de Uso Facilidad de Uso Eficacia de la eliminación de defectos Eficacia de la eliminación de defectos E: Errores antes de la entrega D: Número de defectos Objetivo: EED = 1

38 Integración de las Métricas Ayudan a medir el progreso organizacional Ayudan a medir el progreso organizacional Se toman como base métricas de proyectos pasados para ser efectivos: Se toman como base métricas de proyectos pasados para ser efectivos: 1. Datos Exactos: Evitar conjeturas de el pasado 2. Deben reunirse del a mayor cantidad de proyectos 3. Métricas deben ser consistentes: KLOC C++ vs. KLOC COBOL 4. Aplicaciones similares


Descargar ppt "Proceso de Software y Métricas de Proyectos Ing. Miguel E. Torres MSc Ing. Luis Carlos Díaz MSC Ingeniería de Software Departamento de Sistemas Facultad."

Presentaciones similares


Anuncios Google