CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

106
CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2

Transcript of CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

Page 1: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

CMMI for Development Versión 1.2

Introducción a CMMI Versión 1.2

Page 2: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

Me hubieras dicho antes…

Cuándo cambiaron de opinión?

¿Cuál era la última versión?

¿Quién sabe arreglar el formato?

Dónde lo ubico?

Cómo iba a saberlo!

No podemos hacer nada, Pepito no está!

¿En dónde encuentro esa información?

Yo ya lo había hecho!

¿En qué parte lo guardo?

A qué mail te lo mando?

No revisé mi mail, no lo ví…

Por qué no fuiste a la reunión?-Qué reunión?!?

Page 3: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

Me hubieras dicho antes…

Cuándo cambiaron de opinión?

¿Cuál era la última versión?

¿Quién sabe arreglar el formato?

Dónde lo ubico?

Cómo iba a saberlo!

No podemos hacer nada, Pepito no está!

¿En dónde encuentro esa información?

Yo ya lo había hecho!

¿En qué parte lo guardo?

A qué mail te lo mando?

No revisé mi mail, no lo ví…

Por qué no fuiste a la reunión?-Qué reunión?!?

Page 4: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

Me hubieras dicho antes…

Cuándo cambiaron de opinión?

¿Cuál era la última versión?

¿Quién sabe arreglar el formato?

Dónde lo ubico?

Cómo iba a saberlo!

No podemos hacer nada, Pepito no está!

¿En dónde encuentro esa información?

Yo ya lo había hecho!

¿En qué parte lo guardo?

A qué mail te lo mando?

No revisé mi mail, no lo ví…

Por qué no fuiste a la reunión?-Qué reunión?!?

Capability Maturity Model®

Integration

(CMMI®)

Page 5: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

Capability Maturity Model®

Integration

(CMMI®)

Page 6: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

Tema 1

Introducción a la mejora de los procesos

“El futuro ya ha pasado, y nuestro trabajo ahora es comprenderlo antes de que éste se haga obvio”

Alvin Toffler – 1996

Page 7: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

Revisión del Silabo.

Información introductoria.

Motivación y expectativas para la mejora de procesos.

El costo de la calidad.

Dinámica Nro. 001.

Conceptos de gestión de procesos.

Modelo de procesos.

La Gestión de procesos.

Dinámica Nro. 002.

Contenido de la Sesión I

Page 8: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

Competencias del curso (1)

Page 9: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

Competencias del curso (2)

Page 10: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

Competencias del curso (3)

Page 11: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.
Page 12: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

El curso permitirá: Ilustrar los beneficios de la

mejora de procesos. Introducirnos al contenido

del modelo CMMI, siendo éste el principal enfoque el curso.

Estableciendo los Fundamentos

Page 13: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

Al final del curso, Ud., será capaz de: Describir los componentes de los modelos de CMMI y

sus relacionamientos. Discutir las áreas de proceso. Ubicar información relevante en el modelo.

Objetivos del Curso

Page 14: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

Amplia audiencia de: Desarrolladores de productos e implementadores de

procesos. Cualquier persona interesada en aprender acerca de

CMMI.

Se asume que no hay ninguna experiencia ni conocimientos en modelos de mejora de procesos.

La Audiencia a este Curso

Page 15: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

Presentación de los participantes. Nombres y apellidos. Posición y experiencia profesional. Experiencia en mejora de procesos.

Cuánto tiempo?. Experiencia con otros modelos y estándares.

Expectativas. Que desea conseguir en este curso?.

Introducción y Expectativas

Page 16: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

Reglas

Page 17: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

Participación. Una persona habla y los demás prestan atención. Mantenga el punto y foco de la pregunta y discusión. Manténganse en silencio mientras otros hablan

(celulares y otros aparatos de comunicación). Retorne pronto de los tiempos de descanso.

Compromisos

Page 18: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

Motivación para la mejora de

procesos

Page 19: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

Una vez un muchacho llegó a un campo de leñadores en las montañas en busca de trabajo. El capataz vio

que el muchacho prometía y lo contrató.

Durante su primer día, trabajó arduamente y como resultado, cortó muchos árboles.

El segundo día, trabajó tan arduamente como el primero pero, su rendimiento fue apenas la mitad que el primer día.

El tercer día se propuso mejorar su rendimiento. Puso todo su empeño y fuerza en dar hachazos contra los árboles, pero no sirvió de nada.

El capataz, viendo los resultados del trabajo del joven leñador, le preguntó, "¿Cuándo fue la última vez que afilaste tu hacha?"

El joven le respondió, "No he tenido tiempo de hacerlo;he estado ocupado cortando árboles".

La imperiosa necesidad de la mejora ....

Page 20: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

Gerald M. Weinberg

Quality Software Management

Comprenderel valor de laCalidad

Motivación para lograr calidad

Comprendercómo lograr calidad

Motivación para medir el costo de la calidad

Cuál es esa motivación que nos guía a mejorar ?.

Page 21: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

“La calidad de un producto está determinada principalmente por la calidad del proceso usado para desarrollarlo y mantenerlo.”

Basado en los principios de TQM por Shewhart, Juran, Deming y Humphrey.

.... Y para ello, debemos considerar ....

Page 22: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

También en el aire las cosas deben ser precisas ....

Page 23: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

Resultados: Estimación del Esfuerzo de Boeing

0 %

140%

-140%Sin Datos Históricos Con datos Históricos

Variación entre + 20% hasta - 145% Variación entre - 20% hasta + 20%(Mostly Level 1 & 2) (Level 3)

Porc

enta

je S

obre

/Baj

o

(Basado en 120 proyectos de Sistemas de Información en Boeing)

. . .

.

....

.

..

. .. .

.

. . .. . .

.

..

..

. ...

.

. . .. ..

.. . .

.

.. .

...

. .

. ..

.. .

..

...

. . .. . .. . . . .

. . . . .. . . . . .. . . . .. . . . . .

. . . . . . . .. . . . . .

. . . . . .

Fuente: John D. Vu. “Software Process Improvement Journey:From Level 1 to Level 5.” 7th SEPG Conference, San Jose, March 1997.

. . . .. .. . . . . . . . . . .. . . .. .. . . . . ... .. .. .. ...... . .. . ... . ... .. .. . . . . .. . . . . .. . . . . .. . . .. . . . . . . . . . .. . . . .. . .. . . . . . . . .

.... Entonces, podemos evidenciar que ....

Page 24: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

Aplicaciones con cero defectos. Costo de rehacer igual a cero. Estimaciones más precisas. Más desarrollo y menos mantenimiento. Prácticas con estándares

internacionales. Gestión de los cambios. Modelo de tercerización con

proveedores. Menor tiempo de salida al mercado.

Sí !!!!!!

Podemos lograrlo a través de la mejora de la calidad ....

Page 25: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

.... Pero .... Debemos plantearnos un cambio ....

Page 26: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

No hay fronteras comerciales, políticas, del conocimiento

Automatización de procesos productivos y

administrativos

Movimiento acelerado de los

Mercados y de sus actores

Aceleración del cambio tecnológico

.... Y, qué motiva el cambio ?

Page 27: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

Debemos quebrar nuestros paradigmas y “trabas” ....

Page 28: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

Situación futura

deseada

Aplicaciones con CERO defectos

Costo de rehacer IGUAL A cero

Estimaciones MÁS PRECISAS

MÁS desarrollo y MENOS mantenimiento

ESTÁNDARES INTERNACIONALES

GESTIÓN de los cambios

Tercerización EFICIENTE con proveedores

MENOR tiempo de salida al mercado

Situación actual

Aplicaciones con defectos

Costo de rehacer mayor que cero

Estimaciones imprecisas

Más mantenimiento y menos desarrollo

Trabajo no estandarizado

No hay Gestión de los cambios

Uso no eficiente de proveedores

Mayor tiempo de salida al mercado

.... Para lograr resultados esperados y predecibles ....

Page 29: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

La dieta vs. cambiar hábito de consumo.

Esto es como .... La solución a nuestro problema de ....

Page 30: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

ELCAMBIO

Y, cómo lograrlo ?.

Page 31: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

Es complejo desarrollar __________________ de calidad de manera ____________________ a

nuestros clientes, partiendo de unos ________________ pobremente

definidos

Porqué preocuparse por los procesos de software ?.

Page 32: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

Es complejo desarrollar productosproductos de calidad de manera consistenteconsistente a

nuestros clientes, partiendo de unos procesosprocesos pobremente

definidos

Porqué preocuparse por los procesos de software ?.

Page 33: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

Un 25% de todos los proyectos software se cancelan.

Clientes reciben productos, de las compañías de SW, con un un 15% de errores no eliminados.

Muchas organizaciones dedican entre el 30 y 40% de su tiempo y dinero a corregir el producto desarrollado.

En los proyectos de software se cumplen los plazos en un 50% de las ocasiones.

Sources: Capers Jones and Bill Curtis, 2001.

Cuál es la realidad de la industria del software ?.

Page 34: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

Dos tercios de los proyectos de mejora no concluyen con éxito tras una evaluación formal, debido a:

Estrategias incorrectas. Falta de compromiso. Falta de seguimiento. Incapacidad de medir las mejoras. Objetivos de mejora no alineados con los

objetivos del negocio.Source: Herb Krasner, June 2002.

Normalmente se presentan algunos problemas en como se ejecuta unainiciativa – SPI.

.... De allí que ....

Page 35: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

Los programas de mejora de procesos exitosos pueden:

Reducir el número de defectos para el cliente en un 95%.

Reducir los plazos de desarrollo en el 71%. Incrementar la productividad (medida en líneas

de código o FP) en el 222%. Por último, generar un Retorno de la Inversión

de 5 : 1.

Sources: Capers Jones and Bill Curtis, 2001.

.... Sin embargo ....

Page 36: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

Todo el mundo entiende la importancia de tener una plantilla de calidad y motivada, pero…

...incluso nuestros mejores empledos no pueden rendir de manera óptima cuando los procesos no se entienden o no operan de manera óptima.

Los mayores condicionantes del coste

del producto, plazos y calidad

ProductosProductos

PersonasPersonas

TecnologíaTecnologíaProcesoProceso

Para ello, el foco de atención de la Calidad está ....

SATISFACCIÓN SATISFACCIÓN DEL CLIENTEDEL CLIENTE

Page 37: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

El costo de la calidad

Page 38: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

Detalle de la proyección de los costos según las mejores prácticas de la Industria del Software en el Mundo.

Fuente: Crosby, 1995

Coste de

Desarrollo

Coste de

Prevención

Coste deEvaluación Coste de

Rehacer

80k

8k7k 5k

Con CMMI

Tiempo

US$

(100

K)

.... Y los costos ?, .... Cómo se observan ?

Sin CMMI

Tiempo

Coste de

Desarrollo Coste de

Evaluación

Coste deRehacer

US$

(100

K)

65k

30k

5kCoste de

Prevención

Page 39: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

Cost of Quality (CoQ)

Crosby describe CoQ como el coste para conseguir productos y servicios de calidad.

= Cost of Quality

Coste de No ConformidadFallos internos

+ Fallos externos

Categorías de coste

Entonces .... Qué es el costo de calidad ?.

+Prevención

+ Valor

Coste de Conformidad

Page 40: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

Evolución del CoQ Raytheon

L1 L2 L3

Source: Ratheon Electronic Systems Experience in Software Process Improvement, CMU/SEI-95-TR-017, November 1995

L1 L2 L3

NIVEL CMM

L4

Qué nos dice la lectura de lo que pasó en Raytheon ?.

Page 41: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

5821

21

67

23

10

39

20

41

1988 - CMM Nivel 1 1990 - CMM Nivel 2

1992 – CMM Nivel 3

Source: Ratheon Electronic Systems Experience in Software Process Improvement, CMU/SEI-95-TR-017, November 1995

Y ... Qué mejoras logró Raytheon ?.

1995 - CMM Nivel 4

77

176

ROI 7.7:1, Productividad 140%, $4.48M ahorrados en seis proyectos en un año

Nuevos desarrollos

Coste de conformidad (COC)

Coste de no conformidad (CONC)

Page 42: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

Importancia de la mejora de los procesos en su organización.

Dinámica Nro. 001

Page 43: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

Conceptos de gestión de procesos

Page 44: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

¿Cómo

define

usted un

proceso?

Page 45: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

PROCESOEntradas Salidas

El énfasis en procesos: Otorga consistencia y capacidad de repetir. Facilita la captura de información de tendencia. Reduce la dependencia en individuos específicos. Provee control.

métodos

transformaciones

actividades

prácticas

Un proceso es ....

Page 46: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

Un procesoproceso, es una secuencia de pasos desarrollados para un proceso dado (IEEE).

Un procesoproceso, es la organización lógica de personas, material, energía, equipo, y procedimientos de trabajo dentro de actividades diseñadas para producir un resultado específico (De Pall, Gabriel A. Quality Process Management. Englewood Cliffs, N.J.: Prentice Hall, 1987)

Un procesoproceso, son actividades que pueden ser reconocidas como implementación de prácticas en un modelo (Glosario del CMMI).

.... Por consiguiente es definido como ....

Page 47: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

Un procesoproceso, es un conjunto de prácticas que se realizan con un propósito; puede incluir herramientas, métodos, materiales y/o personal.

Comúnmente se presenta como uno de los componentes de la triada proceso-personas-tecnología, pero en verdad es el pilarpilar que unifica estos y otros aspectos.

.... Y también, como ....

Page 48: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

.... Que para su institucionalización requiere ....

ESTÁNDARES“Definiciones Operacionales"

& "criterio de aceptación"

ENTRENAMIENTOProvee conocimiento yhabilidades necesarias

HERRAMIENTASApoya y automatiza

operaciones

POLÍTICAS"Leyes" o "regulaciones"

que gobiernan operaciones

PROCESOS“Lo que sucede en el tiempo”

para construir productos

Restricciones a

PROCEDIMIENTOS

“cómo" o paso a paso Instrucciones sobre

Implementado por

Apoyado por

Page 49: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

“La calidad de un producto es altamente influenciado por la calidad de los procesos empleados para adquirirlos, desarrollarlos y mantenerlos”.

Basado en los principios de TQM de Shewhart, Juran, Deming y Humphrey.

Esfuerzoheróico

Negocio softwaremaduro

¡TÍPICO!Podría

no sucederde nuevo

PROCESO

PRO

DUCT

O

Malo Bueno

Bueno

La premisa básica de la mejora de procesos es ....

Page 50: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

Las teorías de gestión de procesos son una síntesis de los conceptos de Deming, Crosby, Juran, y otros autores.

En los últimos 30 años, estas teorías han sido empleadas para resolver problemas comunes a muchas organizaciones.

Muchos de estos conceptos se han utilizado para desarrollar modelos de mejora de procesos.

Sin embargo, esta mejora de procesos no es nueva ....

Page 51: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

Un proceso proporciona un marco disciplinado ....

… en oposición al foco en personas: Su personal es, por término medio, lo “bueno” que la formación

impartida le permite serlo.

Trabajar más duro no es la respuesta.

Trabajar más inteligentemente, a través de procesos, es la respuesta.

… en oposición al foco en las tecnologías: Aplicar la tecnología sin objetivos claros no proporciona tantos

beneficios.

La tecnología proporciona máximo beneficio cuando se aplica con un marco de referencia estructurado.

Vale la pena entonces focalizarse en los procesos?.

Page 52: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

Modelo y gestión de procesos

Page 53: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

Es muy difícil entregar consistentementeconsistentemente productos de calidad a nuestros clientes, y a la vez ser también

rentables y eficientes, si nuestro proceso de desarrollo es pobre.

Mejore su procesoy mejorará su producto

Porqué preocuparse por el proceso de software?.

Page 54: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

Veamos algunos mitos ….

Page 55: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

…. Va el primero ….

Estamos muy ocupados en los proyectos no hay tiempo para mejorar ….

Parece que siempre hay tiempo para corregir la cosas que no hacemos bien ... Pero nunca hay tiempo suficiente para

asegurarnos que hacemos las cosas bien

la primera vez!

Page 56: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

La Calidad NO es Gratis…

• Costo de conformidad

...pero la calidad es más barata que las alternativas• Costo de no conformidad

…. Va el segundo …., se requiere INVERSION ?.

Page 57: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

Necesito un lugar donde exhibir algunas pinturas

Quiero un lugar atractivo donde pueda ver arte

Requerimiento del cliente:

Expectativa del cliente:

Estándares/restricciones:

El lugar debe ser seguro!

Los estándares limitan la creatividad – ó mi proyecto es diferente

…. Va la tercera …., otra típica objeción ….

Page 58: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

¿Porqué hacer el trabajo más complejo?. Antes, sin procesos, yo hacía mi trabajo y lo hacía bien pues era capaz de escribir software que funcionaba.

…. Va la cuarta …., otra típica objeción ….

Page 59: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

¿Reducir el tiempo de salida al mercado?

¿Reducir costos de desarrollo?

¿Mejorar la calidad de las aplicaciones?

Entonces …. cuál es la meta realmente ?.

Page 60: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

Do you have a Vision / Mission statement?

YES

US UK

91%87%

What percentage of people clearly understand the vision?

ExecutiveManagement

MiddleManagement

LineEmployees

71%

59%

40% 40%

7%3%

US

UK

Source: Renaissance / CFO Magazine Survey

…. Pero, Ud., no puede hacer lo que no comprende !.

Page 61: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

¿A quién (es) nos parecemos como desarrolladores de software?

Carpintero Bombero ArquitectoAutor

Explorador Científico ArtistaArqueólogo

…. Un breve ejercicio mental ….

Page 62: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

La ciencia no permite libertad para la inspiración y creatividad.

Altos ratios de defectos y baja confiabilidad es intolerable.

El desarrollo de software es arte. Y es ciencia.

Es tantas cosas como personas diferentes programen.

…. Y ahora, es arte o es ciencia ?.

Page 63: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

Quizás la pregunta no es, ¿Qué es el desarrollo de software?, sino, ¿Qué debe ser el desarrollo de software?

La respuesta a esta pregunta es clara: El desarrollo de software debe ser

ingeniería.

¿Lo es ya?, No.

¿Debe serlo?, Indudablemente que sí.

…. O, tal vez ?....

Page 64: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

Inconvenientes con la ingeniería: Todo formal. Sentido común. Experiencia. Las condiciones del mercado no lo permiten.

Estas y otras objeciones se basan en un concepto equivocado de ingeniería: Ingeniería es la aplicación de principios científicos con fines

prácticos. Si la ingeniería no es práctica, no es buena ingeniería.

Es importante tener en cuenta esto ….

Page 65: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

Carnegie Mellon University

Software Engineering Institute

Page 66: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

Un modelo de procesos es una colección estructurada de elementos que describen las características de procesos efectivos.

Y se usa: Como ayuda para:

Establecer objetivos de mejora de procesos. Priorizar. Mejorar los procesos. Proporcionar una guía que asegure el establecimiento de procesos estables, capaces y

maduros, y, Para evaluar la madurez de s organización.

Como una guía para la mejora de procesos organizacionales.

Al final, igual requerimos de un modelo de procesos ....

Page 67: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

Un modelo proporciona:

Cuáles son los beneficios de la mejora basada en modelos ?.

Un punto de inicio.

El beneficio de experiencias previas

de la comunidad.

Un lenguaje común y visión compartida.

Un marco para priorizar mejoras.

Page 68: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

Los modelos son simplificaciones del mundo real.

Los modelos no tiene por qué ser completos.

La interpretación y adaptación debe hacerse en función de los objetivos del negocio.

Se necesita aplicar un juicio profesional para su correcto uso.

No olvidar que: Un modelo no es un proceso. Un modelo muestra qué hacer, pero NO el

cómo hacerlo.

Pero .... Siempre existen riesgos, cuáles son ?.

Page 69: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

Capacidad del proceso:

Rango esperado de resultados que pueden ser conseguidos siguiendo un proceso. Es un predictor de los resultados futuros

Resultados del proceso:

Medición de lo conseguido siguiendo un proceso. Se refiere a una instancia en particular, como por ejemplo, uno en un proyecto.

Muy importante .... La capacidad VS. Los resultados ....

Page 70: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

“All models are wrong, but some are useful.”

George Box

Aproximaciones simplificadas de la realidad que aportan entendimiento.

La clave .... El uso del sentido común ....

Page 71: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

USUARIOS

Costo Total del Software

Re-trabajos

Negocios perdidos por incumplimientos

Mejoras

Corrección de Errores

Desarrollo Inicial

Sobreprecios por recursos urgentes

Orientación / Aprendizaje / Entrenamiento

Penalidades

Sobreprecios de proveedores no competitivos

Re-envíos / Re-instalacionesAdquisición Inicial

Capacidad Instalada subutilizada

Costo Total del Software

Page 72: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

Prevención Evaluación Fallo interno Fallo externoPrevención de defectos Búsqueda de defectos Defectos encontrados

antes de la entrega/instalación

Defectos encontrados tras entrega/instalación

Ejemplo – Costo de calidad

Page 73: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

Prevención Evaluación Fallo interno Fallo externoPrevención de defectos

PlanificaciónDocumentaciónFormaciónHerramientasPolíticas, procedimientosProyectos de mejora de la calidadCaptura y análisis de datosAnálisis de fallos y causas

Búsqueda de defectos

Revisiones• Requisitos• Diseño• Planes de pruebas• Casos de pruebasInspecciones de códigoPruebas (primera vez)AuditoríasEvaluaciones CMMI• CBA-IPI• Informales

Defectos encontrados antes de la entrega/instalación

Correcciones• Requisitos• Diseño• Código• DocumentaciónNuevas pruebasMenor eficiencia (nuevas pruebas, cambios en entregables, desviaciones de plazos, presupuestos, etc.)

Defectos encontrados tras entrega/instalación

GarantíasGestión de quejasProyectos perdidosSoporte técnicoParches en versiones

Costo de calidad (CoQ) – Categorías de costes

Page 74: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

Identificando y elaborando un flujo de procesos.

Dinámica Nro. 002

Page 75: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

Preguntas?.

Page 76: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

Tema 2

Enfoque general del CMMI y su suite de productos

Page 77: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

Enfoque general del CMMI.

Historia del CMM y su evolución.

Dinámica Nro. 003.

El concepto de CMMI.

La suite de productos de CMMI.

Dinámica Nro. 004.

Contenido de la Sesión II

Page 78: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

Enfoque general del CMMI

Page 79: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.
Page 80: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

Todas las organizaciones necesitan mejorar continuamente sus resultados para cumplir las expectativas de sus

clientes, accionistas y agentes involucrados.

Competitividad !!!!!!!!

Algunos apuntes importantes ....

Page 81: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

Tenemos tres opciones:

Trabajar más duro.

Contratar mejor personal.

Invertir en mejorar los procesos con los que realizamos el trabajo.

.... Reflexiones que nos permiten ....

Page 82: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

Historia del CMMI y su evolución

Page 83: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

El Instituto de Ingeniería de Software (SEI), es un centro federal fundado para la investigación y desarrollo de la Ingeniería del Software.

Se creó en 1984 por iniciativa del Departamento de Defensa de los E.U., para resolver el problema de evaluar y calificar a sus proveedores de Tecnología.

Para su creación se convocó a un concurso de propuestas entre varias universidades.

Siendo Carnegie Mellon University la que ganó este concurso con su propuesta de creación del SEI y el desarrollo del CMM.

Cuál es la historia del CMM ?

Page 84: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

El CMM es una descripción de niveles a través de los cuales las organizaciones pueden ir mejorando sus procesos.

El modelo fue desarrollado aplicando conceptos de Calidad Total (TQM) a los procesos de desarrollo de software.

El propósito del CMM es proveer a las organizaciones una guía para mejorar sus procesos y desarrollar sus habilidades para administrar el desarrollo, la adquisición y el mantenimiento de sus productos o servicios de software.

CMM nos indica quéqué necesitamos hacerhacer, pero no nos dice cómocómo se tiene que hacerhacer.

.... Y…., qué es CMM ?.

Page 85: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

Los CMMs pueden diferir por: Disciplina (software, sistemas, adquisición, etc.). Estructura (staged versus continuo). Cómo se define la Madurez (camino de mejora). Cómo se define la Capacidad (Institucionalización).

“Capability Maturity Model®” y CMM® son utilizados por el Software Engineering Institute (SEI) para referirse a una clase particular de modelos de madurez.

Algunas diferencias .... como ....

Page 86: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

CMM es un modelo de referencia …,

que contiene prácticas maduras en una disciplina específica …,

usado para evaluar la capacidad de un grupo para ejecutar

dicha disciplina.

.... En resumen ....

CMM = Capability Maturity Model, óModelo de Madurez de Capacidades.

Capability Maturity Model®, CMM®, CMM Integration, y CMMI son marcas registradas de la Carnegie Mellon University.

Page 87: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

Área de Proceso: Planeamiento de Proyectos

.... Por ejemplo, ....

Meta específica (SG) Prácticas específicas (SP)

Establecer estimaciones Estimar el alcance del proyecto Establecer estimaciones de productos y atributos de tareas Definir ciclo de vida del proyecto Determinar estimaciones de esfuerzo y coste

Desarrollar un plan de proyecto Establecer presupuesto y calendario Identificar riesgos del proyecto Planificar la gestión de datos Planificar los recursos del proyecto Planificar las necesidades de conocimientos y capacidades Planificar la involucración de agentes relevantes Establecer el plan de proyecto

Obtener compromiso con el plan Revisar planes que afectan al proyecto Conciliar trabajo y niveles de recursos Obtener compromiso con el plan

Page 88: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

CMMI = Capability Maturity Model Integration, o Modelo Integrado de Madurez de Capacidades

Proveer un CMM que cubra el desarrollo y mantenimiento de productos y servicios, y que provea una estructura de referencia que pueda ampliarse, de modo que nuevos cuerpos de conocimiento puedan añadirse.

.... Y ahora, qué es CMMI ?.

Capability Maturity Model®, CMM®, CMM Integration, y CMMI son marcas registradas de la Carnegie Mellon University.

Page 89: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

¿Como usan la Organizaciones el CMMI?

Determinar cual es el estado de la organización.

Proporcionar un camino para mejorar la organización.

Un lenguaje común y una visión compartida.

Priorizar acciones.

Importante considerar estos conceptos ....

Page 90: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

¿Quiénes están usando CMMI?.

Todas las oficinas del departamento de defensa de los EEUU.

La mayoría de las agencias civiles del gobierno de los EEUU.

La industria de la banca y finanzas de los EEUU.

Industrias internacionales de la aviación y automotriz.

Industria de las telecomunicaciones.

La comunidad internacional (Europa, Asia, y algunos países de Sudamérica y el Caribe).

Comunidad educativa y académica internacional.

.... su difusión en el mundo global ....

Page 91: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

Las industrias que son usuarias del modelo CMMI, numéricamente, tienen el siguiente perfil:

689 de 1018 empresas evaluadas formalmente por el SEI son industrias comerciales (67.7%),

329 (32.3%) pertenecen a la industria militar, o son contratistas de los mismos.

De las primeras, el 40% de las empresas tienen 100 o menos empleados y el 60% tienen 200 empleados o menos, lo cual indica el perfil de la mayoría de las empresas usuarias del modelo.

Actualmente existen 64 empresas que están en nivel 5.

.... Y las siguientes métricas más que convincentes ....

Page 92: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

Justificando el Costo de la Calidad de los procesos.

Dinámica Nro. 003

Page 93: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

El concepto de CMMI

Page 94: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

CMMI = Capability Maturity Model Integration, o Modelo Integrado de Madurez de la Capacidad

.... Ahora, cuál es el concepto de CMMI ?.

Capability Maturity Model®, CMM®, CMM Integration, y CMMI son marcas registradas de la Carnegie Mellon University.

CMMI nos provee una visión estructurada decómo hacer una mejora de procesos en una organización ...

CMMI nos ayuda a priorizar y establecer objetivos de mejora de procesos ...

CMMI es una guía para tener procesos de calidad ...

Y, CMMI provee una medida para evaluar prácticas actuales.

Page 95: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

Planificación del Proyecto

.... Por ejemplo, ....

Meta específica (SG) Prácticas específicas (SP)

SG 1 Establecer estimaciones SP 1.1 Estimar el alcance del proyecto SP 1.2 Establecer estimaciones de productos y atributos de

tareas SP 1.3 Definir ciclo de vida del proyecto SP 1.4 Determinar estimaciones de esfuerzo y coste

SG 2 Desarrollar un plan de proyecto

SP 2.1 Establecer presupuesto y calendario SP 2.2 Identificar riesgos del proyecto SP 2.3 Planificar la gestión de datos SP 2.4 Planificar los recursos del proyecto SP 2.5 Planificar las necesidades de conocimientos y

capacidades SP 2.6 Planificar la involucración de agentes relevantes SP 2.7 Establecer el plan de proyecto

SG 3 Obtener compromiso con el plan

SP 3.1 Revisar planes que afectan al proyecto SP 3.2 Conciliar trabajo y niveles de recursos SP 3.3 Obtener compromiso con el plan

Page 96: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

La suite de productos de

CMMI

Page 97: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

El Marco de trabajo de CMMI es la estructura que organiza los componentes usados en:

Generar modelos. Material de entrenamiento, y Métodos de evaluación.

La suite de productos de CMMI es una colección completa de: Modelos. Material de entrenamiento, y Métodos de evaluación generados desde el Marco de CMMI.

Una constelación es un subgrupo relevante de la suite de productos de CMMI para mejorar una área particular de interés. Actualmente hay varias constelaciones:

De Desarrollo. De Adquisiciones. De Servicios.

El Marco de trabajo de CMMI es el núcleo ....

Page 98: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

CMMI para Desarrollo + IPPD

Modelos de desarrollo de constelaciones

Adición de modelos de Desarrollode Productos y Procesos Integrados

(IPPD)

Adición de modelos de Desarrollode Productos y Procesos Integrados

(IPPD)

Componentes de DesarrolloComponentes de Desarrollo

Fundamentos del Modelo(componentes comunes en todos los modelos)

Fundamentos del Modelo(componentes comunes en todos los modelos)

CMMI para Desarrollo

Page 99: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

Integración de los procesos de ingeniería de software y de sistemas.

Ambas disciplinas quedan integradas en un solo modelo de mejora.

Proporciona un marco de referencia para añadir un componente IPPD.

Estas constelaciones facilitan la ...

Page 100: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

La suite de productos CMMI proporciona un fundamento para la mejora de procesos a nivel organizacional, y se focaliza en el: Énfasis en diseño del producto así como en la mejora de procesos. Comprende el diseño completo y el ciclo de vida del producto o

servicio. Promueve la colaboración entre ingeniería de sistemas e ingeniería de

software. Énfasis temprano en mediciones y análisis.

.... Y cuyo valor queda evidenciado por el modelo CMMI ....

Page 101: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

Qué es la Ingeniería de Sistemas?

Qué es la Ingeniería de Software?

Son iguales?

Page 102: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

La Ingeniería de sistemas incluye el desarrollo de sistemas completos, en los que puede o no puede haber software. Los ingenieros de sistemas se enfocan en transformar necesidades, expectativas y restricciones de clientes en productos y soporte a estos productos a lo largo de la vida de los mismos.

.... Qué es la Ingeniería de Sistemas?....

Page 103: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

La ingeniería de software incluye el desarrollo de sistemas de software. Los ingenieros de software se enfocan en aplicar metodologías sistemáticas, disciplinadas y cuantificables para el desarrollo, operación y mantenimiento de software.

.... Qué es la Ingeniería de Software?....

Page 104: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

IPPD (Integrated Product and Process Development) = Desarrollo Integrado de Productos y Procesos.

IPPD es un enfoque sistemático que logra una colaboración oportuna del personal relevante a lo largo de la vida de un producto para satisfacer las necesidades, expectativas y requerimientos de los clientes.

.... Que es también el IPPD?....

Page 105: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

Elaborando un GAP análisis de un proceso.

Dinámica Nro. 004

Page 106: CMMI for Development Versión 1.2 Introducción a CMMI Versión 1.2.

Preguntas?.