USM Conceptos de Calidad y Conceptos CMMI

PORQUÉ ES IMPORTANTE CONOCER EL MODELO CMMi? Parte 1: Conceptos básicos de Calidad y Parte 2: Conceptos básicos de CMMi

Views 114 Downloads 1 File size 234KB

Report DMCA / Copyright

DOWNLOAD FILE

Recommend stories

Citation preview

PORQUÉ ES IMPORTANTE CONOCER EL MODELO CMMi? Parte 1: Conceptos básicos de Calidad y Parte 2: Conceptos básicos de CMMi Maria Smith Gutiérrez R. Febrero 2010

PORQUÉ ES IMPORTANTE CONOCER EL MODELO CMMi? Agenda: 1.- Por qué necesitamos calidad de software? 1.1.. Características especiales del software. 2.- Conceptos sobre Calidad 2.1.- Definición formal de calidad. 2.2.- Las 3 visiones de la calidad. 2.3.- Calidad de producto vs. Calidad de proceso. 2.4.- Mejora de Procesos – premisa fundamental. 2.5.- Mejora de Procesos – Pasos. 2.6.- Mejora de Procesos – Factores críticos de éxito. 2.7.- Mejora de Procesos – Madurez 3.- Conceptos básicos de CMMi 3.1.- Qué es CMMi? 3.2.- Que podemos esperar de CMMi como modelo? 3.3.- Reseña Histórica. 3.4.- Arquitectura del Modelo. 3.5.- CMMi y otros modelos.

PORQUÉ ES IMPORTANTE CONOCER EL MODELO CMMi? 1.- PORQUE NECESITAMOS CALIDAD DE SOFTWARE? 1.1.- Características especiales del software: •La ingeniería de Software es una disciplina joven e inmadura. •El software el lógico no físico. •El software con errores no se rechaza, se asume que es inevitable que presente errores. •Es artesanal, la mayoría de software se desarrolla a la medida. •Es engañosamente fácil modificar el software, pero el mantenimiento del software es complejo. •No se deteriora, pero se estropea por los cambios.

8

Diseño Detallado.

10 500

Pruebas de Validación.

240

Pruebas de Integración.

40

Codificación y Pruebas Unitarias.

PORQUÉ ES IMPORTANTE CONOCER EL MODELO CMMi?

5

Diseño de Arquitectura.

1.1.- Características especiales del software.

Especificación de Requerimientos.

EL COSTO DE DETECTAR Y CORREGIR ERRORES

1

Fuente: DOD

Elaboración del Contrato.

PORQUÉ ES IMPORTANTE CONOCER EL MODELO CMMi? 1.1.- Características especiales del software.

El Origen de los Errores

CODIFICACIÓN 9%

DISEÑO 27%

Fuente: DOD

OTROS 8%

REQUERIMIENTOS 56%

PORQUÉ ES IMPORTANTE CONOCER EL MODELO CMMi? 2.- Conceptos sobre Calidad 2.1.- Definición Formal de Calidad “Conjunto de propiedades y características de un producto o servicio que le confiere la aptitud para satisfacer las necesidades explícitas e implícitas. (ISO 8402) “El grado con el cual el cliente o usuario percibe que el software satisface sus expectativas” (IEEE 729-83) “El grado en que un producto, proceso o sistema cumple con las necesidades o expectativas de los clientes o usuarios” (IEEE 610.12). “Capacidad del producto de software para satisfacer los requisitos establecidos”. (DoD 2168) NO ES: Obtener un producto cero errores.

PORQUÉ ES IMPORTANTE CONOCER EL MODELO CMMi? 2.- Conceptos sobre Calidad 2.2.- Las tres visiones de la calidad. Necesaria o Requerida: La que quiere el cliente.

Programada o especificada: La que se intenta conseguir.

Realizada: La que se ha conseguido.

Objetivo: QUE LAS TRES VISIONES COINCIDAN !!!

PORQUÉ ES IMPORTANTE CONOCER EL MODELO CMMi? 2.- Conceptos sobre Calidad 2.3.- Calidad de Producto y Calidad del Proceso. Que influye en la construcción del producto:  Procesos (Actividades, métodos, prácticas).  Tecnología (soporta el proceso).  Personas (comprenden y aplican el proceso). Calidad de Producto: Construir el producto correcto Calidad del proceso: Construir correctamente el producto.

Proceso: Conjunto de actividades interrelacionadas con un fin especifico y que transforman entrada en salidas (agregan valor) y para su ejecución requieren unos recursos.

PORQUÉ ES IMPORTANTE CONOCER EL MODELO CMMi? 2.-

Conceptos sobre Calidad

2.4.- Mejora de Procesos - Premisa Fundamental La calidad de un producto está fundamentalmente determinada por la calidad del proceso utilizado para construirlo y mantenerlo. Sí mejoro continuamente mi proceso e interiorizo dichas mejoras, puedo garantizar repetibilidad (estandarización) y por ende calidad del producto.

PORQUÉ ES IMPORTANTE CONOCER EL MODELO CMMi? 2.-

Conceptos sobre Calidad

2.5.- Mejora de Procesos – Pasos 1. Comprender el estado actual del proceso de desarrollo. 2. Desarrollar una visión del proceso deseado. 3. Establecer una lista de acciones de mejora del proceso en orden de prioridad. 4. Crear un plan para alcanzar las acciones requeridas. 5. Comprometer los recursos para ejecutar el plan. 6. Comenzar nuevamente en el punto 1.

PORQUÉ ES IMPORTANTE CONOCER EL MODELO CMMi? 2.-

Conceptos sobre Calidad

2.6.- Mejora de Procesos – Factores críticos de éxito. Patrocinio: Contar con el apoyo y compromiso de la gerencia durante todo el proceso. Estrategia: No perder de vista los objetivos del negocio. Visibilidad: Considerar la iniciativa de mejoramiento como un proyecto (responsabilidades, recursos, indicadores de avance, presupuesto, etc.). Cultura organizacional: Cambios en Actitudes y valores del personal (capacitación, motivación, involucramiento, comunicación).

PORQUÉ ES IMPORTANTE CONOCER EL MODELO CMMi? 2.- Conceptos sobre Calidad 2.7.- Mejora de Procesos – Madurez. Aprendizaje a partir de la experiencia. Empresa Inmadura

Empresa Madura

Apaga Incendios.

Tiene procesos definidos (Métodos, responsabilidades, Tiene éxito gracias a los héroes. recursos) Las planificaciones son poco realistas.

El conocimiento está en la organización.

Plazos de entrega impredecibles.

Resultados predecibles. (Calidad) Cumple plazos de entrega.

Mucho esfuerzo dedicado a mantenimiento.

Incrementa la productividad.

PORQUÉ ES IMPORTANTE CONOCER EL MODELO CMMi? 3.- Conceptos Básicos de CMMI 3.1.- Que es CMMI Mejorar Procesos: Es más fácil si seguimos un modelo ya probado y con reconocimiento de la Industria como por ej. CMMI. CMMI Capability Maturity Model

Modelo de Madurez de la Capacidad.

De la organización. Conjunto de procesos

PORQUÉ ES IMPORTANTE CONOCER EL MODELO CMMi? 3.- Conceptos Básicos de CMMI 3.1.- Que es CMMI Modelo de Madurez de las capacidades de la organización para administrar los procesos de desarrollo, adquisición y/o mantenimiento de productos y servicios. 3.2.- Que podemos esperar de CMMI como modelo. CMMI nos enseñará el camino para alcanzar un nivel de madurez por medio de la aplicación de buenas prácticas de ingeniería de software, de gestión de proyectos y de gestión de procesos. SI nos dice que hacer. NO nos dice como hacerlo. NO ES una metodología de desarrollo de software SI ES un modelo de mejora de procesos de desarrollo de software.

PORQUÉ ES IMPORTANTE CONOCER EL MODELO CMMi? 3.- Conceptos Básicos de CMMI 3.3.- Reseña Histórica SEI (Software Engineering Institute) •Fundado en 1984 •Forma parte de la Carnegie Mellon Uninversity (CMU) Pittsburgh. •Auspiciado por Office of the Under Secretary of Defense for Acquisition and Technology. •Autores y dueños de los modelos de madurez y capacidad (maturity models).

PORQUÉ ES IMPORTANTE CONOCER EL MODELO CMMi? 3.- Conceptos Básicos de CMMI 3.3.- Reseña Histórica 1986: El DoD encarga al SEI el desarrollo de un modelo para evaluar la capacidad de sus contratista de software. 1987: Publicación del Software Process Maturity Framework. 1991: Publicación del Software CMM v1.0 1993: Publicación del Software CMM v1.1 1995: System Enginering CMM v1.1 1996: System Engineering Capability and Assessment Method (SECAM) publicado por el International Council of Systema Engineering (INCOSE). 1997: IPD-CMM (Integrated Product Development)

PORQUÉ ES IMPORTANTE CONOCER EL MODELO CMMi? 3.- Conceptos Básicos de CMMI 3.3.- Reseña Histórica 1997: Software CMM v2.0 Draft C – Nunca se pública. 1998: System Engineering Capability Model (SECM) 2000: CMMI versión 1.0 (Integra: CMM-SW, SE-CMM IPPD-CMM) 2002: Publicación CMMI versión 1.1 2005: Término des soporte de CMMI V1.1 2006: Publicación CMMI-DEV (versión 1.2) Noviembre 2007: Publicación CMMI-ACQ 2009: Publicacion CMMi Service

PORQUÉ ES IMPORTANTE CONOCER EL MODELO CMMi? 3.- Conceptos Básicos de CMMI 3.5.- Arquitectura del Modelo – Niveles de Madurez

5

4

En Optimización. El proceso es predecible y controlado cuantitativamente.

3

Aplicable a toda la organización y reacciona anticipadamente.

2

Aplicable a Proyectos y algunas veces reactivo.

1

Impredecible Poco Controlado y Reactivo

OPTIMIZADO GESTIONADO CUANTITATIVAMENTE DEFINIDO

GESTIONADO

INICIAL

PORQUÉ ES IMPORTANTE CONOCER EL MODELO CMMi? 3.- Conceptos Básicos de CMMI 3.5.- Arquitectura del Modelo – Áreas de Proceso – PA´s Conceptos importantes pare entender el modelo: Áreas de Proceso (PA’S): Conjunto de buenas prácticas agrupadas para facilitar el proceso de mejora.

Los niveles de madurez están compuestos por Áreas de Proceso (PA’S).

Las áreas de proceso (PA´s): organización.

NO son los procesos de una

PORQUÉ ES IMPORTANTE CONOCER EL MODELO CMMi? 3.- Conceptos Básicos de CMMI 3.5.- Arquitectura del Modelo – PA´S Por Nivel de Madurez y Categoría. NIVEL

5

OID – Despliegue e Innovación Organizacional.

QPM – Gestión Cuantitativa del Proyecto.

OPP – Desempeño del Proceso Organizacional

RD-Desarrollo de requisitos. TS-Soluciones Técnicas. PI-Integración del Producto. VER-Verificación. VAL-Validación.

RSKM – Gestión de Riesgos. IPM – Gestión Integrada de Proyectos.

OPD - Definición de Procesos Organizacionales. OPF – Enfoque de Procesos Organizacionales. OT – Entrenamiento Organizacional.

REQM-Gestión de Requisitos

PP–Planificación del Proyecto. PMC–Monitoreo y Control Del Proyecto. SAM–Gestión de Acuerdos con Proveedores

4

3

2 Ingeniería

Gestión Proyectos

Categoría (disciplina)

CAR – Análisis de Causas y Soluciones

DAR – Toma de Decisiones

MA – Medición y Análisis. CM – Administración de la Configuración. PPQA– Aseg. De Calidad del Proceso y del Producto

Gestión Procesos

Soporte

PORQUÉ ES IMPORTANTE CONOCER EL MODELO CMMi? 3.- Conceptos Básicos de CMMI 3.5.- Arquitectura del Modelo. Representación Escalonada Vs. Representación Continua.

P o r E ta p a s M L5 M L4 M L3 M L2 M L 1 O r g a n iz a c ió n

PORQUÉ ES IMPORTANTE CONOCER EL MODELO CMMi? 3.- Conceptos Básicos de CMMI 3.5.- Arquitectura del Modelo. Representación Escalonada Vs. Representación Continua.

Representación Continua C a p a c i d a d

5 4 3 2 1 0

PA

PA

PA

Proceso

PORQUÉ ES IMPORTANTE CONOCER EL MODELO CMMi? 3.- Conceptos Básicos de CMMI 3.5.- Arquitectura del Modelo – Componentes de las PA´s. Área de proceso PA Propósito

Metas Específicas- SG

PA´S Relacionadas

Metas Genéricas - GG

Prácticas Específicas SP

Productos de Trabajo

Notas Introductorias

Prácticas Genéricas GP

Elaboración GP

Sub-prácticas

Requerido

Esperado

Informativo

PORQUÉ ES IMPORTANTE CONOCER EL MODELO CMMi? 3.- Conceptos Básicos de CMMI 3.6.- CMMI y otros Modelos.