1 / 40

Escuela Superior de Ingeniería Informática Enxeñería Técnica en Informática de Xestión

Escuela Superior de Ingeniería Informática Enxeñería Técnica en Informática de Xestión. Planificación de Proyectos Informáticos. Segundo Tema (continuación). Modelos de Estimación del Software. Cocomo 2000. Co nstructive Co st Mo del (Modelo Construc-tivo de Costes)

benito
Télécharger la présentation

Escuela Superior de Ingeniería Informática Enxeñería Técnica en Informática de Xestión

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Escuela Superior de Ingeniería Informática Enxeñería Técnica en Informática de Xestión Planificación de Proyectos Informáticos Segundo Tema (continuación) Modelos de Estimación del Software

  2. Cocomo 2000 Constructive Cost Model (Modelo Construc-tivo de Costes) • Desarrollado en 1981 por Barry Boehm (Universidad de California Sur). • Es el modelo de estimación de costes más utilizado. • En 1995 se publicó la versión COCOMO II y actualmente derivó a COCOMO 2000. • El equipo liderado por B. Boehm (Center for Software Engineering) pretende mejorar, ampliar y adaptar el modelo anterior a las nuevas formas en que se desarrolla el software.

  3. Cocomo 2000 • Permite estimar el esfuerzo, costo y duración de cualquier proyecto informático. • Es un modelo algorítmico, es decir, se basa en una serie de fórmulas matemáticas que producen una estimación en función de un conjunto de variables (x1, x2,... xn) : • Líneas de código fuente. • Capacidad de analistas y programadores. • Complejidad del producto. • Restricciones de tiempo de ejecución, memoria, equipos de trabajo … • Fiabilidad de la aplicación. • Etc …

  4. Cocomo 2000 Introducción: • La variable principal para la estimación son las líneas de código fuente esperadas, expresadas en miles (KIFE). • La estimación cubre únicamente un conjunto definido de fases (por ejemplo, no incluye la fase de formación a los usuarios). • Incluye todas las labores directas del proyecto, pero no las labores indirectas. • El esfuerzo se mide en personas-mes: • 1 pm = 19 persona-días = 152 persona-horas

  5. Cocomo 2000 Introducción: • Asume que existe un buen entendimiento entre el usuario y los desarrolladores. • La estimación se realiza de acuerdo con la información disponible en el momento que se lleva a cabo. • Se consideran tres modelos que cubren desde el comienzo del análisis de requerimientos hasta el final de las pruebas e integración del sistema: • Modelo ACM (Mod.de Comp. de Aplicac.). • Modelo EDM (Mod. de Diseño Inicial). • Modelo PAM (Mod. Post-Arquitectura).

  6. Desarrollos de Usuario Final (55 Millones en USA en el año 2005) Generadores de Aplicaciones y Ayudas para Composición (0,6 M) Composición de Aplicaciones (0,7 M) Integración de Sistemas (0,7 M) Infraestructura (0,75 M) Cocomo 2000 Sectores de Mercado:

  7. Cocomo 2000 Modelo de Composición de Aplicaciones (ACM) • Usado principalmente para aplicaciones de pro-totipaje o aplicaciones basadas en generadores de pantallas, informes, base de datos, etc… • Basado en Puntos Objeto (PO) (número y com-plejidad de pantallas, listados, componentes de lenguajes)y Factores de Reusabilidad y Produc-tividad.

  8. Pantallas Número de Tablas de Datos Número de vistas < 4 (<2 srvr < 3 clien) < 8 (<2/3 srvr < 3-5 clien) >= 8 (> 3 srvr > 5 clien) < 3 sencillo sencillo medio 3 - 7 sencillo medio difícil >= 8 medio difícil difícil Cocomo 2000 Modelo de Composición de Aplicaciones (ACM) Procedimiento: • Estimar el nº de pantallas, listados y componentes.

  9. Listados Número de Tablas de Datos Número de Secciones < 4 (<2 srvr < 3 clien) < 8 (<2/3 srvr < 3-5 clien) >= 8 (> 3 srvr > 5 clien) 0 o 1 sencillo sencillo medio 2 o 3 sencillo medio difícil >= 4 medio difícil difícil Cocomo 2000 Modelo de Composición de Aplicaciones (ACM) Procedimiento: • Clasificarlos dentro de los niveles de complejidad sencillo, medio y difícil.

  10. Cocomo 2000 Modelo de Composición de Aplicaciones (ACM) Procedimiento: • Aplicar el peso a cada concepto.

  11. Cocomo 2000 Modelo de Composición de Aplicaciones (ACM) Procedimiento: • Determinar los Puntos Objeto. • Estimar el porcentaje de código reusado; la cantidad de PO quedará (NPO): • NPO = (PO * (100 - % reusado)) / 100

  12. Cocomo 2000 Modelo de Composición de Aplicaciones (ACM) Procedimiento: • Calcular el ratio de la productividad: • PROD = NPO / persona-mes • según la siguiente tabla: • El esfuerzo viene dado: • PM = NPO / PROD

  13. Cocomo 2000 Modelo de Diseño Inicial (EDM) • Usado en las etapas iniciales cuando se conoce poco sobre el tamaño del producto, la plataforma, el personal. • Basado en Puntos de Función No Ajustados (PFNA). • Una vez calculados, se convierten a líneas de código. • Utiliza 7 conductores de esfuerzo que afectan multiplicativamente al esfuerzo del proyecto.

  14. Cocomo 2000 Modelo de Diseño Inicial (EDM) Procedimiento: • Estimar los PFNA. • Convertir los PFNA a KIFE, según tabla:

  15. Cocomo 2000 Modelo de Diseño Inicial (EDM) • El esfuerzo nominal viene dado por: • PMNominal= A * (Tamaño)B • el tamaño viene dado en KIFE • A = constante de calibración (2,94) • B = viene determinado por los factores de escala • B = 0.91 + 0.01 x Σ FEj (j = 1 a 5) • FE = Factor de Escala (de 0 a 5)

  16. Cocomo 2000 Factores de Escala

  17. Cocomo 2000 Factores de Escala

  18. Cocomo 2000 Modelo de Diseño Inicial (EDM) • El esfuerzo ajustado será: • PMAjustado= PMNominal * Π EAi (i = 1 to 7) • FA = Factores de Ajuste

  19. Cocomo 2000 Modelo de Diseño Inicial (EDM)

  20. Cocomo 2000 Modelo de Diseño Inicial (EDM) • El tiempo estimado, una vez conocido el esfuerzo necesario, se obtiene de: • TDES= [ c x (PM)d ] * SCED%/100 • siendo • PM = esfuerzo de desarrollo sin tener en cuenta el multiplicador Sced • c = 3.67 • d = 0.28 + 0.2 * [B – 0,91] • El personal a tiempo completo necesario para el desarrollo (PDTC) será: • PDTC = PM / TDES

  21. Cocomo 2000 Modelo de Post-Arquitectura (PAM) 1-3. Los tres primeros pasos son similares al modelo EDM. • El esfuerzo ajustado será: • PMAjustado= PMNominal * Π EAi (i = 1 to 17) • FA = Factores de Ajuste para PAM, quese obtienen desglosando los 7 factores del modelo inicial (según tabla) • 5. El tiempo del proyecto se calcula igual que para el modelo EDM.

  22. Cocomo 2000 Desglose de los factores de ajuste de EDM

  23. Cocomo 2000 Factores de Ajuste para PAM (Producto)

  24. Cocomo 2000 Factores de Ajuste para PAM (Plataforma)

  25. Cocomo 2000 Factores de Ajuste para PAM (Personal)

  26. Cocomo 2000 Factores de Ajuste para PAM (Proyecto)

  27. Cocomo 2000

  28. Cocomo 2000

  29. Cocomo 2000 • Ajuste del Tamaño: • Este modelo incorpora ajustes de tamaño por cuatro causas: • Desecho (Breakage). • Reutilización. • Reingeniería o conversión. • Mantenimiento.

  30. Cocomo 2000 • Ajuste del Tamaño (Desecho): • Al tamaño final del producto hay que añadir el código desarrollado y que hay que desechar debido a la volatilidad de los requerimientos. • Este tamaño de producto desechado se determina mediante: TamañoBREAK = (1 + BRAK / 100) * Tamaño siendo BRAK = % del código desechado respecto del total

  31. Cocomo 2000 • Ajuste del Tamaño (Reutilización): • Trata de estimar el número de líneas de código equivalentes, procedentes de módulos reutilizados, que hay que incorporar al tamaño del producto. • Se añade un factor de ajuste de la adaptación (AAF), que determina el porcentaje debido a la adaptación en las fase de diseño, codificación e integración: AAF = 0,4 * MD + 0,3 * MC + 0,3 * MI

  32. Cocomo 2000 • Ajuste del Tamaño (Reutilización): • El tamaño de producto reutilizado es: TamañoRU = TamañoA [AA + AAF + (SU * UNFM) ] / 100 siendo TamañoA= tamaño del código adaptado AA = % de valoración y asimilación SU = % de esfuerzo de reutilización debido a la comprensión del software UNFM = indicador de la familiaridad del programador con el software

  33. Cocomo 2000 Ajuste del Tamaño (Reutilización):

  34. Cocomo 2000 Ajuste del Tamaño (Reutilización):

  35. Cocomo 2000 Ajuste del Tamaño (Reutilización):

  36. Cocomo 2000 Ajuste del Tamaño (Reutilización):

  37. Cocomo 2000 • Ajuste del Tamaño (Reingeniería o Conversión): • Elajuste anterior por reutilización tiene un refina-miento adicional para contemplar los efectos de la reingeniería y/o conversión, debidos a la eficien-cia de las herramientas automáticas para la rees-tructuración del software: • PMNominal= A * (Tamaño)B + [ASLOC * (AT / 100)/ATPROD] • siendo • AT= % de código que es sometido a reingeniería mediante traslación automática • ATPROD = productividad de las herramientas en IFE / PM (actualmente se estima en 2400)

  38. Cocomo 2000 • Ajuste del Tamaño (Mantenimiento): • Incluye: • Rediseño y recodificación de porciones pequeñas de un producto original. • Resideño y desarrollo de interfaces. • Cambios menores de estructura. • Actualizaciones de datos. • Reparaciones (correctiva, adaptativa o perfectiva)

  39. Cocomo 2000 • Ajuste del Tamaño (Mantenimiento): • Utiliza esencialmente el mismo conjunto de factores conductores de esfuerzo que el desarrollo • No se tienen en cuenta los factores Sced y Ruse • El factor Rely (Fiabilidad) tiene un efecto inverso (si un producto fue desarrollado con baja fiabilidad, será más costoso corregir los defectos):

  40. Cocomo 2000 • Ajuste del Tamaño (Mantenimiento): • El esfuerzo de mantenimiento se calcula a partir de la siguiente expresión: PMM = a x TamañoMb x Π FMi(i = 1 a 15) TamañoM = [BSC * MCF] * MAF BSC = tamaño código original MCF = (código añadido + código modificado) / BSC MAF = 1 + [ (SU / 100) * UNFM SU = % de esfuerzo de mantenimiento debido a la comprensión del software (10 – 50) UNFM = indicador de familiaridad (0,0 – 1,0)

More Related