Vous êtes sur la page 1sur 8

INGENIERA DE SOFTWARE

3er. AO

Lic. Wilma Argandoa Blanco

ESTIMACION PARA PROYECTOS DE SOFTWARE


Antes de iniciar el proyecto el equipo debe estimar el trabajo que deber realizarse, los recursos que se
requerirn y el tiempo que transcurrir desde el principio hasta el final.
La PLANIFICACIN DEL PROYECTO de software abarca cinco grandes actividades, estimacin,
calendarizacin, anlisis de riesgos, planificacin de la gestin de la calidad y planificacin de la gestin
de cambio
La estimacin es un tanto un arte como una ciencia pero aun as esta actividad no debe hacerse de manera
improvisada sino con ayuda de mtricas y perspectivas histricas para poder desarrollar y revisar
estimaciones.
Mientras ms se conozca del proyecto mejor se estimara en consecuencia se deben actualizar las
estimaciones conforme avance el proyecto.
Existen diferentes tareas para la planificacin del proyecto.
1. Establecer el mbito del proyecto
2. Determinar la factibilidad
3. Analizar riesgos
4. Definir recursos requeridos
5. Estimar costo y esfuerzo
6. Desarrollar un plan de proyecto
La factibilidad del proyecto es importante, pero una consideracin de las necesidades del negocio es incluso
ms importante no es bueno construir un sistema o producto de alta tecnologa que nadie requiere
El software es el recurso ms costoso en cualquier sistema basado en computadora y por lo tanto la
estimacin es de lo ms imprtate ya que hacerlo de una manera incorrecta puede hacer la diferencia entre
ganancia o prdida.
Existen demasiadas variables para hacer alguna estimacin exacta como humanas, tcnicas, ambientales,
polticas. etc. todas estas pueden afectar el costo final el costo del software y el esfuerzo
Para lograr mejores estimaciones se puede.
1. Demorar la estimacin hasta lo ms tarde del proyecto
2. Basar estimaciones en proyectos similares
3. Emplear tcnicas de descomposicin relativamente simples para generar estimaciones de costo y esfuerzo
del proyecto.
4. Utilizar uno o ms modelos empricos en la estimacin de costos y esfuerzos
El tamao del software que se construir puede medirse directamente utilizando LDC (LOC) o
indirectamente con PF
Adems de estos existen otras forma de hacer estimaciones como casos de uso o procesos, si no existe
concordancia entre estas y se debe reevaluar se debe a posiblemente dos causas:
- El planificador no ha entendido o ha definido mal el mbito
- Los datos de productividad que utilizan las tcnicas de estimaciones basadas en el problema son
inapropiados para la aplicacin, obsoletos o se han aplicado mal.

INGENIERA DE SOFTWARE

3er. AO

Lic. Wilma Argandoa Blanco

CALENDARIZACION DE PROYECTOS DE SOFTWARE


Es crear una red de tareas de ingeniera de software que permitan tener el trabajo justo a tiempo,
esta red debe tener responsabilidades asignadas, asegurarse que dichas tareas se realicen y adaptar
la red conforme los riesgos se tornen en realidad.
Los proyectos de software usualmente se entrega con retraso debido a:
-

Una fecha limite irrealizable establecida por alguien externo al grupo de ingeniera.

Cambios en los requisitos del cliente que no se reflejan en modificaciones al calendario

Una subestimacin razonable de la cantidad de esfuerzo o de recursos que se requerirn

para realizar el trabajo


Riesgos predecibles y/o impredecibles que no se consideraron al iniciar el proyecto
Dificultades humanas imprevisibles
Falta de comunicacin entre el personal del proyecto que da como resultado demoras
Una falla en la gestin del proyecto y una falta de accin para corregir el problema

Qu se debe hacer con fechas de entrega irrealizables


Rechazar el proyecto NO
Ordenar al cliente que cambie la fecha NO
- Se debe realizar una estimacin detallada usando datos histricos de proyectos anteriores.
- Con el modelo de proceso incremental, desarrollar una estrategia que entregue funcionalidad.
- Reunirse con el cliente y explicarle la estimacin detallada y decirle porque la fecha es irrealizable
- Ofrezca una estrategia de desarrollo incremental como alternativa.
PRINCIPIOS BSICOS
Existen distintos principios bsicos que guan la calendarizacin del proceso:
Compartimentalizacion
Interdependencia
Asignacin de Tiempo
Validacin del esfuerzo
Responsabilidades definidas
Resultados definidos
Hitos definidos
Compartimentalizacin: El proyecto se debe compartir en algunas actividades y tareas manejables.
Para lograr la compartimentalizacin se desglosan tanto el producto como el proceso.

INGENIERA DE SOFTWARE

3er. AO

Lic. Wilma Argandoa Blanco

Interdependencia: Debe determinarse la interdependencia de cada actividad o tarea


compartimentalizada. Algunas tareas debe sucederse en secuencia, mientras que otras pueden
ocurrir en paralelo. Algunas actividades no pueden comenzar hasta que est disponible el producto
operativo producido por otra. Otras pueden realizarse de manera independiente
Asignacin de tiempo: A cada tarea por calendarizar debe asignrsele cierto nmero de unidades de
trabajo (por ejemplo, persona-das de esfuerzo). Adems, a cada tarea debe asignrsele una fecha
de comienzo y una conclusin.
Validacin de Esfuerzo: Todo proyecto tiene un nmero definido de personas en el equipo de
software.
Responsabilidades definidas: Cada tarea por calendarizar debe asignarse a un miembro de equipo
especfico.
Resultados definidos: Cada tarea que se calendarice debe tener un resultado definido.
Hitos Definidos: Cada tarea o grupo de tareas debe asociarse con un hito del proyecto. Un hito se
logra cuando uno o ms productos operativos se revisan en su calidad y se aprueban.
Existe el mito que al agregar personas a un proyecto atrasado este puede finalizarse en el tiempo
estimado con xito, esto es muchas veces mentira ya que las nuevas personas primero deben
ponerse al corriente y los que previamente estn involucrados deben ensear a los nuevos, si se
desea agregar personas a un proyecto se debe observar que la tarea sea altamente
compartimentada.
REGLA 40-20-40
Esta es una regla que usualmente se sigue, en la cual se asigna el 40% del esfuerzo al anlisis y diseo
de software, el 20% del esfuerzo a la codificacin y el ultimo 40% a la realizacin de pruebas del
sistema, esta distribucin se utiliza como gua, la distribucin final del proceso la dictan las
caractersticas del proyecto:
TIPOS DE PROYECTOS:
Existen distintos tipos de proyectos de software entre ellos:
Proyectos de desarrollo de concepto
Proyectos de desarrollo de nuevas aplicaciones
Proyectos de mejora de aplicacin
Proyectos de mantenimiento de aplicacin
Proyectos de reingeniera
1. Proyectos de desarrollo de concepto: que inician para explorar algn concepto empresarial
nuevo o la aplicacin de alguna nueva tecnologa.
2. Proyectos de desarrollo de nueva aplicacin: que se realizan como consecuencia de la
solicitud de un cliente especfico.
3. Proyectos de mejora de aplicacin: que ocurren cuando un software existente experimenta
grandes modificaciones a funciones, rendimiento, o interfaces que son observables por el
usuario final.
3

INGENIERA DE SOFTWARE

3er. AO

Lic. Wilma Argandoa Blanco

4. Proyectos de mantenimiento de aplicacin: que corrigen, adaptan o extienden el software


existente de maneras que pueden no ser inmediatamente obvias para el usuario final.
5. Proyectos de Reingeniera: que se llevan a cabo con la intencin de reconstruir un sistema
existente (heredado) en todo o en parte.
Dependiendo del tipo de proyecto y actividades dentro del proyecto se pueden seleccionar el tipo de
tareas que se realizaran
RED DE TAREAS
Una red de tarea es una representacin grfica de flujo de tareas para un proyecto

Es importante siempre encontrar la ruta crtica es decir aquellas que deben concluirse conforme al
calendario si el proyecto como un todo debe completarse de acuerdo con ese calendario (es decir a
tiempo).
CRONOGRAMAS.
Un cronograma o grfico de Gantt permite determinar que tareas se realizan en un punto de tiempo
dado, es posible crear un cronograma general y luego crear cronogramas para cada actividad o tarea.
SEGUIMIENTO DEL CALENDARIO
Si se desarroll de manera adecuada, el calendario del proyecto se convierte en un mapa de caminos
que define las tareas e hitos que se van a monitorear y controlar conforme el proyecto avance. El
seguimiento del calendario puede hacerse de diferentes maneras:
-

Realizando reuniones peridicas

Haciendo evaluaciones de los resultados de todas las revisiones realizadas a lo largo del
proceso de ingeniera de software

Determinando si se han logrado los hitos en las fechas establecidas.

comprobando la fecha real con la fecha de inicio prevista para cada actividad

INGENIERA DE SOFTWARE

3er. AO

Lic. Wilma Argandoa Blanco

GESTION DEL RIESGO


El riesgo se relaciona con acontecimientos futuros, y la gestin de riesgos son una serie de
pasos que ayudan a un equipo de software a comprender y manejar la incertidumbre, un
riesgo es un problema potencial que puede ocurrir o no y es recomendable identificarlo y crear
un plan para saber qu hacer en caso que este se de.
ESTRATEGIAS DE RIESGO PROACTIVAS Y REACTIVAS
Reactiva: supervisa el proyecto en prevencin de posibles riesgos. Los recursos se ponen
aparte, en caso de que pudieran convertirse en problemas. Lo ms frecuente es que el equipo
de software no haga nada respecto a los riesgos hasta que algo va mal.
Proactiva: empieza mucho antes de que comiencen los trabajos tcnicos. Se identifican los
riesgos potenciales, se valoran su probabilidad y su impacto y se establece una prioridad segn
su importancia. Despus el equipo de software establece un plan para controlar el riesgo.
Ante un riesgo se puede tomar una posicin reactiva o proactiva.
RIESGOS DEL SOFTWARE
El riesgo siempre implica dos caractersticas:
- Incertidumbre: el acontecimiento que caracteriza al riego puede o no ocurrir.
- Prdida: si el riesgo se convierte en una realidad, ocurrirn consecuencias no deseadas
prdidas.
- Cuando se analizan los riegos es importante cuantificar el nivel de incertidumbre y grado
de prdida asociados a cada riego. Para hacerlo se consideran diferentes categoras de
riesgos:

Riesgos del proyecto: si se hacen realidad , es posible que la planificacin temporal del
proyecto se retrase y que los costos aumenten (problemas potenciales de personal,
cliente, requisitos, etc).
Riesgos tcnicos: amenazan la calidad y la planificacin temporal del software (problemas
de diseo, implementacin, interfaz, verificacin, mantenimiento- ambigedades de
especificaciones, incertidumbres tcnicas, etc.)
Riesgos empresariales: amenazan la viabilidad del software a construir. A menudo ponen
en peligro el proyecto o el producto.
Candidatos para los 5 principales riesgos empresariales:

Construir un producto o sistema excelente que no quiere nadie en realidad


(riesgo de mercado)

INGENIERA DE SOFTWARE

3er. AO

Lic. Wilma Argandoa Blanco

Construir un producto que no encaja en la estrategia comercial general de la


compaa (riesgo estratgico)
Construir un producto que el departamento de ventas no sabe cmo vender
Perder el apoyo de una gestin experta debido a cambios de enfoque o cambios
de personal.
Perder presupuesto o personal asignado.

Otra categorizacin:
-

Riesgos conocidos: se pueden descubrir despus de una cuidadosa evaluacin del plan del
proyecto.
Riesgos predecibles: se extrapolan de la experiencia en proyectos anteriores.
Riesgos impredecibles: son difciles de identificar por adelantado.

La SEI (Software Engineering Institute) identifica siete principios que ofrecen un marco
conceptual para lograr una administracin de riesgo efectiva. Estos son:
1. Mantener una perspectiva global
2. Tener una visin previsora
3. Alentar la comunicacin abierta
4. Integracin
5. Enfatizar un proceso continuo
6. Desarrollo de una visin de producto compartida
7. Alentar el trabajo en equipo
IDENTIFICACION DEL RIESGO
La identificacin del riesgo es un intento sistemtico para especificar las amenazas al plan del
proyecto.
Existen dos tipos:
- Riesgos genricos: Son una amenaza potencial para todos los proyectos de software.
- Riesgos especficos: se pueden identificar si se tiene una clara visin de la tecnologa, el
personal y el entorno especfico del proyecto.
Es importante identificar los riesgos genricos, pero los riesgos especficos son los que
provocan mayores problemas, asegrese de identificar tantos riesgos como sea posible.
Un mtodo para identificar riesgos es crear una lista de comprobacin de elementos de riegos.
La lista de comprobacin se puede utilizar para identificar riesgos y se enfoca en un subconjunto
de riesgos conocidos y predecibles en las siguientes subcategoras genricas:
- tamao del producto
- entorno del proceso
- impacto en el negocio
- entorno a construir
- caractersticas del cliente
- tecnologa a construir
- definicin del proceso
- tamao y experiencia de la plantilla.
Componentes de riesgo:
6

INGENIERA DE SOFTWARE

3er. AO

Lic. Wilma Argandoa Blanco

riesgo de rendimiento: el grado de incertidumbre con el que el producto encontrara sus


requisitos y se adecue para su empleo pretendido.
riegos de coste: el grado de incertidumbre que mantendr el presupuesto del proyecto.
riesgo de soporte: el grado de incertidumbre de la facilidad del software para corregirse,
adaptarse y ser mejorado.
riesgo de planificacin temporal: el grado de incertidumbre con que se podr mantener la
planificacin temporal y de que el producto se entregue a tiempo.

PROYECCION DEL RIESGO


Tambin denominada estimacin del riesgo, intenta medir el riesgo de dos maneras:
- la probabilidad de que el riego sea real
- las consecuencias de los problemas asociados con el riesgo, si ocurriera.
Cuatro actividades de proyeccin de riesgo:
1) establecer una escala que refleje la probabilidad percibida del riego.
2) Definir las consecuencias del riesgo.
3) Estimar el impacto del riesgo en el proyecto y en el producto
4) Apuntar la exactitud general de la proyeccin del riego de manera que no haya
confusiones.

Valoracin de impacto de riesgo


Existen tres factores que afectan las consecuencias que son probables si un riesgo ocurre, su
naturaleza, mbito y tiempo, se recomienda los siguientes pasos para determinar las
consecuencias globales del riesgo
1. Determinar el valor promedio de la probabilidad de que ocurra para cada componente de
riesgo.
2. Determinar el impacto para cada componente con base en criterios mostrados en la tabla
anterior
7

INGENIERA DE SOFTWARE

3er. AO

Lic. Wilma Argandoa Blanco

3. Completar la tabla de riesgos y analizar los resultados


La Exposicin al Riesgo Global ER se determina segn la relacin
ER= P*C
P: probabilidad que ocurra el riesgo
C: costo proyectado en caso que ocurra el riesgo
Comprese la ER de todos los riesgos si la ER es mayor del 50 por ciento del costo total del
proyecto se debe reevaluar la viabilidad del proyecto.

Vous aimerez peut-être aussi