Documente Academic
Documente Profesional
Documente Cultură
Problemas de la Industria
Los beneficios de los mejores mtodos e instrumentos no se pueden obtener en el medio indisciplinado y catico de desarrollo
Organizaciones no maduras
Los procesos de software son improvisados Organizaciones Apaga fuego La planificacin en tiempo y recursos no se cumple
Organizaciones no maduras
No hay bases objetivas para : - Enjuiciar la claridad del producto - Resolver problemas de los productos y del software.
La calidad y la productividad
No solo se logra aplicando nuevas metodologas y tecnologas para desarrollar y mantener software. El principal problema es la incapacidad para administrar los procesos de software. UML
Temticas
CMMI: Capability Maturity Model Integrator Niveles de la Organizacin 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 Creacin del SEI Software Engineering Institute 1991 Primera versin de CMMI 2000 Aprobacin de CMMI
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 aplicacin de sentido comn de los conceptos de gestin 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 organizacin y produce una evaluacin de la madurez de la organizacin segn 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 revisin constante.
CMMI
VENTAJAS
DESVENTAJAS
Incremento de productividad de la entidad. Mejor comunicacin con los clientes y entre los profesionales de la entidad. Mayor satisfaccin de las solicitudes de los clientes. Especfica para las empresas de software. Ofrece un camino de mejora continua. Permite a un interesado externo tener certeza sobre el potencial de una organizacin.
Su aplicacin resulta compleja (PSP Personal Software Process y TSP Team Software Process). Su implementacin en las empresas toma tiempo.
Proporciona mtodos detallados para estimular y planear, muestra a los ingenieros cmo dar seguimiento a su desempeo contra estos planes y explica como los procesos definidos pueden guiar su trabajo. El PSP tiene el propsito de desarrollar hbitos de programacin, en especial en cuanto a la medicin.(Cunto tiempo he dedicado a este cdigo?, Cuntas LDC he escrito?, Cuntos defectos conocidos he generado?.
Formar equipos autodirigidos - 3 a 20 ingenieros - Establecer sus propias metas - Establecer sus propios procesos y planes. - Rastrear el trabajo. Mostrar a los gerentes cmo administrar equipos - Orientar - Motivar - Apoyar el desempeo ms alto. Acelerar la mejora del CMM - Hacer que el CMMI 5 sea normal. Proporcionar guas de mejoramiento para organizaciones con alta madurez Facilitar la enseanza universitaria a equipos integrados con la industria.
Describe las prcticas de Ingeniera de Software y de administracin que caracterizan como las organizaciones maduran sus procesos para desarrollar y mantener software.
Como ganar el control de sus procesos para desarrollar y mantener software. Como evolucionar hacia una cultura de ingeniera de software y de administracin 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) CMMI-SE/SW FasesRepresentacin CMMI-SE/SW Continua Representacin
-Combina los modelos. Ingeniera de Sistemas/ Ingeniera de Software - Puede ser aplicado a : * Los proyectos de Ing. De Software *Los proyectos de Ing. De Sistemas en una organizacin. * A ambos * IPPD puede ser usado en ambos
CMMI
Es importante tener claro: - Dnde nos encontramos? - A dnde queremos llegar? - Cmo llegaremos? - Cmo 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 organizacin.
Personas
Tecnologa
Procesos
Procesos
Tecnologa
An las personas ms inteligentes y capaces no pueden desarrollar de la mejor manera cuando el proceso no es entendido operado de la mejor forma
Definicin de Proceso
Un proceso es un conjunto de prcticas realizadas para alcanzar un propsito dado; este puede incluir herramientas, mtodos, materiales, y/0 personas. Mientras que proceso es frecuentemente descrito como la pierna de la triada procesopersona-tecnologa, realmente debe ser considerado como la goma que integra los otros aspectos.
Sub-Actividades
Capacidad de un proceso
Describe el rango de los resultados esperados que pueden ser alcanzados siguiendo un proceso de Software
Capacidad y desempeo
El desempeo por supuesto depende de la capacidad. Para mejorar el desempeo hay que mejorar la capacidad, el proceso se hace ms maduro. CMMI ayuda a mejorar la capacidad
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.
Cambiar el proceso a :
- Codificar Revisar cdigo 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.
Ms cambios al proceso :
- Codificar Revisar cdigo 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.
Distinciones Crticas
Realizado Vs Administrado - La medida en la cual el proceso es planificado, el desempeo es administrado contra el plan, las acciones correctivas son tomadas cuando es necesario. Administrado Vs Definido
- El alcance de la aplicacin de la descripcin del proceso, los estndares y procedimientos (proyecto Vs organizacin) Defimido Vs Cuantitatiamente Administrado
- El proceso es continuamente mejorado de acuerdo a las causas comunes de variacin del proceso
Obtener objetivos especficos Ejecutar las prcticas bsicas Establecer una poltica organizacional
EJECUTE EL TRABAJO
Describe aquellas funciones de Ingeniera de Software que deben estar presentes para alcanzar un nivel dado de calidad por la empresa.
Niveles de CMMI
OPTIMIZABLE Cuantitativamente administrado DEFINIDO
ADMINISTRADO INICIALL
Para avanzar
Los procesos bsicos de gestin estn establecidos para documentar los costos, los tiempos y la funcionalidad. Existe una disciplina que permite repetir xitos tempranos en aplicaciones similares.
en
el
Revisiones
Auditoras
Nivel Administrado
Medicin y Anlisis
Establecer objetivos de la
Procesos del proyecto personalizados con los estndares de la organizacin. 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 configuracin - Revisa el estado de la alta Gerencia.
Los
estn
El proceso efectivo de desarrollar proyectos est definido, documentado, el personal es entrenado en l y es obligatorio su uso.
Desarrollo de requerimientos Solucin tcnica Integracin de producto Verificacin Validacin Foco en el proceso de la organizacin Definicin del proceso de la organizacin Capacitacin organizacional Administracin integrada de proyectos Administracin integrada de riesgos Administracin integrada de proveedores Anlisis y resolucin de decisiones Entorno organizacional para la integracin Administracin integrada de equipos
Desarrollo de requerimientos
Solucin Tcnica
Integracin de producto
Verificacin Examen sistemtico de los productos de software para encontrar defectos y cambios a realizar.
Validacin
Establecer los activos del proceso organizacional Procesos estndares, modelos de ciclo de vida, biblioteca de activos de la organizacin, repositorio de mediciones.
Integrar la gestin y la ingeniera de software en los procesos bien definidos. El proceso definido para cada personalizado de acuerdo al tipo Organizar equipos integrados proyecto es
Preparar la administracin de riesgos Identificar y analizar los riesgos Mitigar los riesgos
Analizar y seleccionar los fuentes de los productos Coordinar el trabajo con los proveedores
Establecer objetivos cuantitativos para el proceso. Estabilizar el rendimiento de los subprocesos. Medir el rendimiento del proceso Estabilizar el proceso Grficos de control Atacar la causa de las variaciones especiales
Asegurar el mejoramiento continuo de los procesos Resolver de raz la causa de los problemas Prevencin de defectos Mejora proactiva Adopcin de la tecnologa a travs de la innovacin.
Areas de Proceso
Gerencia cuantitativa de proyectos Gerencia integrada de proveedores Trabajo en equipo Administracin de riesgos Gerencia integrada de proyectos Monitoreo y control de proyectos Planeacin del proyecto Gerencia de acuerdos con proveedores
Evaluacin (Appraisal)
Muchas organizaciones valoran el medir su progreso llevando a cabo una evaluacin y ganando una clasificacin del nivel de madurez o de un nivel de capacidad de logro. Este tipo de evaluaciones son realizadas normalmente por una o ms de las siguientes razones: Para determinar que tambin los procesos de la organizacin se comparan con las mejores prcticas CMMI y determinar qu mejoras se pueden hacer. Para informar a los clientes externos y proveedores acerca de que tambin los procesos de la organizacin se comparan con las mejores prcticas CMMI. Para cumplir los requisitos contractuales de uno o ms clientes.
Evaluacin (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 evaluacin se enfoca en identificar oportunidades de mejora, y comparar los procesos de la organizacin con las mejores prcticas CMMI. Los equipos de evaluacin usan el modelo CMMI y un mtodo conforme a ARC para guiar su evaluacin y reporte de conclusiones. Los resultados de la evaluacin son usados para planear mejoras en la organizacin. Hay tres clases de evaluacin: Clase A,B,C. El Standard CMMI Appraisal Method for Process Improvement (SCAMPI) es un Mtodo de evaluacin que cumple todos los requerimientos ARC. Una evaluacin de clase A es ms formal y es la nica que puede resultar en una clasificacin de nivel de Madurez y es realizado por personal autorizado Lead Appraiser (SEI).
El Standard CMMI Appraisal Method for Process Improvement (SCAMPI) es el mtodo oficial SEI para proveer puntos de referencia de sistemas de calificacin en relacin con los modelos CMMI. SCAMPI se usan para identificar fortalezas y debilidades de los procesos, revelar riesgos de desarrollo/adquisicin, y determinar niveles de capacidad y madurez. Se utilizan ya sea como parte de un proceso o programa de mejoramiento, o para la calificacin de posibles proveedores. El mtodo define el proceso de evaluacin constando de preparacin; las actividades sobre el terreno; observaciones preliminares, conclusiones y valoraciones; presentacin de informes y actividades de seguimiento.
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 evaluacin con los objetivos de negocio de tu empresa. Mayor gua 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