“calidad y mejora continua de los procesos de software” · qqaa?? the capability dimension...
TRANSCRIPT
�Calidad y mejora continua de los procesos de software�
Ángel G. JordánUniversity Professor Emeritus
7/26/2006 1
University Professor EmeritusProvost EmeritusCarnegie Mellon University
Universidad Pública de NavarraCurso de verano26 de Julio, 2006
De lo que voy a hablarnModelo de Madurez y Capacidad IntegradonSoftware Engineering InstitutenProgramas e iniciativas del SEInLa importancia del Proceso en el Desarrollo del SoftwarenLos modelos de capacidad y madurez del desarrollo del software SW-CMMnDatos empíricos sobre la Mejora por NivelnImpacto del Software CMM e ISO 9001nSoftware CMM v1.1nCMM Integration (CMMI)
7/26/2006 2
nCMM Integration (CMMI)nCMM Integration (CMMI-SE/SW/IPPD/SS v1.1)nLa mejora del Proceso es MultidimensionalnISO/IEC 15504nEjemplos concretos de mejoras cuantitativas en el desarrollo del softwarenLa rápida difusión de los modelos en el ámbito internacionalnLa adopción del CMMI supone un cambio culturalnConclusiones
Modelo de Madurez y Capacidad Integrado
Capability Maturity Model® Integration (CMMI®)
7/26/2006 3
(CMMI®)
Un modelo a adoptar por cualquier empresa que quiera mejorar el proceso del desarrollo de su software
n Un cambio cultural necesario para que la empresa se incorpore a la vanguardia en la
7/26/2006 4
empresa se incorpore a la vanguardia en la producción de su software.
n De donde vienen el los modelos CMM y CMMI
Fundado como Centro de I+D financiado for el Gobierno Federal (FFRDC)
Software Engineering Institute
Otorgado a Carnegie Mellon University en 1984 en competición con otras universidades
Patrocinado por el Under Secretary of Defense
7/26/2006 5
Patrocinado por el Under Secretary of Defense (Acquisition, Technology, & Logistics)
Contrato administrado por USAF Electronic Systems Center (ESC)
Oficinas en Arlington, VA, Huntsville AL, Pittsburgh, PA and Frankfurt, Germany
Unos 600 empleados
El Software Engineering Institute (SEI) de Carnegie Mellon University• Se creó respondiendo a la crisis originada por la falta de productividad en el desarrollo del software.
• Esta falta de productividad concidía con la correspondiente falta de productividad en la
7/26/2006 6
correspondiente falta de productividad en la fabricación.
• La concepción de crear un SEI vino del Pentágono, respondiendo a estudios de entidades de software.
Proyectos iniciales del SEI respondiendo a la crisis n Reconocer y analizar las mejores tecnologías existentes y las mejores prácticas
n Establecerlas como estado del arte y estado de la practica
7/26/2006 7
de la practican Transferencia de tecnologían Crear nueva tecnología si se necesitan Formación
Diseno del Software empieza demasiado tarde
Desarrollo Integración y Prueba del Sistema
60 - 80 % de esfuerzo y coste*
7/26/2006 8
* Movimiento a la izquierda !
* Reusar todo
* Nunca cometer la mismaequivocación dos veces
El metodo nuevo
El metodo antiguo
SEI Technical Program
Capability MaturityModel
Integration
Integration Software Intensive Systems
Team Software Process
Survivable Systems
Product
The right software delivered defect free, on cost, on time, every time
High confidence, evolvable,product lines
with predictable and improvedcost, schedule, and quality
7/26/2006 9
Management PracticeInitiatives
Integration
Acquisition Support Systems
Systems
Performance Critical Systems
Architecture Tradeoff Analysis
Technical PracticeInitiatives
Software Engineering
Measurement & Analysis
Product Line Practice
Predictable Assembly
with Certifiable
Components
Puntos Palanca para la Calidad nAunque el proceso se describe con frecuencia como una pata en el trípode proceso-personal-tecnología, se le puede considerar como el aglutinador que unifica los otros aspectos.
Todos reconocen la importancia de tener personal motivado y de alta calidad pero el
PERSONAL
7/26/2006 10
alta calidad pero el mejor personal no puede funcionar óptimamentesi el proceso no se entiende
Principales determinantes del coste del producto, horario, y calidad.
PROCESOTECNOLOGIA
Definición General de Proceso
nUn proceso es un conjunto de prácticas que se ejecutan para alcanzar un determinado objetivo; puede incluir herramientas, métodos,
7/26/2006 11
objetivo; puede incluir herramientas, métodos, materiales, y/o personal.
La Premisa de Gestión del ProcesonLa calidad de un sistema esta altamente influenciada por la calidad del proceso utilizado para adquirirlo, desarrollarlo, y mantenerlo.
nEsta premisa implica un enfoque en procesos tanto como en productos.
7/26/2006 12
productos.
q Esta es una premisa bien establecida en manufacturing.
q La credibilidad de esta premisa es visible en todo el mundo en movimientos de calidad en industrias de manufacturing y servicios (e.g., ISO standards).
Los modelos de capacidad y madurez del desarrollo del software SW-CMM.
n La concepción empezó en 1986n Watts Humphrey se incorpora al SEIn Se observan los modelos de Crosby, y otros
7/26/2006 13
n Se observan los modelos de Crosby, y otros en la fabricación
n Se reconoce que el desarrolo del software tiene puntos comunes con la fabricación
n Se adaptan estos modelos al software y se cambian como sea preciso
The Capability Maturity Model for Software (SW-CMM)Una aplicación de sentido común de los conceptos de Total Quality Management a proyectos de software
Una guía desarrollada por la comunidad - con descripciones de buenas prácticas de buena ingeniería y buena gestión
7/26/2006 14
Un modelo prescriptivo de cinco niveles para la transformaciónorganizativa
La base para evaluaciones fiables y consistentes basadas en en el Modelo de Capacidad y Madurez
Mark C. Paulk, Charles V. Weber, Bill Curtis, and Mary Beth Chrissis, The Capability Maturity Model: Guidelines for Improving the Software Process, 1995.
Datos empíricos sobre la Mejora por NivelnLa Calidad (fiabilidad, defectos) mejora por un factor de 2 (o más)
n Capers Jones, “Software Benchmarking,” IEEE Computer, October 1995.n Karl D. Williams, "The Value of Software Improvement… Results!
Results! Results!" SPIRE97, June 1997.n Robert Yacobellis, “Panel: Does SEI Level 5 Lead to High Quality
Software?” COMPSAC 2001.
nEl esfuerzo para un determinado producto disminuye por un 15-21%, la productividad
7/26/2006 15
disminuye por un 15-21%, la productividad aumenta, el tiempo del ciclo disminuye
n Bradford K. Clark, “Quantifying the Effects on Effort of Software Process Maturity,” IEEE Software, November/December 2000.
n Donald E. Harter, Mayuram S. Krishnan, and Sandra A. Slaughter, “Effects of Process Maturity on Quality, Cycle Time, and Effort in Software Product Development,” Management Science, April 2000.
n Lawrence H. Putnam, “Linking the QSM Productivity Index with the SEI Maturity Level,” QSM, 2000.
Impacto del Software CMM e ISO 9001
n Empresas Certificadas indican mejores atributos del producto y un retorno en la calidad que empresas no certificadas
n Empresas altamente clasificadas con CMM (niveles 4 y 5) son mejores que las empresas certificadas con ISO 9001 en lo que respecta a atributos de producto y retorno en la calidad
7/26/2006 16
n George Issac, Chandrasekharan Rajendran, and R.N. Anantharaman, “Do Quality Certifications Improve the Software Industry’s Operational Performance?” ASQ Software Quality Professional, December 2003.
Defect PreventionTechnology Change ManagementProcess Change Management
Continuous process improvement
Product and process quality
Engineering processes and organizational
Quantitative Process ManagementSoftware Quality Management
Organization Process FocusOrganization Process DefinitionTraining Program
Level Focus Key Process Areas
Optimizing
3
Managed4
5
Defined
Software CMM v1.1
7/26/2006 17
Competent people (and heroics)
organizational support
Project management processes
Training ProgramIntegrated Software ManagementSoftware Product EngineeringIntergroup CoordinationPeer Reviews
Requirements ManagementSoftware Project PlanningSoftware Project Tracking & OversightSoftware Subcontract ManagementSoftware Quality AssuranceSoftware Configuration Management
Initial1
Repeatable2
CMM Integration (CMMI)
nEl Software CMM ha evolucionado para convertirse en el CMMI.
nCMMI incluyeq ingeniería de sistemas q ingeniería de software q Desarrollo del software integrando el producto y el procesoq selección de los suministros
7/26/2006 18
q selección de los suministros
q módulo de adquisición para organizaciones gubernamentales de adquisición
n Mary Beth Chrissis, Mike Konrad, and Sandy Shrum, CMMI: Guidelines for Process Integration and Product Improvement, 2003.
n http://www.sei.cmu.edu/cmmi/n http://www.sei.cmu.edu/cmmi/adoption/sunset.html
CMM Integration (CMMI-SE/ SW/ IPPD/ SS v1.1)
Process is measuredand controlled
Focus is on quantitativecontinuous processimprovement
Level Process Characteristics
Quantitative Project ManagementOrganizational Process Performance
Causal Analysis and ResolutionOrganizational Innovation and Deployment
Process Areas
Requirements Development
QuantitativelyManaged
Optimizing
Integrated TeamingOrganizational Environment for Integration
7/26/2006 19
Process is unpredictable,poorly controlled, and reactive
Process is characterized for projects and is oftenreactive
Process is characterizedfor the organization andis proactive
Requirements ManagementProject Planning
Product and Process Quality Assurance
Configuration Management
Project Monitoring and ControlSupplier Agreement Management
Requirements DevelopmentTechnical SolutionProduct Integration
Validation
VerificationOrganizational Process FocusIntegrated Project Management
Initial
Managed
Defined
Measurement and Analysis
Organization Process DefinitionOrganizational TrainingRisk ManagementDecision Analysis & Resolution
Organizational Environment for IntegrationIntegrated Supplier Management
Process Improvement Involves Dealing with Multiple Dimensions at One Time
OrganizationStructure
Technical
7/26/2006 20
CMMI based improvement is Much More than simply askingpeople to use a different template.
Structure
Managerial Social/Cultural
Strategic
ISOISO
CMMICMMIQAQA
??
The Capability DimensionLevel 1 Generic Practicesn GG 1 Achieve Specific Goals
n GP 1.1 Perform Base Practices
7/26/2006 21
The Capability DimensionLevel 2 Generic Practices
n GG 1 Achieve Specific Goals n GG 2 Institutionalize a Managed Process
n GP 2.1 Establish an Organizational Policyn GP 2.2 Plan the Processn GP 2.3 Provide Resources
7/26/2006 22
n GP 2.3 Provide Resourcesn GP 2.4 Assign Responsibilityn GP 2.5 Train Peoplen GP 2.6 Manage Configurationsn GP 2.7 Identify and Involve Relevant Stakeholdersn GP 2.8 Monitor and Control the Processn GP 2.9 Objectively Evaluate Adherencen GP 2.10 Review Status with Higher Level Management
The Capability DimensionLevel 3 Generic Practicesn GG 1 Achieve Specific Goalsn GG 2 Institutionalize a Managed Processn GG 3 Institutionalize a Defined Process
n GP 3.1 Establish a Defined Processn GP 3.2 Collect Improvement Information
7/26/2006 23
n GP 3.2 Collect Improvement Information
The Capability DimensionLevel 4 Generic Practices
n GG 1 Achieve Specific Goalsn GG 2 Institutionalize a Managed Processn GG 3 Institutionalize a Defined Processn GG 4 Institutionalize a Quantitatively Managed Process
n GP 4.1 Establish Quantitative Objectives for the Process
7/26/2006 24
n GP 4.1 Establish Quantitative Objectives for the Processn GP 4.2 Stabilize Subprocess Performance
The Capability DimensionLevel 5 Generic Practicesn GG 1 Achieve Specific Goalsn GG 2 Institutionalize a Managed Processn GG 3 Institutionalize a Defined Processn GG 4 Institutionalize a Quantitatively Managed Processn GG 5 Institutionalize an Optimizing Process
7/26/2006 25
n GP 5.1 Ensure Continuous Process Improvementn GP 5.2 Correct Root Causes of Problems
ISO/ IEC 15504 (Software Engineering – Process Assessment)nProcess Reference Models
q ISO/IEC 12207 (Software Life Cycle Processes)q ISO/IEC 15288 (Systems Life Cycle Processes)
nContinuous representationq processes (purpose + outcomes)q capability dimension (six levels)
7/26/2006 26
q capability dimension (six levels)
nProcess Assessment Modelsq ISO/IEC 15504-5 exemplar (under development)
nTerence P. Rout, “ISO/IEC 15504 – Evolution to an International Standard,” Software Process Improvement and Practice, January/March 2003, pp. 27-40.
Ejemplos concretos de mejoras cuantitativas en el desarrollo del software
n en empresas líderes que adoptaron el modelo SW-CMM y luego el CMMI
7/26/2006 27
Lockheed Martin M& DS
nSW CMM ML2 (1993) to ML 3 (1996) to CMMI ML5 (2002)nResultsq captured a greater percentage of available award fees, now receiving 55 percent more compared to the baseline that remained unrealized at SW-CMM level
Customer satisfaction
Improvements in:
7/26/2006 28
baseline that remained unrealized at SW-CMM level 2
1996 - 2002q Increased software productivity by 30%q Decreased unit software cost by 20% q Decreased defect find and fix costs by 15%
Proprietary sources with permission; August 2003.
Productivity
Product cost
General Motors CorporationnCMMI focus 2001nGoal is Integration of Supplier Work and GM Project Execution
nResults:Improved schedule – projects met milestones
Improvements in:
7/26/2006 29
q Improved schedule – projects met milestonesand were fewer days late
Camping on a Seesaw: GM’s IS&S Process Improvement Approach. Hoffman, Moore & Schatz, SEPG 2003.
Schedule / cycle time
Thales ATMnCMMI Level 4 helps THALES meet their business objectives.q Ability to see into the future with a known level of confidence
q Increasing number of processes under statistical controlMeasurement based process improvement
7/26/2006 30
qMeasurement based process improvement
q Return on investment due ton earlier defect detectionn improved risk managementn better control of projects
CMMI® Level 4 Preparation: The Story of the Chicken and the Egg. Anne De Goeyse and Anne Sophie Luce, Thales ATM; and Annie Kuntzmann-Combelles, Q-Labs France, ESEPG 2003.
Predictability
Quality
Improvements in:
Bosch Gasoline Systems
nCMM based improvementsq Predictability -- Internal On-Time Delivery improved
by 15%q Less Rework – first pass yield improved by 10%q Product Quality – reduction in error cases in the
factory by one order of magnitude - Rework
Predictability
Schedule / cycle time
Improvements in:
7/26/2006 31
Next Steps includeq Move to CMMI and applying it to software, system
and hardwareq Expand process improvement program to include
sales, hardware and component development
Critical success factors for improvement in a large embedded systems organisation. Wolfgang Stolz, Robert Bosch GmbH Gasoline Systems GS-EC/ESP and Hans-Jürgen Kugler, Q-Labs Software Engineering, ESEPG 2003.
Quality
J.P. Morgan Chase & Co
n1st CMM success 2001 n today, 28 teams at CMM Level 2nCMMI success – 1st team ML3 in 2003nInvestment in PI = $4 millionnResults:q Improved predictability of delivery schedule
Improvements in:
7/26/2006 32
q Improved predictability of delivery scheduleq Reduction of post-release defectsq Reduced severity of post-release defects
And, from CMMI specificallyq Increased through-put = more releases per yearGoal to achieve CMMI throughout organization
Predictability
Quality
Schedule / cycle time
With permission from presentation to the SEI, September 2003.
La rápida difusión de los modelos en el ámbito internacional
7/26/2006 33
25 or fewer9.9%
26 to 5012.7%
301 to 500
501 to 10009.1%
1001 to 20006.3% 2000+
3.3%
Organization SizeBased on the total number of employees within the area of the organization that was appraised
201 to 2000+
7/26/2006 34Based on organizations reporting size data
101 to 20018.9%201 to 300
11.0%
76 to 1008.7%
51 to 7510.3%
301 to 5009.8%
1,083
1 to 10041.6%
201 to 2000+39.5%
Appraisals and Maturity Levels by Country
CountryNumber of Appraisals
Maturity Level 1
Reported
Maturity Level 2
Reported
Maturity Level 3
Reported
Maturity Level 4
Reported
Maturity Level 5
Reported CountryNumber of Appraisals
Maturity Level 1
Reported
Maturity Level 2
Reported
Maturity Level 3
Reported
Maturity Level 4
Reported
Maturity Level 5
Reported
Argentina 12 No Yes Yes Yes No Latvia 10 or fewerAustralia 21 Yes Yes Yes Yes Yes Malaysia 10 or fewerAustria 10 or fewer Mauritius 10 or fewerBelarus 10 or fewer Mexico 10 or fewerBelgium 10 or fewer Netherlands 10 or fewerBrazil 22 No Yes Yes No Yes New Zealand 10 or fewerCanada 15 No Yes Yes No Yes Philippines 10Chile 10 or fewer Portugal 10 or fewer
7/26/2006 35
Chile 10 or fewer Portugal 10 or fewerChina 117 Yes Yes Yes Yes Yes Russia 10 or fewerColombia 10 or fewer Singapore 10 or fewerCzech Republic 10 or fewer Slovakia 10 or fewerDenmark 10 or fewer South Africa 10 or fewerEgypt 10 or fewer Spain 18 No Yes Yes No YesFinland 10 or fewer Sweden 10 or fewerFrance 42 Yes Yes Yes Yes Yes Switzerland 10 or fewerGermany 22 Yes Yes Yes No Yes Taiwan 26 No Yes Yes No NoHong Kong 10 or fewer Thailand 10 or fewerIndia 140 No Yes Yes Yes Yes Turkey 10 or fewerIreland 10 or fewer Ukraine 10 or fewerIsrael 10 or fewer United Kingdom 35 Yes Yes Yes Yes NoItaly 10 or fewer United States 500 Yes Yes Yes Yes YesJapan 131 Yes Yes Yes Yes Yes Vietnam 10 or fewerKorea, Republic of 50 Yes Yes Yes Yes Yes
Disciplines Selected for Appraisals
350
400
450
500
550
600
650
700
49.8%
Nu
mb
er o
f Ap
pra
isal
s
34.5%
7/26/2006 36
0
50
100
150
200
250
300
350
SE
/SW
SW
SE
/SW
/SS
SE
/SW
/IPP
D/S
S
SE
SE
/SW
/IPP
D
SW
/IPP
D
SW
/SS
SE
/SS
SE
/IPP
D/S
S
SW
/IPP
D/S
S
Based on 977 appraisals reporting coverage
Nu
mb
er o
f Ap
pra
isal
s
3.0% 1.8% 1.2% 0.5% 0.2%
4.6% 4.1%
0.1% 0.1%
9/30/05
La adopción del CMMI supone un cambio cultural en las empresas pero el retorno en la inversión es significativo
n El cambio cultural requiere cambio de gestión, de métodos y tecnologías
7/26/2006 37
gestión, de métodos y tecnologíasn Tiempos que se requieren y compromisos por parte de la empresa
Questions?Comments?
7/26/2006 38