Sei sulla pagina 1di 7

Resumen CMM En 1986, el SEI con ayuda de la corporacin MITRE, comenz a desarrollar una estructura de madurez de procesos que

ayudara a las organizaciones a mejorar sus procesos de desarrollo. En Septiembre de 1987, el SEI deliber una breve descripcin de una estructura de los procesos de madurez del software que fue expandido despus en el libro de Humphrey llamado Manejando el proceso de Software. Dos mtodos, la valoracin del proceso de software y la evaluacin de la capacidad del software, y un cuestionario de madurez fueron desarrollados para apreciar el proceso de madurez del software. Despus de cuatro aos de experiencia con dicha estructura y el cuestionario formulado en 1987, el SEI evolucion la estructura de madurez en el Modelo de Capacidad de Madurez para software. Este modelo es una aplicacin de los conceptos del manejo de procesos del manejo de calidad total (o TQM: Total Quality Managment), el cual consiste en aplicar mtodos cuantitativos y recursos humanos para el mejoramiento de los materiales y servicios proporcionados como entradas de una organizacin, as como para mejorar los procesos de sta. La meta de este procedimiento es conocer las necesidades del cliente, tanto actuales como futuras. El propsito del CMM es describir el buen manejo y prcticas de ingeniera estructurndolos en un esquema de madurez. La madurez del proceso de software de una organizacin ayuda predecir la capacidad de resolver las metas del proyecto. Algunas mejoras esperadas en cuanto a previsibilidad, control y efectividad en el proyecto se reflejan en el costo, tiempos de entrega, calidad, etc. Caractersticas CMM Provee una estructura conceptual para mejorar el manejo y desarrollo de productos de software en una forma disciplinada y consistente. Se enfoca en la capacidad de las organizaciones de software de producir productos de calidad de manera consistente y predecible. As, cubre prcticas de planeacin, ingeniera, desarrollo de software y su mantenimiento, definiendo niveles a los cuales una organizacin debera de evolucionar para establecer una cultura de excelencia en ingeniera de software. Estructura La estructura del modelo de capacidad de madurez organiza sus prcticas complejas en unas cuantas categoras. Las divisiones principales del modelo son 5 niveles de madurez y cada nivel es descompuesto a su vez en un conjunto reas claves del proceso (KPA por sus siglas en ingls Key Process Areas), las cuales estn organizadas de acuerdo a sus caractersticas.

Niveles de madurez Los niveles definen una escala para medir la madurez del proceso de software de una organizacin y evalan la capacidad de procesos de software: Inicial En este nivel, las buenas prcticas dependen del recurso humano directamente. El proceso de software no est documentado y tiene un ambiente inestable en el desarrollo y mantenimiento. Existe una baja probabilidad de cumplir objetivos del proyecto (Tiempo, costos, recursos). Repetible La repeticin de xitos es en base a proyectos anteriores; los procesos efectivos son bien definidos, documentados, practicados y medidos pero an pueden mejorar; adems existen polticas para la administracin de proyectos; sigue habiendo cajas negras pero ya son definidas y revisadas, an no se cuenta con mtricas para servicios Definido El proceso es estndar, consistente, estable y repetible. La capacidad se logra basndose en el entendimiento de las actividades, roles y responsabilidades en un proceso de software bien definido. Tiene mtricas definidas para los productos y los servicios que ofrece la empresa; la organizacin cuenta con un programa de capacitacin para todos sus miembros.

Administrado El proceso, a la par que el producto y servicios, es medido y opera dentro de un lmite cuantificable. Se cumple con planes y programas de mejora. Se hace una distincin entre los procesos principales y los de apoyo. Optimizado

Este nivel se dedica al mejoramiento continuo de su proceso a la par de su madurez, lo cual se da gracias al uso o implementacin de nuevas tecnologas o mtodos. reas Clave del proceso El conjunto de prcticas de software y el manejo especfico de los niveles de madurez son llamadas reas claves del proceso (o KPA: Key Process Areas). Cada una de stas es descrita en trminos de prcticas claves, las cuales describen las actividades o infraestructura que contribuye de manera ms efectiva a la implementacin e institucionalizacin de la KPA; son descritas en oraciones sencillas, a menudo seguidas por una explicacin detallada reas Clave del proceso (KPA) del nivel 2 Administracin de requerimientos: Consiste en establecer un entendimiento comn entre el cliente y el proyecto de software acerca de los requerimientos del usuario que sern cubiertos por el proyecto de software. Administracin de la configuracin del software: Establece y mantiene la integridad de los productos del proyecto de software a travs del ciclo de vida del software del proyecto. Aseguramiento de la calidad del software: Se encarga de proporcionar a la administracin una visibilidad apropiada del proceso usado y los productos construidos durante el desarrollo de un proyecto de software. Seguimiento y pruebas del proyecto de software: Se da la tarea de proporcionar una visibilidad adecuada del progreso actual, de manera que los administradores puedan tomar acciones efectivas cuando el desempeo del proyecto se desva. Planeacin del proyecto de software: Establece planes razonables para realizar la ingeniera de software y para administrar el proyecto de software. Administracin de subcontratistas de software: sta rea clave selecciona a los subcontratistas de software calificados y administrarlos efectivamente. reas Clave del proceso del nivel 3 Administracin de subcontratistas de software: sta rea clave selecciona a los subcontratistas de software calificados y administrarlos efectivamente. Enfoque del proceso de la organizacin: Establece la responsabilidad organizacional de las actividades del proceso de software que mejoran la capacidad total del proceso de software de la organizacin. Definicin del proceso de software: Desarrolla y mantiene un conjunto til de activos de software que mejoren el desempeo de proceso entre proyectos y proporcionen una base de beneficios acumulables y de largo plazo para la organizacin. Programa de capacitacin: Se encarga de desarrollar las habilidades y conocimiento de individuos de tal forma que puedan desempear sus roles efectiva y eficientemente. Administracin de la integracin del software: Sirve para integrar las actividades de ingeniera y administracin del software en un proceso de

software coherente y 20 definido, que es adaptado del proceso estndar de software de la organizacin y de sus activos de proceso relacionados. Ingeniera del producto de software: Desempea consistentemente un proceso de ingeniera bien definido que integra todas las actividades de ingeniera de software para producir, de manera efectiva y eficiente, productos correctos y consistentes de software Coordinacin intergrupal: Establece los medios para que el grupo de ingeniera de software participe activamente con otros grupos de ingeniera, de tal manera que el proyecto tenga mayor capacidad de satisfacer las necesidades del cliente de manera efectiva y eficiente. Revisiones intergrupales: Esta rea clave elimina defectos de los productos de software en etapas tempranas y de manera eficiente. Un efecto colateral muy importante es desarrollar un mejor entendimiento de los productos de software y de los defectos que pueden prevenirse. 2.4.1.3 reas Clave del proceso del nivel 4: Administrado Administracin cuantitativa de los procesos: Se encarga de controlar el desempeo del proceso del proyecto de software de manera cuantitativa. El desempeo del proceso de software representa los resultados actuales de seguir un proceso de software Administracin de la calidad del software: Desarrolla un entendimiento cuantitativo de la calidad de los productos de software de proyecto y alcanza metas de calidad especficas. 2.4.1.4 reas Clave del proceso del nivel 5: Optimizado Prevencin de defectos: Identifica la causa de los defectos y prevenir su recurrencia. Administracin de cambios de tecnologa: Identifica nuevas tecnologas (i.e. Herramientas, mtodos, y procesos) y darles seguimiento dentro de la organizacin de manera ordenada. Administracin de cambio de procesos: Mejora continuamente el proceso de software utilizado en la organizacin con la intencin de mejorar la calidad del software, incrementar la productividad y disminuir el ciclo de tiempo para desarrollo de productos. 2.4.2 Metas de las KPAS Administracin de requerimientos: Los requerimientos del sistema asignados al software son controlados para establecer una "lnea base" para usarla en la administracin e ingeniera de software; los planes, productos y actividades de software son mantenidos consistentes con los requerimientos de sistema asignados al software. Administracin de la configuracin del software: Se identifican, controlan y mantienen disponibles productos de trabajo software selectos; los cambios a los productos de trabajo de software identificados son controlados; se informa el estado y las lneas base del software a los grupos e individuos involucrados

en los cambios; las actividades de administracin de la configuracin del software son planeadas. Aseguramiento de la calidad del software: Las actividades de aseguramiento de calidad de software son planificadas; se verifica objetivamente que los productos y actividades de software satisfacen los requisitos, estndares, procedimientos aplicables; los grupos e individuos afectados son informado por las actividades de Aseguramiento de Calidad de Software y de los resultados obtenidos; los problemas de no conformidad que no pueden ser resueltos dentro del proyecto son abordados por la gerencia superior. Seguimiento y pruebas del proyecto de software: El rendimiento y los resultados obtenidos son seguidos y contrastados con el plan del proyecto; se toman y administran acciones correctivas cuando los resultados y el rendimiento obtenidos desvan significativamente del plan; los cambios en los compromisos adquiridos son acordados entre los grupos y personas afectadas. Planeacin del proyecto de software: Las actividades y los compromisos del proyecto de software son planificados y documentados; los grupos y personas involucradas aprueban sus compromisos relacionados al proyecto de software. Administracin de subcontratistas de software: El contratista principal selecciona subcontratistas de software calificados; el contratista principal y el subcontratista mantienen una comunicacin continua; el contratista hace un seguimiento al subcontratista de software, de los resultados reales y del desempeo en relacin a sus compromisos; el contratista y el subcontratista de software acuerdan compromisos recprocos. Enfoque del proceso de la organizacin: Las actividades de desarrollo y mejora de proceso de software se coordinan a lo largo de la organizacin; las fortalezas y debilidades del proceso de software utilizado se identifican en comparacin a un estndar de proceso; se planean las actividades de desarrollo y mejora de procesos a nivel de la organizacin. Definicin del proceso de software: La informacin relacionada al uso de proceso estndar de software por los proyectos de software es recolectada, revisada y se hace accesible; se desarrolla y actualiza un proceso estndar de software para la organizacin. Programa de capacitacin: Se planean las actividades de capacitacin.; se proporciona capacitacin para desarrollar las habilidades y el conocimiento necesario para desempear roles tcnicos y de administracin de software; los individuos de los grupos de ingeniera de software y de grupos relacionados con el software reciben la capacitacin necesaria para desempear sus roles. Administracin de la integracin del software: El proceso de software definido para el proyecto es una versin adaptada del proceso estndar de software de la organizacin; el proyecto se planea y administra de acuerdo con el proceso de software definido para el proyecto. Ingeniera del producto de software: Las tareas de ingeniera de software se definen, integran y se realizan consistentemente para producir el software; los productos de software se mantienen consistentes entre s. Coordinacin intergrupal: Los requerimientos del cliente son acordados por todos los grupos afectados; los compromisos entre los grupos de ingeniera son acordados por los grupos afectados; el grupo de ingeniera identifica, da seguimiento y resuelve los asuntos entre los grupos.

Revisiones intergrupales: Se planean las actividades de revisin entre colegas; se identifican y remueven los defectos en los productos de software. Administracin cuantitativa de los procesos: Se planean las actividades de administracin cuantitativa del proceso; el desempeo del proceso de software definido para el proyecto se controla cuantitativamente; la capacidad del proceso estndar de software de la organizacin se conoce en trminos cuantitativos. Administracin de la calidad del software: Se planean las actividades de administracin de la calidad de software del proyecto; se definen metas medibles y sus prioridades para la calidad de los productos de software; se cuantifica y administra el avance real hacia la obtencin de metas de calidad para los productos de software. Prevencin de defectos: Se planean las actividades de prevencin de defectos; se persiguen e identifican las causas comunes de los defectos; se priorizan y se eliminan sistemticamente las causas comunes de los defectos. Administracin de cambios de tecnologa: Planear la incorporacin de cambios tecnolgicos; las nuevas tecnologas se evalan para determinar su efecto en la calidad y productividad; las nuevas tecnologas que resultan apropiadas se transfieren a la prctica normal en toda la organizacin. Administracin de cambio de procesos: Se planea la mejora continua del proceso; toda la organizacin participa en las actividades de mejora del proceso de software de la organizacin; se mejoran continuamente tanto el proceso estndar de software como el proceso de software definido para el proyecto. Caractersticas comunes Por conveniencia, las prcticas que describen las reas clave del proceso, son organizadas por caractersticas comunes, las cuales son atributos que indican si la implantacin e institucionalizacin de un rea clave del proceso es efectiva, repetible y duradera. En esta seccin se darn detalles de estas clasificaciones y se mencionarn las prcticas que le corresponden. Para mayor claridad de la informacin, las prcticas se enlistan con la inicial de la caracterstica y el nivel al que pertenecen. El orden que siguen es el correspondiente a la KPA del nivel y se han agrupado de acuerdo a las funciones de cada elemento descrito. Compromisos Describen acciones que la organizacin debe realizar para asegurarse de que el proceso es establecido y de que perdurar. Tpicamente involucra establecer polticas organizacionales y de liderazgo. Habilidades necesarias Describen las precondiciones que deben existir en el proyecto u organizacin para implantar competentemente los procesos de software. Tpicamente involucra recursos, estructuras organizacionales y entrenamientos. Para cada proyecto se establece la responsabilidad para analizar los requerimientos del sistema y dirigirlos hacia el software, el hardware u otros componentes del sistema. Actividades realizadas

Describen las actividades, roles y procedimientos necesarios para implantar un rea clave del proceso. Tpicamente involucran el establecimiento de planes y procedimientos, realizacin y seguimiento del trabajo y tomar acciones correctivas segn sea necesario. Medicin y anlisis Describe las prcticas bsicas de medicin que son necesarias para determinar el estado relacionado con los procesos. Estas medidas son utilizadas para controlar y mejorar los procesos. Verificaciones de implantacin Describen los pasos a seguir para asegurar que las actividades son realizadas de acuerdo a los procesos establecidos previamente. Involucra revisiones y auditorias de administracin y aseguramiento de la calidad de software. Usos del modelo El uso de este modelo tiene diversas variantes pero los ms importantes. Se pueden resumir en identificar las fortalezas, debilidades y necesidades especficas de la organizacin. Los equipos de evaluacin lo utilizan para identificar los riesgos de seleccionar entre diversos contratistas para el negocio y para vigilar los contratos. La alta gerencia lo deber utilizar para entender las actividades necesarias para realizar un programa de mejoramiento en el proceso de software de la organizacin. El personal tcnico lo ocupar como gua que le ayude a definir y mejorar los procesos del software. A travs de los cinco niveles, el proceso de capacidad interacta con personas, tecnologa y medidas mientras la organizacin madura, en la siguiente tabla se muestra la manera en que se relacionan.

Potrebbero piacerti anche