Process Improvement Approaches overview
About speaker
Speaker: Ramella Basenko
Role: Lead QA Engineer at AgileEngine, ISTQB certified Expert
Level (Test Process Improvement)
10+ years of experience in QA area, 8 years of QA team
management experience.
LinkedIn: https://www.linkedin.com/in/ramella-basenko-b1714579/
Agenda
1. What can be improved?
2. Views on Quality
3. Overview of improvement approaches
4. Selecting Improvement approaches which fit your organization
5. Q&A
What can be improved?
SPI stands for Software Process Improvement. It refers to a systematic approach aimed at enhancing the efficiency and effectiveness of software
development processes within an organization. The goal of SPI is to produce higher quality software, improve project predictability, reduce costs, and
shorten development time. SPI encompasses a variety of practices, methodologies, and frameworks that help organizations to continually assess and
improve their software processes.
1. Assessment and Measurement:
● Current Process Evaluation: Assess the current state of software
processes to identify strengths and weaknesses.
● Metrics and KPIs: Establish and monitor key performance
indicators (KPIs) to measure process performance and
improvements.
2. Process Definition and Standardization:
● Best Practices: Define standard processes based on industry best
practices and frameworks such as CMMI (Capability Maturity
Model Integration) or ISO/IEC 15504 (SPICE).
● Documentation: Create detailed documentation for all processes
to ensure consistency and clarity across the organization.
3. Process Improvement Frameworks:
● CMMI (Capability Maturity Model Integration): A framework that
helps organizations to improve their processes incrementally
through five maturity levels.
● Six Sigma: A methodology that aims to improve quality by
identifying and eliminating defects and variations in processes.
● Lean: Focuses on optimizing processes by reducing waste and
increasing value delivery.
4. Continuous Improvement:
● Feedback Loops: Implement continuous feedback loops to
gather insights and data for ongoing improvement.
● Retrospectives and Reviews: Conduct regular
retrospectives and process reviews to identify areas for
improvement and implement changes.
5. Training and Development:
● Skill Enhancement: Provide training and development
programs to ensure that team members have the
necessary skills and knowledge to implement improved
processes.
● Knowledge Sharing: Foster a culture of continuous learning
and knowledge sharing within the organization.
6. Tool and Technology Integration:
● Automation Tools: Implement tools to automate repetitive
tasks, improve efficiency, and reduce errors.
● Process Management Tools: Use tools for process
modeling, monitoring, and management to ensure
consistent application of improved processes.
What can be improved?
Implementing SPI
1. Initial Assessment:
● Conduct an initial assessment to understand the current process maturity and identify key areas for improvement.
● Use frameworks like CMMI for structured assessments.
2. Goal Setting:
● Define clear, measurable goals for process improvement based on business objectives and customer needs.
3. Planning and Execution:
● Develop a detailed SPI plan outlining the steps, resources, and timelines for implementing improvements.
● Execute the plan, ensuring active participation and buy-in from all stakeholders.
4. Monitoring and Evaluation:
● Continuously monitor process performance using established metrics.
● Evaluate the effectiveness of improvements and make necessary adjustments.
Views on quality
Understanding these different views on quality helps organizations to adopt a comprehensive approach to quality management,
ensuring that they meet the diverse needs and expectations of their customers while maintaining high standards in their production
processes. The concept of quality can be interpreted in various ways depending on the perspective taken. Here’s a detailed
explanation of different views on quality, including product-based, user-based, manufacturing-based, value-based, and transcendent-
based definitions:
Overview of improvement approaches
Model-based Approaches
To improve product quality, the software industry has focused on improving their development processes. A
guideline that has been widely used to improve the development processes is the Capability Maturity Model.
The Capability Maturity Model (CMM®) , its successor the Capability Maturity Model Integration (CMMI), and
ISO/IEC 15504 are often regarded as the industry standard for system and software process improvement.
Despite the fact that testing can account for substantial parts of project costs, only limited attention is given to
testing in the various software process improvement models such as the CMMI. As an answer, the testing
community has created complementary improvement models.
There are two principal model-based approaches:
● Process models define generic bodies of testing best practice and how to improve different aspects of
testing in a prescribed step-by-step manner. Examples are the Test Process Improvement (TPI Next®)
model and the Test Maturity Model integrated (TMMi®).
● Content models are non-prescriptive; they do not require that improvements occur in a specific order.
Instead, they define specific activities which can benefit a test process if applied well. The Systematic
Test and Evaluation Process (STEP) and the Critical Testing Process (CTP) are two principal examples of
this approach.
Overview of improvement approaches
Analytical Approaches
1. Causal analysis
The following systematic methods for causal analysis are described below as examples:
● Cause-Effect diagrams (Ishikawa fishbone diagrams)
● Causal analysis during an inspection process
● Use of standard anomaly classifications
1. GQM approach
2. Analysis using Measures, Metrics and Indicators
Overview of improvement approaches
Hybrid Approaches
A hybrid approach can be applied in which projects which have already been developed to a
higher level of process maturity, (using either model-based approaches, analytical approaches
or a mix of both), are used to set and measure improvement goals for other projects. This is a
common sense approach which ensures that practices that work within a particular
organization can be transferred to other similar projects without needing to rely entirely on the
predefined best practices of a standard process model
Other approaches to Improving the Test process include: Test Process
Improvement by Developing People’s Skills, Test Process Improvement by using tools, Test
Process Improvement Related to Adoption of Standards and Regulations, Test Process
Improvement Focused on Specific Resources etc.
Selecting Test process improvement
approaches
The choice of approach depends on:
● Considering the critical success factors
● Considering the general guidelines listed below The following lists are
provided to support the decision process.
They should not be taken as a list of mandatory requirements or
unbreakable rules. Regarding test improvement models, it may also be
helpful to consider the list of general model characteristics when making
choices.
Selecting Test process improvement
approaches
Process models (e.g. TMMi, TPI Next) are best applied when:
● A test process already exists, although they can also be useful for establishing test processes Comparisons or
benchmarking is required between similar projects
● Compatibility with software process improvement models is required Company policy is to attain a specific
maturity level (e.g., TMMi Level 3)
● A well-defined starting point with a predefined path of improvement is desired
● A measure of test maturity is needed e.g., for marketing purposes
● Process models are respected and accepted in the organization
Content models (e.g. CTP, STEP) are best applied when:
● A test process needs to be established
● An assessment to identify costs and risks associated with the current test process is needed
● Improvements do not need to be implemented in the order specified by TMMi or TPI Next, but rather in the order
determined by business needs
● Tailoring is required to ensure the test process fits the company’s specific context
● Discontinuous, rapid improvements and changes to the existing test process are desired or needed
Selecting Test process improvement
approaches
Analytical approaches are best applied when:
● Specific problems need to be targeted
● Measures and metrics are available or can be established and taken
● Evidence for the need of a test process is required
● Agreement is needed about the reasons for change
● The root cause of the problem is not necessarily in the control or influence of the test process owner
● A small scale evaluation or improvement pilot is required/budgeted for
● A pilot is required to see whether a larger scale investigation or improvement program is needed
● To test hypotheses and gather evidence about the causes, symptoms and effects of problems and of proposed
improvements
● The organization culture values/trusts internally developed analysis based on local evidence above externally built
models (reference or content)
● Stakeholders from many areas are to be involved personally in the analysis (for example in brainstorming sessions)
● The team has control of the analysis
Selecting Test process improvement
approaches
Mixed approaches may also be used, such as the use of analytical approaches within a process model or content
model, for example:
● Use of causal analysis during a TMMi test improvement program
● Use of metrics during a STEP test improvement program
Q&A
Thanks for your
attention!

РАМЕЛЛА БАСЕНКО «Огляд підходів та моделей покращення процесів Improvement Approaches»

  • 1.
  • 2.
    About speaker Speaker: RamellaBasenko Role: Lead QA Engineer at AgileEngine, ISTQB certified Expert Level (Test Process Improvement) 10+ years of experience in QA area, 8 years of QA team management experience. LinkedIn: https://www.linkedin.com/in/ramella-basenko-b1714579/
  • 3.
    Agenda 1. What canbe improved? 2. Views on Quality 3. Overview of improvement approaches 4. Selecting Improvement approaches which fit your organization 5. Q&A
  • 4.
    What can beimproved? SPI stands for Software Process Improvement. It refers to a systematic approach aimed at enhancing the efficiency and effectiveness of software development processes within an organization. The goal of SPI is to produce higher quality software, improve project predictability, reduce costs, and shorten development time. SPI encompasses a variety of practices, methodologies, and frameworks that help organizations to continually assess and improve their software processes. 1. Assessment and Measurement: ● Current Process Evaluation: Assess the current state of software processes to identify strengths and weaknesses. ● Metrics and KPIs: Establish and monitor key performance indicators (KPIs) to measure process performance and improvements. 2. Process Definition and Standardization: ● Best Practices: Define standard processes based on industry best practices and frameworks such as CMMI (Capability Maturity Model Integration) or ISO/IEC 15504 (SPICE). ● Documentation: Create detailed documentation for all processes to ensure consistency and clarity across the organization. 3. Process Improvement Frameworks: ● CMMI (Capability Maturity Model Integration): A framework that helps organizations to improve their processes incrementally through five maturity levels. ● Six Sigma: A methodology that aims to improve quality by identifying and eliminating defects and variations in processes. ● Lean: Focuses on optimizing processes by reducing waste and increasing value delivery. 4. Continuous Improvement: ● Feedback Loops: Implement continuous feedback loops to gather insights and data for ongoing improvement. ● Retrospectives and Reviews: Conduct regular retrospectives and process reviews to identify areas for improvement and implement changes. 5. Training and Development: ● Skill Enhancement: Provide training and development programs to ensure that team members have the necessary skills and knowledge to implement improved processes. ● Knowledge Sharing: Foster a culture of continuous learning and knowledge sharing within the organization. 6. Tool and Technology Integration: ● Automation Tools: Implement tools to automate repetitive tasks, improve efficiency, and reduce errors. ● Process Management Tools: Use tools for process modeling, monitoring, and management to ensure consistent application of improved processes.
  • 5.
    What can beimproved? Implementing SPI 1. Initial Assessment: ● Conduct an initial assessment to understand the current process maturity and identify key areas for improvement. ● Use frameworks like CMMI for structured assessments. 2. Goal Setting: ● Define clear, measurable goals for process improvement based on business objectives and customer needs. 3. Planning and Execution: ● Develop a detailed SPI plan outlining the steps, resources, and timelines for implementing improvements. ● Execute the plan, ensuring active participation and buy-in from all stakeholders. 4. Monitoring and Evaluation: ● Continuously monitor process performance using established metrics. ● Evaluate the effectiveness of improvements and make necessary adjustments.
  • 6.
    Views on quality Understandingthese different views on quality helps organizations to adopt a comprehensive approach to quality management, ensuring that they meet the diverse needs and expectations of their customers while maintaining high standards in their production processes. The concept of quality can be interpreted in various ways depending on the perspective taken. Here’s a detailed explanation of different views on quality, including product-based, user-based, manufacturing-based, value-based, and transcendent- based definitions:
  • 7.
    Overview of improvementapproaches Model-based Approaches To improve product quality, the software industry has focused on improving their development processes. A guideline that has been widely used to improve the development processes is the Capability Maturity Model. The Capability Maturity Model (CMM®) , its successor the Capability Maturity Model Integration (CMMI), and ISO/IEC 15504 are often regarded as the industry standard for system and software process improvement. Despite the fact that testing can account for substantial parts of project costs, only limited attention is given to testing in the various software process improvement models such as the CMMI. As an answer, the testing community has created complementary improvement models. There are two principal model-based approaches: ● Process models define generic bodies of testing best practice and how to improve different aspects of testing in a prescribed step-by-step manner. Examples are the Test Process Improvement (TPI Next®) model and the Test Maturity Model integrated (TMMi®). ● Content models are non-prescriptive; they do not require that improvements occur in a specific order. Instead, they define specific activities which can benefit a test process if applied well. The Systematic Test and Evaluation Process (STEP) and the Critical Testing Process (CTP) are two principal examples of this approach.
  • 8.
    Overview of improvementapproaches Analytical Approaches 1. Causal analysis The following systematic methods for causal analysis are described below as examples: ● Cause-Effect diagrams (Ishikawa fishbone diagrams) ● Causal analysis during an inspection process ● Use of standard anomaly classifications 1. GQM approach 2. Analysis using Measures, Metrics and Indicators
  • 9.
    Overview of improvementapproaches Hybrid Approaches A hybrid approach can be applied in which projects which have already been developed to a higher level of process maturity, (using either model-based approaches, analytical approaches or a mix of both), are used to set and measure improvement goals for other projects. This is a common sense approach which ensures that practices that work within a particular organization can be transferred to other similar projects without needing to rely entirely on the predefined best practices of a standard process model Other approaches to Improving the Test process include: Test Process Improvement by Developing People’s Skills, Test Process Improvement by using tools, Test Process Improvement Related to Adoption of Standards and Regulations, Test Process Improvement Focused on Specific Resources etc.
  • 10.
    Selecting Test processimprovement approaches The choice of approach depends on: ● Considering the critical success factors ● Considering the general guidelines listed below The following lists are provided to support the decision process. They should not be taken as a list of mandatory requirements or unbreakable rules. Regarding test improvement models, it may also be helpful to consider the list of general model characteristics when making choices.
  • 11.
    Selecting Test processimprovement approaches Process models (e.g. TMMi, TPI Next) are best applied when: ● A test process already exists, although they can also be useful for establishing test processes Comparisons or benchmarking is required between similar projects ● Compatibility with software process improvement models is required Company policy is to attain a specific maturity level (e.g., TMMi Level 3) ● A well-defined starting point with a predefined path of improvement is desired ● A measure of test maturity is needed e.g., for marketing purposes ● Process models are respected and accepted in the organization Content models (e.g. CTP, STEP) are best applied when: ● A test process needs to be established ● An assessment to identify costs and risks associated with the current test process is needed ● Improvements do not need to be implemented in the order specified by TMMi or TPI Next, but rather in the order determined by business needs ● Tailoring is required to ensure the test process fits the company’s specific context ● Discontinuous, rapid improvements and changes to the existing test process are desired or needed
  • 12.
    Selecting Test processimprovement approaches Analytical approaches are best applied when: ● Specific problems need to be targeted ● Measures and metrics are available or can be established and taken ● Evidence for the need of a test process is required ● Agreement is needed about the reasons for change ● The root cause of the problem is not necessarily in the control or influence of the test process owner ● A small scale evaluation or improvement pilot is required/budgeted for ● A pilot is required to see whether a larger scale investigation or improvement program is needed ● To test hypotheses and gather evidence about the causes, symptoms and effects of problems and of proposed improvements ● The organization culture values/trusts internally developed analysis based on local evidence above externally built models (reference or content) ● Stakeholders from many areas are to be involved personally in the analysis (for example in brainstorming sessions) ● The team has control of the analysis
  • 13.
    Selecting Test processimprovement approaches Mixed approaches may also be used, such as the use of analytical approaches within a process model or content model, for example: ● Use of causal analysis during a TMMi test improvement program ● Use of metrics during a STEP test improvement program
  • 14.
  • 15.