Modelos Empíricos de
    Estimación
ISF5501 Ingeniería de Software
         Semana 9/2
Aprendizajes Esperados:
    Definición, formalización y
modelamiento de requerimientos de
        desarrollo de SW.

                  Contenidos:
    Aplica las técnicas de análisis y diseño
   de software de acuerdo a los requisitos
              para una aplicación
Temario Semana 9-2


1. Modelos Empíricos de Estimación
2. Síntesis
Modelos Empíricos de Estimación
 Un modelo empírico de estimación para software puede
  utilizar fórmulas derivadas empíricamente para predecir el
  esfuerzo como una función de LDC y PF.
 Los datos empíricos que soportan la mayoría de los modelos
  de estimación se obtienen de una muestra limitada de
  proyectos. Es por eso que estos modelos de estimación no
  son adecuados para todas clases de software y en todos los
  entornos de desarrollo.
 Los resultados obtenidos de dichos
  modelos se deben utilizar con
  prudencia.
Modelos Empíricos de Estimación
a) Modelo COCOMO:
   Es una escala de modelos de estimación de software con
    el nombre de COCOMO, por COnstructive COst MOdel.

   Este modelo incluye:

    i. Modelo 1: El modelo COCOMO básico calcula el
       esfuerzo (y el costo) del desarrollo de software en
       función del tamaño del programa, expresado en las
       líneas estimadas de código (LDC).
Modelos Empíricos de Estimación
a) Modelo COCOMO:

    ii. Modelo 2: El modelo COCOMO intermedio calcula el
        esfuerzo del desarrollo de software en función del
        tamaño del programa y de un conjunto de
        “conductores de costo” que incluyen la evaluación
        subjetiva del producto, del hardware, del personal y de
        los atributos del proyecto.

    iii. Modelo 3: El modelo COCOMO avanzado incorpora
         todas las características de la versión intermedia y
         lleva a cabo una evaluación del impacto de los
         conductores de costo en cada fase (análisis, diseño,
         etc.) del transcurso de ingeniería del software.
Modelos Empíricos de Estimación
a) Modelo COCOMO:

   Los modelos COCOMO están establecidos para tres
    prototipos de proyectos de software que son:

    • Modo orgánico: aquellos proyectos de software que
      son respectivamente pequeños y sencillos en donde
      trabajan pequeños equipos que poseen buena
      experiencia en la aplicación, sobre un conjunto de
      requisitos poco rígidos.
Modelos Empíricos de Estimación
a) Modelo COCOMO:
    • Modo semiacoplado: son los proyectos de software
      intermedios hablando de tamaño y complejidad, en
      donde los equipos tienen diversos niveles de
      experiencia,   y    además      deben  satisfacer
      requerimientos poco o medio rígidos.

    • Modo empotrado: son proyectos de software que
      deben ser desarrollados en un conjunto de
      hardware, software y restricciones operativas muy
      restringido.
Modelos Empíricos de Estimación
a) Modelo COCOMO:
   COCOMO Básico:
    • Las ecuaciones del COCOMO básico tienen la
      siguiente forma:
                      E = ab (KLDC) exp (bb)
                        D = cb (E) exp (db)



    • …donde E es el esfuerzo aplicado en personas-mes, D
      es el tiempo de desarrollo en meses cronológicos y
      KLDC es el número estimado de líneas de código
      distribuidas (en miles) para el proyecto.
Modelos Empíricos de Estimación
a) Modelo COCOMO:
   COCOMO Básico:

    • Los coeficientes ab y cb y los exponentes db y bb, con
      valores constantes se muestran en la Tabla siguiente:
Modelos Empíricos de Estimación
a) Modelo COCOMO:
   COCOMO Intermedio:
    • Las ecuaciones del COCOMO intermedio tienen la
      siguiente forma:

                    E = ai (KLDC) exp(bi) * FAE


    • …donde E es el esfuerzo aplicado en personas-mes y
      LDC es el número estimado de líneas de código
      distribuidas para el proyecto. FAE es un factor de
      ajuste de esfuerzo que normalmente fluctúa entre
      0,9 y 1,4.
Modelos Empíricos de Estimación
a) Modelo COCOMO:
   COCOMO Intermedio:

    • El coeficiente ai y el exponente bi como constantes
      se muestran en la siguiente Tabla:
Modelos Empíricos de Estimación
a) Modelo COCOMO:

   Ejemplo:
    • Aplicación Modelo Básico
    • Estimación LDC ejemplo anterior (33,3)
    • Modelo Semiacoplado
                        E = 3,0 (LDC) exp(1,12)
                         = 3,0 (33,3) exp(1,12)
                         = 152 personas/mes
    • Duración del Proyecto:
                       D = 2,5 (E) exp(0,35)
                          = 14,5 meses
Modelos Empíricos de Estimación
a) Modelo COCOMO:

   Ejemplo:
    • El valor de la duración del proyecto, permite
      recomendar un número N de personas para el
      proyecto:
                        N=E/D
                       = 152 / 14,5
                      = 11 personas
Modelos Empíricos de Estimación
a) Modelo COCOMO II - Antecedentes:

   COCOMO II es un modelo que permite estimar el coste,
    esfuerzo y tiempo cuando se planifica una nueva
    actividad de desarrollo software. Está asociado a los
    ciclos de vida modernos.

   COCOMO II apunta hacia los proyectos software de los
    90 y de la primera década del 2000, y continuará
    evolucionando durante los próximos años.
Modelos Empíricos de Estimación
a) Modelo COCOMO II - Antecedentes:

   Los cuatro elementos principales de la estrategia que ha
    seguido COCOMO II son:

     • Preservar la apertura del COCOMO original
     • Desarrollar COCOMO II de forma que sea
       compatible con el futuro mercado del software
     • Ajustar las entradas y salidas de los submodelos de
       COCOMO II al nivel de información disponible
     • Permitir que los submodelos de COCOMO II se
       ajusten a las estrategias de proceso particulares de
       cada proyecto.
Modelos Empíricos de Estimación
a) Modelo COCOMO II - Antecedentes:

   El modelo de COCOMO II está desglosado en tres
    submodelos para asegurar la relatividad del proyecto en
    la estimación. Estos submodelos son:

     • El modelo de Composición de Aplicaciones:
       Indicado para proyectos construidos con
       herramientas modernas de construcción de
       interfaces gráficos para usuario.
Modelos Empíricos de Estimación
a) Modelo COCOMO II - Antecedentes:

     • El modelo de Diseño anticipado: Este modelo
       puede utilizarse para obtener estimaciones
       aproximadas del coste de un proyecto antes de que
       esté determinada por completo su arquitectura.
       Utiliza un pequeño conjunto de drivers de coste
       nuevo y nuevas ecuaciones de estimación. Está
       basado en Punto de Función.

     • El modelo de Post-Arquitectura: Este es el modelo
       COCOMO II más detallado. Se utiliza una vez que se
       ha desarrollado por completo la arquitectura del
       proyecto.
Temario Semana 9-2


1. Modelos Empíricos de Estimación
2. Síntesis
Síntesis
• Los métodos de estimación basadas en
  esfuerzo, entregan principalmente una aproximación
  de los recursos a utilizar en el desarrollo.
• La Estimación de Esfuerzo entrega además los costes
  asociados por cada uno de los recursos y sus
  respectivas fases.

• Los Modelos Empíricos se basan exclusivamente en
  datos históricos y ecuaciones matemáticas.
Síntesis
• El Modelo de Cocomo es una metodología empírica
  basada en las características del proyecto, como
  también en las características del equipo de
  desarrollo.
• El Modelo de Cocomo II es una versión mejorada del
  modelo de Cocomo clásico, pero con una visión mas
  moderna de desarrollo de proyecto.

• Independiente sea el proyecto a abordar, siempre la
  recomendación es desarrollar al menos dos técnicas
  de estimación.

Ra semana 9 2

  • 1.
    Modelos Empíricos de Estimación ISF5501 Ingeniería de Software Semana 9/2
  • 2.
    Aprendizajes Esperados: Definición, formalización y modelamiento de requerimientos de desarrollo de SW. Contenidos: Aplica las técnicas de análisis y diseño de software de acuerdo a los requisitos para una aplicación
  • 3.
    Temario Semana 9-2 1.Modelos Empíricos de Estimación 2. Síntesis
  • 4.
    Modelos Empíricos deEstimación  Un modelo empírico de estimación para software puede utilizar fórmulas derivadas empíricamente para predecir el esfuerzo como una función de LDC y PF.  Los datos empíricos que soportan la mayoría de los modelos de estimación se obtienen de una muestra limitada de proyectos. Es por eso que estos modelos de estimación no son adecuados para todas clases de software y en todos los entornos de desarrollo.  Los resultados obtenidos de dichos modelos se deben utilizar con prudencia.
  • 5.
    Modelos Empíricos deEstimación a) Modelo COCOMO:  Es una escala de modelos de estimación de software con el nombre de COCOMO, por COnstructive COst MOdel.  Este modelo incluye: i. Modelo 1: El modelo COCOMO básico calcula el esfuerzo (y el costo) del desarrollo de software en función del tamaño del programa, expresado en las líneas estimadas de código (LDC).
  • 6.
    Modelos Empíricos deEstimación a) Modelo COCOMO: ii. Modelo 2: El modelo COCOMO intermedio calcula el esfuerzo del desarrollo de software en función del tamaño del programa y de un conjunto de “conductores de costo” que incluyen la evaluación subjetiva del producto, del hardware, del personal y de los atributos del proyecto. iii. Modelo 3: El modelo COCOMO avanzado incorpora todas las características de la versión intermedia y lleva a cabo una evaluación del impacto de los conductores de costo en cada fase (análisis, diseño, etc.) del transcurso de ingeniería del software.
  • 7.
    Modelos Empíricos deEstimación a) Modelo COCOMO:  Los modelos COCOMO están establecidos para tres prototipos de proyectos de software que son: • Modo orgánico: aquellos proyectos de software que son respectivamente pequeños y sencillos en donde trabajan pequeños equipos que poseen buena experiencia en la aplicación, sobre un conjunto de requisitos poco rígidos.
  • 8.
    Modelos Empíricos deEstimación a) Modelo COCOMO: • Modo semiacoplado: son los proyectos de software intermedios hablando de tamaño y complejidad, en donde los equipos tienen diversos niveles de experiencia, y además deben satisfacer requerimientos poco o medio rígidos. • Modo empotrado: son proyectos de software que deben ser desarrollados en un conjunto de hardware, software y restricciones operativas muy restringido.
  • 9.
    Modelos Empíricos deEstimación a) Modelo COCOMO:  COCOMO Básico: • Las ecuaciones del COCOMO básico tienen la siguiente forma: E = ab (KLDC) exp (bb) D = cb (E) exp (db) • …donde E es el esfuerzo aplicado en personas-mes, D es el tiempo de desarrollo en meses cronológicos y KLDC es el número estimado de líneas de código distribuidas (en miles) para el proyecto.
  • 10.
    Modelos Empíricos deEstimación a) Modelo COCOMO:  COCOMO Básico: • Los coeficientes ab y cb y los exponentes db y bb, con valores constantes se muestran en la Tabla siguiente:
  • 11.
    Modelos Empíricos deEstimación a) Modelo COCOMO:  COCOMO Intermedio: • Las ecuaciones del COCOMO intermedio tienen la siguiente forma: E = ai (KLDC) exp(bi) * FAE • …donde E es el esfuerzo aplicado en personas-mes y LDC es el número estimado de líneas de código distribuidas para el proyecto. FAE es un factor de ajuste de esfuerzo que normalmente fluctúa entre 0,9 y 1,4.
  • 12.
    Modelos Empíricos deEstimación a) Modelo COCOMO:  COCOMO Intermedio: • El coeficiente ai y el exponente bi como constantes se muestran en la siguiente Tabla:
  • 13.
    Modelos Empíricos deEstimación a) Modelo COCOMO:  Ejemplo: • Aplicación Modelo Básico • Estimación LDC ejemplo anterior (33,3) • Modelo Semiacoplado E = 3,0 (LDC) exp(1,12) = 3,0 (33,3) exp(1,12) = 152 personas/mes • Duración del Proyecto: D = 2,5 (E) exp(0,35) = 14,5 meses
  • 14.
    Modelos Empíricos deEstimación a) Modelo COCOMO:  Ejemplo: • El valor de la duración del proyecto, permite recomendar un número N de personas para el proyecto: N=E/D = 152 / 14,5 = 11 personas
  • 15.
    Modelos Empíricos deEstimación a) Modelo COCOMO II - Antecedentes:  COCOMO II es un modelo que permite estimar el coste, esfuerzo y tiempo cuando se planifica una nueva actividad de desarrollo software. Está asociado a los ciclos de vida modernos.  COCOMO II apunta hacia los proyectos software de los 90 y de la primera década del 2000, y continuará evolucionando durante los próximos años.
  • 16.
    Modelos Empíricos deEstimación a) Modelo COCOMO II - Antecedentes:  Los cuatro elementos principales de la estrategia que ha seguido COCOMO II son: • Preservar la apertura del COCOMO original • Desarrollar COCOMO II de forma que sea compatible con el futuro mercado del software • Ajustar las entradas y salidas de los submodelos de COCOMO II al nivel de información disponible • Permitir que los submodelos de COCOMO II se ajusten a las estrategias de proceso particulares de cada proyecto.
  • 17.
    Modelos Empíricos deEstimación a) Modelo COCOMO II - Antecedentes:  El modelo de COCOMO II está desglosado en tres submodelos para asegurar la relatividad del proyecto en la estimación. Estos submodelos son: • El modelo de Composición de Aplicaciones: Indicado para proyectos construidos con herramientas modernas de construcción de interfaces gráficos para usuario.
  • 18.
    Modelos Empíricos deEstimación a) Modelo COCOMO II - Antecedentes: • El modelo de Diseño anticipado: Este modelo puede utilizarse para obtener estimaciones aproximadas del coste de un proyecto antes de que esté determinada por completo su arquitectura. Utiliza un pequeño conjunto de drivers de coste nuevo y nuevas ecuaciones de estimación. Está basado en Punto de Función. • El modelo de Post-Arquitectura: Este es el modelo COCOMO II más detallado. Se utiliza una vez que se ha desarrollado por completo la arquitectura del proyecto.
  • 19.
    Temario Semana 9-2 1.Modelos Empíricos de Estimación 2. Síntesis
  • 20.
    Síntesis • Los métodosde estimación basadas en esfuerzo, entregan principalmente una aproximación de los recursos a utilizar en el desarrollo. • La Estimación de Esfuerzo entrega además los costes asociados por cada uno de los recursos y sus respectivas fases. • Los Modelos Empíricos se basan exclusivamente en datos históricos y ecuaciones matemáticas.
  • 21.
    Síntesis • El Modelode Cocomo es una metodología empírica basada en las características del proyecto, como también en las características del equipo de desarrollo. • El Modelo de Cocomo II es una versión mejorada del modelo de Cocomo clásico, pero con una visión mas moderna de desarrollo de proyecto. • Independiente sea el proyecto a abordar, siempre la recomendación es desarrollar al menos dos técnicas de estimación.