0184 planificacion de_proyectos_dirigida_por_la_arquitectura_ppda

45
Suceden cosas buenas cuando te involucras con PMI Estrategia de Gestión de Proyectos Dirigida por la Arquitectura Ing. Mariel Feder, MC, PMP

Upload: genexus

Post on 13-Jun-2015

900 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 0184 planificacion de_proyectos_dirigida_por_la_arquitectura_ppda

Suceden cosas buenas cuando te involucras con PMI

Estrategia de Gestión de Proyectos Dirigida por la Arquitectura

Ing. Mariel Feder, MC, PMP

Page 2: 0184 planificacion de_proyectos_dirigida_por_la_arquitectura_ppda

Suceden cosas buenas cuando te involucras con PMI

Qué es la gestión de un proyecto?

Gestionar un proyecto consiste en asegurar que se entregará un producto que cumpla con las especificaciones dentro del plazo y costo acordado, con el nivel de calidad pactado

Entorno de Naturaleza CambianteIncertidumbre (RRHH, tecnológicos, negocio)

Page 3: 0184 planificacion de_proyectos_dirigida_por_la_arquitectura_ppda

Suceden cosas buenas cuando te involucras con PMI

Ciclo de vida del proyecto

Page 4: 0184 planificacion de_proyectos_dirigida_por_la_arquitectura_ppda

Suceden cosas buenas cuando te involucras con PMI

Inicialización

Análisis de consecuenciasDefinición de magnitudesAnálisis de alternativasAnálisis técnicos (viabilidad, mat, rec, etc)Análisis de inversión y rentabilidadAnálisis de riesgo

Page 5: 0184 planificacion de_proyectos_dirigida_por_la_arquitectura_ppda

Suceden cosas buenas cuando te involucras con PMI

Planificación

Esquema de trabajo para alcanzar el objetivoEstimacionesSe itera durante el proyecto

Page 6: 0184 planificacion de_proyectos_dirigida_por_la_arquitectura_ppda

Suceden cosas buenas cuando te involucras con PMI

Producción o Implementación

AdministraciónEjecuciónControl

Cierre

Page 7: 0184 planificacion de_proyectos_dirigida_por_la_arquitectura_ppda

Suceden cosas buenas cuando te involucras con PMI

Planificación general

Planificación específica

Ejecución

Control

Administración

Retroalimentación

Inicio Planificación

Producción

Etapas en la gestión de un proyecto

Page 8: 0184 planificacion de_proyectos_dirigida_por_la_arquitectura_ppda

Suceden cosas buenas cuando te involucras con PMI

Arquitectura de Software

Disciplina jovenBass, Clements y Kazman: La arquitectura de un programa o sistema de computación es la estructura o estructuras del sistema, que comprenden sus componentes de software, las propiedades externas de los componentes, y la relación entre ellos, que coincide con la propuesta por Soni, Nord y Hofmeister

Page 9: 0184 planificacion de_proyectos_dirigida_por_la_arquitectura_ppda

Suceden cosas buenas cuando te involucras con PMI

Ciclo de vida del Desarrollo del Producto

Orden de las actividades que ocurren durante el desarrollo

Page 10: 0184 planificacion de_proyectos_dirigida_por_la_arquitectura_ppda

Suceden cosas buenas cuando te involucras con PMI

Cascada (Royce, 1970)Secuencia de fases que no se repite:

Planificar el proyecto antes de comenzarDefinir el comportamiento externo esperado del sistema antes de definir su funcionamiento interno.Documentar los resultados de cada actividadDiseñar el sistema antes de codificarloTestear el sistema una vez que está construido.

Page 11: 0184 planificacion de_proyectos_dirigida_por_la_arquitectura_ppda

Suceden cosas buenas cuando te involucras con PMI

CascadaRequerimientos

Arquitectura

Diseño

Codificación y testing unitario

Integración

Operación

Ciclo de vida en Cascada

Page 12: 0184 planificacion de_proyectos_dirigida_por_la_arquitectura_ppda

Suceden cosas buenas cuando te involucras con PMI

Desarrollo Incremental (Hirsch, 1985)

Requerimientos

Arquitectura

Diseño

Codificación y testing unitario

Integración

Operación

Diseño

Codificación y testing unitario

Integración

Operación

Ciclo de vida de desarrollo incremental

Page 13: 0184 planificacion de_proyectos_dirigida_por_la_arquitectura_ppda

Suceden cosas buenas cuando te involucras con PMI

Evolutivo (Basili - Turner, 1975)

Diseño

Codificación y testing unitario

Integración

Operación

Diseño

Codificación y testing unitario

Integración

Operación

Requerimientos Requerimientos

Ciclo de Vida Evolutivo

Page 14: 0184 planificacion de_proyectos_dirigida_por_la_arquitectura_ppda

Suceden cosas buenas cuando te involucras con PMI

Otros

Espiral (Boehm 1988)PrototipaciónEtc

Page 15: 0184 planificacion de_proyectos_dirigida_por_la_arquitectura_ppda

Suceden cosas buenas cuando te involucras con PMI

Proceso para Gestión de Proyectos dirigidos por la arquitectura

Page 16: 0184 planificacion de_proyectos_dirigida_por_la_arquitectura_ppda

Suceden cosas buenas cuando te involucras con PMI

Ciclo de vida para PDA

Autores como Paulish, importancia a Arquitectura previa.Necesaria para PDACiclo cascada/incremental

Page 17: 0184 planificacion de_proyectos_dirigida_por_la_arquitectura_ppda

Suceden cosas buenas cuando te involucras con PMI

Planificación del Proyecto

Proyectos bien gestionados comienzan como proyectos bien planificados.Cuándo: en paralelo con la definición del a arquitectura.Presión externa. Problema de estimaciones tempranas.Cronograma viable, metas intermedias.

Page 18: 0184 planificacion de_proyectos_dirigida_por_la_arquitectura_ppda

Suceden cosas buenas cuando te involucras con PMI

Estimación

Pequeño grupo arq. de alto nivelMecanismos de estimación top-down (Cocomo, Puntos Funcion, Slim, Price-S)Basarse en componentes para estimación Bottom Up (vista lógica de Krutchen). Responsabilidad del arquitectoIntegración de ambas estimaciones.

Page 19: 0184 planificacion de_proyectos_dirigida_por_la_arquitectura_ppda

Suceden cosas buenas cuando te involucras con PMI

Top-Down vs Bottom Up

Bottom up: mayor precision en cada componenteTop down: incluye otras tareasIntegración entre ambasCota mínima: Bottom up

Page 20: 0184 planificacion de_proyectos_dirigida_por_la_arquitectura_ppda

Suceden cosas buenas cuando te involucras con PMI

Análisis de Riesgo

Identificación

Análisis

Planificación

Seguimiento

EvaluaciónCiclo de gestión de Riesgo

Page 21: 0184 planificacion de_proyectos_dirigida_por_la_arquitectura_ppda

Suceden cosas buenas cuando te involucras con PMI

Riesgos y Arquitectura

Arquitectura como entrada importanteRiesgos técnicos

Page 22: 0184 planificacion de_proyectos_dirigida_por_la_arquitectura_ppda

Suceden cosas buenas cuando te involucras con PMI

Riesgos y Arquitectura – Check list

Experiencia de los equipos de desarrollo en las plataformas, lenguajes y herramientas seleccionadasEstabilidad de las herramientas y plataformasDisponibilidad de las herramientas y plataformasIntegrabilidad de las plataformas seleccionadasInteroperabilidad entre los componentes diseñados

Page 23: 0184 planificacion de_proyectos_dirigida_por_la_arquitectura_ppda

Suceden cosas buenas cuando te involucras con PMI

Riesgos y Arquitectura – Check list

Nivel de complejidad, testeabilidad y acoplamiento de los componentesIdentificación de los componentes críticos ya sea por su importancia para el funcionamiento del producto o por su complejidad.Atributos de calidad requeridos que resulten críticos para el producto (ej.: performance, seguridad, amigabilidad, etc.) y que la arquitectura debe garantizar

Page 24: 0184 planificacion de_proyectos_dirigida_por_la_arquitectura_ppda

Suceden cosas buenas cuando te involucras con PMI

Plan de Versiones

Desarrollo simultáneo?Desarrollos en paralelo y en secuenciaIdentificación de paquetes o componentes y precedenciasPuntos de control, plan de versionesArquitectura como input para este proceso

Page 25: 0184 planificacion de_proyectos_dirigida_por_la_arquitectura_ppda

Suceden cosas buenas cuando te involucras con PMI

Criterios para orden y contenido de las versiones

Dirigido por el riesgoDirigido por las necesidades del usuario/mercadoSecuencia lógicaDirigido por la capacitaciónCombinación

Page 26: 0184 planificacion de_proyectos_dirigida_por_la_arquitectura_ppda

Suceden cosas buenas cuando te involucras con PMI

Arquitectura

Identificación de componentes o paquetes por funcionalidadComplejidad y criticidad de los componentes (entrada también para la estrategia de testing).

Page 27: 0184 planificacion de_proyectos_dirigida_por_la_arquitectura_ppda

Suceden cosas buenas cuando te involucras con PMI

Recursos Humanos

Reclutamiento: Perfiles necesariosOrganización de los equipos: Vertical, Horizontal

Page 28: 0184 planificacion de_proyectos_dirigida_por_la_arquitectura_ppda

Suceden cosas buenas cuando te involucras con PMI

Organización de equipos horizontalEquipo 3

Equipo 2

Equipo 1

Capa/componente 3

Capa/componente 2

Capa/componente 1

Organización de equipos horizontal

Page 29: 0184 planificacion de_proyectos_dirigida_por_la_arquitectura_ppda

Suceden cosas buenas cuando te involucras con PMI

Org. Equipos horizontal

Expertos en el componenteUniformidad en el componenteEquipos simultáneosVisibilidad parcial

Page 30: 0184 planificacion de_proyectos_dirigida_por_la_arquitectura_ppda

Suceden cosas buenas cuando te involucras con PMI

Org. Equipos Vertical

Equipo 3Equipo 2Equipo 1

Capa/componente 3

Capa/componente 2

Capa/componente 1

Page 31: 0184 planificacion de_proyectos_dirigida_por_la_arquitectura_ppda

Suceden cosas buenas cuando te involucras con PMI

Org. Equipos vertical

Posibilidad de un solo equipo (serialización)Evitar problemas de comunicación.Visión completa de la funcionalidadComponentes menos cohesivos o redundancia

Page 32: 0184 planificacion de_proyectos_dirigida_por_la_arquitectura_ppda

Suceden cosas buenas cuando te involucras con PMI

Proyectos de gran porte

Combinaciones:Equipos horizontales y sub-equipos verticales o viceversa, en base a la arquitectura.

Integrar participantes del diseñoVisión más globalCompromiso con la estimación

Page 33: 0184 planificacion de_proyectos_dirigida_por_la_arquitectura_ppda

Suceden cosas buenas cuando te involucras con PMI

Organización del cronograma

WBS – Work BreakDown StructureOrientadas a la funciónOrientadas a la faseOrientadas al productoHíbridos

Page 34: 0184 planificacion de_proyectos_dirigida_por_la_arquitectura_ppda

Suceden cosas buenas cuando te involucras con PMI

WBS Orientada a la Fase

Proyecto

Requerimientos

Arquitectura

Diseño

ImplementaciónIntegración y Testing

Implantación

Modulo 1

Modulo 2

Modulo 1

Modulo 2

Modulo 1

Modulo 2

Modulo 1Modulo

2

WBS Orientada a la fase

Page 35: 0184 planificacion de_proyectos_dirigida_por_la_arquitectura_ppda

Suceden cosas buenas cuando te involucras con PMI

WBS Orientada al ProductoProyecto

Modulo 1 Modulo 2

Análisis

Diseño

Implementación

Testing

ImplantaciónAnálisis

Dise

ño

Implementación

Testing e Integración

Implantación

WBS orientada al producto

Page 36: 0184 planificacion de_proyectos_dirigida_por_la_arquitectura_ppda

Suceden cosas buenas cuando te involucras con PMI

Cronograma

Sugerencia: imitar el ciclo de vida.Hitos según plan de versionesComponentes de las iteraciones surgen del arquitectura

Page 37: 0184 planificacion de_proyectos_dirigida_por_la_arquitectura_ppda

Suceden cosas buenas cuando te involucras con PMI

Cronograma

Id Nombre de tarea

1 Ing. 'Requerimientos

2 Arquitectura

3 Version pre-release 1

4 Componente 1

5 Componente 2

6 Integración

7 Fin

8 Version release 2

9 Componente 4

10 Componente 5

11 Componente 6

12 Componente 7

13 Integración

14 Fin

15 Version pre-release 3

26/06

30/08

F P M F P M F P M F P M F P M F P M F P M F P M F P M F P M F P M F P M F P Menero f ebrero marzo abril mayo junio julio agosto septiembre octubre nov iembre diciembre enero

Page 38: 0184 planificacion de_proyectos_dirigida_por_la_arquitectura_ppda

Suceden cosas buenas cuando te involucras con PMI

Factores a considerarEstimación del esfuerzo de cada componenteCantidad de recursos humanos, perfiles y requerimientos de cada componenteSecuencia de desarrollo según el plan de versiones.Otras restricciones:

Tiempo máximo de desarrolloPresupuestoFlujo de caja, etc.

Page 39: 0184 planificacion de_proyectos_dirigida_por_la_arquitectura_ppda

Suceden cosas buenas cuando te involucras con PMI

Resumen del Proceso

Page 40: 0184 planificacion de_proyectos_dirigida_por_la_arquitectura_ppda

Suceden cosas buenas cuando te involucras con PMI

Ing. de Requerimientos

Arquitectura

Estimación Top-Down

Estimación Bottom-Up

Análisis de Riesgo

Plan de Versiones

Organización de los equipos

Integraciónde

estimaciones

Confección del

cronograma

Proceso de planificación y organización del proyecto

Page 41: 0184 planificacion de_proyectos_dirigida_por_la_arquitectura_ppda

Suceden cosas buenas cuando te involucras con PMI

Resumen Proceso

A partir de los requerimientos funcionales y no funcionales se diseña la arquitectura del producto mientras en paralelo se realiza la estimación top-down del proyecto.A partir de la arquitectura se realiza una estimación bottom-up de cada uno de los componentes identificados.Se integran ambas estimaciones en la que se utilizará para la planificación del proyecto.Se realiza el análisis de riesgo, incorporando a la arquitectura como fuente de posibles riesgos que pueden afectar al proyecto. Algunos de los riesgos identificados pueden ocasionar la toma de decisiones que afecten la arquitectura con lo que se repite el ciclo.

Page 42: 0184 planificacion de_proyectos_dirigida_por_la_arquitectura_ppda

Suceden cosas buenas cuando te involucras con PMI

Resumen del ProcesoA partir de la arquitectura, los requerimientos o necesidades del usuario y del análisis de riesgo, se confecciona el plan de versiones.A partir de la arquitectura, se organizan los equipos que participarán en el proyecto.A partir del plan de versiones, del resultado del proceso de estimación, de las tareas de prevención y de las decisiones tomadas a partir del análisis de riesgo, y de los equipos previstos se confecciona el cronograma. Algunas consideraciones en el momento de confeccionar el cronograma para tener en cuenta todas las restricciones del proyecto pueden afectar la organización de los equipos, con lo que se vuelve a iterar el ciclo hasta encontrar el punto de equilibro.Una vez definidos el plan de versiones y el cronograma, puede comenzar el desarrollo del proyecto, el cual se gestionará para mantenerlo dentro de lo previsto en los documentos obtenidos como resultado del proceso descripto

Page 43: 0184 planificacion de_proyectos_dirigida_por_la_arquitectura_ppda

Suceden cosas buenas cuando te involucras con PMI

Referencias BibliográficasFeder, Mariel. Gestión de proyectos dirigida por la Arquitectura. Congreso Argentino de Ciencias de la Computación. 2003 A guide to the Project Management Body of Knowledge (PMBOK), Project Management Institute, www.pmi.org.Humphrey, W.S, Managing the software process Bass, Clements y Kazman 1998. Software Architecture in Practice. Massachusetts, USA. Addison Wesley.Soni D, Nord R y Hofmeister C, Software Architecture in Industrial Applications, en Proceedings of the 17th International Conference on Software Engineering, New York: ACM Press, 1995.Davis Alan M., Software Life Cycle Models. Software Engineering project management, editado por Richard H Thayer, 2ª edición. IEEE Computer Society Press, 1988Royce W.W., Managing the Development of Large Software Systems: Concepts and Techniques, Proc. 1970 WESCON Technical Papers, Vol. 14, 1970Hirsch E., Evolutionary Acquisition of Command and Control Systems, Program Manager, Nov. Dec. 1985.Giddings R.V, Accommodating Uncertainty in Software Design, Comm ACM, Vol 27, N° 5, May 1984.

Page 44: 0184 planificacion de_proyectos_dirigida_por_la_arquitectura_ppda

Suceden cosas buenas cuando te involucras con PMI

Referencias BibliográficasGomaa H y Scott D, Prototyping as a Tool in the Specification of User Requirements, Proc. 5th IEEE International Conference on Software Engineering, IEEE CS Press, Los Alamitos, California, 1981.Boehm B.W. A Spiral Model of Software Development and Enhancement, Computer, May 1988.Paulish D.J, Architecture-Centric Software Project Management, A practical guide, Carnegie Mellon, Software Engineering Institute, 2002.Boehm B, Software Engineering Economics, E Englewood Cliffs, NJ, Prentice Hall 1981.Boehm B. et al, Software Cost Estimation with Cocomo II, Upper Saddel River, NJ, Prentice Hall, 2000.Paulish D.J, Architecture-Centric Software Project Management, A practical guide, Carnegie Mellon, Software Engineering Institute, 2002.KRUTCHEN Philippe. Noviembre 1995. The 4+1 View Model of Architecture. IEEE Software, 12(6), pp 42-50.Higuera R.P, Software Risk Management, CMU/SEI-96-TR-012 ESC-TR-96-012, Software Engineering Institute (SEI), www.sei.cmu.edu

Page 45: 0184 planificacion de_proyectos_dirigida_por_la_arquitectura_ppda

Suceden cosas buenas cuando te involucras con PMI

Referencias BibliográficasGrey S, Practical Risk Assessment for Project Management, John Wiley & SonsKarolak D.W, Software Engineering Risk Management, IEEE Computer Society PressMichaels J.V, Technical Risk Management, Prentice HallBASS L. et al. Quality Attribute Design Primitives. Technical Note CMU/SEI-2000-TN-017. Diciembre 2000BASS L., et al. Quality Attribute Design Primitives and the Attribute Drive Design Method. SEI, Carnegie Mellon University, Pittsburgh.MOUSQUES Gastón. 2002. Transparencias Curso de Arquitectura. Ingeniería de Sistemas, Universidad ORT, Uruguay.KAZMAN R. et al. Octubre 1999. Attribute Based Architectural Styles. Technical Report CMU/SEI-99-TR022.Thayer R, Software Engineering Project Management Rees F, Equipos de trabajo, Prentice Hall 1997Simons, Lucarelli, Work Breakdown Structures Gido, Clements, Network Planning and Scheduling Pinto J, Project Management Handbook, PMI