planificación de proyectos de software

34
Planificación de Proyectos Prof. Yaskelly Yedra I-2013 INGENIERÍA DE SOFTWARE Unidad II

Upload: yaskelly-yedra

Post on 16-Jan-2017

428 views

Category:

Software


1 download

TRANSCRIPT

Page 1: Planificación de proyectos de software

Planificación de ProyectosProf. Yaskelly Yedra I-2013

INGENIERÍA DE SOFTWARE

Un

idad

II

Page 2: Planificación de proyectos de software

1. Actividades de planificación2. Tipos de planes de procesos3. Estructura del plan de procesos4. Organización de las actividades5. Calendario del proyecto6. Gestión de riesgos

Contenido

Planificación de Proyectos

Page 3: Planificación de proyectos de software

Una buena planificación no siempre garantiza el éxito del proyecto

El proceso de planificación se inicia con una valoración de las restricciones que afectan el proyecto (fecha de entrega, costos, personal)

Planificación de proyectos

Page 4: Planificación de proyectos de software

1. Actividades de planificación2. Tipos de planes de procesos3. Estructura del plan de procesos4. Organización de las actividades5. Calendario del proyecto6. Gestión de riesgos

Contenido

Planificación de Proyectos

Page 5: Planificación de proyectos de software

Redacción de la propuesta Planificación y calendarización del proyecto Estimación del costo del proyecto Supervisión y revisión del proyecto Selección y evaluación del personal Redacción y presentación de informes

Actividades de planificación

Page 6: Planificación de proyectos de software

Contenido

Planificación de Proyectos

1. Actividades de planificación2. Tipos de planes de procesos3. Estructura del plan de procesos4. Organización de las actividades5. Calendario del proyecto6. Gestión de riesgos

Page 7: Planificación de proyectos de software

Plan de calidad

Plan de validación

Plan de gestión de configuraciones

Plan de mantenimiento

Plan de gestión de personal, explicar las

funciones y responsabilidades

Tipos de planes de procesos

Page 8: Planificación de proyectos de software

1. Actividades de planificación2. Tipos de planes de procesos3. Estructura del plan de procesos4. Organización de las actividades5. Calendario del proyecto6. Gestión de riesgos

Contenido

Planificación de Proyectos

Page 9: Planificación de proyectos de software

Introducción Organización del proyecto (personal) Análisis de riesgos Requisitos de hardware y software Estructura de actividades del proyecto Agenda del proyecto (actividades, hitos

asignación de personal) Mecanismos de supervisión e informe

Estructura del plan de proyecto

Page 10: Planificación de proyectos de software

Members of the Development Team

Requirement analysts: work with the customers to identify and document the requirements

Designers: generate a system-level description of what the system us supposed to do

Programmers: write lines of code to implement the design

Testers: catch faults Trainers: show users how to use the system Maintenance team: fix faults that show up later Librarians: prepare and store documents such as

software requirements Configuration management team: maintain

correspondence among various artifactsSoftware Engineeringpor: Pfleeger, Shari Lawrence/ Atlee, Joanne M. Prentice Hall

Page 11: Planificación de proyectos de software

Members of the Development Team

Typical roles played by the members of a development team

Page 12: Planificación de proyectos de software

1. Actividades de planificación2. Tipos de planes de procesos3. Estructura del plan de procesos4. Organización de las actividades5. Calendario del proyecto6. Gestión de riesgos

Contenido

Planificación de Proyectos

Page 13: Planificación de proyectos de software

Las actividades se deben organizar de forma queproduzcan salidas "tangibles" válidas para la gestióndel progreso del desarrollo

Los HITOS (milestones) marcan el final de unaactividad del proceso de desarrollo

Las ENTREGAS (deliverables) son resultados delproyecto que se entregan a los clientes

El proceso en cascada permite identificar de formasencilla los hitos que marcan el progreso del proyecto

Organización de las actividades

Page 14: Planificación de proyectos de software

1. Actividades de planificación2. Tipos de planes de procesos3. Estructura del plan de procesos4. Organización de las actividades5. Calendario del proyecto6. Gestión de riesgos

Contenido

Planificación de Proyectos

Page 15: Planificación de proyectos de software

Las suposiciones iniciales y el calendario deben ser pesimistas

Debe haber suficiente holgura para evitar re-negociaciones en la entrega

Calendario del proyecto

Page 16: Planificación de proyectos de software

Consiste en la organización temporal y asignación de recursos a las actividades de un proyecto.

Pasos a seguir: Determinación de las actividades a realizar Asignación de tiempos estimados Asignación de recursos Organización temporal de las actividades

Calendario del proyecto

Page 17: Planificación de proyectos de software

El proceso de calendario

Identificar dependencias de actividades

Estimar recursos para

las actividades

Asignar personas a las

actividades

Crear gráficos de proyecto

Redes de actividadesy gráficos de barra

Identificar actividades

Requisitosde software

Implica separar todo el trabajo de un proyecto en actividades complementarias y considerar el tiempo requerido para completar dichas actividades

Page 18: Planificación de proyectos de software

Se utilizan para ilustrar la agenda del proyecto

Permiten mostrar una vista de la división en tareas del proyecto. Las actividades no deberían ser demasiado "pequeñas" (alrededor de una semana o más)

Los diagramas de actividades muestran las dependencias de las tareas y el camino crítico

Los diagramas de barras muestran la agenda del proyecto

Representaciones gráficas

Page 19: Planificación de proyectos de software

Datos de entrada: Lista de precedencias del proyecto Asignación de tiempos y recursos a actividades

Proceso a realizar: Representar grafo Cálculo de tiempos “early” y “last” Cálculo de holguras Cálculo del camino crítico Confección de agenda

Grafos PERT

Page 20: Planificación de proyectos de software

Eje de ordenadas Representa Actividades o Recursos

Eje de abscisas Tiempo

Permite observar con detalle la evolución del proyecto

La herramienta Microsoft Project permite generar automáticamente Diagramas de Gantt Grafos PERT

Diagramas Gantt

Page 21: Planificación de proyectos de software

Diagramas Gantt

Page 22: Planificación de proyectos de software

La tarea de estimar la dificultad del problema y por lo tanto el coste asociado es bastante “dura”

La productividad no es proporcional al número de gente trabajando en una tarea

Añadir gente a un proyecto que va con retraso lo retrasará más todavía debido a la sobrecarga en cuanto a las comunicaciones personales

Lo inesperado SIEMPRE ocurre. Se debe tener esto en cuenta a la hora de planificar

Problemas de calendario

Page 23: Planificación de proyectos de software

1. Actividades de planificación2. Tipos de planes de procesos3. Estructura del plan de procesos4. Organización de las actividades5. Calendario del proyecto6. Gestión de riesgos

Contenido

Planificación de Proyectos

Page 24: Planificación de proyectos de software

Actividad que concierne a la identificación de los riesgos y desarrollo de planes para minimizar sus efectos en un proyecto.

Un riesgo es una probabilidad de que pueda ocurrir alguna circunstancia adversa. Los riesgos del proyecto afectan a la agenda o los

recursos Los riesgos del producto afectan a la calidad o

realización del desarrollo Los riesgos del negocio afectan a la organización que

desarrolla o que gestiona el proyecto

Gestión de riesgos

Page 25: Planificación de proyectos de software

Identificación de riesgos Análisis de riesgos Planificación de los riesgos Monitorización de los riesgos

El proceso de gestión de riesgos

Listado de riesgos potenciales

Identificación de riegos

Listado de priorización de

riesgos

Análisis de riegos

Anulación de riesgos y planes de contingencia

Planeación de riegos

Valoración de riesgos

Supervisión de riegos

Page 26: Planificación de proyectos de software

Identificación de riesgos

Riesgos de tecnologíasRiesgos de personalRiesgos organizacionalesRiesgos de herramientasRiesgos de requisitosRiesgo de estimación

Page 27: Planificación de proyectos de software

Análisis de riesgoTipo de riesgo Posible riesgo

TECNOLOGÍALa Base de Datos utilizada no puede procesarmuchas transacciones por segundo como seesperaba.

PERSONAS Es imposible seleccionar personal con lashabilidades requeridas para el proyecto.

ORGANIZACIONALLos problemas financieros en la organizacióncausan reducciones en el presupuesto delproyecto.

HERRAMIENTAS Las herramientas CASE no se pueden integrar.

REQUISITOS Se proponen cambios en los requisitos quesuponen rehacer el diseño.

ESTIMACIÓN El tiempo requerido para desarrollar el softwareestá subestimado.

Page 28: Planificación de proyectos de software

Análisis de riesgo

Tipo de riesgo Probabilidad Efectos

Problemas financieros en la organización.

Baja Catastrófico

Problemas de selección de personal.

Alta Catastrófico

Cambios en los requisitos. Moderada Serio

Rendimiento de la Base de Datos. Moderada Serio

Tiempo de desarrollo subestimado. Alto Serio

Herramientas CASE no se pueden integrar.

Alto Tolerable

Page 29: Planificación de proyectos de software

Planificación de riesgosRiesgo Estrategia

Problemas financieros en la organización

Preparar un documento breve para el gestorprincipal que muestre que el proyecto hacecontribuciones muy importantes a los objetivosdel negocio.

Problemas de selección depersonal

Alertar al cliente de las dificultades potencialesy las posibilidades de retraso, previsión decursos de formación.

Cambios en los requisitos

Investigar la información para valorar el impactodel cambio en los requisitos, prototipado yrevisión con el cliente.

Rendimiento de la Base de Datos

Investigar la posibilidad de comprar una basede datos de rendimiento más alto.

Tiempo de desarrollo subestimado

Investigar los componentes comprados y lautilización de un generador de programas.

Page 30: Planificación de proyectos de software

Monitorización de riesgos (ejemplos)

Tipo de riesgo Identificadores potenciales

TECNOLOGÍAEntrega retrasada del hardware o del soportesoftware

PERSONAS Personal con moral baja, malas relaciones entremiembros del equipo.

ORGANIZACIONALCotilleos en la organización, pasividad en elgestor principal.

HERRAMIENTAS Quejas sobre herramientas CASE, peticiones deestaciones de trabajo más potentes.

REQUISITOS Peticiones de cambios en muchosrequisitos, quejas del cliente.

ESTIMACIÓN Fracaso en el cumplimiento de la agendaacordada.

Page 31: Planificación de proyectos de software

Una buena gestión de proyectos es esencial para el éxito del proyecto

La naturaleza intangible del software causa problemas en la gestión de proyectos

Los gestores se encargan de varias tareas, pero las más significativas son planificación, estimación y confección de agendas (scheduling)

La planificación y estimación son procesos iterativos y continuados durante todo el desarrollo del proyecto

Puntos claves

Page 32: Planificación de proyectos de software

Una entidad financiera desea reducir a la mitad sutiempo de trámite de las "solicitudes de préstamos

personales" (OBJETIVO), para lo cual se haencargado al departamento informático la

instalaciónde un equipamiento y la realización de una

aplicación que automatice dicha gestión(PROYECTO)

Ejemplo de proyecto I

Page 33: Planificación de proyectos de software

Ejemplo de proyecto II

Page 34: Planificación de proyectos de software

Ejemplo de proyecto III

Diagrama Gantt