presentacion de estimacion de costos

22
Estimación para Estimación para proyectos de proyectos de software software Capitulo 23: “Ingeniería Capitulo 23: “Ingeniería de Software” un enfoque de Software” un enfoque práctico. práctico. Roger S. Pressman Roger S. Pressman Ed. Mc. Graw Hill Ed. Mc. Graw Hill

Upload: chucho-jaime-trejo

Post on 02-Dec-2015

53 views

Category:

Documents


7 download

TRANSCRIPT

Estimación para Estimación para proyectos de proyectos de

softwaresoftware

Capitulo 23: “Ingeniería de Capitulo 23: “Ingeniería de Software” un enfoque Software” un enfoque práctico.práctico.

Roger S. PressmanRoger S. Pressman

Ed. Mc. Graw HillEd. Mc. Graw Hill

Estimación para Estimación para proyectos de softwareproyectos de software

La gestión de proyecto de La gestión de proyecto de software comienza con la software comienza con la planificación del proyecto. Antes planificación del proyecto. Antes de iniciar, hay que estimar el de iniciar, hay que estimar el trabajo que habrá de realizarse, trabajo que habrá de realizarse, los recursos que se requerirán y el los recursos que se requerirán y el tiempo que transcurrirá desde el tiempo que transcurrirá desde el principio hasta el final.principio hasta el final.

Estimación para Estimación para proyectos de softwareproyectos de software

¿Porqué es importante? ¿Porqué es importante? ¿Se construiría una casa sin saber cuánto ¿Se construiría una casa sin saber cuánto

dinero va a gastar, las tareas a realizar y dinero va a gastar, las tareas a realizar y el tiempo aproximado de terminación? el tiempo aproximado de terminación? NONO

La mayoría de los sistemas y productos La mayoría de los sistemas y productos basados en computadoras son basados en computadoras son considerablemente caros, por lo que es considerablemente caros, por lo que es razonable desarrollar una estimación razonable desarrollar una estimación antes de comenzar a crear el software.antes de comenzar a crear el software.

Después de la estimación de un Después de la estimación de un proyecto de software. ¿Qué se proyecto de software. ¿Qué se espera obtener? espera obtener?

Una tabla en la que se delinean Una tabla en la que se delinean las tareas que deben realizarse, las tareas que deben realizarse, las funciones que habrán de las funciones que habrán de implementarse y el costo, implementarse y el costo, esfuerzo y tiempo involucrado de esfuerzo y tiempo involucrado de cada una de las funciones.cada una de las funciones.

Estimación para Estimación para proyectos de softwareproyectos de software

Estimación para Estimación para proyectos de softwareproyectos de software

Estimación para Estimación para proyectos de softwareproyectos de software

La estimación de recursos, costo y La estimación de recursos, costo y programa de trabajo para una programa de trabajo para una tarea de ingeniería de software tarea de ingeniería de software requiere experiencia, acceso a requiere experiencia, acceso a buena información (histórica-buena información (histórica-métrica) y el valor para métrica) y el valor para comprometerse con predicciones comprometerse con predicciones cuantitativas cuando la información cuantitativas cuando la información cualitativa es todo lo que existe.cualitativa es todo lo que existe.

Riesgos de la Riesgos de la estimaciónestimación

El riesgo de la estimación se mide El riesgo de la estimación se mide por:por:

• Comprensión deficiente del ámbitoComprensión deficiente del ámbito• Los requisitos del proyecto están Los requisitos del proyecto están

sujetos a eventuales cambiossujetos a eventuales cambios• La incertidumbre en la estimación La incertidumbre en la estimación

es grandees grande

El proceso de El proceso de planificación del planificación del

proyectoproyecto El objetivo de la planificación del El objetivo de la planificación del

proyecto de software es proyecto de software es proporcionar un marco de trabajo proporcionar un marco de trabajo que permita estimar recursos, que permita estimar recursos, costo y programa de trabajo.costo y programa de trabajo.

Conjunto de tareas para Conjunto de tareas para la planificación del la planificación del proyectoproyecto

El ámbito del software El ámbito del software y factibilidady factibilidad

Describe :Describe :• Las funciones y características que se Las funciones y características que se

entregarán a los usuarios finalesentregarán a los usuarios finales• los datos que son de entrada y salidalos datos que son de entrada y salida• El “contenido” que se presenta a los El “contenido” que se presenta a los

usuarios como consecuencia de usuarios como consecuencia de emplear el softwareemplear el software

• Desempeño Desempeño • Las restriccionesLas restricciones• Las InterfacesLas Interfaces

El ámbito del softwareEl ámbito del software

1º. El ámbito del software se define 1º. El ámbito del software se define después de usar una de las dos después de usar una de las dos técnicas siguientes:técnicas siguientes:

• Después de una buena comunicación Después de una buena comunicación con todos los participantes se con todos los participantes se desarrolla una descripción narrativa desarrolla una descripción narrativa del ámbito del software.del ámbito del software.

• Se desarrollan un conjunto de casos Se desarrollan un conjunto de casos de uso.de uso.

Casos de usoCasos de uso

Un caso de uso es una descripción Un caso de uso es una descripción basada en el escenario de la basada en el escenario de la interacción del usuario con el interacción del usuario con el software, desde el punto de vista software, desde el punto de vista del usuario.del usuario.

Ejemplo de caso de Ejemplo de caso de usouso

Los recursosLos recursos La 2ª parte de la planificación es la La 2ª parte de la planificación es la

determinación de recursos de ingeniería determinación de recursos de ingeniería de software: de software:

• PersonalPersonal

• Componentes de software reutilizablesComponentes de software reutilizables

• Entorno de desarrollo (hardware y Entorno de desarrollo (hardware y herramientas de software)herramientas de software)

Los recursosLos recursos

OTS: PRE-OTS: PRE-EXISTENTESEXISTENTES

Recursos de software Recursos de software reutilizablesreutilizables

Componentes ya desarrolladosComponentes ya desarrollados

El software o parte de el se El software o parte de el se puede conseguir de un tercero o puede conseguir de un tercero o se desarrolló internamente para se desarrolló internamente para un proyecto previo.un proyecto previo.

VS.VS.

Recursos de software Recursos de software reutilizablesreutilizables

Componentes experimentadosComponentes experimentados

Especificaciones, diseños, Especificaciones, diseños, códigos o datos de prueba códigos o datos de prueba existentes que se desarrollaron existentes que se desarrollaron en proyectos previos y son en proyectos previos y son similares al software que se similares al software que se construirá para el proyecto construirá para el proyecto actual.actual.

Recursos de software Recursos de software reutilizablesreutilizables

Componentes de experiencia Componentes de experiencia parcialparcial Especificaciones, diseños, códigos o datos Especificaciones, diseños, códigos o datos

de prueba existentes que se desarrollaron de prueba existentes que se desarrollaron en proyectos previos y están relacionados en proyectos previos y están relacionados con el software que se construirá para el con el software que se construirá para el proyecto actual pero requerirá proyecto actual pero requerirá modificaciones sustanciales.modificaciones sustanciales.

Recursos de software Recursos de software reutilizablesreutilizables

Componentes nuevosComponentes nuevos

El equipo de software debe El equipo de software debe construir los componentes de construir los componentes de software específicamente para las software específicamente para las necesidades del proyecto actual.necesidades del proyecto actual.

Estudio de factibilidadEstudio de factibilidad

Consultar e imprimir por equipo el Consultar e imprimir por equipo el documento:documento:

““Manual para determinar la Manual para determinar la factibilidad económica de factibilidad económica de proyectos” de Rafael Luna.proyectos” de Rafael Luna.

Documento financiado por la Documento financiado por la Agencia de Estados Unidos para Agencia de Estados Unidos para el desarrollo Internacional el desarrollo Internacional (USAID)(USAID)

Estimación de Estimación de proyecto de softwareproyecto de software

Es la determinación del costo y el Es la determinación del costo y el esfuerzo necesario para el esfuerzo necesario para el desarrollo de un proyecto de desarrollo de un proyecto de software.software.

Variables humanas, técnicas, Variables humanas, técnicas, ambientales y políticas pueden ambientales y políticas pueden afectar el costo final del software afectar el costo final del software y el esfuerzo aplicado a y el esfuerzo aplicado a desarrollarlo. desarrollarlo.

Estimación de proyecto Estimación de proyecto de softwarede software

Para lograr estimaciones confiables de Para lograr estimaciones confiables de costo y esfuerzo se tienen varias costo y esfuerzo se tienen varias opciones:opciones:

• Basar la estimación en proyectos Basar la estimación en proyectos similares que hayan sido completados.similares que hayan sido completados.

• Emplear técnicas de descomposición.Emplear técnicas de descomposición.

• Utilizar modelos empíricos en la Utilizar modelos empíricos en la estimación de costo y esfuerzo.estimación de costo y esfuerzo.