Claves para la Planificación y Estimación de Proyectos de Software
Clasificado en Diseño e Ingeniería
Escrito el en
español con un tamaño de 3,78 KB
Objetivos de la Planificación
El objetivo de la planificación de proyectos es proporcionar un marco de trabajo que permita al jefe de proyecto hacer un seguimiento de las distintas actividades y tareas. Este marco deberá ir adaptándose a medida que progrese el proyecto.
Ámbito del Software (Scope)
Para poder realizar la planificación de un proyecto de software, es necesario conocer perfectamente su ámbito. Este viene determinado por:
- Funciones: Las funcionalidades que debe implementar el software. Con frecuencia es útil llegar a un cierto grado de descomposición de las mismas para poder planificar mejor.
- Rendimiento: Tiempo de respuesta y de proceso que se espera del sistema.
- Restricciones: Ya sean de hardware, comunicaciones, sistemas externos, etc.
- Interfaces: Conexiones que hemos de desarrollar hacia o desde otros sistemas.
- Fiabilidad: El grado de fiabilidad que se espera del sistema.
Recursos del Proyecto
Dentro de la planificación, uno de los aspectos importantes es la estimación de los recursos necesarios para poder acometer el proyecto. Estos recursos son de tres tipos:
- La infraestructura o entorno de desarrollo (HW/SW) que dará soporte al esfuerzo de desarrollo.
- Los componentes de software que puedan reutilizarse y que reducirán de forma importante el tiempo y coste del desarrollo.
- Las personas necesarias para el proyecto.
De cada uno de estos recursos es necesario especificar:
- Descripción del recurso.
- Informe sobre su disponibilidad.
- La fecha cronológica en la que requeriremos ese recurso.
- El tiempo durante el que haremos uso de ese recurso.
Alternativas para la Estimación del Proyecto de Software
Para la realización de las estimaciones, tenemos las siguientes alternativas:
- Dejar la estimación para más adelante: Esta opción nunca es válida.
- Basarla en proyectos anteriores similares: Suelen dar buenos resultados si las características e influencias del otro proyecto son similares.
- Usar técnicas de descomposición: Se apoyan en el principio de "divide y vencerás". Se usan con el objeto de dividir el proyecto en partes más pequeñas para estimar más fácilmente.
- Emplear modelos empíricos.
- Usar herramientas automáticas de estimación: Suelen implementar las técnicas de descomposición y los métodos empíricos.
Riesgos Inherentes a la Estimación
- Complejidad del proyecto: Aunque esta siempre es relativa, pues se ve afectada por la familiaridad que tengamos con él.
- Tamaño del proyecto: Cuanto mayor sea el proyecto, mayor será el riesgo de la estimación.
- Grado de incertidumbre.
- Disponibilidad de información histórica: Si no disponemos de información de proyectos anteriores similares, nuestra incertidumbre será mayor.
Técnicas de Estimación
Técnicas Basadas en el Problema
- Definir el ámbito.
- Descomponer el software en funciones que se puedan estimar individualmente.
- Para cada función, estimar LDC/PF (Líneas de Código / Puntos de Función).
Técnicas Basadas en el Proceso
- Definir el ámbito.
- Descomponer el problema en funciones (partes del proceso) y para cada una de ellas llevar a cabo una serie de actividades.
- Una vez mezcladas las actividades y las funciones, el planificador estima el esfuerzo.