Вы находитесь на странице: 1из 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? el producto desarrollado cumple su especificacin (Crosby, 1979)

Definiendo calidad:


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

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


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

Planificacin de calidad
 

UNPSJB 2005

Ingeniera de Software - Clase 5

12

Administracin de Calidad


Un plan de calidad selecciona  los estndares organizacionales apropiados para un producto.  Un proceso de desarrollo Un plan comprende  Introduccin al producto


Planes de 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




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.

Suele ser <> por cada ejecucin del proceso


UNPSJB 2005

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 Definicin del Proceso Disciplina del Proceso Nivel 1: Inicial
UNPSJB 2005

Nivel 5: Optimizante Gestin del Cambio

Nivel 4: Gestionado Nivel 3: Definido

Gestin Cuantitativa

Nivel 2: Repetible

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

Existen riesgos al presentarse nuevos desafos.


UNPSJB 2005 Ingeniera de Software - Clase 5 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

Cambio controlado se institucionaliza


UNPSJB 2005 Ingeniera de Software - Clase 5 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 Caractersticas Comunes refiere a

Objetivos

Implementacin o Institucionalizacin Infraestructura o actividades


UNPSJB 2005 Ingeniera de Software - Clase 5

Prcticas Clave describe


30

Areas Clave del Proceso

Nivel CMM
Inicial Repetible

Area Clave del Proceso

Ninguna 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 Semejante a contratar una consultora

2 Mtodos

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 Minimize risk through increased management visibility and tracking Provides a framework for improvement and objective assessment/comparison Market differentiator

Other benefits


UNPSJB 2005

Ingeniera de Software - Clase 5

61

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 SQA Size Estimation and Effort tracking Robust project planning
Ingeniera de Software - Clase 5 68

A few groups took a Level 3 approach




Biggest hurdles:
  

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

Level 1
UNPSJB 2005

Level 2
71

Ingeniera de Software - Clase 5

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 SW-

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)
Ingeniera de Software - Clase 5 82

UNPSJB 2005

Вам также может понравиться