Académique Documents
Professionnel Documents
Culture Documents
Juan Palacio Baeres Juan Palacio Baeres Dic. 2005 Dic. 2005
Modelos genricos
Adaptaciones para softw.
1997
ISO 9000-3
Trillium Bootstrap 1995
1959
1979
1987
MIL-Q 9858
BS 5750
ISO 9000
Modelos especficos para software.
ISO 12207
1995
Proy. SPICE
1993
2003-05
ISO 15504
2001
CMM-SW
DSDM SCRUM CRYSTAL XP
CMMI
1995
5. Procesos primarios
5.1 Adquisicin 5.1 Adquisicin
5. Procesos de soporte
6.1 Documentacin 6.1 Documentacin
Concepto Retirada
6.3 Control de calidad 6.3 Control de calidad 5.3 5.3 Operacin Operacin
Proceso 1
6.6 Reuniones 6.6 Reuniones 5.3 5.3 Mantenimiento Mantenimiento 6.7 Auditora 6.7 Auditora 6.8 Resolucin de problemas 6.8 Resolucin de problemas
Proceso N
7. Procesos organizacionales
7.1 Gestin 7.1 Gestin 7.2 Infraestructura 7.2 Infraestructura
Procesos y tcnicas para desarrollo de software CMM: Modelo de madurez de las capacidades Idea principal: Organizaciones maduras/inmaduras En una organizacin inmadura:
Procesos de software: improvisados o no respetados (si existen) Planificacin en funcin de los problemas Presupuestos y planificacin incumplidos Sin base objetiva para evaluar la calidad o para resolver problemas Inexistencia o reduccin de las actividades de mejora de la calidad
Capacidad de gestin: desarrollo de software y procesos de mantenimiento Proceso de software difundido al equipo y planificado Procesos modificables: pruebas piloto controladas y anlisis de coste/beneficio Roles y responsabilidades establecidos en el proyecto y la organizacin Gestores: monitorizacin la calidad de los productos y de los procesos Planificaciones y presupuestos realistas: rendimientos histricos Proceso disciplinado en el que todos los participantes entienden su valor, existiendo adems la infraestructura necesaria para soportar el proceso
Procesos y tcnicas para desarrollo de software CMM: Modelo de madurez de las capacidades
Alta
Eficiencia de los procesos Capacidad de los procesos Madurez de los procesos
5 4
Gestionado.
Optimizado
Baja
3 2
Repetible
Baja
Definido
Escalabilidad Repetibilidad
Inicial
Alta
5
Procesos y tcnicas para desarrollo de software CMM: Modelo de madurez de las capacidades
Departamento de Defensa Americano(DoD), Instituto de Ingeniera del Software (SEI) 1987: Publicacin de la descripcin inicial del marco de madurez y de cuestionarios de evaluacin de organizaciones (proveeodores DoD) 1992: CMM for software 1.0 Nivel de madurez
1.- Inicial
Descripcin
Entorno catico o de programacin heroica. El desarrollo del software no se basa en procesos sino en esfuerzo personal ad hoc para cada situacin. Se emplean procesos bsicos de gestin de proyectos para trazar costes, agendas y funcionalidad. La organizacin repite las prcticas que se van revelando exitosas. Los procesos de software, tanto de ingeniera como de gestin, se encuentran documentados, integrados como actuacin estndar de la organizacin; y se emplean en todos los proyectos Se obtienen mediciones detalladas de todos los procesos y se mide cuantitativamente tantos los procesos como sus productos.
2.- Repetible
3.- Definido
4.- Gestionado
5.- Optimizado
La retro-informacin cuantitativa que se obtiene a travs de la ingeniera de procesos se emplea para mejora continua e innovacin.
Procesos y tcnicas para desarrollo de software CMMI: Integracin de modelos para la mejora de procesos
Integracin en un modelo nico de varias disciplinas. CMMI-SW : Software (Agosto 2002) CMMI-SE/SW : + Ingeniera de sistemas (Enero 2002)
+ IPD-CMM 0.98 + CMM-SA Queda en desuso CMM-SW CMM-SW 2.0 Draft C + SECM (Systems Engineering Capability Model, tambin llamado EIA 731)
CMMI-SE/SW/IPPD : + Desarrollo integrado de procesos y productos (Enero 2002) CMMI-SE/SW/IPPD/SS : + Gestin de proveedores (Marzo 2002)
Pone un mayor nfasis en el uso continuo de mtricas Insiste en la necesidad de la trazabilidad desde los requerimientos al producto final Desglosa y detalla las reas de proceso relativas a la ingeniera Los niveles 2 y 4 se llaman ahora "gestionado" y "gestionado cuantitativamente".
Se ha desarrollado tambin un nuevo mtodo de para la evaluacin de las organizaciones denominado SCAMPI.
7
/SW CMMI-SE
ous Continu tion nta Represe
NM 5
capacidad
NM 4 NM 3 NM 2 NM 1
rea de proceso
8
Descripcin
No se realizan procesos, o con stos no se alcanzan los objetivos del rea de proceso.
1.- Ejecutado
2.- Gestionado
El proceso consigue el objetivo, y adems es planificado, revisado y evaluado para conseguir que cumpla los requisitos que se desean.
3.- Definido
Proceso gestionado que adems est incorporado y ajustado al estndar normalizador de la organizacin, y alineado con su estrategia.
Proceso definido que adems se mide cuantitativamente (con tcnicas estadsticas u otras) Proceso cuantitativamente gestionado que a travs de la informacin que proporciona y de procesos de innovacin, se adapta y cambia, mejorando su convergencia con los objetivos de negocio.
5.-Optimizado
Gestin cuantificada de proyectos Rendimiento de los procesos de la organizacin Desarrollo de requisitos Solucin tcnica Verificacin Validacin
3 DEFINIDO
Integracin de producto Procesos orientados a la organizacin Definicin de los procesos de la organizacin Formacin Gestin integrada de proyecto Gestin de riesgos Anlisis y resolucin de decisiones Gestin de requisitos Planificacin de proyecto Monitorizacin y control de proyectos
2 GESTIONADO
Gestin y acuerdo con suministradores Medicin y anlisis Gestin de la calidad de procesos y productos Gestin de la configuracin
1 INICIAL
10
GESTIN DE PROYECTOS
Gestin y acuerdo con proveedores Gestin integrada de proyecto Gestin de riesgos Gestin cuantificada de proyecto Gestin de la configuracin Gestin de la calidad de procesos y productos
SOPORTE
Medicin y anlisis Anlisis y resolucin de decisiones Anlisis y resolucin de problemas Desarrollo de requisitos Gestin de requisitos
INGENIERA
Soluciones tcnicas Integracin de producto Verificacin Validacin Definicin de los procesos de la organizacin
GESTIN DE PROCESOS
Procesos orientados a la organizacin Formacin Rendimiento de los procesos de la organizacin Innovacin y desarrollo
11
12
Procesos y tcnicas para desarrollo de software ISO/IEC Std. 15504: estructura del estndar
Conceptos y gua de introduccin P8
P9
Vocabulario
P6
P3
Gua de evaluacin
P4
P2
P5
13
Dimensin de proceso Caracterizada por las declaraciones del propsito de un proceso, que son objetivos esenciales mensurables de un proceso. Dimensin de capacidad de proceso Caracterizada por una serie de atributos de proceso, aplicables a cualquier proceso, que representan caractersticas mensurables necesarias para gestionar un proceso y mejorar su capacidad.
14
Procesos y tcnicas para desarrollo de software ISO/IEC TR 15504: Dimensin de proceso (alineado 12207)
CUS.1 Adquisicin
Preparacin de la Adquisicin Seleccin del suministrador Seguimiento del suministrador Aceptacin del cliente
SUP.1 Documentacin SUP.2 Gestin de la configuracin SUP.3 Aseguramiento de la calidad SUP.4 Verificacin SUP.5 Validacin
MAN.1 Gestin
ORG.3 Gestin de las personas ORG.4 Infraestructura ORG.5 Medicin ORG.6 Reutilizacin
15
Medicin de atributos
No alcanzado (0% a 15%). No alcanzado (0% 15%). Escasa o ninguna evidencia de la Escasa o ninguna evidencia de la consecucin del atributo. consecucin
N N
P P
Parcialmente alcanzado (16% a 50%). Parcialmente alcanzado (16% a 50%). Evidencia de un enfoque sistemtico y de Evidencia de un enfoque sistemtico y de la consecucindel atributo. la consecucindel atributo. Algunos aspectos de la consecucin Algunos aspectos de la pueden ser impredecibles. pueden ser impredecibles. Ampliamente alcanzado (51% a 85%). Ampliamente alcanzado (51% a 85%). Evidencia de un enfoque sistemtico y de Evidencia de un una consecucin significativa del atributo. una consecucin significativa del atributo. La realizacin del proceso puede variar en La realizacin del proceso puede variar en algunas reas. algunas reas. Totalmente alcanzado (86% a 100%). Totalmente alcanzado (86% a 100%). Evidencia de un enfoque completo y Evidencia de un enfoque completo y sistemtico y de la consecucin plena del sistemtico y de la consecucin plena del atributo. atributo.
L L
F F
16
17
Kent Beck, Mike Beedle, Arie van Bennekum, Alistair Cockburn, Ward Cunningham, Martin Fowler, James Grenning, Jim Highsmith, Andrew Hunt, Ron Jeffries, Jon Kern, Brian Marick, Robert C. Martin, Steve Mellor, Ken Schwaber, Jeff Sutherland, Dave Thomas
http://agilemanifesto.org/
18
Modelos genricos
Adaptaciones para softw.
1997
ISO 9000-3
Trillium Bootstrap 1995
1959
1979
1987
MIL-Q 9858
BS 5750
ISO 9000
Modelos especficos para software.
ISO 12207
1995
Proy. SPICE
1993
2003-05
ISO 15504
2001
CMM-SW
DSDM SCRUM CRYSTAL XP
CMMI
1995
19
5. Procesos de soporte
6.1 Documentacin 6.1 Documentacin
Recogen tcnicas, buenas prcticas contrastadas por profesionales reconocidos. Cada una tiene sus caractersticas propias y cubre un rango de reas de procesos ms o menos amplia: Tendencia a combinarlas para dar mayor cobertura en el ciclo de vida Han surgido de entornos reales de desarrollo de software Responden mejor a la realidad del software y las diferencias con produccin industrial.
6.3 Control de calidad 6.3 Control de calidad 5.3 5.3 Operacin Operacin
6.6 Reuniones 6.6 Reuniones 5.3 5.3 Mantenimiento Mantenimiento 6.7 Auditora 6.7 Auditora 6.8 Resolucin de problemas 6.8 Resolucin de problemas
7. Procesos organizacionales
7.1 Gestin 7.1 Gestin 7.2 Infraestructura 7.2 Infraestructura
20
21
De esta forma fallos se localizan muy pronto. La planificacin no puede evitar algunos errores, que slo se evidencian al desarrollar el sistema. La retro-informacin es la herramienta que permite reajustar la agenda y los planes.
22
Coraje
El coraje implica saber tomar decisiones difciles. Reparar un error cuando se detecta. Mejorar el cdigo siempre que tras el feedback y las sucesivas iteraciones se manifieste susceptible de mejora. Tratar rpidamente con el cliente los desajustes de agendas para decidir qu partes y cundo se van a entregar.
23
PRCTICAS DE DESARROLLO 1.- Adoptar un mtodo de desarrollo basado en las pruebas para asegurar que el cdigo se comporta segn lo esperado. 2.- Programacin por parejas, para incrementar el conocimiento, la experiencia y las ideas. 3.- Asumir la propiedad colectiva del cdigo, para que todo el equipo sea responsable de l. 4.- Integracin continua, para reducir el impacto de la incorporacin de nuevas funcionalidades.
24
25
Equipos autogestionados. Una vez dimensionadas las tareas no es posible agregarles trabajo extra. Reuniones diarias en las que los miembros del equipo se plantean 3 cuestiones:
Qu has hecho desde la ltima revisin? Qu obstculos te impiden cumplir la meta? Qu vas a hacer antes de la prxima reunin?
Iteraciones de desarrollo de frecuencia inferior a un mes, al final de las cuales se presenta el resultado a los externos del equipo de desarrollo, y se realiza una planificacin de la siguiente iteracin, guiada por cliente.
26
27
28
AM (Agile Modeling)
Agile Modeling es la presentacin de un nuevo enfoque para realizar el modelado de sistemas, (diseo) y basado en los principios de los mtodos giles remarca la conveniencia de reducir el volumen de la documentacin. (Amber S. Agile Modeling: Effective Practices for Extreme Programming and the Unified Process)
Fomento de la comunicacin abierta. Trabajo en torno a una visin compartida. Apoderar a los integrantes del equipo (empowerment) Establecimiento de responsabilidades claras y compartidas. Centrar el objetivo en la entrega de valor para el negocio. Permanecer giles y esperar e cambio. Invertir en calidad. Aprender de la experiencia.
30
Mapas mentales de organizacin. Hay 2: De equipo y de procesos reas de trabajo en las que se usan mtodos determinados (Gestin de proyecto, de riesgos y de la mejora del talento) Ideas que dan soporte a los principios y disciplinas de MSF y se muestran a travs de prcticas especficas contrastadas. Prcticas que han demostrado su efectividad en proyectos en diferentes condiciones de entornos reales Prcticas opcionales, sugeridas por el modelo.
31
Modelo o Disciplina
Modelo de procesos
Concepto Clave
Prctica Contrastada
Recomendac.
Uso de facilitadores externos Creacin de una BD de riesgos Est relacionado
Disposicin al aprendizaje
Gestin de riesgos
En 2005, el desarrollo del nuevo producto de Microsoft Visual Studio 2005 Team System ha ganerado la evolucin de MSF hacia la nueva versin 4.0 con dos lneas paralelas:
Microsoft Solutions Framework (MSF) for Agile Software Development. Microsoft Solutions Framework (MSF) for CMMI Process Improvement.
32
Desarrollo iterativo. Gestin de requisitos. Uso de arquitecturas basadas en componentes. Uso de tcnicas de modelado visual. Verificacin continua de la calidad. Gestin y control de cambios.
33
Roles: analista de sistemas, diseador, diseador de pruebas, roles de gestin y roles de administracin. Actividades: RUP determina el trabajo de cada rol a travs de actividades. Cada actividad del proyecto debe tener un propsito claro, y se asigna a un rol especfico. Las actividades pueden tener duracin de horas o de algunos das; y son elementos base de planificacin y progreso. Artefactos: Son los elementos de entrada y salida de las actividades. Son productos tangibles del proyecto. Las cosas que el proyecto produce o usa para componer el producto final (modelos, documentos, cdigo, ejecutables) Disciplinas: son contenedores empleados para organizar las actividades del proceso. RUP comprende 6 disciplinas tcnicas y 3 de soporte. Tcnicas: modelado del negocio, requisitos, anlisis y diseo, implementacin, pruebas y desarrollo. Soprte: gestin de proyecto, gestin de configuracin y cambio, y entorno. Flujos de trabajo: son el pegamentode los roles, actividades, artefactos y disciplinas, y constituyen la secuencia de actividades que producen resultados visibles.
34
1.- Inicio. Es la fase de la idea, de la visin inicial de producto, su alcance. El esbozo de una arquitectura posible y las primeras estimaciones. Concluye con el hito de objetivo. 2.- Elaboracin. Comprende la planificacin de las actividades y del equipo necesario. La especificacin de las necesidades y el diseo de la arquitectura. Termina con el hito de Arquitectura. 3.- Construccin. Desarrollo del producto hasta que se encuentra disponible para su entrega a los usuarios. Termina con el hito del inicio de la capacidad operativa. 4.- Transicin. Traspaso del producto a los usuarios. Incluye: manufactura, envo, formacin, asistencia y el mantenimiento hasta lograr la satisfaccin de los usuarios. Termina con el hito de entrega del producto.
35
Tamao
Criticidad
Dinamismo
Personal
Cultura
36
% Senior y Master 15 20 25 30 35 30 50 90 70 5 10
Criticidad
Prdidas posibles
Dinamismo
% Modific. Requisitos / mes 1
Vida s Bien e
10 30 100 300
gi l
For ma l
50 30 10
Tamao
Nmero de personas
Cultura
% adaptacin a entornos caticos
37
38
39
Juan Palacio
jpalacio@navegapolis.net
http://www.navegapolis.net
Puedes consultar la licencia de uso y distribucin de este trabajo en el registro de Safe Creative. http://www.safecreative.org/work n de obra: 0711220312698 40