Está en la página 1de 82

Ingeniera de Software

Clase 5
Calidad

UNPSJB 2005

Ingeniera de Software - Clase 5

Glosario de la Clase

Objetivos

Administracin de la calidad Aseguramiento y estndares de calidad Planeacin de la calidad Control de calidad Proceso del software

Normas ISO CMM

UNPSJB 2005

Ingeniera de Software - Clase 5

Bibliografa

Ingeniera de Software (Sommerville) Ingeniera de Software (Pfleeger) Pgina del SEI (CMM) (www.sei.org) Pgina de ISO Material del CD.

UNPSJB 2005

Ingeniera de Software - Clase 5

Administracin de Calidad

Calidad concepto presente en el mundo globalizado

Como se aplica en IS?

Definiendo calidad:

el producto desarrollado cumple su especificacin (Crosby, 1979)

UNPSJB 2005

Ingeniera de Software - Clase 5

Administracin de Calidad

Como se aplica a la IS? problemas La especificacin se orienta hacia las caractersticas del producto que el consumidor quiere, pero la organizacin tiene requerimientos que no se incluyen en la especificacin (ej. Mantenimiento) No se sabe como especificar ciertas caractersticas de calidad de una forma no ambigua En IR es muy difcil redactar especificaciones concretas del software. Por esto aunque el producto est acorde con la especificacin, los usuarios no lo consideran un producto de alta calidad

UNPSJB 2005

Ingeniera de Software - Clase 5

Administracin de Calidad

Tres actividades principales

Aseguramiento de calidad Establecer un marco de trabajo de procedimientos y estndares organizacionales que conduce a software de alta calidad Planeacin de la calidad: la seleccin de procedimientos y estndares adecuados a partir de este marco de trabajo y la adaptacin de stos para un proyecto especfico. Control de calidad: definicin y promulgacin de los procesos que aseguran que los procedimientos y estndares para la calidad del proyecto son seguidos por el equipo de desarrollo de software.
Ingeniera de Software - Clase 5 6

UNPSJB 2005

Administracin de Calidad

Administracin de calidad proceso de desarrollo del soft


Tareas independientes El resultado del proceso de desarrollo se introduce en el proceso de administracin de la calidad Cuales son los procesos de adm.?
ISO 9000 CMM

UNPSJB 2005

Ingeniera de Software - Clase 5

Administracin de Calidad

Actividades para QA (aseguramiento de calidad)

Estndares Del producto: se aplican sobre el elemento a desarrollar. Se incluye

Estndares de documentos Estructuras del documento de requerimiento Estndares de codificacin, etc.

Del proceso: definen los procesos a seguir durante el desarrollo del soft. Incluyen

Procesos de especificacin, diseo y validacin Documentacin asociada con lo anterior

UNPSJB 2005

Ingeniera de Software - Clase 5

Administracin de Calidad

Estndares de documentacin

Son la nica forma tangible de representar al software y al proceso de software. Tres tipos de estndares Del proceso de documentacin: define el proceso a seguir para la produccin del documento Del documento: gobierna la estructura y presentacin de documentos Para intercambio de documentos: aseguramiento que las copias electrnicas sean compatibles

UNPSJB 2005

Ingeniera de Software - Clase 5

Administracin de Calidad

Calidad del proceso y del producto

Definir proceso

Desarrollar producto

Validar la calidad del producto

Mejorar Proceso

No

Calidad OK

Si

Estandarizar proceso

Calidad basada en procesos

UNPSJB 2005

Ingeniera de Software - Clase 5

10

Administracin de Calidad

El dibujo anterior se aplica en produccin manufacturera Como llevarlo a la produccin del software?

Es difcil medir atributos del software sin utilizarlo mucho tiempo Mejorar la calidad se centra en Identificar buenos productos de calidad Examinar el proceso usado para su desarrollo Generalizar el proceso para aplicarlo en varios proyectos.

UNPSJB 2005

Ingeniera de Software - Clase 5

11

Administracin de Calidad

Planificacin de calidad

Inconvenientes La relacin proceso del software y calidad del producto es compleja. Cambiar el proceso no siempre conduce a mejorar calidad del producto Recordar anlisis de riesgo. Se inicia en las primeras etapas del proceso del software. Un plan de calidad define la calidad del producto deseado Como valorar esta calidad Lo que significa el software de alta calidad

UNPSJB 2005

Ingeniera de Software - Clase 5

12

Administracin de Calidad

Un plan de calidad selecciona

Planes de producto

los estndares organizacionales apropiados para un producto. Un proceso de desarrollo Introduccin al producto

Fechas de terminacin y responsabilidades importantes De desarrollo y de servicio a utilizar para el desarrollo y administracin del producto Metas y planes de calidad previstos

Descripcin del proceso

Un plan comprende

Descripcin del mismo, el mercado a donde est dirigido y las espectativas de calidad

Metas de calidad

Riesgo y administracin del riesgo

UNPSJB 2005

Ingeniera de Software - Clase 5

13

Administracin de Calidad

Control de calidad

Vigilar el proceso de desarrollo del software para asegurar que se sigan los procedimientos de aseguramiento y estndares de calidad. Dos enfoques Revisiones de calidad (se evala soft, documentacin y procesos utilizados) Valoracin automtica del soft (el soft y documentos producidos se procesan por algn programa y se comparan contra estndares que se aplican a ese proyecto en particular).

UNPSJB 2005

Ingeniera de Software - Clase 5

14

Proceso de Software. Definicin.

Actividades, mtodos y prcticas para desarrollar y mantener software y sus productos asociados.
Procedimientos & Mtodos
Herramientas & Equipamiento

Gente. Habilidades & Motivacin

Proceso

UNPSJB 2005

Ingeniera de Software - Clase 5

15

Proceso. Aspectos Generales.

Capacidad: Rango de resultados que pueden ser alcanzados siguiendo un proceso inicialmente establecido a nivel de organizacin. Performance / Desempeo: medida de los resultados reales alcanzados. Se aplica a un proyecto en particular de la organizacin.

UNPSJB 2005

Suele ser <> por cada ejecucin del proceso

Ingeniera de Software - Clase 5

Es lo que se intenta predecir y controlar

16

Capacidad & Resultados


Proceso de Baja capacidad Proceso de Alta capacidad

Resultado

Resultado

Resultado podra ser plazo / fit presup / # bugs, etc

Madurez de un proceso

La medida en la cual un proceso est explcitamente documentado, gestionado, medido, controlado y continuamente mejorado
Ingeniera de Software - Clase 5

Proceso maduro tendr alta capacidad


17

UNPSJB 2005

Crisis del software (I)

Concrecin del proyecto:

31% son cancelados antes de la finalizacin +50% han costado el doble de lo estimado originalmente. En mediciones actuales se estima la existencia de 50 errores/1000 lineas de cdigo

Costo

Calidad

http://www.costxpert.com/resource_center/disaster_as_opportunity.html https://secure.standishgroup.com/reports/reports.php?rid=500
UNPSJB 2005 Ingeniera de Software - Clase 5 18

Crisis del software (II)

Standish Group 2004

Proyectos de IT han mejorado su tasa de xito un 34%. Mejora del 100% en comparacin con 1994. Tasa de fallos -15%. Problema de costos promedio 43%

Proyectos mas pequeos Procesos iterativos haciendo evidentes los requerimientos

Project Management conceptualizado y no tomado como una ciencia oculta

http://www.softwaremag.com/L.cfm?Doc=newsletter/2004-01-15/Standish
UNPSJB 2005 Ingeniera de Software - Clase 5 19

Contexto. Realidad del Software


Necesidad de software cada vez mas complejo & crtico. La produccin de software es una actividad creativa e intelectual realizada por seres humanos. Tcnicas de Ingeniera de software acompaadas por sentido comn, Competencia y Experiencia. Tcnicas de Ingeniera de software en re-evaluacin (Mtodo iterativo vs waterfall). Productos de software como los Web Services implican una aplicacin diferencial de las tcnicas. Aceptacin del ppio del No Silver Bullet

UNPSJB 2005

Ingeniera de Software - Clase 5

20

Modelos de Proceso y de su Capacidad

CMM (Capability Maturity Model)


Desarrollado por SEI (Software Engineering Institute), org. creado por el DoD de USA Fuerte impacto en mejora del proceso Estipula un Camino para la mejora CMMI Areas Clave que se deben atacar

ISO 12207 Modelos de Ciclos de Vida del Software

Actividades que debe incluir

SPICE (Software Process Improvement and Capability dEtermination) ISO 15504 Tick-It (modelo ingls)

UNPSJB 2005

Ingeniera de Software - Clase 5

21

UNPSJB 2005

Ingeniera de Software - Clase 5

22

CMM SW v1.1(Capability Maturity Model)


Mejora continua del proceso Control del proceso Nivel 4: Gestionado Nivel 5: Optimizante Gestin del Cambio

Definicin del Proceso


Disciplina del Proceso Nivel 1: Inicial
UNPSJB 2005

Nivel 3: Definido
Nivel 2: Repetible

Gestin Cuantitativa

Gestin de Ingeniera

Madurez

Gestin del Proyecto


Ingeniera de Software - Clase 5 23

Nivel 1 - Inicial
Desempeo basado en la competencia del personal

frecuentemente la organizacin vive apagando incendios aparecen hroes dificultad para encarar mejoras a largo plazo la organizacin acta esencialmente por reaccin

Promueve alta calidad y desempeo excepcional, posible siempre que se logre contar con los mejores Impredecible (para bien y para mal) Caracterizado por problemas que son esencialmente de gestin, no tcnicos

Entradas
UNPSJB 2005

Salidas Entran los requerimientos y otras entradas y salen los productos


Ingeniera de Software - Clase 5 24

Nivel 2 - Repetible
La organizacin

estableci la gestin efectiva de los proyectos de software el proceso de gestin del software est documentado usa polticas organizacionales para guiar a los proyectos en establecer los procesos de gestin repite prcticas exitosas desarrolladas en proyectos previos

Entradas

Reqs.

Diseo

Codif.

Prueba

Salidas

UNPSJB 2005

Ingeniera de Software - Clase 5

Existen riesgos al presentarse nuevos desafos.

25

Nivel 3 - Definido

El proceso para la gestin y las actividades de ingeniera est documentado e integrado en un proceso estndar para la organizacin. Todos los proyectos usan una versin documentada y aprobada del proceso estndar de la organizacin. Una task force dedicada al proceso de Ingeniera de software ha sido establecido para focalizar y liderar esfuerzos en la mejora.

Entradas

Salidas

UNPSJB 2005

Ingeniera de Software - Clase 5

26

Nivel 4 - Gestionado
La organizacin

aplica los principios de la gestin estadstica de procesos para controlar el proceso del software la direccin tiene bases objetivas para tomar decisiones, puede predecir el desempeo en un entorno cuantificado realista usa los datos como base para decisiones, objetivos y mejoras

Reaccin frente a las mediciones fuera de rango de control Entradas Salidas

UNPSJB 2005

Productos y Proceso Gestionados cuantitativamente Ingeniera de Software - Clase 5

27

Nivel 5 - Optimizante
La organizacin

identifica y elimina causas de desempeo pobre mejora continua del proceso en base a gestin del cambio del proceso y de la tecnologa

Foco en la mejora del proceso y tecnologa

Entradas

Salidas

UNPSJB 2005

Ingeniera de Software - Clase 5

Cambio controlado se institucionaliza

28

Areas Clave de Proceso


conjunto de actividades relacionadas

tales que cuando se llevan a cabo, se logran un conjunto de objetivos Estos objetivos son considerados importantes para mejorar la capacidad del proceso

Para cada Area Clave (Key Process Area) est presentada en el modelo de acuerdo a Caractersticas Comunes (Common Features), referidas a su institucionalizacin:

compromiso en realizar capacidad de realizar actividades realizadas medicin y anlisis verificacin de implementacin

UNPSJB 2005

Ingeniera de Software - Clase 5

29

Estructura del modelo CMM


Niveles de Madurez indican
Capacidad del proceso

contiene Areas Clave del Proceso logra organizada por

Objetivos

Caractersticas Comunes
refiere a

Implementacin o Institucionalizacin Infraestructura o actividades


UNPSJB 2005 Ingeniera de Software - Clase 5

Prcticas Clave
describe
30

Areas Clave del Proceso

Nivel CMM
Inicial

Area Clave del Proceso

Ninguna

Repetible

Gestin de Requerimientos (RM) Planificacin de Proyecto de Software (SPP) Seguimiento y Supervisin de proyectos de Sw (SPTO) Gestin de Subcontratos de Sw (SSM) Aseguramiento de la calidad del Sw (SQA) Gestin de la Configuracin del Sw (SCM)

UNPSJB 2005

Ingeniera de Software - Clase 5

31

Areas Clave del Proceso (II)


Definido
Foco en el proceso de la organizacin (OPF) Definicin de los procesos de la organizacin (OPD) Programa de entrenamiento (TP) Gestin de Sw integrada (ISM) Ingeniera de Productos de Sw (SPE) Coordinacin entre grupos (IC) Revisiones entre pares (PR) Gestin de la calidad del software (SQM)

Gestionado Gestin cuantitativa del proceso (QPM) Optimizante Prevencin de defectos (DP)
Gestin del cambio tecnolgico (TCM) Gestin del cambio del proceso (PCM)
UNPSJB 2005 Ingeniera de Software - Clase 5 32

SW-CMM- Estructura
Aspectos Comunes
Atributos que permiten que la implementacin o institucionalizacin de un rea clave sea efectiva, repetible y perdurable

Compromiso para la ejecucin: acciones que la organizacin debe llevar a cabo para establecer el proceso y que perdure. Polticas y liderazgos corporativos. Habilidad para ejecutar: precondiciones para ejecutar el proceso competentemente. Entrenamiento, estructura y recursos

UNPSJB 2005

Ingeniera de Software - Clase 5

33

SW-CMM- Estructura
Aspectos Comunes (II)

Actividades a ejecutar: Comprende actividades, roles y procedimientos para implementar un rea clave. Mediciones y anlisis: Describe las prcticas de medicin necesarias para determinar el estado del proceso. Verificacin de la implementacin: Describe los pasos para asegurar que las actividades son llevadas a cabo de acuerdo al proceso establecido. Incluye revisiones & auditoras.

UNPSJB 2005

Ingeniera de Software - Clase 5

34

Gestin de Requerimientos (RM)


Repetible
Propsito: Establecer un entendimiento comn entre el cliente y el equipo de proyecto sobre los requerimientos del cliente que deben tenerse en cuenta Objetivos: Documentar requerimientos como base del proyecto Gestionar y controlar los cambios que se hacen a los requerimientos durante todo el ciclo de vida del proyecto
http://www.pst.informatik.uni-muenchen.de/personen/kochn/ideas03-escalona-koch.pdf Ingeniera de Requisitos en aplicaciones Web. SPA. Nora Koch 2003

UNPSJB 2005

Ingeniera de Software - Clase 5

35

Planificacin del proyecto (SPP)


Repetible
Propsito: Establecer planes razonables para realizar las actividades de ingeniera de software y para gestionar el proyecto Objetivos: Hacer estimaciones del trabajo a realizar Establecer los compromisos para realizar el trabajo Definir los planes para ejecutar el trabajo

UNPSJB 2005

Ingeniera de Software - Clase 5

36

Seguimiento de proyectos (SPTO)


Repetible
Propsito: Supervisar el progreso real del proyecto para tomar acciones a tiempo cuando el rendimiento del proyecto se desva significativamente de lo planificado Objetivos: Seguir y revisar el progreso del proyecto en comparacin con las estimaciones y los planes Tomar acciones correctivas cuando surjan discrepancias entre las estimaciones y los valores reales para reconducir el proyecto Re-establecer compromisos

UNPSJB 2005

Ingeniera de Software - Clase 5

37

Gestin de subcontratistas (SSM)


Repetible
Propsito: Seleccionar (sub)contratistas calificados y gestionarlos eficazmente Objetivos: Seleccionar (sub)contratista adecuado Establecer compromisos Seguir y revisar su rendimiento y resultados

UNPSJB 2005

Ingeniera de Software - Clase 5

38

Aseguramiento de la Calidad (SQA)


Repetible
Propsito: Proporcionar visibilidad sobre los procesos utilizados por el proyecto de software y sobre los productos que genera Objetivos: Planificar las actividades de aseguramiento de la calidad Revisar y auditar objetivamente los productos y las actividades para verificar que estn conformes con los procedimientos y estndares aplicables Proporcionar los resultados de estas revisiones o auditoras informando a la direccin cuando sea necesaria su mediacin

UNPSJB 2005

Ingeniera de Software - Clase 5

39

Aseguramiento de la Calidad (II)


Repetible

El grupo encargado del aseguramiento de la calidad del software:


Deber trabajar con el equipo del proyecto desde el principio Deber ser objetivo y, a ser posible, independiente Deber ayudar al proyecto ms que controlar sus actividades

UNPSJB 2005

Ingeniera de Software - Clase 5

40

Gestin de configuracin del sw (SCM)


Repetible
Propsito: Establecer y mantener la integridad de todos los productos del proyecto a lo largo de todo el ciclo de vida Objetivos: Planificar las actividades de gestin de la configuracin Identificar los elementos de configuracin del software Controlar los cambios hechos a los elementos de configuracin para mantener su integridad y trazabilidad Construir las versiones del producto final
http://www.ibiblio.org/gferg/ldp/SCM-OpenSource/index.html Software Configuration Management for Open Source Projects
UNPSJB 2005 Ingeniera de Software - Clase 5 41

Foco en el Proceso de la Org. (OPF)


Definido
Propsito: Definir una responsabilidad a nivel de la organizacin para las actividades relacionadas con el proceso de software y su mejora Objetivos: SPI (Software Process Improvement) se coordina en toda la organizacin SPI se planifica Los fortalezas y debilidades de los procesos utilizados se identifican con respecto a un estndar

UNPSJB 2005

Ingeniera de Software - Clase 5

42

Definicin del Proceso de la Org. (OPD)


Definido
Propsito: Desarrollar y mantener un conjunto de procesos de software con el objetivo de establecer una base de referencia a partir de la cual se mejoren paulatinamente los procesos y los resultados de dichos procesos Objetivos: Desarrollo y mantenimiento de un proceso estndar para la organizacin Se recolecta, revisa y divulga informacin relacionada con el uso del proceso estndar de la organizacin por parte de los proyectos

UNPSJB 2005

Ingeniera de Software - Clase 5

43

Programa de entrenamiento (TP)


Definido
Propsito: Desarrollar las capacidades y conocimiento de los individuos para que puedan desempear sus roles de manera eficiente y efectiva Objetivos: La formacin y entrenamiento se planifican Y se imparte, cubriendo las necesidades de los diferentes roles (aspectos de gestin y tcnicos)

UNPSJB 2005

Ingeniera de Software - Clase 5

44

Gestin Integrada del Software (ISM)


Definido
Propsito: Integrar las actividades de ingeniera y de gestin de software en un proceso coherente y definido, adaptado a las necesidades especficas de cada proyecto Objetivos: El proceso definido para el proyecto es una versin ajustada del proceso estndar de la organizacin El proyecto se planifica y gestiona de acuerdo al proceso definido para el proyecto

UNPSJB 2005

Ingeniera de Software - Clase 5

45

Ingeniera del producto de sw (SPE)


Definido
Propsito: Ejecutar un proceso de ingeniera bien definido y coherente integrando todas las actividades de ingeniera de software para producir productos de software correctos y consistentes de manera eficiente y efectiva Objetivos: Las actividades de Ing.de SW estn definidas, integradas y se ejecutan de forma consistente para producir el software Los entregables se mantienen consistentes entre ellos

UNPSJB 2005

Ingeniera de Software - Clase 5

46

Coordinacin entre grupos (IC)


Definido
Propsito: Establecer los medios para que el grupo de Ingeniera de Software participe activamente con los otros grupos de ingeniera para que las necesidades del cliente se satisfagan de manera efectiva y eficiente Objetivos: Los requerimientos del cliente son aprobados por todos los grupos afectados Los compromisos entre los grupos de ingeniera cuentan con la aprobacin de los grupos afectados Los grupos de ingeniera identifican y resuelven problemas entre los grupos

UNPSJB 2005

Ingeniera de Software - Clase 5

47

Revisiones por pares (PR)


Definido
Propsito: Remover los defectos de los productos de software eficientemente en una etapa temprana y conseguir una mejor comprensin del producto que se est desarrollando y de su calidad en trminos de los defectos que presenta Objetivos: Revisiones por pares son planificadas Los defectos son detectados y removidos

UNPSJB 2005

Ingeniera de Software - Clase 5

48

Gestin cuantitativa del proceso (QPM)


Gestionado
Propsito: Controlar la ejecucin de los proyectos de software de manera cuantitativa Objetivos: Las actividades de QPM se planifican El desempeo del proceso del proceso definido para el proyecto es controlado cuantitativamente La capacidad del proceso de software estndar de la organizacin es conocido en trminos cuantitativos

UNPSJB 2005

Ingeniera de Software - Clase 5

49

Gestin de la calidad del sw (SQM)


Gestionado
Propsito: Desarrollar un conocimiento cuantitativo de la calidad de los productos de software y conseguir alcanzar determinados objetivos de calidad Objetivos: Se planifica SQM de los proyectos Se definen objetivos medibles para la calidad de los productos de software y sus prioridades El progreso real hacia el logro de los objetivos de calidad para los productos de software se cuantifican y gestionan
UNPSJB 2005 Ingeniera de Software - Clase 5 50

Prevencin de defectos (DP)


Optimizante
Propsito: Identificar las causas de los defectos y eliminarlas para que los defectos no se repitan Objetivos: Las actividades de prevencin de defectos se planifican Las causas comunes de defectos Se identifican Se priorizan y son eliminadas

UNPSJB 2005

Ingeniera de Software - Clase 5

51

Gestin del cambio tecnolgico (TCM)


Optimizante
Propsito: Identificar nuevas tecnologas (herramientas, mtodos, procesos, etc.) y transferirlos a la organizacin de una manera ordenada Objetivos: La incorporacin de cambios tecnolgicos es planificada Las nuevas tecnologas se evalan para identificar su impacto sobre la calidad y productividad Nuevas tecnologas apropiadas son transferidas a la prctica normal en la organizacin

UNPSJB 2005

Ingeniera de Software - Clase 5

52

Gestin del cambio del proceso (PCM)


Optimizante
Propsito: Mejorar continuamente el proceso de software usado en la organizacin con la intencin de mejorar la calidad del software, aumentar la productividad y reducir los tiempos de desarrollo Objetivos: La mejora continua del proceso es planificada La participacin en las actividades de mejora del proceso de software abarca a toda la organizacin

UNPSJB 2005

Ingeniera de Software - Clase 5

53

SW-CMM Mtodo de Apreciacin Como se empieza?

Tiene como objetivo determinar y evaluar la capacidad y madurez de una organizacin y ubicarlo en un nivel del SW-CMM Consiste en 6 pasos

Seleccionar Cuestionario Equipo de Madurez

Analizar Respuestas

Visitar Hallazgos Organizacin Identificados


UNPSJB 2005 Ingeniera de Software - Clase 5

Perfil Basado en KPAs


Key Process Area

54

SW-CMM Mtodo de Apreciacin II


Assesment - Evaluacin para la mejora del proceso de SF interno Realizada por profesionales del SEI o autorizados

2 Mtodos

Semejante a contratar una consultora


Evaluacin de la capacidad del sofware Realizada por agentes gubernamentales a contratistas o proveedores de SF Semejante a una auditora externa
UNPSJB 2005 Ingeniera de Software - Clase 5 55

Caso de Aplicacin

UNPSJB 2005

Ingeniera de Software - Clase 5

56

McKesson Background

McKesson Corporation is the world's largest healthcare supply management and healthcare information technology company.

Founded in 1833 Annual revenue $70 billion 25,000 employees

UNPSJB 2005

Ingeniera de Software - Clase 5

57

McKesson Provider Technologies

A division of McKesson focused on providing technology solutions to healthcare providers


1100+ software developers Over 100 distinct software products Over 20 separate software development groups, 15 locations Our products are in use in over 50% of all US hospitals
Ingeniera de Software - Clase 5 58

UNPSJB 2005

Product Lines

Clinical Applications Hospital Information Systems Imaging Solutions Physician Solutions Web Solutions Homecare Revenue Cycle Management Resource Management Decision Support Access Management Infrastructure
Ingeniera de Software - Clase 5 59

UNPSJB 2005

Process Audit - March 2001

Significant budget overruns No financial forecasts for most business plans Absence of process documentation and coding standards Poor effort estimation and tracking Little mapping of requirements to technical specifications and test plans Projects not managed to plans Lack of formal approval process for deliverables
Ingeniera de Software - Clase 5 60

UNPSJB 2005

Why CMM?

Studies have shown following CMM leads to improvements in:


Productivity Early detection of defects Reduction in time to market Reduction in post-release defects

Other benefits

Minimize risk through increased management visibility and tracking Provides a framework for improvement and objective assessment/comparison Market differentiator
Ingeniera de Software - Clase 5 61

UNPSJB 2005

Baselining Process

Conducted a CMM-based gap analysis at each development site

23 level 2 gap analysis assessments conducted from 4/2002 through 3/2004 Introduced local development groups to specifics of CMM Level 2 CBA IPI informal assessment facilitated by a CMM Lead Assessor Provided a foundation for action planning to address the gaps
Ingeniera de Software - Clase 5 62

UNPSJB 2005

Findings - Common Strengths


Early release planning Documented requirements Standard development model Schedule management Project status/team meetings CM, defect and change request tools Separate quality control (testing) function Repeatable release process

UNPSJB 2005

Ingeniera de Software - Clase 5

63

Findings - Common Weaknesses

Lack of SQA function Little size estimation or tracking Effort tracking weak/not granular Most processes based on tribal knowledge Loose commitments & requirements change management Lack of complete SW development plans Few formal process measurements

UNPSJB 2005

Ingeniera de Software - Clase 5

64

Conclusions

No existing culture for process improvement Few resources devoted to process improvement Lack of understanding of a true project management role Little concept of managing change at the enterprise level Few documented policies, processes, and procedures Heavy reliance on heroic efforts for project success

UNPSJB 2005

Ingeniera de Software - Clase 5

65

Process Improvement Strategy-1

Product Lifecycle Process & Standards group Sponsors of the CMM initiative CMM activities planning/coordination/coaching Corporate SEPG Representatives from our leading product groups Sets the direction/priority for MPT process improvements McKMAP Corporate web site used to share assets, processes and information Development Process Team Representatives from all software product teams Primarily an information sharing forum

UNPSJB 2005

Ingeniera de Software - Clase 5

66

Process Improvement Strategy-2

Each development group worked Level 2 on their own terms (e.g., local implementation) Pros:

Helps with grass roots buy-in to a corporate SPI program Ensures better fit to local processes to tribal knowledge Competitive spirit between teams creates momentum Delays addressing consistency (e.g., common processes, roles, tools, etc.) Harder for corporate group to oversee and track SPI progress Perpetuates a were different mentality
Ingeniera de Software - Clase 5 67

Cons:

UNPSJB 2005

How Groups Approached Level 2

Most groups focused on improving their practices, not just satisfying CMM

Simply wrote down what they do and used CMM to check for holes Some over-engineering/artificial architecture

A few groups took a Level 3 approach

Biggest hurdles:

SQA Size Estimation and Effort tracking Robust project planning


Ingeniera de Software - Clase 5 68

UNPSJB 2005

Areas of Resistance

High level of group independence We dont have time for this process stuff. We have a product to deliver. CMM was viewed as yet another corporate quality initiative doomed to failure Fear of comparison to other business units CMM wont work for us because were different All these processes will limit our creativity SQA, size estimating, and SCM baseline audits viewed as a waste of time

UNPSJB 2005

Ingeniera de Software - Clase 5

69

Progress

7 of 21 development groups assessed at CMM Level 2 General awareness of CMM across the organization has increased Executive sponsorship and buy-in is solid Most groups now following a truer project management model (rather than a silo approach) Established a common foundation that facilitates better group interaction

UNPSJB 2005

Ingeniera de Software - Clase 5

70

Return on Investment
Maintenance Revenue per FTE
400 350 300 250 200 150 100 50 FY03 Q1 FY03 Q2 FY03 Q3 FY03 Q4 FY04 Q1 FY04 Q2 FY04 Q3 FY04 Q4

Level 1

UNPSJB 2005

Ingeniera de Software - Clase 5

Level 1

Level 2

71

CMM Return on Investment

$268,800 - Total Head Count Savings $ 34,200 Total Defect Reduction Savings $303,000 Total Savings $115,000 Total Investment

2.63 Return on Investment


UNPSJB 2005 Ingeniera de Software - Clase 5 72

Lessons Learned

Establish executive sponsorship and buy-in ASAP (and be ready to manage their expectations) Establish SPI action planning tracking mechanisms up front Avoid goal-setting until AFTER you have baselined data There are trade-offs in allowing groups to define their own processes be sure you can live with the consequences Make sure the focus is on true improvement not on chasing a CMM level Be careful how incentives are used There will be resistance - be prepared to address it

UNPSJB 2005

Ingeniera de Software - Clase 5

73

Como administrar todos estos flujos de informacin? Herramientas auxiliares

UNPSJB 2005

Ingeniera de Software - Clase 5

74

Rational Rose - Rational Unified Process (RUP)

Conjunto de artefactos compuestos por metodologas y herramientas de software que permiten administrar la informacin generada por la implementacin de CMM en los niveles 2 y 3.

Rational Requirements (RM)


Rational Rose

Clear Quest
Clear Case (SCM)

UNPSJB 2005

Ingeniera de Software - Clase 5

75

Estadsticas

UNPSJB 2005

Ingeniera de Software - Clase 5

76

Nivel de Adopcin

1996: Cerca del 70% en Nivel 1 y 18 % en Nivel 2. 0.4% en Nivel 5. 1999: 12.3 en Nivel 1, 43.3% en Nivel 2 y cerca del 10% en Nivel 5.

Tiempos:

Nivel Nivel Nivel Nivel

1 2 3 4

al al al al

2: 3: 4: 5:

22 19 25 13

meses meses meses meses

1992
77

UNPSJB 2005

Ingeniera de Software - Clase 5

Productividad / Costos

Inversin aproximada: U$D 1.400 por ao por Ingeniero de Software. Reduccin de Defectos Post-Release: 39% por ao. Productividad ganada: 35% por ao. Mejoras sensibles Cronogramas y presupuestos.

Calidad del producto.

Estudio Primeros 3 Niveles


UNPSJB 2005 Ingeniera de Software - Clase 5 78

Crticas al Modelo

UNPSJB 2005

Ingeniera de Software - Clase 5

79

Crticas Usuales al modelo SW-CMM

Preguntas habitualmente usadas en el cuestionario son binarias (Si/No), impidiendo reflejar matices de la realidad. El modelo es solo aplicable a grandes organizaciones que desarrollan grandes proyectos. El modelo permite comparar procesos de software de grandes organizaciones con los de pequeas organizaciones, favoreciendo a las primeras. La aplicacin del modelo requiere de inversiones importantes. Convierte a la organizacinen algo rgido, burocrtico y menos capaz de aplicar soluciones creativas. El Nivel 1 es una gran bolsa en el que se ubican organizaciones con nivel de madurez distinto. Los niveles de madurez no garantizan el xito: Proyectos exitosos en Nivel 1 y fracasados en Nivel 5.
Ingeniera de Software - Clase 5 80

UNPSJB 2005

Evolucin del Modelo

UNPSJB 2005

Ingeniera de Software - Clase 5

81

Evolucin. CMM-I (Integrated).


CMMI consiste en un conjunto de mejores prcticas Productos Integra cuerpos de conocimiento /disciplinas que han sido abordadas en forma separada.
SW-CMM 2.0 IPD-CMM SE-CMM

Servicios

Disciplina Objetivo

Ingeniera de Sistemas (SE)

Ingeniera de Software(SW) Desarrollo de Procesos y Productos Integrados (IPPD)


Fuente(s) Proveedora(s) (SS)
82

UNPSJB 2005

Ingeniera de Software - Clase 5

También podría gustarte