Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Clase 5
Calidad
UNPSJB 2005
Glosario de la Clase
Objetivos
Administracin de la calidad Aseguramiento y estndares de calidad Planeacin de la calidad Control de calidad Proceso del software
UNPSJB 2005
Bibliografa
Ingeniera de Software (Sommerville) Ingeniera de Software (Pfleeger) Pgina del SEI (CMM) (www.sei.org) Pgina de ISO Material del CD.
UNPSJB 2005
Administracin de Calidad
Definiendo calidad:
UNPSJB 2005
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
Administracin de Calidad
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
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
Administracin de Calidad
Del proceso: definen los procesos a seguir durante el desarrollo del soft. Incluyen
UNPSJB 2005
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
Administracin de Calidad
Definir proceso
Desarrollar producto
Mejorar Proceso
No
Calidad OK
Si
Estandarizar proceso
UNPSJB 2005
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
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
12
Administracin de Calidad
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
Un plan comprende
Descripcin del mismo, el mercado a donde est dirigido y las espectativas de calidad
Metas de calidad
UNPSJB 2005
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
14
Actividades, mtodos y prcticas para desarrollar y mantener software y sus productos asociados.
Procedimientos & Mtodos
Herramientas & Equipamiento
Proceso
UNPSJB 2005
15
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
16
Resultado
Resultado
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
UNPSJB 2005
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
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%
http://www.softwaremag.com/L.cfm?Doc=newsletter/2004-01-15/Standish
UNPSJB 2005 Ingeniera de Software - Clase 5 19
UNPSJB 2005
20
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
SPICE (Software Process Improvement and Capability dEtermination) ISO 15504 Tick-It (modelo ingls)
UNPSJB 2005
21
UNPSJB 2005
22
Nivel 3: Definido
Nivel 2: Repetible
Gestin Cuantitativa
Gestin de Ingeniera
Madurez
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
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
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
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
UNPSJB 2005
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
Entradas
Salidas
UNPSJB 2005
28
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
29
Objetivos
Caractersticas Comunes
refiere a
Prcticas Clave
describe
30
Nivel CMM
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
31
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
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
34
UNPSJB 2005
35
UNPSJB 2005
36
UNPSJB 2005
37
UNPSJB 2005
38
UNPSJB 2005
39
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
40
UNPSJB 2005
42
UNPSJB 2005
43
UNPSJB 2005
44
UNPSJB 2005
45
UNPSJB 2005
46
UNPSJB 2005
47
UNPSJB 2005
48
UNPSJB 2005
49
UNPSJB 2005
51
UNPSJB 2005
52
UNPSJB 2005
53
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
Analizar Respuestas
54
2 Mtodos
Caso de Aplicacin
UNPSJB 2005
56
McKesson Background
McKesson Corporation is the world's largest healthcare supply management and healthcare information technology company.
UNPSJB 2005
57
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
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?
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
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
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
63
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
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
65
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
66
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
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
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
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
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
Level 1
Level 2
71
$268,800 - Total Head Count Savings $ 34,200 Total Defect Reduction Savings $303,000 Total Savings $115,000 Total Investment
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
73
UNPSJB 2005
74
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.
Clear Quest
Clear Case (SCM)
UNPSJB 2005
75
Estadsticas
UNPSJB 2005
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:
1 2 3 4
al al al al
2: 3: 4: 5:
22 19 25 13
1992
77
UNPSJB 2005
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.
Crticas al Modelo
UNPSJB 2005
79
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
UNPSJB 2005
81
Servicios
Disciplina Objetivo
UNPSJB 2005