Modelo CMMI Prof. Ing Ana Maria Huayna Dueñas
Problemas de la Industria Los Proyectos están : Excesivamente  tarde Spbrepresupuestados Los  beneficios  de los mejores  métodos e instrumentos  no se pueden obtener en el medio indisciplinado y caótico de desarrollo
Organizaciones no maduras Los procesos de software son  improvisados Organizaciones “Apaga fuego” La  planificación  en tiempo y recursos no se cumple La  calidad y la funcionalidad  se compromete.
Organizaciones no maduras No hay bases  objetivas  para : -  Enjuiciar la claridad  del producto - Resolver problemas de los productos y del software. Las  revisiones y pruebas  son  eliminadas ó disminuidas  cuando el proyecto se atrasa A correr !!
La calidad y la productividad No solo  se logra aplicando nuevas  metodologías y tecnologías  para desarrollar y mantener software. El principal problema es la  incapacidad para administrar  los procesos de software. UML
Temáticas CMMI: Capability Maturity Model Integrator Niveles de la Organización Areas de Procesos del nivel 2 Areas de Procesos del nivel 3
Que es CMMI ? Es un  modelo  para la  mejora de procesos  que proporciona a las organizaciones los  elementos  esenciales para procesos eficaces  1984 Creación del SEI Software Engineering Institute 1991 Primera versión de CMMI 2000 Aprobación de CMMI
CMMI  ¿Para que? Para mejorar los procesos que inciden en el mantenimiento y desarrollo de software Criterio para evaluar los procesos de una empresa que mantiene y desarrolla software.
CMM CMM es una aplicación de sentido común de los conceptos de gestión de procesos y mejora de la calidad al desarrollo y mantenimiento del software”.  Mark C.Paulk  Software Engineering Institute Estudia los procesos de desarrollo de software de una organización y produce una evaluación de la madurez de la organización según una escala de 5 niveles. La  madurez de un procesos  es un indicador de la capacidad para construir un software de calidad Es un  modelo  para la mejora de las organizaciones. Obliga a una revisión constante.
CMMI Incremento de productividad de la entidad. Mejor comunicación con los clientes y entre los profesionales de la entidad. Mayor satisfacción de las solicitudes de los clientes. Específica para las empresas de software. Ofrece un camino de mejora continua. Permite a un interesado externo tener certeza sobre el potencial de una organización. Su aplicación resulta compleja  (PSP  Personal Software Process y TSP Team Software Process). Su implementación en las empresas toma tiempo. VENTAJAS DESVENTAJAS
PSP Personal Software Process   Proporciona  métodos detallados para estimular y planear, muestra a los ingenieros cómo dar seguimiento a su desempeño contra estos planes y explica como los procesos definidos pueden guiar su trabajo. El PSP tiene el propósito de desarrollar hábitos de programación, en especial en cuanto a la medición.(¿Cuánto tiempo he dedicado a este código?, ¿Cuántas LDC he escrito?, ¿Cuántos defectos conocidos he generado?.
TSP Team Software Process Formar equipos autodirigidos - 3 a 20 ingenieros - Establecer sus propias metas - Establecer sus propios procesos y planes. - Rastrear el trabajo.  Mostrar a los gerentes cómo administrar equipos - Orientar - Motivar - Apoyar el desempeño más alto. Acelerar la mejora del CMM - Hacer que el CMMI 5 sea “normal”. Proporcionar guías de mejoramiento para organizaciones con alta madurez Facilitar la enseñanza universitaria a equipos integrados con la industria.
CMMI: Capability Maturity Model Integrator Describe las prácticas de  Ingeniería de Software y de administración  que caracterizan como las organizaciones  maduran sus procesos para desarrollar y mantener software.
CMMI guía a la empresa Como ganar el control de sus procesos para desarrollar y mantener software. Como evolucionar hacia una cultura de ingeniería de software y de administración de excelencia.
Modelos de CMMI Capacibility Maturity Model for Software V2.draft C (Sw-CMM V2C) - EIA Interim Standard 731, System Engineering Capacibility Model (SECM) - Integrated Product Development Capacibility Maturity Model, draft VO.98 (IPD-CMM) Combina los modelos. Ingeniería de Sistemas/ Ingeniería de Software Puede ser aplicado a : * Los proyectos de Ing. De Software *Los proyectos de Ing. De Sistemas en una organización. * A ambos * IPPD puede ser usado en ambos CMMI-SE/SW Fases-Representación CMMI-SE/SW Continua - Representación
CMMI Es  importante tener claro: - ¿Dónde nos encontramos? - ¿A dónde queremos llegar? - ¿Cómo llegaremos? - ¿Cómo sabremos si hemos llegado? No se puede hacer todo de golpe Procesos pilotos previos a un despliegue a gran escala Se centra en los 3 aspectos que influyen en una organización. Tecnología Personas Procesos
Elementos que influyen en la calidad Todos comprenden la importancia de tener una fuerza de trabajo motivada y calificada pero…. “… Aún las personas más inteligentes y capaces no pueden desarrollar de la mejor manera cuando el proceso no es entendido ó operado “ de la mejor forma Procesos Tecnología Personas Los mayores determinantes de un producto : Costo, cronograma y calidad
Definición de Proceso Un proceso es un conjunto de prácticas realizadas para alcanzar un propósito dado; este puede incluir herramientas, métodos, materiales, y/0 personas. Mientras que proceso es frecuentemente descrito como la pierna de la triada proceso-persona-tecnología, realmente debe ser considerado como la “goma” que integra los otros aspectos.
Proceso de Ingeniería de Software Actividades : Definición  Análisis Perfeccionamiento Personalizaciones, datos del pasado , experiencia Actividades : Planificación Seguimiento y Control Ejecución del proceso (CM y LC) Administrado por : SEPG Administrador jefe Datos del desempeño Administrado por : PL.Ingenieros SQA Proceso de la  organización Proceso del  Proyecto
Especificación del Proceso Actividades Etapas ó Fases Sub-Actividades Proceso Procesos Pautas,formularios, estándares,herramientas,BD del  proceso,capacidad del proceso, líneas base. Políticas
La premisa básica de la mejora de proceso “  La calidad de un producto es mayormente determinada por la calidad del proceso que es usado para desarrollar y mantener a éste” Basado en los principios de TQM instruidos por Shewhart, Juran, Deming y Humphrey
Capacidad de un proceso “ Describe el rango de los resultados esperados que pueden ser alcanzados siguiendo un proceso de Software”
Capacidad de una empresa Permite predecir lo que se puede esperar en un proyecto que realice
Capacidad y desempeño El desempeño por supuesto depende de la capacidad. Para mejorar el desempeño hay que mejorar la capacidad, el proceso se hace más maduro. CMMI ayuda a mejorar la capacidad
Ejemplo : Capacidad y desempeño Suponga un proceso Codificar  --- Probar --- Entregar De los datos de muchos proyectos se obtiene que la calidad de la capacidad del proceso es de 3-6 defectos por KLDC. Si se desea entregar con 2 defectos por KLDC, no se puede con este proceso. Debe mejorarse el proceso.
Ejemplo: Mejora del proceso 1 Cambiar el proceso a : - Codificar –Revisar código – Probar --Entregar La calidad de este proceso es ligeramente mejor, es de 2-5 defectos por KLDC. Si se usa este proceso se tiene la posibilidad de entregar a 2 defectos por KLDC. Este proceso no puede entregar a 1 defecto por KLDC.
Ejemplo: Mejora del proceso 2 Más cambios al proceso : - Codificar – Revisar código – Hacer Plan de Pruebas –Revisar Plan de Pruebas --Probar --Entregar La calidad de este proceso será mejor, es de 0,5-2 defectos por KLDC. Si se usa este proceso para entregar a 1 defecto por KLDC. Este proceso no puede entregar un producto con un requerimiento de 1 defecto por KLDC.
Los niveles de Capacidad 5.Optimizado 4.Cuentativamente Administrado 3.Definido 2.Administrado 1.Realizado 0.Incompleto
Distinciones Críticas Realizado  Vs  Administrado La medida en la cual el proceso es planificado, el desempeño es administrado contra el plan, las acciones correctivas son tomadas cuando es necesario. Administrado  Vs  Definido - El alcance de la aplicación de la descripción del proceso, los estándares y procedimientos (proyecto Vs organización) Defimido  Vs  Cuantitatiamente Administrado - La posibilidad de predecir el desempeño ó realización del proceso Cuantitativamente Administrado  Vs  Optimizado - El proceso es continuamente mejorado de acuerdo a las causas comunes de variación del proceso
Niveles de CMMI – Inicial (Caos) Obtener objetivos específicos Ejecutar las prácticas básicas Establecer una política organizacional EJECUTE EL TRABAJO
Areas de Procesos Claves Describe aquellas funciones de Ingeniería de Software que deben estar presentes para alcanzar un nivel dado de calidad por la empresa.
Niveles de CMMI ADMINISTRADO DEFINIDO Cuantitativamente administrado INICIALL OPTIMIZABLE
Niveles de CMMI – Nivel Inicial Procesos de Software Ad Hoc Algunas veces caótico Pocos procesos definidos El  éxito  depende del esfuerzo y de las heroicidades individuales
Para avanzar Introducción y mejora de : - Procedimientos de Ingeniería de Software. - Controles de la gestión.
Niveles de CMMI – Nivel Administrado  Los procesos básicos de gestión están establecidos para documentar los costos, los tiempos y la funcionalidad. Existe una disciplina que permite repetir éxitos tempranos en aplicaciones similares.
Aréas de proceso. Nivel Administrado Áreas del nivel 2 Gestión de requerimientos Planificación de proyectos de software Monitoreo y control de proyectos Aseguramiento de la calidad del producto y del proceso Gestión del acuerdo con los proveedores Medición y análisis
Aréas de proceso. Nivel Administrado   Gestión de requerimientos Los procesos básicos de gestión están establecidos para documentar la funcionalidad.
Aréas de proceso. Nivel Administrado Planificación de proyectos de software Monitoreo y control de proyectos Se siguen  planes basados  en el desempeño en otros proyectos
Aréas de proceso. Nivel Administrado Aseguramiento de la calidad del producto y del proceso Revisiones Auditorías
Aréas de proceso. Nivel Administrado Gestión de configuración de software Identificar, controlar, auditar los productos de software Dónde están los fuentes?
Aréas de proceso. Nivel Administrado Gestión del acuerdo con los proveedores Seleccionar : Manejar efectivamente A los proveedores
Nivel Administrado Medición y Análisis Establecer objetivos de la medición, especificar las mediciones, su almacenamiento y análisis. Proveer resultados de la medición
Niveles de CMMI - Administrado Procesos del proyecto personalizados con los estándares de la organización. Procesos entendidos cuantitativamente. Se : - Planea el proceso - Proveen recursos - Asignan responsabilidades - Entrena a las personas - Identifica e involucra a los stakeholders - Monitorea y controla el proceso - Administra la configuración - Revisa el estado de la alta Gerencia.
Niveles de CMMI – Nivel Definido Los procesos de la organización están documentados, estandarizados e integrados El proceso efectivo de desarrollar proyectos está definido, documentado, el personal es entrenado en él y es obligatorio su uso. LOS PROCESOS Gestión Actividades  De Ingeniería de Software
Areas de proceso. Nivel Definido Desarrollo de requerimientos Solución técnica Integración de producto Verificación Validación Foco en el proceso de la organización Definición del proceso de la organización Capacitación organizacional Administración integrada de proyectos Administración integrada de riesgos Administración integrada de proveedores Análisis y resolución de decisiones Entorno organizacional para la integración Administración integrada de equipos
Areas de proceso. Nivel Definido Desarrollo de requerimientos Obtener requerimientos del cliente y del producto Analizar y validar requerimientos
Areas de proceso. Nivel Definido Solución Técnica Seleccionar soluciones de producto ó componentes de producto. Desarrollar e implementar el diseño
Areas de proceso. Nivel Definido Integración de producto Preparar integración y analizar interfaces Ensamblar y entregar
Areas de proceso. Nivel Definido Verificación Examen sistemático de los productos de software para encontrar defectos y cambios a realizar.  Preparar verificaciones y realizar revisiones por pares Verificar productos de trabajo
Areas de proceso. Nivel Definido Validación Preparar para la validación Verificar productos ó componentes de trabajo
Areas de proceso. Nivel Definido Foco en el proceso de la organización Determinar oportunidades de mejora Planificar e implementar actividades de mejora
Areas de proceso. Nivel Definido Definición del proceso de la organización Establecer los activos del proceso organizacional Procesos estándares, modelos de ciclo de vida, biblioteca de activos de la organización, repositorio de mediciones .
Areas de proceso. Nivel Definido Capacitación organizacional Proveer capacitación necesaria Las personas realicen sus roles de forma efectiva y eficiente
Areas de proceso. Nivel Definido Administración integrada de proyectos Integrar la gestión y la ingeniería de software en los procesos bien definidos. El proceso definido para cada proyecto es personalizado de acuerdo al tipo Organizar equipos integrados
Areas de proceso. Nivel Definido Administración integrada de riesgos Preparar la administración de riesgos Identificar y analizar los riesgos Mitigar los riesgos
Areas de proceso. Nivel Definido Administración integrada de proveedores Analizar y seleccionar los fuentes de los productos Coordinar el trabajo con los proveedores
Areas de proceso. Nivel Definido Análisis y resolución de decisiones Evaluar alternativas Establecer los procedimientos y métodos a emplear
Areas de proceso. Nivel Definido Entorno organizacional para la integración Proveer infraestructura Administrar personas para la integración
Areas de proceso. Nivel Definido Administración integrada de equipos Composición del equipo Gobernar los equipos
Niveles de CMMI – Cuantitativamente Administrado Establecer objetivos cuantitativos para el proceso. Estabilizar el rendimiento de los subprocesos. Medir el rendimiento del proceso Estabilizar el proceso Gráficos de control Atacar la causa de las variaciones especiales
Niveles de CMMI – Optimizado Asegurar el mejoramiento continuo de los procesos Resolver de raíz la causa de los problemas Prevención de defectos Mejora proactiva Adopción de la tecnología a través de la innovación.
Gerencia de Proyectos en CMMI GERENCIA DE PROYECTOS 8 áreas de procesos CMMI 25 áreas de procesos 2 Gerencia de acuerdos con proveedores 2 Planeación del proyecto 2 Monitoreo y control de proyectos 3 Gerencia integrada de proyectos 3 Administración de riesgos 3 Trabajo en equipo 3 Gerencia integrada de proveedores 4 Gerencia cuantitativa de proyectos Nivel Areas de Proceso
Evaluación (Appraisal)  Muchas organizaciones valoran el medir su progreso llevando a cabo una evaluación  y ganando una clasificación del nivel de madurez o de un nivel de capacidad de logro. Este tipo de evaluaciones son realizadas normalmente por una o más de las siguientes razones: Para determinar que también los procesos de la organización se comparan con las mejores prácticas CMMI y determinar qué mejoras se pueden hacer.  Para informar a los clientes externos y proveedores acerca de que también los procesos de la organización se comparan con las mejores prácticas CMMI.  Para cumplir los requisitos contractuales de uno o más clientes.
Evaluación (Appraisal) … Las valoraciones de las organizaciones utilizando un modelo CMMI deben ajustarse a los requisitos definidos en el documento "Appraisal Requirements for CMMI" (ARC). La evaluación se enfoca en identificar oportunidades de mejora, y comparar los procesos de la organización con las mejores prácticas CMMI. Los equipos de evaluación usan el modelo CMMI y un método conforme a ARC para guiar su evaluación y reporte de conclusiones. Los resultados de la evaluación son usados para planear mejoras en la organización. Hay tres clases de evaluación: Clase A,B,C. El  Standard CMMI Appraisal Method for Process Improvement (SCAMPI)  es un Método de evaluación que cumple todos los requerimientos ARC. Una evaluación de clase A es más formal y es la única que puede resultar en una clasificación de nivel de Madurez y es realizado por personal autorizado Lead Appraiser (SEI).
SCAMPI : Standard CMMI Appraisal Method for Process Improvement   El Standard CMMI Appraisal Method for Process Improvement (SCAMPI) es el  método oficial SEI para proveer puntos de referencia de sistemas de calificación en relación con los modelos CMMI.   SCAMPI se usan para identificar fortalezas y debilidades de los procesos,  revelar riesgos de desarrollo/adquisición, y determinar niveles de capacidad y madurez. Se utilizan ya sea como parte de un proceso o programa de mejoramiento, o para la calificación de posibles proveedores. El método define el proceso de evaluación constando de preparación; las actividades sobre el terreno; observaciones preliminares, conclusiones y valoraciones; presentación de informes y actividades de seguimiento.
SCAMPI : Standard CMMI Appraisal Method for Process Improvement Puedes descargar la documentación del SCAMPI desde  http :// www.sei.cmu.edu / appraisal - program / publications / index.html   Para hacer un  plan de evaluacion interna   en mi empresa  , lo que usualmente se hace es combinar las fortalezas y oportunidades de mejora de la evaluación con los objetivos de negocio de tu empresa.  Mayor guía al respecto la provee el modelo IDEAL de mejora continua. Lo puedes descargar desde:   http :// www.sei.cmu.edu / publications / documents /96. reports /96. hb .001. html

Modelo Cmmi 7

  • 1.
    Modelo CMMI Prof.Ing Ana Maria Huayna Dueñas
  • 2.
    Problemas de laIndustria Los Proyectos están : Excesivamente tarde Spbrepresupuestados Los beneficios de los mejores métodos e instrumentos no se pueden obtener en el medio indisciplinado y caótico de desarrollo
  • 3.
    Organizaciones no madurasLos procesos de software son improvisados Organizaciones “Apaga fuego” La planificación en tiempo y recursos no se cumple La calidad y la funcionalidad se compromete.
  • 4.
    Organizaciones no madurasNo hay bases objetivas para : - Enjuiciar la claridad del producto - Resolver problemas de los productos y del software. Las revisiones y pruebas son eliminadas ó disminuidas cuando el proyecto se atrasa A correr !!
  • 5.
    La calidad yla productividad No solo se logra aplicando nuevas metodologías y tecnologías para desarrollar y mantener software. El principal problema es la incapacidad para administrar los procesos de software. UML
  • 6.
    Temáticas CMMI: CapabilityMaturity Model Integrator Niveles de la Organización Areas de Procesos del nivel 2 Areas de Procesos del nivel 3
  • 7.
    Que es CMMI? Es un modelo para la mejora de procesos que proporciona a las organizaciones los elementos esenciales para procesos eficaces 1984 Creación del SEI Software Engineering Institute 1991 Primera versión de CMMI 2000 Aprobación de CMMI
  • 8.
    CMMI ¿Paraque? Para mejorar los procesos que inciden en el mantenimiento y desarrollo de software Criterio para evaluar los procesos de una empresa que mantiene y desarrolla software.
  • 9.
    CMM CMM esuna aplicación de sentido común de los conceptos de gestión de procesos y mejora de la calidad al desarrollo y mantenimiento del software”. Mark C.Paulk Software Engineering Institute Estudia los procesos de desarrollo de software de una organización y produce una evaluación de la madurez de la organización según una escala de 5 niveles. La madurez de un procesos es un indicador de la capacidad para construir un software de calidad Es un modelo para la mejora de las organizaciones. Obliga a una revisión constante.
  • 10.
    CMMI Incremento deproductividad de la entidad. Mejor comunicación con los clientes y entre los profesionales de la entidad. Mayor satisfacción de las solicitudes de los clientes. Específica para las empresas de software. Ofrece un camino de mejora continua. Permite a un interesado externo tener certeza sobre el potencial de una organización. Su aplicación resulta compleja (PSP Personal Software Process y TSP Team Software Process). Su implementación en las empresas toma tiempo. VENTAJAS DESVENTAJAS
  • 11.
    PSP Personal SoftwareProcess Proporciona métodos detallados para estimular y planear, muestra a los ingenieros cómo dar seguimiento a su desempeño contra estos planes y explica como los procesos definidos pueden guiar su trabajo. El PSP tiene el propósito de desarrollar hábitos de programación, en especial en cuanto a la medición.(¿Cuánto tiempo he dedicado a este código?, ¿Cuántas LDC he escrito?, ¿Cuántos defectos conocidos he generado?.
  • 12.
    TSP Team SoftwareProcess Formar equipos autodirigidos - 3 a 20 ingenieros - Establecer sus propias metas - Establecer sus propios procesos y planes. - Rastrear el trabajo. Mostrar a los gerentes cómo administrar equipos - Orientar - Motivar - Apoyar el desempeño más alto. Acelerar la mejora del CMM - Hacer que el CMMI 5 sea “normal”. Proporcionar guías de mejoramiento para organizaciones con alta madurez Facilitar la enseñanza universitaria a equipos integrados con la industria.
  • 13.
    CMMI: Capability MaturityModel Integrator Describe las prácticas de Ingeniería de Software y de administración que caracterizan como las organizaciones maduran sus procesos para desarrollar y mantener software.
  • 14.
    CMMI guía ala empresa Como ganar el control de sus procesos para desarrollar y mantener software. Como evolucionar hacia una cultura de ingeniería de software y de administración de excelencia.
  • 15.
    Modelos de CMMICapacibility Maturity Model for Software V2.draft C (Sw-CMM V2C) - EIA Interim Standard 731, System Engineering Capacibility Model (SECM) - Integrated Product Development Capacibility Maturity Model, draft VO.98 (IPD-CMM) Combina los modelos. Ingeniería de Sistemas/ Ingeniería de Software Puede ser aplicado a : * Los proyectos de Ing. De Software *Los proyectos de Ing. De Sistemas en una organización. * A ambos * IPPD puede ser usado en ambos CMMI-SE/SW Fases-Representación CMMI-SE/SW Continua - Representación
  • 16.
    CMMI Es importante tener claro: - ¿Dónde nos encontramos? - ¿A dónde queremos llegar? - ¿Cómo llegaremos? - ¿Cómo sabremos si hemos llegado? No se puede hacer todo de golpe Procesos pilotos previos a un despliegue a gran escala Se centra en los 3 aspectos que influyen en una organización. Tecnología Personas Procesos
  • 17.
    Elementos que influyenen la calidad Todos comprenden la importancia de tener una fuerza de trabajo motivada y calificada pero…. “… Aún las personas más inteligentes y capaces no pueden desarrollar de la mejor manera cuando el proceso no es entendido ó operado “ de la mejor forma Procesos Tecnología Personas Los mayores determinantes de un producto : Costo, cronograma y calidad
  • 18.
    Definición de ProcesoUn proceso es un conjunto de prácticas realizadas para alcanzar un propósito dado; este puede incluir herramientas, métodos, materiales, y/0 personas. Mientras que proceso es frecuentemente descrito como la pierna de la triada proceso-persona-tecnología, realmente debe ser considerado como la “goma” que integra los otros aspectos.
  • 19.
    Proceso de Ingenieríade Software Actividades : Definición Análisis Perfeccionamiento Personalizaciones, datos del pasado , experiencia Actividades : Planificación Seguimiento y Control Ejecución del proceso (CM y LC) Administrado por : SEPG Administrador jefe Datos del desempeño Administrado por : PL.Ingenieros SQA Proceso de la organización Proceso del Proyecto
  • 20.
    Especificación del ProcesoActividades Etapas ó Fases Sub-Actividades Proceso Procesos Pautas,formularios, estándares,herramientas,BD del proceso,capacidad del proceso, líneas base. Políticas
  • 21.
    La premisa básicade la mejora de proceso “ La calidad de un producto es mayormente determinada por la calidad del proceso que es usado para desarrollar y mantener a éste” Basado en los principios de TQM instruidos por Shewhart, Juran, Deming y Humphrey
  • 22.
    Capacidad de unproceso “ Describe el rango de los resultados esperados que pueden ser alcanzados siguiendo un proceso de Software”
  • 23.
    Capacidad de unaempresa Permite predecir lo que se puede esperar en un proyecto que realice
  • 24.
    Capacidad y desempeñoEl desempeño por supuesto depende de la capacidad. Para mejorar el desempeño hay que mejorar la capacidad, el proceso se hace más maduro. CMMI ayuda a mejorar la capacidad
  • 25.
    Ejemplo : Capacidady desempeño Suponga un proceso Codificar --- Probar --- Entregar De los datos de muchos proyectos se obtiene que la calidad de la capacidad del proceso es de 3-6 defectos por KLDC. Si se desea entregar con 2 defectos por KLDC, no se puede con este proceso. Debe mejorarse el proceso.
  • 26.
    Ejemplo: Mejora delproceso 1 Cambiar el proceso a : - Codificar –Revisar código – Probar --Entregar La calidad de este proceso es ligeramente mejor, es de 2-5 defectos por KLDC. Si se usa este proceso se tiene la posibilidad de entregar a 2 defectos por KLDC. Este proceso no puede entregar a 1 defecto por KLDC.
  • 27.
    Ejemplo: Mejora delproceso 2 Más cambios al proceso : - Codificar – Revisar código – Hacer Plan de Pruebas –Revisar Plan de Pruebas --Probar --Entregar La calidad de este proceso será mejor, es de 0,5-2 defectos por KLDC. Si se usa este proceso para entregar a 1 defecto por KLDC. Este proceso no puede entregar un producto con un requerimiento de 1 defecto por KLDC.
  • 28.
    Los niveles deCapacidad 5.Optimizado 4.Cuentativamente Administrado 3.Definido 2.Administrado 1.Realizado 0.Incompleto
  • 29.
    Distinciones Críticas Realizado Vs Administrado La medida en la cual el proceso es planificado, el desempeño es administrado contra el plan, las acciones correctivas son tomadas cuando es necesario. Administrado Vs Definido - El alcance de la aplicación de la descripción del proceso, los estándares y procedimientos (proyecto Vs organización) Defimido Vs Cuantitatiamente Administrado - La posibilidad de predecir el desempeño ó realización del proceso Cuantitativamente Administrado Vs Optimizado - El proceso es continuamente mejorado de acuerdo a las causas comunes de variación del proceso
  • 30.
    Niveles de CMMI– Inicial (Caos) Obtener objetivos específicos Ejecutar las prácticas básicas Establecer una política organizacional EJECUTE EL TRABAJO
  • 31.
    Areas de ProcesosClaves Describe aquellas funciones de Ingeniería de Software que deben estar presentes para alcanzar un nivel dado de calidad por la empresa.
  • 32.
    Niveles de CMMIADMINISTRADO DEFINIDO Cuantitativamente administrado INICIALL OPTIMIZABLE
  • 33.
    Niveles de CMMI– Nivel Inicial Procesos de Software Ad Hoc Algunas veces caótico Pocos procesos definidos El éxito depende del esfuerzo y de las heroicidades individuales
  • 34.
    Para avanzar Introduccióny mejora de : - Procedimientos de Ingeniería de Software. - Controles de la gestión.
  • 35.
    Niveles de CMMI– Nivel Administrado Los procesos básicos de gestión están establecidos para documentar los costos, los tiempos y la funcionalidad. Existe una disciplina que permite repetir éxitos tempranos en aplicaciones similares.
  • 36.
    Aréas de proceso.Nivel Administrado Áreas del nivel 2 Gestión de requerimientos Planificación de proyectos de software Monitoreo y control de proyectos Aseguramiento de la calidad del producto y del proceso Gestión del acuerdo con los proveedores Medición y análisis
  • 37.
    Aréas de proceso.Nivel Administrado Gestión de requerimientos Los procesos básicos de gestión están establecidos para documentar la funcionalidad.
  • 38.
    Aréas de proceso.Nivel Administrado Planificación de proyectos de software Monitoreo y control de proyectos Se siguen planes basados en el desempeño en otros proyectos
  • 39.
    Aréas de proceso.Nivel Administrado Aseguramiento de la calidad del producto y del proceso Revisiones Auditorías
  • 40.
    Aréas de proceso.Nivel Administrado Gestión de configuración de software Identificar, controlar, auditar los productos de software Dónde están los fuentes?
  • 41.
    Aréas de proceso.Nivel Administrado Gestión del acuerdo con los proveedores Seleccionar : Manejar efectivamente A los proveedores
  • 42.
    Nivel Administrado Medicióny Análisis Establecer objetivos de la medición, especificar las mediciones, su almacenamiento y análisis. Proveer resultados de la medición
  • 43.
    Niveles de CMMI- Administrado Procesos del proyecto personalizados con los estándares de la organización. Procesos entendidos cuantitativamente. Se : - Planea el proceso - Proveen recursos - Asignan responsabilidades - Entrena a las personas - Identifica e involucra a los stakeholders - Monitorea y controla el proceso - Administra la configuración - Revisa el estado de la alta Gerencia.
  • 44.
    Niveles de CMMI– Nivel Definido Los procesos de la organización están documentados, estandarizados e integrados El proceso efectivo de desarrollar proyectos está definido, documentado, el personal es entrenado en él y es obligatorio su uso. LOS PROCESOS Gestión Actividades De Ingeniería de Software
  • 45.
    Areas de proceso.Nivel Definido Desarrollo de requerimientos Solución técnica Integración de producto Verificación Validación Foco en el proceso de la organización Definición del proceso de la organización Capacitación organizacional Administración integrada de proyectos Administración integrada de riesgos Administración integrada de proveedores Análisis y resolución de decisiones Entorno organizacional para la integración Administración integrada de equipos
  • 46.
    Areas de proceso.Nivel Definido Desarrollo de requerimientos Obtener requerimientos del cliente y del producto Analizar y validar requerimientos
  • 47.
    Areas de proceso.Nivel Definido Solución Técnica Seleccionar soluciones de producto ó componentes de producto. Desarrollar e implementar el diseño
  • 48.
    Areas de proceso.Nivel Definido Integración de producto Preparar integración y analizar interfaces Ensamblar y entregar
  • 49.
    Areas de proceso.Nivel Definido Verificación Examen sistemático de los productos de software para encontrar defectos y cambios a realizar. Preparar verificaciones y realizar revisiones por pares Verificar productos de trabajo
  • 50.
    Areas de proceso.Nivel Definido Validación Preparar para la validación Verificar productos ó componentes de trabajo
  • 51.
    Areas de proceso.Nivel Definido Foco en el proceso de la organización Determinar oportunidades de mejora Planificar e implementar actividades de mejora
  • 52.
    Areas de proceso.Nivel Definido Definición del proceso de la organización Establecer los activos del proceso organizacional Procesos estándares, modelos de ciclo de vida, biblioteca de activos de la organización, repositorio de mediciones .
  • 53.
    Areas de proceso.Nivel Definido Capacitación organizacional Proveer capacitación necesaria Las personas realicen sus roles de forma efectiva y eficiente
  • 54.
    Areas de proceso.Nivel Definido Administración integrada de proyectos Integrar la gestión y la ingeniería de software en los procesos bien definidos. El proceso definido para cada proyecto es personalizado de acuerdo al tipo Organizar equipos integrados
  • 55.
    Areas de proceso.Nivel Definido Administración integrada de riesgos Preparar la administración de riesgos Identificar y analizar los riesgos Mitigar los riesgos
  • 56.
    Areas de proceso.Nivel Definido Administración integrada de proveedores Analizar y seleccionar los fuentes de los productos Coordinar el trabajo con los proveedores
  • 57.
    Areas de proceso.Nivel Definido Análisis y resolución de decisiones Evaluar alternativas Establecer los procedimientos y métodos a emplear
  • 58.
    Areas de proceso.Nivel Definido Entorno organizacional para la integración Proveer infraestructura Administrar personas para la integración
  • 59.
    Areas de proceso.Nivel Definido Administración integrada de equipos Composición del equipo Gobernar los equipos
  • 60.
    Niveles de CMMI– Cuantitativamente Administrado Establecer objetivos cuantitativos para el proceso. Estabilizar el rendimiento de los subprocesos. Medir el rendimiento del proceso Estabilizar el proceso Gráficos de control Atacar la causa de las variaciones especiales
  • 61.
    Niveles de CMMI– Optimizado Asegurar el mejoramiento continuo de los procesos Resolver de raíz la causa de los problemas Prevención de defectos Mejora proactiva Adopción de la tecnología a través de la innovación.
  • 62.
    Gerencia de Proyectosen CMMI GERENCIA DE PROYECTOS 8 áreas de procesos CMMI 25 áreas de procesos 2 Gerencia de acuerdos con proveedores 2 Planeación del proyecto 2 Monitoreo y control de proyectos 3 Gerencia integrada de proyectos 3 Administración de riesgos 3 Trabajo en equipo 3 Gerencia integrada de proveedores 4 Gerencia cuantitativa de proyectos Nivel Areas de Proceso
  • 63.
    Evaluación (Appraisal) Muchas organizaciones valoran el medir su progreso llevando a cabo una evaluación y ganando una clasificación del nivel de madurez o de un nivel de capacidad de logro. Este tipo de evaluaciones son realizadas normalmente por una o más de las siguientes razones: Para determinar que también los procesos de la organización se comparan con las mejores prácticas CMMI y determinar qué mejoras se pueden hacer. Para informar a los clientes externos y proveedores acerca de que también los procesos de la organización se comparan con las mejores prácticas CMMI. Para cumplir los requisitos contractuales de uno o más clientes.
  • 64.
    Evaluación (Appraisal) …Las valoraciones de las organizaciones utilizando un modelo CMMI deben ajustarse a los requisitos definidos en el documento "Appraisal Requirements for CMMI" (ARC). La evaluación se enfoca en identificar oportunidades de mejora, y comparar los procesos de la organización con las mejores prácticas CMMI. Los equipos de evaluación usan el modelo CMMI y un método conforme a ARC para guiar su evaluación y reporte de conclusiones. Los resultados de la evaluación son usados para planear mejoras en la organización. Hay tres clases de evaluación: Clase A,B,C. El Standard CMMI Appraisal Method for Process Improvement (SCAMPI) es un Método de evaluación que cumple todos los requerimientos ARC. Una evaluación de clase A es más formal y es la única que puede resultar en una clasificación de nivel de Madurez y es realizado por personal autorizado Lead Appraiser (SEI).
  • 65.
    SCAMPI : Standard CMMIAppraisal Method for Process Improvement El Standard CMMI Appraisal Method for Process Improvement (SCAMPI) es el método oficial SEI para proveer puntos de referencia de sistemas de calificación en relación con los modelos CMMI. SCAMPI se usan para identificar fortalezas y debilidades de los procesos, revelar riesgos de desarrollo/adquisición, y determinar niveles de capacidad y madurez. Se utilizan ya sea como parte de un proceso o programa de mejoramiento, o para la calificación de posibles proveedores. El método define el proceso de evaluación constando de preparación; las actividades sobre el terreno; observaciones preliminares, conclusiones y valoraciones; presentación de informes y actividades de seguimiento.
  • 66.
    SCAMPI : Standard CMMIAppraisal Method for Process Improvement Puedes descargar la documentación del SCAMPI desde http :// www.sei.cmu.edu / appraisal - program / publications / index.html Para hacer un plan de evaluacion interna en mi empresa , lo que usualmente se hace es combinar las fortalezas y oportunidades de mejora de la evaluación con los objetivos de negocio de tu empresa. Mayor guía al respecto la provee el modelo IDEAL de mejora continua. Lo puedes descargar desde: http :// www.sei.cmu.edu / publications / documents /96. reports /96. hb .001. html