2. Planificación del desarrollo del software
La planificación es fundamental en el proceso de desarrollo de un producto de
software (y en cualquier otro).
En el mismo se establece, entre otras cosas, qué tareas y cuándo se van a realizar y
los recursos que utilizarán las mismas.
Se presentan que componentes se deben incluir en un plan para el desarrollo de un
proyecto de software:
a) Estimado de costos
b) Programación del tiempo
c) Planificación del personal
d) Estructuración del personal
e) Verificación del control de calidad
f) Gerencia de configuración
g) Monitoreo del proyecto
h) Manejo de riesgos
3. 3.1 Aplicación de herramientas para estimación de tiempos
y costos de desarrollo de software
I. Estimación de Costos :
Existen diversas herramientas y metodologías que nos permiten estimar costos
como SPR Knowledge, Plan de Capers Jones o COCOMO II de Barry Boehm.
• Existen varios factores que afectan la estimación de costos : -
Incertidumbre en los requerimientos
- Términos contractuales rígidos
- Salud Financiera
- Falta de experiencia
4. Pasos típicos en una estimación son:
1) Análisis de los requisitos.
2) Predicción del tamaño.
3) Descripción de las Actividades.
4) Estimación de fallas potenciales y métodos de eliminación de defectos en el
software.
5) Estimación de requisitos del personal.
6) Ajuste de suposiciones basadas en capacidades y experiencia.
7) Estimación del esfuerzo y fechas límite.
8) Estimación de costos del desarrollo.
9) Estimación de costos de mantenimiento y mejora.
5. Principales técnicas utilizadas para la estimación de costes:
• Estimación por analogía.- La estimación de costes por analogía implica
usar el coste real de proyectos anteriores similares como base para estimar
el coste del proyecto actual.
• Determinación de Tarifas de Costes de Recursos. La persona que
determina las tarifas o el grupo que prepara las estimaciones debe conocer
las tarifas de costes unitarios, tales como el coste del personal por hora y el
coste del material a granel por yarda o metro cúbico, correspondientes a
cada recurso para estimar los costes de la actividad del cronograma.
• Estimación Ascendente. Esta técnica implica estimar el coste de paquetes
de trabajo individuales o actividades del cronograma individuales con el
nivel más bajo de detalle.
• Estimación Paramétrica. La estimación paramétrica es una técnica que
utiliza una relación estadística entre los datos históricos y otras variables
para calcular una estimación de costes para un recurso de la actividad del
cronograma
6. • Software de Gestión de Proyectos: es ampliamente utilizado para
asistir en el proceso de estimación de costes.
• Análisis de Propuestas para Licitaciones. se incluyen el análisis de
propuestas para licitaciones y un análisis de lo que debería costar el
proyecto.
7. II. Estimación de tiempos
La estimación del tiempo forma parte del proceso de Gestión del Tiempo
de la Administración de Proyectos.
Incluye los procesos necesarios para lograr la conclusión del proyecto a
tiempo:
• Definición de las Actividades
• Establecimiento de la Secuencia de las Actividades:
• Estimación de Recursos de las Actividades
• Estimación de la Duración de las Actividades
• Desarrollo del Cronograma
• Control del Cronograma
8. La programación utiliza Herramientas tales como:
a) Diagramas de barras(GANTT)
Los programas de trabajo muestran las fechas de inicio y terminación de
los diversos elementos de un proyecto. Los programas pueden preparase
en forma tabular o gráfica, aunque esta última se emplea más debido a su
visualización.
a) Redes (PERT y CPM)
Este método se desarrollo como herramienta para administrar
situaciones especiales.
El CPM se basa en la planeación del trabajo que va más allá de lo que es
necesario para hacer una licitación.
Son fundamentales por su eficacia en la comunicación de la gerencia del
proyecto y el resto de la empresa.
El campo de acción de este método es muy amplio, dada su gran
flexibilidad y adaptabilidad a cualquier proyecto grande o chico.
9. 3.2 Ámbito del Software
La Segunda tarea de la planificación del desarrollo de Software es la
estimación de los recursos requeridos para acometer el esfuerzo de desarrollo
de Software
Cada recurso queda especificado mediante cuatro características:
A. Descripción del Recurso.
B. Informes de disponibilidad.
C. Fecha cronológica en la que se requiere el recurso.
D. Tiempo durante el que será aplicado el recurso.
10. a) Recursos Humanos
La Cantidad de personas requeridas para el desarrollo de un
proyecto de software solo puede ser determinado después de
hacer una estimación del esfuerzo de desarrollo.
b) Recursos de software reutilizables:
Cualquier estudio sobre recursos de software estaría
incompleto sin estudiar la reutilización, esto es la creación y la
reutilización de bloques de construcción de Software.
c) Recursos del entorno:
El entorno es donde se apoya el proyecto de Software
incorpora Hardware y Software
11. 3.3 Análisis y Gestión del riesgo
a) Estrategias
Es un conjunto de acciones planificadas sistemáticamente en el
tiempo que se llevan a cabo para lograr un determinado fin o misión.
b) Identificación
Es la acción y efecto de identificar o identificarse, que es el conjunto
de los rasgos propios de un sujeto o de una comunidad
c) Proyección
Es un mecanismo de defensa que opera en situaciones de conflicto
emocional o amenaza de origen interno o externo.
Se proyectan los sentimientos, pensamientos o deseos que no
terminan de aceptarse como propios porque generan angustia o
ansiedad, dirigiéndolos hacia algo o alguien y atribuyéndolos
totalmente a este objeto externo.
12. d) Refinamiento
El diseño del software es un proceso interactivo mediante el cual los
requerimientos se traducen en un “plano” para construir el software.
Debe ser una guía legible y comprensible para quienes generan el
código
Debe proporcionar una imagen completa del software desde una
perspectiva de implementación.
e) Reducción
Se refiere a utilizar la cantidad mínima indispensable de recursos
necesarios en acciones que van desde las cotidianas hasta las
industriales.
f) Supervisión
La supervisión es la observación regular y el registro de las
actividades que se llevan a cabo en un proyecto o programa.
13. g) Gestión de Riesgo
Es un enfoque estructurado para manejar la incertidumbre relativa a
una amenaza, a través de una secuencia de actividades humanas que
incluyen evaluación de riesgo, estrategias de desarrollo para manejarlo
y mitigación del riesgo utilizando recursos gerenciales