Lero© 2010
Software Process & Quality Improvement
Dr. Ita RichardsonLero – the Irish Software Engineering Research Centreand Department of Computer Science & Information SystemsUniversity of Limerick
1Lero© 2010
Lero© 2010
LECTURE 2:SOFTWARE PROCESSES
Lero© 2010
Software Process
“Set of activities, methods, practices and transformations that people use to develop and maintain software and the associated products”Paulk et al., 1993
Lero© 2010
Software Process
• Organisation• Customer interaction• Supplier interaction• Development• Project Management• Risk Management• Support activities
Lero© 2010
Total Quality Management
• Improved Manufacturing Process
• Improved Manufactured Product
Lero© 2010
Software Process
• Improved software process
• Improved software product
?
Lero© 2010
SOFTWARE PROCESS MODELS
Lero© 2010
Software Process Models
• Capability Maturity Model
• SPICE - ISO15504
• ISO9001 / ISO9000-3
Lero© 2010
Capability Maturity Model Integrated
• Based on Crosby’s Maturity Grid• Level 1 - Initial• Level 2 - Repeatable• Level 3 - Defined• Level 4 - Managed• Level 5 – Optimizing
– Chrissis et al. 2003
Lero© 2010
SPICE – ISO15504
• Framework– Architecture for processes associated with software
process– Set of criteria for performing assessments– Tool support for assessment
Lero© 2010
Process Categories
• Customer-supplier process• Engineering process• Project process• Support process• Organisation process
Lero© 2010
SPICE Capability levels
• 0 Not-Performed– General failure to perform base practices
• 1 Performed-Informally• 2 Planned-and-Tracked• 3 Well-Defined• 4 Quantitatively-Controlled• 5 Continuously-Improving
Lero© 2010
IMPROVING SOFTWARE PROCESS
Lero© 2010
Roots of Software Process Improvement
• U.S. Department of Defence• Software Engineering Institute at Carnegie-
Mellon University• Watts S. Humphrey, 1989• Capability Maturity Model
Lero© 2010
Software Process Improvement
• Increase in Productivity
• Reduction in Defects
• Reduction in Error Rates
• Decrease in Costs
• Increase in On-Time Deliverables
• Reduction in Rework
• Savings in Test Time
Lero© 2010
Process in an organisation
• Investigate what is wrong with the process?
• Suggest improvements to be made
Lero© 2010
Continuous Improvement
Plan - Do - Check - Act
A C T P L A N
C H E C K D O
S u s ta inIm p ro v e m e nt
A sse s s theP ro c e s s
M e a su reE ffe c tiv e ne s s
D e fine a ndIm p le m e nt A c tio ns
Lero© 2010
What is a Process?
“Sequence of steps performed for a given purpose”IEEE-STD-610
“Set of activities, methods, practices and transformations that people use to develop and maintain software and the associated products”
Paulk et al., 1993
Lero© 2010
Some processes
• Develop software design• Perform configuration management• Manage the project• Provide skilled human resources
Lero© 2010
Software Process Improvement
• Proponents of Software Process Improvement state that the product is improved when the process is improved
Lero© 2010
Argument for …..
• …“the link between the quality of the development process and the final product is well established”
• Gillies, 1992
• “It is now generally recognized that an effective way to improve software quality is by improving the development and maintenance process” Humphrey, 1996
Lero© 2010
Argument against ...
• ... "there is, as yet, no convincing evidence that higher rated companies produce better quality software"
• Fenton et al., 1995
Lero© 2010
Research Conclusions
• “Improving the process improves the quality of the product; it also improves implementation and maintenance of the product”
• “…many of the changes which happened as a result of this project were moving the researched companies out of chaos”
Lero© 2010
Software Problems
• Business importance of software is increasing– Increasing number of services are available to
organisations• Poor software quality
– Is expensive– Reduces customer satisfaction– Delayed shipments– Expensive service / enhancement
Lero© 2010
Acknowledgements
• The information presented in these slides has been collected from a variety of sources including:
– Software Quality Assurance: From Theory to Implementation by Daniel Galin, 2003– Software Process Improvement: Practical Guidelines for Business Success by Sami Zahran, 1998– Research carried out by post-doctoral researchers and PhD students at Lero – the Irish Software
Engineering Research Centre, Ireland under the supervision of Dr. Ita Richardson– Software Process: Improvement and Practice (journal)– The SPIRE Handbook: Better, Faster, Cheaper Software Development in Small Organisations,
edited by Marty Sanders (Version 1, 1998) and Jill Pritchet (Version 2, 2000)• The research presented in this lecture has been partially supported by Science
Foundation Ireland funded through Global Software Development in SMEs Cluster Grant (no 03/IN3/1408C) and Lero – the Irish Software Engineering Research Centre (CSET grant no 03CE2/I303.1).
Lero© 2010
References
• Paulk Mark C., Bill Curtis, Mary Beth Chrissis, Charles V Weber, "The Capability Maturity Model for Software, Version 1.1", Technical Report SEI-93-TR-24, Software Engineering Institute, Carnegie Mellon University, U.S.A., 1993
• Chrissis, Mary Beth, Mike Konrad, Sandy Shrum, CMMI – Guidelines for Process Integration & Product Improvement, SEI Series in Software Engineering, Addison-Wesley 2003
<Presenter> – <Venue>, <City>, <Date> © S-Cube – 26/<Max>