210 likes | 412 Views
Software Process Improvement. Robin B. Hunter, Ph.D. Vol 2., p. 363-382 Presented by: Andrew Wheeler. Overview. Introduction Background Models for Software Process Improvement Capability Determination Software Process Improvement Standards Conclusions. Introduction.
E N D
Software Process Improvement Robin B. Hunter, Ph.D. Vol 2., p. 363-382 Presented by: Andrew Wheeler
Overview • Introduction • Background • Models for Software Process Improvement • Capability Determination • Software Process Improvement • Standards • Conclusions
Introduction • The quality of the software system is governed by the quality of the process used to develop and maintain it. • Good SE -> Good Development -> Good product • Software process is improved via improvement models • SW-CMM and ISO9001 • Other standards help with process assessment, capability determination, and process improvement • SPICE, ISO/IEC 15504 and ISO/IEC 12207
Background • Software Engineering • Uses structured analysis and design • Object oriented approach • Software measurement as applied science • Process and Product approach • Focus on modeling the software development and maintenance • Focus on testing for accuracy and completeness
Background (cont) • Software Process Assessment • Framework that serves as a roadmap and a gauge • Capability determination • Can a company produce a quality product and meet the demands of their customer? • Need for process improvement • Control, predictability, and effectiveness all improve
Models for Software Process Improvement – SW-CMM • 5 Maturity Levels • Initial – …Few processes are defined and success depends on individual effort… • Repeatable - … management process are established to track cost, schedule and functionality…repeat earlier success • Defined – Management and engineering activities well documented… All projects used a tailored version of standard software process for development and maintenance
Models for Software Process Improvement – SW-CMM (cont) • 5 Maturity Levels • Managed – Measures are put in place… process and products are controlled • Optimizing – Continuous process improvement from quantitative feeback
Models for Software Process Improvement – SW-CMM (cont) • Maturation • Occurs when key process areas satisfy the goals of the current level • Key Process Area • Reqs management, Software project planning, Software subcontract management, etc. • Common Feature • Commitment to perform, ability to perform, activities performed, etc. • CF(KPA) -> Key Practice • Ability to perform( Software Project tracking and oversight ) -> Metrics are collected against cost and effort predictions and reviewed for improvement
Models for Software Process Improvement – SW-CMM (cont) • Training and assessment teams are available. • Software process change • Must start with senior leadership • Team effort is a must • Continuous • Requires investment • Benefits • Increased response to change, reduction in project investigation time, accelerated spread of best practices
Models for Software Process Improvement – SW-CMM (cont) • Spinoffs • BOOTSTRAP • Preparation -> Assessment -> Action Plan derivation • In line with ISO/IEC 12207 and ISO/IEC 15504 • TRILLIUM • Customer focused benchmark • Assessment of supplier’s development process • Internal process improvement • PSP/TSP • Personal Software Process - Personal tracking of performance • Team Software Process – Team working practices to establish goals, etc.
Models for Software Process Improvement – ISO9000 • A series of standards and generic practices that can be applied to many fields • 1988 (U.K.) – Applying ISO9000 is cost effective (TickIt) • Certificates are awarded to accomplished companies • Certificates have to be renewed • ISO90001 applies to software development • Rule of thumb • An ISO9001 compliant organization would relate to a SW-CMM level 2 to 3
Models for Software Process Improvement – SPICE • International standardization • Being pilot tested in U.S. • Promotion of SPICE approach • Identify weaknesses in model and documentation • Standardization via technical reports • Items -> Drafts -> Standards
Capability Determination • Systematic assessment and analysis of select software processes to reveal strengths, weaknesses, and risks associated with deploying process to satisfy requirements • Related to procurement • Birth of SA-CMM
Software Process Improvement • 8 steps • Examine needs • Initiate • Conduct assessment • Analyze results and form action plan • Improve • Confirm • Sustain • Monitor
Software Process Improvement (cont) • Benefits • Qualitative • Increased staff morale • Increased customer satisfaction via product quality and productivity • Quantitative • Hard to measure • Relationship to qualitative • Higher morale -> less staff turnovers -> less training costs
Standards • ISO/IEC 12207 • Focus on lifecycle objectives, recording data and additions to lifecycle practices • Main processes • Primary • Acquisition, supply, etc. • Supporting • Documentation, configuration management, etc. • Organization • Management, improvement, training
Standards (cont) • ISO/IEC 15504 • Processes are identical and split into 5 categories • Primary process relates to customer supplier and engineer categories • Supporting process relates to support categories • Organizational relates to management and organization categories • Continuous model • Possible rearchitecting of ISO 12207 and 15504 to be more compatible with each other may result from hearings
Conclusions • SW-CMM and ISO9001 • Both are designed for capability determination as well as process improvement • Many other standards exist to help guide companies to improve process • ISO 15504 and SPICE • Benefits from abiding by these standards are still in qualitative form but are leading to quantitative form
My thoughts • Very well structured • All concepts presented are pretty modern • One major issue • How much feedback is truly given from the implementers of the quality process • Streamlining the process would drastically improve usability