Sei sulla pagina 1di 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

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

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

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

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.

UNPSJB 2005

Ingeniera de Software

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

Administracin de Calidad

Actividades para QA (aseguramiento de


calidad)

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

Del proceso: definen los procesos a seguir


durante el desarrollo del soft. Incluyen

UNPSJB 2005

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

Procesos de especificacin, diseo y validacin


Documentacin asociada con lo anterior

Ingeniera de Software

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

Administracin de Calidad

Calidad del proceso y del producto

Calidad basada en procesos

UNPSJB 2005

Ingeniera de Software

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

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.

Planificacin de calidad

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

12

Administracin de Calidad

Un plan de calidad selecciona

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

Planes de producto

Descripcin del proceso

Un plan comprende

Introduccin al producto

Descripcin del mismo, el


mercado a donde est
dirigido y las espectativas
de calidad

UNPSJB 2005

De desarrollo y de
servicio a utilizar para el
desarrollo y
administracin del
producto

Metas de calidad

Fechas de terminacin y
responsabilidades
importantes

Metas y planes de calidad


previstos

Riesgo y administracin
del riesgo

Ingeniera de Software

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

14

Proceso de Software. Definicin.

Actividades, mtodos y prcticas


para desarrollar y mantener
software y sus productos asociados.

Gente.
Habilidades &
Motivacin

Procedimientos & Mtodos

Proceso
UNPSJB 2005

Ingeniera de Software

Herramientas
&
Equipamiento

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


Es lo que se intenta predecir
ejecucin del proceso
y controlar
UNPSJB 2005
Ingeniera de Software
16

Capacidad & Resultados


Proceso de Alta capacidad

Probabilidad

Probabilidad

Proceso de Baja 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

UNPSJB 2005

Ingeniera de Software

Proceso
maduro
tendr alta
capacidad
17

Crisis del software (I)

Concrecin del proyecto:

Costo

31% son cancelados antes de la finalizacin


+50% han costado el doble de lo estimado
originalmente.

Calidad

En mediciones actuales se estima la existencia de


50 errores/1000 lineas de cdigo

http://www.costxpert.com/resource_center/disaster_as_opportunity.html
https://secure.standishgroup.com/reports/reports.php?rid=500

UNPSJB 2005

Ingeniera de Software

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

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

20

Modelos de Proceso y de su Capacidad

CMM (Capability Maturity Model)

ISO 12207 Modelos de Ciclos de Vida del


Software

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

Actividades que debe incluir

SPICE (Software Process Improvement and


Capability dEtermination) ISO 15504
Tick-It (modelo ingls)

UNPSJB 2005

Ingeniera de Software

21

UNPSJB 2005

Ingeniera de Software

22

CMM SW v1.1(Capability Maturity Model)


Mejora continua
del proceso
Nivel 4:
Gestionado

Control del
proceso
Definicin
del Proceso
Disciplina
del Proceso
Nivel 1:
Inicial
UNPSJB 2005

Nivel 3:
Definido
Nivel 2:
Repetible

Nivel 5:
Optimizante
Gestin del
Cambio

Gestin
Cuantitativa

Gestin de
Ingeniera

Gestin del
Proyecto
Ingeniera de Software

Madurez

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

UNPSJB 2005

Diseo

Codif.

Prueba

Salidas

Existen riesgos al presentarse


nuevos desafos.
Ingeniera de Software
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.

Salidas

Entradas

UNPSJB 2005

Ingeniera de Software

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

Ingeniera

Productos y Proceso Gestionados


decuantitativamente
Software

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

UNPSJB 2005

Salidas

Cambio controlado se
institucionaliza
Ingeniera de Software
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

29

Estructura del modelo


CMM
Niveles de Madurez
indican

contiene
Areas Clave del Proceso

Capacidad del proceso

logra
Objetivos

organizada por
Caractersticas Comunes
refiere a

Implementacin o
Institucionalizacin

Prcticas Clave
describe

Infraestructura o actividades

UNPSJB 2005

Ingeniera de Software

30

Areas Clave del Proceso

Nivel CMM

Area Clave del Proceso

Inicial

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

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)

Gestionado Gestin cuantitativa del proceso (QPM)


Gestin de la calidad del software (SQM)

Optimizante Prevencin de defectos (DP)


Gestin del cambio tecnolgico (TCM)
Gestin del cambio del proceso (PCM)

UNPSJB 2005

Ingeniera de Software

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Perfil
Basado en
KPAs
Key Process Area

54

SW-CMM Mtodo de Apreciacin II

2 Mtodos

Assesment - Evaluacin para la


mejora del proceso de SF
interno
Realizada por
profesionales
del SEI o
autorizados
Semejante a contratar una
consultora
Evaluacin de la capacidad del
sofware
Realizada
por agentes
gubernamentales a contratistas
o proveedores de SF

UNPSJB 2005

Semejante a una auditora


Ingenieraexterna
de Software

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

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
UNPSJB 2005

Ingeniera de Software

58

Product Lines

Clinical Applications
Hospital Information Systems
Imaging Solutions
Physician Solutions
Web Solutions
Homecare
Revenue Cycle Management
Resource Management
Decision Support
Access Management
Infrastructure
UNPSJB 2005

Ingeniera de Software

59

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

UNPSJB 2005

Ingeniera de Software

60

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

UNPSJB 2005

Ingeniera de Software

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
UNPSJB 2005

Ingeniera de Software

62

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

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

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

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

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

Cons:

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

UNPSJB 2005

Ingeniera de Software

67

How Groups Approached Level 2

Most groups focused on improving their


practices, not just satisfying CMM

A few groups took a Level 3 approach

Simply wrote down what they do and used CMM to


check for holes
Some over-engineering/artificial architecture

Biggest hurdles:

SQA
Size Estimation and Effort tracking
Robust project planning

UNPSJB 2005

Ingeniera de Software

68

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

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

70

Return on Investment

UNPSJB 2005

Ingeniera de Software

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

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

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

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 1 al 2:
Nivel 2 al 3:
Nivel 3 al 4:
Nivel 4 al 5:
UNPSJB 2005

22
19
25
13

meses
1992
meses
meses
meses
Ingeniera de Software

77

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

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.

UNPSJB 2005

Ingeniera de Software

80

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

UNPSJB 2005

Disciplina Objetivo

Servicios

Ingeniera de Sistemas (SE)


Ingeniera de Software(SW)
Desarrollo de Procesos y
Productos Integrados
(IPPD)
Fuente(s) Proveedora(s) (SS)

Ingeniera de Software

82

Potrebbero piacerti anche