SlideShare una empresa de Scribd logo
1 de 8
Descargar para leer sin conexión
ESTIMACIÓN PARA PROYECTOS DE SOFTWARE

                                   Escuela Politécnica Nacional

                               Análisis De Sistemas Informáticos


                                           Alejandro Salazar

INTRODUCCION

El objetivo de la planificación del proyecto de software es proporcionar un marco de trabajo que permita al
gestor estimar razonablemente los recursos, costo y programa de trabajo.
Sin embargo aunque la estimación se la realiza en etapas tempranas del proyecto ésta se debe ajustar a lo
largo del transcurso del mismo, pues entre más conozca menor será el grado de incertidumbre y las
estimaciones serán más precisas.

La estimación se basa en las métricas de proyectos anteriores, las cuales sirven de línea base sobre las que, de
acuerdo a la clasificación de los proyectos y una evaluación del tamaño y complejidad del software se utilizan
en las técnicas y modelos existentes.

Este trabajo contiene, en una primera parte algunos conceptos que son necesarios para realizar una buena
estimación: ámbito y complejidad del software, luego analizaremos cuando un proyecto es factible, y
finalmente algunos modelos empíricos de estimación, COCOMO el cual es uno de los más utilizados, la
ecuación del software también será tratada y la medición orientada a objetos que es un modelo nuevo aún en
desarrollo.
                                     ESTIMACION DEL SOFTWARE

Una de las primeras actividades de este proyecto es la estimación, que es la base de todas las
demás actividades de la planificación.

Características del proyecto a estimar

      • Complejidad del proyecto. Tiene un gran efecto sobre la incertidumbre; que es inherente a la
         planificación.
      • El tamaño del proyecto. Es otro factor importante que puede afectar a la precisión y eficacia de las
         estimaciones.
      • Grado de estructuración del proyecto. Se refiere a la facilidad con que las funciones pueden ser
         compartidas y a la naturaleza de la información que debe ser procesada.
OBSERVACIONES ACERCA DE LA ESTIMACIÓN

La estimación y planificación temporal de un proyecto software requiere: experiencia, buena información
histórica, coraje de confiar en las métricas, para obtener buenos resultados, debido a que cada proyecto es
diferente, cada empresa es diferente y el contexto de los sistemas que desarrollamos cambian constantemente,
no existe un método que se adapte completamente a cualquier proyecto, así la estimación debe ajustarse
localmente.

Hay cuatro factores que influyen significativamente en las estimaciones:

    •   La complejidad del proyecto.
    •   El tamaño del proyecto.
    •   El grado de incertidumbre estructural.
    •   Disponibilidad de información histórica.


ESTIMACIÓN CON CASOS DE USO

Desarrollar un enfoque de estimación de casos de uso es un problema debido a:

        No existe un formato estándar para describir los casos de uso.
        Están descritos con diferentes grados de abstracción (dependen del usuario).
        Los casos de uso no explican la complejidad de las funciones y de las características del software.
        Los casos de uso no explican el comportamiento de las diferentes funciones y características.

Para evitar estos problemas Smith sugiere el uso de los casos de uso en la estimación pero dentro
de un contexto de “jerarquía estructural”, ésta se describe con no más de 10 casos de uso y 30
escenarios distintos para cada caso de uso.

Como en toda estimación utilizamos datos históricos según la ecuación:

LDC estimada = N x LDCprom + [(Sa/Sh – 1) + (Pa/Ph – 1)] x LDCajuste

        Dónde:

        N = número real de casos de uso
        LDCprom = promedio histórico de LDC
        LDCajuste = diferencia entre este proyecto y los proyectos promedio
        Sa = escenarios reales de casos de uso
        Sh = escenarios promedio de casos de uso
        Pa = páginas reales por caso de uso
        Ph = páginas promedio por caso de uso



DESCRIPCIÓN DEL MÉTODO DE ELABORACIÓN:


Para realizar el cálculo de los Puntos Caso de Uso sin ajustar, se tienen que realizar los tres pasos
definidos a continuación.
1. Clasificar cada interacción entre actor y caso de uso según su complejidad y asignarle un
peso.

Para clasificar la complejidad de los actores se debe determinar la forma en la que cada
actor interactúa con el sistema que se va a desarrollar. En concreto, los actores se clasifican
en 3 categorías diferentes, simple, medio y complejo. Un actor simple representa otro
sistema con una API definida, un actor medio es otro sistema que interactúa a través de un
protocolo como por ejemplo TCP/IP o es una persona interactuando a través de una interfaz
por línea de comandos, y un actor complejo interactúa a través de una interfaz gráfica.

Una vez clasificado cada actor según su tipo de interacción, se le asigna el peso
correspondiente asociado a dicha interacción. En la Tabla 1, se presenta un resumen del
procedimiento de clasificación de los actores.




                            Tabla 1. Clasificación de los Actores

2. Calcular la complejidad de cada caso de uso según el número de transacciones o pasos
del mismo.

Para realizar el cálculo de la complejidad de un caso de uso se debe determinar el número
de transacciones, incluyendo los caminos alternativos. Una transacción es un conjunto de
actividades atómicas, donde se ejecutan todas ellas o ninguna. En este contexto, cada caso
de uso se debe clasificar en una de las siguientes categorías: “simple”, “medio” o
“complejo”. En concreto, un caso de uso simple tiene 3 o menos transacciones, un caso de
uso medio de 4 a 7 transacciones, y un caso de uno complejo más de 7 transacciones.

Una vez clasificado cada caso de uso, según el número de transacciones, se le asigna el
peso asociado a dicho número de transacciones. En la Tabla 2 se presenta un resumen del
procedimiento de clasificación de los casos de uso.
3. Calcular los Puntos Caso de Uso no ajustados (UUCP - Unadjusted Use Case Points)

Los UUCP se calculan sumando la dificultad de las interacciones y la complejidad de los casos de
uso, es decir, sumando el total de los pesos de los actores (clasificados en el paso 1) y el total de
los pesos para los casos de uso (clasificados en el paso 2). Ejemplo:

    •   2 interacciones por Web: 2 * 3 = 6
    •   4 UCP complejos: 4 * 3 = 12
    •   UUCP = 6 + 12 = 18

2.2 Cálculo de los factores técnicos (TCF)
Para ajustar los UUCP (Puntos Caso de Uso no ajustados) calculados en los pasos
anteriores, se deben tener en cuenta factores de ajuste, tanto factores técnicos, como
factores de entorno.

En el caso de los factores técnicos (TCF), a cada factor definido en la Tabla 3 (Ri) se le
asigna un valor entre 0 y 5, dependiendo de su influencia en el proyecto. En este sentido,
asignar un valor 0 significa que el factor es irrelevante para el proyecto, un valor 3 es
promedio y un valor 5 significa que el factor es esencial.

Una vez que todos los factores técnicos tienen asignado el valor de la influencia, se procede
al cálculo de los resultados de cada factor, es decir, se realiza una multiplicación entre la
influencia del factor y su peso asociado, ver en la Tabla 3 la columna “Resultado”.

Cuando se han calculado los resultados de cada uno de los factores técnicos, se aplica la
expresión descrita a continuación, donde el sumatorio se corresponde a la suma de los
resultados de los factores técnicos.

                                    TCF= 0,6 + (0,01 * Sumatorio)
En la Tabla 3 se presenta un resumen del procedimiento del cálculo de los factores técnicos,
siendo Ri los factores concretos.




                          Tabla 3. Cálculo de los factores técnicos (TCF)




2.3 Cálculo de los factores de entorno (EF)


Además de tener en cuenta los factores técnicos para el ajuste de los UUCP (Puntos Caso
de Uso no ajustados), en segundo lugar se deben contabilizar los factores de entorno. Para
ello, a cada factor de entorno definido en la Tabla 4 (Ri) se le asigna un valor entre 0 y 5
dependiendo de su influencia en el proyecto. Asignar un valor 0 significa que el factor es
irrelevante para el proyecto, un valor 3 es promedio y un valor 5 significa que el factor es
esencial.

Una vez que todos los factores de entorno tienen asignado el valor de la influencia, se
procede al cálculo de los resultados de cada factor, es decir, se realiza una multiplicación
entre la influencia del factor y su peso asociado, ver en la Tabla 4 la columna “Resultado”.

Cuando se han calculado los resultados de cada uno de los factores, se aplica la expresión
descrita a continuación, donde el sumatorio se corresponde a la suma de los resultados de
los factores de entorno.

                                  EF= 1,4 + (- 0,03 * Sumatorio)

 En la Tabla 4 se presenta un resumen del procedimiento del cálculo de los factores de entorno,
siendo Ri los factores concretos.




                       Tabla 4. Clasificación de los factores de entorno (FE)




2.4 Cálculo de los Puntos de Caso de Uso ajustados (UCP)


Finalmente, para obtener los Puntos Caso de Uso fajustados (UCP) se utilizan los datos
obtenidos en los pasos anteriores, Puntos Caso de Uso fno ajustados (UUCP) y factores de
ajuste (TCF y EF), haciendo uso de la expresión que se presentan a continuación.

                                      UCP = UUCP * TCF * EF
Se debe tener en cuenta que a través del cálculo de esta expresión obtenemos una estimación del
tamaño y no del esfuerzo.

2.5 Estimación del esfuerzo
Como ocurre en otros métodos de estimación, una vez obtenido el tamaño, se puede obtener
el esfuerzo. Para ello, se utiliza la siguiente expresión:

Esfuerzo = UCP * Factor de Productividad

El método originario propone usar un factor de ajuste (Factor de Productividad) similar al
que se usa en el método de Puntos Función clásico, si bien Karner propone concretamente
20 personas – hora por cada Punto Caso de Uso (UCP). Otras propuestas son las de
Barnerjee que propone un rango entre 15 y 30 horas, o la de Scheider y Winters, que
sugiere un refinamiento de los factores de entorno (EF), en concreto, proponen seguir el
procedimiento que se presenta a continuación:

    •   Contar los factores de entorno entre R1 y R6 cuya influencia es inferior a 3 (influencia
        promedio) y los factores de entorno entre R7 y R8 que son superiores a 3. Ver “factores de
        entorno” en la Tabla 4, pág. 5.
    •   Entonces:
            o 20 horas-hombre por UCP si el valor es ≤2
            o 28 horas-hombre por UCP si el valor es ≤4
            o 36 horas-hombre por UCP si el valor es ≥5, en este caso se debería replantear el
                proyecto.




Se debe destacar, que el valor del esfuerzo estimado, calculado mediante la expresión
presentada anteriormente, no cubre todas las fases del ciclo de vida del proyecto, sino que
se refiere únicamente a las horas-hombre invertidas en el desarrollo de la funcionalidad
especificada en los casos de uso (fase de codificación). La fase de codificación representa
generalmente un 40% del esfuerzo total del proyecto (ISBSG, 2005; Wikipedia, 2009).

En este sentido, para obtener el esfuerzo total del proyecto, se puede realizar un nuevo
ajuste que consiste en sumar a la estimación de esfuerzo obtenida por UCP, las
estimaciones de esfuerzo de las demás actividades relacionadas con el desarrollo del
software, que se pueden distribuir de la siguiente forma: análisis 10%, diseño 20%,
codificación 40%, pruebas 15% y sobrecarga 15%.


RESULTADOS
Mediante el estudio de las técnicas y modelos de estimación, nos hemos dado cuenta que es una de
las principales tareas durante la planificación, quizá de las más importantes. Aunque muchas veces
estas tareas previas al desarrollo mismo de la aplicación son vistas como algo que retrasa el
proyecto, resultan cruciales ya que como gestores del proyecto nos ayudan a reducir la
incertidumbre


CONCLUSIONES

        La estimación es una de las principales actividades de la planificación ya que el costo del proyecto es
        lo que un cliente primero exige.
        No existe una fórmula mágica o modelo que se adapte a cualquier proyecto, una estimación muchas
        veces depende de la experiencia del gestor del proyecto y de los datos históricos que se posea.
        El número de personas que requiere un proyecto solo se determina después de que se haya hecho una
        estimación del esfuerzo.
        Las técnicas y los modelos son útiles al estimar pero no son confiables al 100%.

Más contenido relacionado

La actualidad más candente

Estimación de Proyectos de Software
Estimación de Proyectos de SoftwareEstimación de Proyectos de Software
Estimación de Proyectos de SoftwareDaniel Valdivieso
 
Planificacion y-estimacion-de-proyectos-de-software
Planificacion y-estimacion-de-proyectos-de-softwarePlanificacion y-estimacion-de-proyectos-de-software
Planificacion y-estimacion-de-proyectos-de-softwarePatricia F
 
Calendarización de Proyectos de Software
Calendarización de Proyectos de SoftwareCalendarización de Proyectos de Software
Calendarización de Proyectos de SoftwareJavier Capa
 
Estimacion de proyectos de software
Estimacion de proyectos de softwareEstimacion de proyectos de software
Estimacion de proyectos de softwareMartin Perez
 
Estimacion De Proyecto
Estimacion De ProyectoEstimacion De Proyecto
Estimacion De Proyectojavier
 
Planificacion De Proyectos De Software
Planificacion De Proyectos De SoftwarePlanificacion De Proyectos De Software
Planificacion De Proyectos De SoftwareIván Sanchez Vera
 
Estimación para proyectos de software cap26
Estimación para proyectos de software cap26Estimación para proyectos de software cap26
Estimación para proyectos de software cap26DEBANI SALAS
 
Tecnicas de estimacion de costos de proyecto software
Tecnicas de estimacion de costos de proyecto softwareTecnicas de estimacion de costos de proyecto software
Tecnicas de estimacion de costos de proyecto softwareantonio
 
Ambito del software
Ambito del softwareAmbito del software
Ambito del softwareJorge Reyes
 
Presupuesto Software, victor mamani catachura, boreasH
Presupuesto Software, victor mamani catachura, boreasHPresupuesto Software, victor mamani catachura, boreasH
Presupuesto Software, victor mamani catachura, boreasHvictor mamani
 
Tecnicas de estimacion de software
Tecnicas de estimacion de softwareTecnicas de estimacion de software
Tecnicas de estimacion de softwareAdes27
 
Tecnicas de estimacion de software
Tecnicas de estimacion de softwareTecnicas de estimacion de software
Tecnicas de estimacion de softwareClare Rodriguez
 
Procesos de Ingenieria de Software
Procesos de Ingenieria de SoftwareProcesos de Ingenieria de Software
Procesos de Ingenieria de SoftwareAngel Macas
 
proyecto de sistemas o sofware
proyecto de sistemas o sofwareproyecto de sistemas o sofware
proyecto de sistemas o sofwaregueste38b69
 
Estimación del esfuerzo y costo necesarios para el desarrollo de un proyecto ...
Estimación del esfuerzo y costo necesarios para el desarrollo de un proyecto ...Estimación del esfuerzo y costo necesarios para el desarrollo de un proyecto ...
Estimación del esfuerzo y costo necesarios para el desarrollo de un proyecto ...Software Guru
 
Calendarización de Proyectos de Software
Calendarización de Proyectos de SoftwareCalendarización de Proyectos de Software
Calendarización de Proyectos de Softwarejose_macias
 
Modelos empiricos de_estimacion
Modelos empiricos de_estimacionModelos empiricos de_estimacion
Modelos empiricos de_estimaciondanymieres33
 

La actualidad más candente (20)

Estimación de Proyectos de Software
Estimación de Proyectos de SoftwareEstimación de Proyectos de Software
Estimación de Proyectos de Software
 
Planificacion y-estimacion-de-proyectos-de-software
Planificacion y-estimacion-de-proyectos-de-softwarePlanificacion y-estimacion-de-proyectos-de-software
Planificacion y-estimacion-de-proyectos-de-software
 
Calendarización de Proyectos de Software
Calendarización de Proyectos de SoftwareCalendarización de Proyectos de Software
Calendarización de Proyectos de Software
 
Estimacion de proyectos de software
Estimacion de proyectos de softwareEstimacion de proyectos de software
Estimacion de proyectos de software
 
Estimacion De Proyecto
Estimacion De ProyectoEstimacion De Proyecto
Estimacion De Proyecto
 
Planificacion De Proyectos De Software
Planificacion De Proyectos De SoftwarePlanificacion De Proyectos De Software
Planificacion De Proyectos De Software
 
Estimación para proyectos de software cap26
Estimación para proyectos de software cap26Estimación para proyectos de software cap26
Estimación para proyectos de software cap26
 
Tecnicas de estimacion de costos de proyecto software
Tecnicas de estimacion de costos de proyecto softwareTecnicas de estimacion de costos de proyecto software
Tecnicas de estimacion de costos de proyecto software
 
Ambito del software
Ambito del softwareAmbito del software
Ambito del software
 
Presupuesto Software, victor mamani catachura, boreasH
Presupuesto Software, victor mamani catachura, boreasHPresupuesto Software, victor mamani catachura, boreasH
Presupuesto Software, victor mamani catachura, boreasH
 
0302 determinar los costos de una pagina web
0302 determinar los costos de una pagina web0302 determinar los costos de una pagina web
0302 determinar los costos de una pagina web
 
Modelos de Estimacion
Modelos de EstimacionModelos de Estimacion
Modelos de Estimacion
 
Tecnicas de estimacion de software
Tecnicas de estimacion de softwareTecnicas de estimacion de software
Tecnicas de estimacion de software
 
Tecnicas de estimacion de software
Tecnicas de estimacion de softwareTecnicas de estimacion de software
Tecnicas de estimacion de software
 
Procesos de Ingenieria de Software
Procesos de Ingenieria de SoftwareProcesos de Ingenieria de Software
Procesos de Ingenieria de Software
 
proyecto de sistemas o sofware
proyecto de sistemas o sofwareproyecto de sistemas o sofware
proyecto de sistemas o sofware
 
Estimación del esfuerzo y costo necesarios para el desarrollo de un proyecto ...
Estimación del esfuerzo y costo necesarios para el desarrollo de un proyecto ...Estimación del esfuerzo y costo necesarios para el desarrollo de un proyecto ...
Estimación del esfuerzo y costo necesarios para el desarrollo de un proyecto ...
 
Calendarización de Proyectos de Software
Calendarización de Proyectos de SoftwareCalendarización de Proyectos de Software
Calendarización de Proyectos de Software
 
Modelos empiricos de_estimacion
Modelos empiricos de_estimacionModelos empiricos de_estimacion
Modelos empiricos de_estimacion
 
Estimación Software por Puntos de Función
Estimación Software por Puntos de FunciónEstimación Software por Puntos de Función
Estimación Software por Puntos de Función
 

Similar a Estimación para proyectos de software

Estimacion basada en puntos de casos de uso
Estimacion basada en puntos de casos de usoEstimacion basada en puntos de casos de uso
Estimacion basada en puntos de casos de usodianitadance
 
Estimacion basada en puntos de casos de uso
Estimacion basada en puntos de casos de usoEstimacion basada en puntos de casos de uso
Estimacion basada en puntos de casos de usodianitadance
 
Estimación de software basada en puntos de casos de uso
Estimación de software basada en puntos de casos de usoEstimación de software basada en puntos de casos de uso
Estimación de software basada en puntos de casos de usojvaldes99
 
Estimación por puntos de caso de uso calidad
Estimación por puntos de caso de uso calidadEstimación por puntos de caso de uso calidad
Estimación por puntos de caso de uso calidadSingle person
 
MÉTRICAS PARA ASEGURAR LA CALIDAD DEL SOFTWARE
MÉTRICAS PARA ASEGURAR LA CALIDAD DEL SOFTWAREMÉTRICAS PARA ASEGURAR LA CALIDAD DEL SOFTWARE
MÉTRICAS PARA ASEGURAR LA CALIDAD DEL SOFTWAREDavid Leon Sicilia
 
87-Resultados de la investigación-2019-1-10-20210316.pdf
87-Resultados de la investigación-2019-1-10-20210316.pdf87-Resultados de la investigación-2019-1-10-20210316.pdf
87-Resultados de la investigación-2019-1-10-20210316.pdfMarlon Guerra
 
Métricas del Software
Métricas del SoftwareMétricas del Software
Métricas del SoftwareArabel Aguilar
 
Métricas del proceso y proyecto - Procesos de Ingeniería de software
Métricas del proceso y proyecto - Procesos de Ingeniería de softwareMétricas del proceso y proyecto - Procesos de Ingeniería de software
Métricas del proceso y proyecto - Procesos de Ingeniería de softwareGalo Lalangui
 
Métricas del proceso y proyecto - Procesos de Ingeniería de software
Métricas del proceso y proyecto - Procesos de Ingeniería de softwareMétricas del proceso y proyecto - Procesos de Ingeniería de software
Métricas del proceso y proyecto - Procesos de Ingeniería de softwareGalo Lalangui
 
Calculo de esfuerzo en puntos de funcion final
Calculo de esfuerzo en puntos de funcion finalCalculo de esfuerzo en puntos de funcion final
Calculo de esfuerzo en puntos de funcion finalOmar Ordoñez
 
Jessika parica. planificación de un proyecto de software
Jessika parica. planificación de un proyecto de softwareJessika parica. planificación de un proyecto de software
Jessika parica. planificación de un proyecto de softwareJessika Parica
 
Investigacion de Operaciones - CPM - PERT
Investigacion de Operaciones - CPM - PERTInvestigacion de Operaciones - CPM - PERT
Investigacion de Operaciones - CPM - PERTAna Chen Rebaza
 

Similar a Estimación para proyectos de software (20)

2.6.5 y 2.6.6
2.6.5 y 2.6.62.6.5 y 2.6.6
2.6.5 y 2.6.6
 
Estimacion basada en puntos de casos de uso
Estimacion basada en puntos de casos de usoEstimacion basada en puntos de casos de uso
Estimacion basada en puntos de casos de uso
 
Estimacion basada en puntos de casos de uso
Estimacion basada en puntos de casos de usoEstimacion basada en puntos de casos de uso
Estimacion basada en puntos de casos de uso
 
Estimación de software basada en puntos de casos de uso
Estimación de software basada en puntos de casos de usoEstimación de software basada en puntos de casos de uso
Estimación de software basada en puntos de casos de uso
 
Estimación por puntos de caso de uso calidad
Estimación por puntos de caso de uso calidadEstimación por puntos de caso de uso calidad
Estimación por puntos de caso de uso calidad
 
Puntos de caso de uso
Puntos de caso de usoPuntos de caso de uso
Puntos de caso de uso
 
Modelando casos de uso y estimación de software
Modelando casos de uso y estimación de softwareModelando casos de uso y estimación de software
Modelando casos de uso y estimación de software
 
MÉTRICAS PARA ASEGURAR LA CALIDAD DEL SOFTWARE
MÉTRICAS PARA ASEGURAR LA CALIDAD DEL SOFTWAREMÉTRICAS PARA ASEGURAR LA CALIDAD DEL SOFTWARE
MÉTRICAS PARA ASEGURAR LA CALIDAD DEL SOFTWARE
 
87-Resultados de la investigación-2019-1-10-20210316.pdf
87-Resultados de la investigación-2019-1-10-20210316.pdf87-Resultados de la investigación-2019-1-10-20210316.pdf
87-Resultados de la investigación-2019-1-10-20210316.pdf
 
Métricas del Software
Métricas del SoftwareMétricas del Software
Métricas del Software
 
Cocomo
CocomoCocomo
Cocomo
 
Estimación para proy_soft-caja_b_y_n
Estimación para proy_soft-caja_b_y_nEstimación para proy_soft-caja_b_y_n
Estimación para proy_soft-caja_b_y_n
 
Métricas del proceso y proyecto - Procesos de Ingeniería de software
Métricas del proceso y proyecto - Procesos de Ingeniería de softwareMétricas del proceso y proyecto - Procesos de Ingeniería de software
Métricas del proceso y proyecto - Procesos de Ingeniería de software
 
Métricas del proceso y proyecto - Procesos de Ingeniería de software
Métricas del proceso y proyecto - Procesos de Ingeniería de softwareMétricas del proceso y proyecto - Procesos de Ingeniería de software
Métricas del proceso y proyecto - Procesos de Ingeniería de software
 
Calculo de esfuerzo en puntos de funcion final
Calculo de esfuerzo en puntos de funcion finalCalculo de esfuerzo en puntos de funcion final
Calculo de esfuerzo en puntos de funcion final
 
Jessika parica. planificación de un proyecto de software
Jessika parica. planificación de un proyecto de softwareJessika parica. planificación de un proyecto de software
Jessika parica. planificación de un proyecto de software
 
Cocomo
CocomoCocomo
Cocomo
 
Tema 9 LA PROGRMACIÓN
Tema 9 LA PROGRMACIÓNTema 9 LA PROGRMACIÓN
Tema 9 LA PROGRMACIÓN
 
Investigacion de Operaciones - CPM - PERT
Investigacion de Operaciones - CPM - PERTInvestigacion de Operaciones - CPM - PERT
Investigacion de Operaciones - CPM - PERT
 
Cocomo
CocomoCocomo
Cocomo
 

Último

BIOLOGIA_banco de preguntas_editorial icfes examen de estado .pdf
BIOLOGIA_banco de preguntas_editorial icfes examen de estado .pdfBIOLOGIA_banco de preguntas_editorial icfes examen de estado .pdf
BIOLOGIA_banco de preguntas_editorial icfes examen de estado .pdfCESARMALAGA4
 
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptxPPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptxOscarEduardoSanchezC
 
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptx
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptxPresentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptx
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptxYeseniaRivera50
 
PPT_Formación integral y educación CRESE (1).pdf
PPT_Formación integral y educación CRESE (1).pdfPPT_Formación integral y educación CRESE (1).pdf
PPT_Formación integral y educación CRESE (1).pdfEDILIAGAMBOA
 
Día de la Madre Tierra-1.pdf día mundial
Día de la Madre Tierra-1.pdf día mundialDía de la Madre Tierra-1.pdf día mundial
Día de la Madre Tierra-1.pdf día mundialpatriciaines1993
 
periodico mural y sus partes y caracteristicas
periodico mural y sus partes y caracteristicasperiodico mural y sus partes y caracteristicas
periodico mural y sus partes y caracteristicas123yudy
 
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024gharce
 
Contextualización y aproximación al objeto de estudio de investigación cualit...
Contextualización y aproximación al objeto de estudio de investigación cualit...Contextualización y aproximación al objeto de estudio de investigación cualit...
Contextualización y aproximación al objeto de estudio de investigación cualit...Angélica Soledad Vega Ramírez
 
Tema 8.- Gestion de la imagen a traves de la comunicacion de crisis.pdf
Tema 8.- Gestion de la imagen a traves de la comunicacion de crisis.pdfTema 8.- Gestion de la imagen a traves de la comunicacion de crisis.pdf
Tema 8.- Gestion de la imagen a traves de la comunicacion de crisis.pdfDaniel Ángel Corral de la Mata, Ph.D.
 
VOLUMEN 1 COLECCION PRODUCCION BOVINA . SERIE SANIDAD ANIMAL
VOLUMEN 1 COLECCION PRODUCCION BOVINA . SERIE SANIDAD ANIMALVOLUMEN 1 COLECCION PRODUCCION BOVINA . SERIE SANIDAD ANIMAL
VOLUMEN 1 COLECCION PRODUCCION BOVINA . SERIE SANIDAD ANIMALEDUCCUniversidadCatl
 
Uses of simple past and time expressions
Uses of simple past and time expressionsUses of simple past and time expressions
Uses of simple past and time expressionsConsueloSantana3
 
Tarea 5_ Foro _Selección de herramientas digitales_Manuel.pdf
Tarea 5_ Foro _Selección de herramientas digitales_Manuel.pdfTarea 5_ Foro _Selección de herramientas digitales_Manuel.pdf
Tarea 5_ Foro _Selección de herramientas digitales_Manuel.pdfManuel Molina
 
c3.hu3.p1.p3.El ser humano como ser histórico.pptx
c3.hu3.p1.p3.El ser humano como ser histórico.pptxc3.hu3.p1.p3.El ser humano como ser histórico.pptx
c3.hu3.p1.p3.El ser humano como ser histórico.pptxMartín Ramírez
 
CIENCIAS NATURALES 4 TO ambientes .docx
CIENCIAS NATURALES 4 TO  ambientes .docxCIENCIAS NATURALES 4 TO  ambientes .docx
CIENCIAS NATURALES 4 TO ambientes .docxAgustinaNuez21
 

Último (20)

BIOLOGIA_banco de preguntas_editorial icfes examen de estado .pdf
BIOLOGIA_banco de preguntas_editorial icfes examen de estado .pdfBIOLOGIA_banco de preguntas_editorial icfes examen de estado .pdf
BIOLOGIA_banco de preguntas_editorial icfes examen de estado .pdf
 
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptxPPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
PPT GESTIÓN ESCOLAR 2024 Comités y Compromisos.pptx
 
Aedes aegypti + Intro to Coquies EE.pptx
Aedes aegypti + Intro to Coquies EE.pptxAedes aegypti + Intro to Coquies EE.pptx
Aedes aegypti + Intro to Coquies EE.pptx
 
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptx
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptxPresentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptx
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptx
 
PPT_Formación integral y educación CRESE (1).pdf
PPT_Formación integral y educación CRESE (1).pdfPPT_Formación integral y educación CRESE (1).pdf
PPT_Formación integral y educación CRESE (1).pdf
 
Día de la Madre Tierra-1.pdf día mundial
Día de la Madre Tierra-1.pdf día mundialDía de la Madre Tierra-1.pdf día mundial
Día de la Madre Tierra-1.pdf día mundial
 
PPTX: La luz brilla en la oscuridad.pptx
PPTX: La luz brilla en la oscuridad.pptxPPTX: La luz brilla en la oscuridad.pptx
PPTX: La luz brilla en la oscuridad.pptx
 
Tema 7.- E-COMMERCE SISTEMAS DE INFORMACION.pdf
Tema 7.- E-COMMERCE SISTEMAS DE INFORMACION.pdfTema 7.- E-COMMERCE SISTEMAS DE INFORMACION.pdf
Tema 7.- E-COMMERCE SISTEMAS DE INFORMACION.pdf
 
DIA INTERNACIONAL DAS FLORESTAS .
DIA INTERNACIONAL DAS FLORESTAS         .DIA INTERNACIONAL DAS FLORESTAS         .
DIA INTERNACIONAL DAS FLORESTAS .
 
periodico mural y sus partes y caracteristicas
periodico mural y sus partes y caracteristicasperiodico mural y sus partes y caracteristicas
periodico mural y sus partes y caracteristicas
 
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
 
Contextualización y aproximación al objeto de estudio de investigación cualit...
Contextualización y aproximación al objeto de estudio de investigación cualit...Contextualización y aproximación al objeto de estudio de investigación cualit...
Contextualización y aproximación al objeto de estudio de investigación cualit...
 
Tema 8.- Gestion de la imagen a traves de la comunicacion de crisis.pdf
Tema 8.- Gestion de la imagen a traves de la comunicacion de crisis.pdfTema 8.- Gestion de la imagen a traves de la comunicacion de crisis.pdf
Tema 8.- Gestion de la imagen a traves de la comunicacion de crisis.pdf
 
Earth Day Everyday 2024 54th anniversary
Earth Day Everyday 2024 54th anniversaryEarth Day Everyday 2024 54th anniversary
Earth Day Everyday 2024 54th anniversary
 
VOLUMEN 1 COLECCION PRODUCCION BOVINA . SERIE SANIDAD ANIMAL
VOLUMEN 1 COLECCION PRODUCCION BOVINA . SERIE SANIDAD ANIMALVOLUMEN 1 COLECCION PRODUCCION BOVINA . SERIE SANIDAD ANIMAL
VOLUMEN 1 COLECCION PRODUCCION BOVINA . SERIE SANIDAD ANIMAL
 
Uses of simple past and time expressions
Uses of simple past and time expressionsUses of simple past and time expressions
Uses of simple past and time expressions
 
Tarea 5_ Foro _Selección de herramientas digitales_Manuel.pdf
Tarea 5_ Foro _Selección de herramientas digitales_Manuel.pdfTarea 5_ Foro _Selección de herramientas digitales_Manuel.pdf
Tarea 5_ Foro _Selección de herramientas digitales_Manuel.pdf
 
Aedes aegypti + Intro to Coquies EE.pptx
Aedes aegypti + Intro to Coquies EE.pptxAedes aegypti + Intro to Coquies EE.pptx
Aedes aegypti + Intro to Coquies EE.pptx
 
c3.hu3.p1.p3.El ser humano como ser histórico.pptx
c3.hu3.p1.p3.El ser humano como ser histórico.pptxc3.hu3.p1.p3.El ser humano como ser histórico.pptx
c3.hu3.p1.p3.El ser humano como ser histórico.pptx
 
CIENCIAS NATURALES 4 TO ambientes .docx
CIENCIAS NATURALES 4 TO  ambientes .docxCIENCIAS NATURALES 4 TO  ambientes .docx
CIENCIAS NATURALES 4 TO ambientes .docx
 

Estimación para proyectos de software

  • 1. ESTIMACIÓN PARA PROYECTOS DE SOFTWARE Escuela Politécnica Nacional Análisis De Sistemas Informáticos Alejandro Salazar INTRODUCCION El objetivo de la planificación del proyecto de software es proporcionar un marco de trabajo que permita al gestor estimar razonablemente los recursos, costo y programa de trabajo. Sin embargo aunque la estimación se la realiza en etapas tempranas del proyecto ésta se debe ajustar a lo largo del transcurso del mismo, pues entre más conozca menor será el grado de incertidumbre y las estimaciones serán más precisas. La estimación se basa en las métricas de proyectos anteriores, las cuales sirven de línea base sobre las que, de acuerdo a la clasificación de los proyectos y una evaluación del tamaño y complejidad del software se utilizan en las técnicas y modelos existentes. Este trabajo contiene, en una primera parte algunos conceptos que son necesarios para realizar una buena estimación: ámbito y complejidad del software, luego analizaremos cuando un proyecto es factible, y finalmente algunos modelos empíricos de estimación, COCOMO el cual es uno de los más utilizados, la ecuación del software también será tratada y la medición orientada a objetos que es un modelo nuevo aún en desarrollo. ESTIMACION DEL SOFTWARE Una de las primeras actividades de este proyecto es la estimación, que es la base de todas las demás actividades de la planificación. Características del proyecto a estimar • Complejidad del proyecto. Tiene un gran efecto sobre la incertidumbre; que es inherente a la planificación. • El tamaño del proyecto. Es otro factor importante que puede afectar a la precisión y eficacia de las estimaciones. • Grado de estructuración del proyecto. Se refiere a la facilidad con que las funciones pueden ser compartidas y a la naturaleza de la información que debe ser procesada.
  • 2. OBSERVACIONES ACERCA DE LA ESTIMACIÓN La estimación y planificación temporal de un proyecto software requiere: experiencia, buena información histórica, coraje de confiar en las métricas, para obtener buenos resultados, debido a que cada proyecto es diferente, cada empresa es diferente y el contexto de los sistemas que desarrollamos cambian constantemente, no existe un método que se adapte completamente a cualquier proyecto, así la estimación debe ajustarse localmente. Hay cuatro factores que influyen significativamente en las estimaciones: • La complejidad del proyecto. • El tamaño del proyecto. • El grado de incertidumbre estructural. • Disponibilidad de información histórica. ESTIMACIÓN CON CASOS DE USO Desarrollar un enfoque de estimación de casos de uso es un problema debido a: No existe un formato estándar para describir los casos de uso. Están descritos con diferentes grados de abstracción (dependen del usuario). Los casos de uso no explican la complejidad de las funciones y de las características del software. Los casos de uso no explican el comportamiento de las diferentes funciones y características. Para evitar estos problemas Smith sugiere el uso de los casos de uso en la estimación pero dentro de un contexto de “jerarquía estructural”, ésta se describe con no más de 10 casos de uso y 30 escenarios distintos para cada caso de uso. Como en toda estimación utilizamos datos históricos según la ecuación: LDC estimada = N x LDCprom + [(Sa/Sh – 1) + (Pa/Ph – 1)] x LDCajuste Dónde: N = número real de casos de uso LDCprom = promedio histórico de LDC LDCajuste = diferencia entre este proyecto y los proyectos promedio Sa = escenarios reales de casos de uso Sh = escenarios promedio de casos de uso Pa = páginas reales por caso de uso Ph = páginas promedio por caso de uso DESCRIPCIÓN DEL MÉTODO DE ELABORACIÓN: Para realizar el cálculo de los Puntos Caso de Uso sin ajustar, se tienen que realizar los tres pasos definidos a continuación.
  • 3. 1. Clasificar cada interacción entre actor y caso de uso según su complejidad y asignarle un peso. Para clasificar la complejidad de los actores se debe determinar la forma en la que cada actor interactúa con el sistema que se va a desarrollar. En concreto, los actores se clasifican en 3 categorías diferentes, simple, medio y complejo. Un actor simple representa otro sistema con una API definida, un actor medio es otro sistema que interactúa a través de un protocolo como por ejemplo TCP/IP o es una persona interactuando a través de una interfaz por línea de comandos, y un actor complejo interactúa a través de una interfaz gráfica. Una vez clasificado cada actor según su tipo de interacción, se le asigna el peso correspondiente asociado a dicha interacción. En la Tabla 1, se presenta un resumen del procedimiento de clasificación de los actores. Tabla 1. Clasificación de los Actores 2. Calcular la complejidad de cada caso de uso según el número de transacciones o pasos del mismo. Para realizar el cálculo de la complejidad de un caso de uso se debe determinar el número de transacciones, incluyendo los caminos alternativos. Una transacción es un conjunto de actividades atómicas, donde se ejecutan todas ellas o ninguna. En este contexto, cada caso de uso se debe clasificar en una de las siguientes categorías: “simple”, “medio” o “complejo”. En concreto, un caso de uso simple tiene 3 o menos transacciones, un caso de uso medio de 4 a 7 transacciones, y un caso de uno complejo más de 7 transacciones. Una vez clasificado cada caso de uso, según el número de transacciones, se le asigna el peso asociado a dicho número de transacciones. En la Tabla 2 se presenta un resumen del procedimiento de clasificación de los casos de uso.
  • 4. 3. Calcular los Puntos Caso de Uso no ajustados (UUCP - Unadjusted Use Case Points) Los UUCP se calculan sumando la dificultad de las interacciones y la complejidad de los casos de uso, es decir, sumando el total de los pesos de los actores (clasificados en el paso 1) y el total de los pesos para los casos de uso (clasificados en el paso 2). Ejemplo: • 2 interacciones por Web: 2 * 3 = 6 • 4 UCP complejos: 4 * 3 = 12 • UUCP = 6 + 12 = 18 2.2 Cálculo de los factores técnicos (TCF) Para ajustar los UUCP (Puntos Caso de Uso no ajustados) calculados en los pasos anteriores, se deben tener en cuenta factores de ajuste, tanto factores técnicos, como factores de entorno. En el caso de los factores técnicos (TCF), a cada factor definido en la Tabla 3 (Ri) se le asigna un valor entre 0 y 5, dependiendo de su influencia en el proyecto. En este sentido, asignar un valor 0 significa que el factor es irrelevante para el proyecto, un valor 3 es promedio y un valor 5 significa que el factor es esencial. Una vez que todos los factores técnicos tienen asignado el valor de la influencia, se procede al cálculo de los resultados de cada factor, es decir, se realiza una multiplicación entre la influencia del factor y su peso asociado, ver en la Tabla 3 la columna “Resultado”. Cuando se han calculado los resultados de cada uno de los factores técnicos, se aplica la expresión descrita a continuación, donde el sumatorio se corresponde a la suma de los resultados de los factores técnicos. TCF= 0,6 + (0,01 * Sumatorio)
  • 5. En la Tabla 3 se presenta un resumen del procedimiento del cálculo de los factores técnicos, siendo Ri los factores concretos. Tabla 3. Cálculo de los factores técnicos (TCF) 2.3 Cálculo de los factores de entorno (EF) Además de tener en cuenta los factores técnicos para el ajuste de los UUCP (Puntos Caso de Uso no ajustados), en segundo lugar se deben contabilizar los factores de entorno. Para ello, a cada factor de entorno definido en la Tabla 4 (Ri) se le asigna un valor entre 0 y 5 dependiendo de su influencia en el proyecto. Asignar un valor 0 significa que el factor es irrelevante para el proyecto, un valor 3 es promedio y un valor 5 significa que el factor es esencial. Una vez que todos los factores de entorno tienen asignado el valor de la influencia, se
  • 6. procede al cálculo de los resultados de cada factor, es decir, se realiza una multiplicación entre la influencia del factor y su peso asociado, ver en la Tabla 4 la columna “Resultado”. Cuando se han calculado los resultados de cada uno de los factores, se aplica la expresión descrita a continuación, donde el sumatorio se corresponde a la suma de los resultados de los factores de entorno. EF= 1,4 + (- 0,03 * Sumatorio) En la Tabla 4 se presenta un resumen del procedimiento del cálculo de los factores de entorno, siendo Ri los factores concretos. Tabla 4. Clasificación de los factores de entorno (FE) 2.4 Cálculo de los Puntos de Caso de Uso ajustados (UCP) Finalmente, para obtener los Puntos Caso de Uso fajustados (UCP) se utilizan los datos obtenidos en los pasos anteriores, Puntos Caso de Uso fno ajustados (UUCP) y factores de ajuste (TCF y EF), haciendo uso de la expresión que se presentan a continuación. UCP = UUCP * TCF * EF
  • 7. Se debe tener en cuenta que a través del cálculo de esta expresión obtenemos una estimación del tamaño y no del esfuerzo. 2.5 Estimación del esfuerzo Como ocurre en otros métodos de estimación, una vez obtenido el tamaño, se puede obtener el esfuerzo. Para ello, se utiliza la siguiente expresión: Esfuerzo = UCP * Factor de Productividad El método originario propone usar un factor de ajuste (Factor de Productividad) similar al que se usa en el método de Puntos Función clásico, si bien Karner propone concretamente 20 personas – hora por cada Punto Caso de Uso (UCP). Otras propuestas son las de Barnerjee que propone un rango entre 15 y 30 horas, o la de Scheider y Winters, que sugiere un refinamiento de los factores de entorno (EF), en concreto, proponen seguir el procedimiento que se presenta a continuación: • Contar los factores de entorno entre R1 y R6 cuya influencia es inferior a 3 (influencia promedio) y los factores de entorno entre R7 y R8 que son superiores a 3. Ver “factores de entorno” en la Tabla 4, pág. 5. • Entonces: o 20 horas-hombre por UCP si el valor es ≤2 o 28 horas-hombre por UCP si el valor es ≤4 o 36 horas-hombre por UCP si el valor es ≥5, en este caso se debería replantear el proyecto. Se debe destacar, que el valor del esfuerzo estimado, calculado mediante la expresión presentada anteriormente, no cubre todas las fases del ciclo de vida del proyecto, sino que se refiere únicamente a las horas-hombre invertidas en el desarrollo de la funcionalidad especificada en los casos de uso (fase de codificación). La fase de codificación representa generalmente un 40% del esfuerzo total del proyecto (ISBSG, 2005; Wikipedia, 2009). En este sentido, para obtener el esfuerzo total del proyecto, se puede realizar un nuevo ajuste que consiste en sumar a la estimación de esfuerzo obtenida por UCP, las estimaciones de esfuerzo de las demás actividades relacionadas con el desarrollo del software, que se pueden distribuir de la siguiente forma: análisis 10%, diseño 20%, codificación 40%, pruebas 15% y sobrecarga 15%. RESULTADOS Mediante el estudio de las técnicas y modelos de estimación, nos hemos dado cuenta que es una de las principales tareas durante la planificación, quizá de las más importantes. Aunque muchas veces
  • 8. estas tareas previas al desarrollo mismo de la aplicación son vistas como algo que retrasa el proyecto, resultan cruciales ya que como gestores del proyecto nos ayudan a reducir la incertidumbre CONCLUSIONES La estimación es una de las principales actividades de la planificación ya que el costo del proyecto es lo que un cliente primero exige. No existe una fórmula mágica o modelo que se adapte a cualquier proyecto, una estimación muchas veces depende de la experiencia del gestor del proyecto y de los datos históricos que se posea. El número de personas que requiere un proyecto solo se determina después de que se haya hecho una estimación del esfuerzo. Las técnicas y los modelos son útiles al estimar pero no son confiables al 100%.