gestión de proyectos siguiendo practicas del pmi. guarnaccia.pdf · alineado a cmmi nivel 3 en...
TRANSCRIPT
1
Gestión de proyectos
siguiendo practicas del PMI.
Identificación de las mejores prácticas aplicadas a la gestión de proyectos. Proceso de Desarrollo de Software de Codes S.A. alineado a CMMI Nivel 3 en Gestión de Proyectos. Ejemplo práctico de implementación sobre Microsoft Visual Studio Team System 2005.
2
Presentación.
Objetivos perseguidos por Codes S.A. para la implementación de un proceso de mejora. Aplicación de prácticas reconocidas en el mercado.
Modelo de Madurez CMMI breve descripción.
Introducción implementación proceso de mejora de calidad en Codes S.A. (Alineado al modelo de madurez CMMI v 1.2).
Implementación de la metodología sobre Microsoft Visual Studio Team System 2005.
AGENDA
3
Presentación
•Inicio Actividades: 1998, 12 años de trayectoria.
•Recursos: 45 recursos (41 en BsAs – 4 en San Luis).
•Foco: Servicios de Desarrollo, Consultoría e Integración.
•Certificaciones de Calidad: CMMI Nivel 3 de Capacidad en Gestión de Proyectos (recertificación Septiembre de 2010), cabe destacar que Codes S.A. mantiene la certificación CMMI desde 2007.
•En la actualidad Codes S.A. cuenta con los departamentos de: Desarrollo de Software, Consultoría y Automatización de Procesos Industriales. Tiene una basta experiencia brindando calidad de servicios en estos rubros a empresas de primera línea de Argentina y ha realizado desarrollos off-shore en países como Brasil y Chile.
4
Objetivos perseguidos por Codes con la formalización del PDSC
Objetivos Empresarios:
• Ofrecer soluciones informáticas integrales.• Aportar alternativas sólidas y resultados tangibles a nuestros clientes. • Búsqueda permanente de excelencia.• Convertirnos en un socio estratégico de nuestros clientes.
Objetivos perseguidos en el proceso de mejora:
• Mejorar nuestro proceso de desarrollo.• Aseguramiento de la calidad de nuestros productos software. • Optimizar la gestión y control de nuestros proyectos.• Lograr una metodología de desarrollo de software de alta calidad.
5
Modelo de Madurez CMMI, breve descripción.
CMM - CAPABILITY MATURITY MODEL (Orígenes y evolución).
• Fue concebido en el año 1987 por el Instituto de Ingeniería de Software (SEI) de la Universidad Carnegie Mellon (CMU) y estabilizado en 1991.
• Su principal objetivo era calificar a proveedores de software del Departamento de Defensa de Estados Unidos, pero el modelo fue incorporado paulatinamente por numerosas empresas de la industria.
• Es actualmente un esquema que representa un camino de mejora recomendado para organizaciones que quieren incrementar la capacidad de su proceso de desarrollo software.
6
Nivel Foco Áreas de proceso
5 Mejora Continua Proceso de Mejora ContinuaInnovación Organizacional y Despliegue.
Análisis Causal y Resolución.
4 Gestión Cuantitativa Gestión Cuantitativa de ProyectosRendimiento Organizativo del Proceso
Gestión Cuantitativa del Proceso
3 Definido Procesos Estandarizados
Desarrollo de Requerimientos
Solución Técnica
Integración de Producto
Verificación
Validación
Foco Organizativo de Procesos
Definición del Proceso Organizativo
Formación Organizacional
Gestión Integrada de Proyectos
Gestión de Riesgos
Análisis de decisiones y resoluciones.
2 Gestionado Gestión Básica de Procesos
Gestion de Requerimientos
Planificación de Proyectos
Seguimiento y Contol de Proyectos
Gestión de Acuerdos con Proveedores
Métricas y Análisis
Aseguramiento de la Calidad de procesos y productos
Gestión de la configuración
1 Inicial
CMMI v 1.2, Modelo de Madurez de Capacidad.
NIVEL 1 - Inicial
•Proceso ad-hoc y a veces caótico.
•La organización generalmente opera sin procesos formalizados, estimaciones de
costo o planes de proyecto.
•Aunque existan algunos procesos formalizados, no existen mecanismos que permitan
asegurar que se cumplan.
•El éxito depende del esfuerzo individual.
NIVEL 3 - Definido
•El proceso para gerentes e ingenieros está documentado e integrado en un proceso
estándar para la organización.
•Todos los proyectos usan una versión aprobada y adaptada del proceso estándar de la
organización.
•Un grupo de proceso de ingeniería de software ha sido establecido para focalizar y
liderar esfuerzos de mejora.
NIVEL 4 – Gestión Cuantitativa (Administrado)
•Existen mediciones detalladas del proceso y calidad del producto.
•El producto y el proceso son cuantitativamente conocidos y controlados.
NIVEL 2 – Gestionado (Repetible)
•Procesos básicos de gestión establecido para administrar: requerimientos, esfuerzos,
costos, cronogramas, funcionalidad a desarrollar y pedidos de cambios.
•La disciplina del proceso permite la repetición de éxitos anteriores en proyectos
similares.
•La fuerza de la organización está dada por la existencia de experiencia en desarrollo
de procesos similares pero existen riesgos al presentarse nuevos desafíos.
NIVEL 5 – Mejora Continua (Optimizado)
•La organización busca identificar aquellos elementos más débiles del proceso y
optimizarlos sobre la base de un análisis defecto-causa y prevención de defectos.
•Existen datos que justifican la aplicación de nuevas ideas o tecnologías a
eterminadas tareas críticas y la evidencia cuantitativa permite conocer el grado de
eficacia alcanzado al implementarlas en proyectos piloto.
7
Nivel de Madurez
Capacidad del
proceso de desarrollo
de software
Determina
Área Clave de
Proceso Prácticas
Genéricas (aspectos comunes)
Prácticas
EspecíficasCumple
LogranDefine
Metas
Definido porImplementado
porQue
determinan
Tareas, Herramientas
e Infraestructura
Estructura del Modelo de Madurez de Capacidad CMMI v 1.2.
Implementación e
Institucionalización
8
Implementación proceso de mejora de calidad en Codes S.A.
(Alineado al modelo de madurez CMMI v 1.2).
Formalización del proceso de desarrollo de software:
¿Qué es un proceso de desarrollo de Software?
• Es el proceso a través del cual los requerimientos de usuario son traducidos en especificaciones funcionales, las especificaciones funcionales en especificaciones de diseño, las especificaciones de diseño en código, el cual es testeado,documentado y liberado para ser usado por el usuario (IEEE).
• Es el conjunto de herramientas, métodos y prácticas que usamos para producir un producto de software (Humphrey W.)
9
Proceso de mejora de calidad – Objetivo
madurar nuestro proceso de desarrollo
de software – PDSC. Formalización del proceso de desarrollo de software avanzando hacia un proceso de desarrollo de software maduro.
Proceso inmaduro: Un proceso de software inmaduro, tiene como características:• Improvisación.• Falta de rigurosidad.• Organización reactiva - Apaga incendios.• Requerimientos y pedidos de cambio no controlados.• La ausencia de mediciones provoca la falta de base para predecir atributos del proceso o del producto.• Excesos en plazos y presupuestos previstos.• Se rescinde calidad y funcionalidad para llegar a alcanzar los objetivos básicos del proyecto.
Proceso maduro: tiene las siguientes características:• Administración de requerimientos y del proceso• Proceso comunicado, usable, consistente y actualizado• Roles y responsabilidades definidas• Monitoreo gerencial• Las mediciones rigurosas generan una base objetiva para predecir y juzgar atributos del proceso y del producto• Realismo de cronogramas y presupuestos• Se alcanzan los resultados esperados
11
Ciclo de Vida – PDSC. (Detalle)
Iniciación: facilita la autorización formal del inicio del proyecto a través de un documento formal de aprobación.
Planificación: define y refina los objetivos, planifica el curso de acción generando los planes en los que se fijan acuerdos y se definen actividades de seguimiento.
Ejecución: coordina la gente y los recursos, y desarrolla las actividades del Proyecto de acuerdo al Plan. En esta fase se realiza el control de calidad.
Control y Monitoreo: procedimientos que miden el progreso del proyecto e identifican variaciones con respecto al Plan, para tomar acciones correctivas
12
Análisis
Desarrollo
Diseño
Pruebas
Implementación
Ciclo de Vida de Proyecto – PDSC.
Clásico: Cascada
13
Versión
1
Versión
1 2
Versión
1 2 … n
Versión 1 +
Funcionalidad 1
Versión 2 +
Funcionalidad 2
Versión n +
Funcionalidad n
Ciclo de Vida de Proyecto – PDSC.
Incremental: (n cascadas).
15
Tipos de Proyecto – PDSC.
Llave en mano: El cliente contrata con Codes S.A. todo el ciclo de vida del proyecto (Administración del Proyecto, Análisis, Diseño, Desarrollo, Testing e Implementación).
Software Factory: El cliente contrata con Codes S.A. el desarrollo de productos software solamente, puede contratar o no el testing, pero otras funciones como son: Administración del Proyecto a nivel general, Análisis, Diseño, Testing e Implementación quedan bajo la responsabilidad del cliente.
Mantenimiento: El cliente contrata un paquete de horas, para un fin especifico, envía los requerimientos a Codes S.A. los mismos se gestionan realizando entregas según se define con el cliente. Generalmente este es un servicio para aplicaciones que se encuentran en producción.
Implementación Productos de terceros: El cliente contrata con Codes S.A la customización e implementación de un producto de terceros. Este tipo de
proyecto involucra todo el ciclo de vida de un proyecto, con las adaptaciones que surgen de tratarse de un producto existente sobre el que hay que realizar modificaciones para su implementación.
17
Mejora Proceso Calidad Codes S.A.
Recertificación 2010
Nivel Foco Áreas de proceso
5 Mejora Continua Proceso de Mejora ContinuaInnovación Organizacional y Despliegue.
Análisis Causal y Resolución.
4 Gestión Cuantitativa Gestión Cuantitativa de ProyectosRendimiento Organizativo del Proceso
Gestión Cuantitativa del Proceso
3 Definido Procesos Estandarizados
Desarrollo de Requerimientos
Solución Técnica
Integración de Producto
Verificación
Validación
Foco Organizativo de Procesos
Definición del Proceso Organizativo
Formación Organizacional
Gestión Integrada de Proyectos
Gestión de Riesgos
Análisis de decisiones y resoluciones.
2 Gestionado Gestión Básica de Procesos
Gestion de Requerimientos
Planificación de Proyectos
Seguimiento y Contol de Proyectos
Gestión de Acuerdos con Proveedores
Métricas y Análisis
Aseguramiento de la Calidad de procesos y productos
Gestión de la configuración
1 Inicial
18
CMMI
Nivel 2
CM
PMC
PP
MA
REQM
PPQA
SAM
CMMI
Nivel de Madurez 2
IMP
RSKM
+ Nivel Capacidad
3 en Gestión
de Proyectos
Certificación CMMI Nivel 2 Madurez –
Nivel 3 de Capacidad en Gestión de
Proyectos v 1.2 - 2010
19
Gestión de Requerimientos y
Propuestas(REQM)
Planificación del Proyecto
(PP)
Métricas y Análisis (MA)
Gestión de la Configuración (CM)
Aseguramiento de la Calidad (PPQA)
Monitoreo y Control (PMC)
Gestión Integrada de Proyectos (IPM)
Gestión de Riesgos(RSKM)
EjecuciónDesarrollo
Gestión deCambios(REQM)
Descripción del Proceso de Desarrollo
de Software Codes- PDSC
21
MS SQL Server
MS Share Point
MS Visual Studio Team
Team Fundation Server
Todos los Roles
MS Office
Excel integrado a VSTS
MS Project
MS Visual Studio Team System
Team Explorer
CLIENTES TEAM FUNDATION SERVER POR ROL
Visual Studio Team System 2005.
Team Fundation Server
23
Cliente Visual Studio Team System 2005. Team Explorer – MS Project (Work Items)
Team Explorer
(Explorador de Proyectos)
Works Items
26
Requirement
Proposal
Task
Change Request
Task
Task Changeset
Issue
Risk
Bug
Task
Gestión Requerimientos y Propuestas
Change Request
Changeset
Changeset
Change Request
Task Changeset
Change Request Task
Trazabilidad. La trazabilidad está dada por
medio de la relación entre work items, chageset y link a la documentación generada..