Managing for Quality With Dr. Joseph Juran
Explore how Juran's Trilogy and quality planning techniques could assist testers and development teams boost quality, align testing with client objectives, and effectively deliver high-quality software.
Join the DZone community and get the full member experience.
Join For FreeThe Juran Trilogy: Empowering Management, Testers, and Development Teams for Quality Planning
We can plan for quality. Dr. Joseph Juran showed many companies how to do this. The Juran Trilogy helps management plan for quality, and it can also be used by testers and development teams to do the same.
Joseph Juran was born in Romania and moved to the USA. He worked with Walter Shewhart at Bell Telephones and he later taught quality control at New York University. After World War Two he helped to rebuild the Japanese economy where his techniques became part of the management culture. He went on to work with many others including Steve Jobs [1]. The Emperor of Japan and the President of the USA gave Juran honors.
Fitness for Purpose: Juran’s Definition of Quality and Its Significance
Juran wrote that one of the first tasks is to define quality[2]. People will disagree in their views of what quality is, thus there needs to be an agreement among those working on a project as to what quality is. He suggests using “fitness for purpose” as a definition of quality because it shows that quality is more than “conformance to requirements.” Juran also recommended understanding the distinctions between these two definitions of quality:
- Quality consists of features that meet customer needs
- Quality consists of freedom from deficiencies
He says that by adopting these two definitions a company can create a systematic approach to managing quality.
If the first definition of quality is used, then new features and configuration options will be added to the product to enable the customer to use the product according to their preferences. This helps organizations to increase customer satisfaction, meet competition, provide sales income, and secure premium prices. Improving quality using the first definition will, however, increase the costs of developing the product because new features and options will be added to the product.
If the second definition is used, the team will focus on reducing software bugs and enhancing product attributes like performance and reliability. This enables the company to reduce error rates, minimize rework, reduce customer dissatisfaction, and reduce the number of errors customers encounter. As a result, it enables faster release of new features. Moreover, improving quality based on this definition reduces development costs since less time is spent on bug fixing and addressing customer complaints.
Applying Juran’s Methods: Managing for Quality in Any Organization
Juran observed a disagreement between two managers discussing whether higher quality means higher costs. The two managers disagreed because one manager was referring to the first definition of quality and the other manager believed that by understanding the second definition, they could prevent such disagreements and engage in productive discussions about quality.
As testers, we often argue that the product needs to be of better quality, and when doing so we usually use the second definition because we want to reduce the number of software errors. However, we should be cautious when presenting our arguments because the manager we’re talking to may follow the first definition of quality and may not fully understand our perspective. It is helpful if, as Juran, suggests we understand the distinctions between the two definitions to handle such discussions effectively.
“Managing for Quality” is a group of methods defined by Joseph Juran that can be used by any organisation to improve its results. Juran viewed these methods as being universally applicable. To manage quality, a company should establish a vision, set goals and create plans to achieve high-quality outcomes. Managing for Quality uses these three management processes that are known as the Juran Trilogy:
- Designing or planning for quality
- Compliance, controlling, or assuring quality
- Improving or creating breakthroughs in quality
These three processes are designed to be similar to the processes used to manage finance. The financial processes are:
- Financial planning includes preparing financial budgets and defining what is to be done in the year ahead.
- Financial control includes evaluating the financial performance of the organization.
- Financial improvement which can include cost-reduction programs and new product development.
These financial processes are universal as they provide the basis for financial management. There is an analogy that can be made between quality and financial management as both involve the concept of three processes for managing quality and finance is the same. This analogy can help leaders as they do not need to change their conceptual approach. They can use their financial training to manage quality.
The process of quality planning includes: establishing goals, identifying who the consumers are, determining the needs of the customers, developing features which respond to customers’ needs, developing processes to produce the products, establishing process controls, and transferring the plans to the operating teams.
Quality control includes creating metrics and comparing actual performance to targets and goals.
Quality improvement includes proving the need with a business case, establishing a project infrastructure, identifying and establishing project teams, providing teams with resources such as training, and establishing controls to hold the gains.
This trilogy will improve quality and minimize issues such as bugs. By focusing on quality improvement, waste is reduced as a result. Once waste has been reduced through quality improvement, the metrics and controls implemented for quality control may require adjustments to align with the new situation. The team may choose to track metrics related to different aspects to ensure continuous improvement in quality.
The Juran Trilogy is designed for management, and it is also useful for agile development teams.
Aligning Testing With Customer Needs: Pre- and Post-Deployment Testing
The quality planning process raises points that are useful for the team to address. During planning meetings, teams outline their work and strategize for incorporating new features. It is crucial for the team to address the concerns identified in the quality planning process. By understanding the target audience and their specific needs, the team can deliver work that surpasses customer expectations and brings delight to them. Identifying customers is important. Juran wrote that “a customer is a cast of characters and each has a unique need that must be met”[2]. Customers can be classified as internal or external customers. Developers and testers can attend user testing sessions and talk to customer service teams to find out more about their customers. The knowledge gained from understanding who the customers are will help them to develop features that respond to customers’ needs. Customers’ needs not only include their wants and desires but also their emotions. The team needs to learn how to separate and prioritize them. Testers can leverage their understanding of the customers and their needs to design tests specifically targeting the validation of features against those needs. The tests that are planning should include both pre-deployment tests that run in production and post-deployment tests to ensure that the feature performs as expected and meets customer expectations. By aligning the testing process with customer needs, the team can ensure that the feature delivers the desired outcomes.
Development teams also define process controls that enable them to develop quality software. These ways of working may include team agreements, a definition of done, coding standards, and checklists. Developers also need to be aware of how to “transfer the plans to the operating forces” and this should include supporting testing. The team should take into account the ‘testability’ of their feature when doing quality planning. Testability has been defined as ”test support inside the product providing control or visibility”[3]. Features that support testability include error logging, including the sources of errors, and diagnostics that alert the team to potential problems[3]. If the testability of a feature is low, it can have a detrimental effect on the quality of the feature making it hard to maintain, so it should be considered an integral part of quality planning.
Quality control is an essential aspect for teams to assess their performance and report on their work. They could report on Quality Costs, analyzing how they change as a result of their efforts. Further, it is crucial to include tests that run in production after deployment to ensure that the feature functions as expected. These tests validate that the feature is meeting the desired outcomes and aligning with customer expectations. By incorporating quality control measures and comprehensive testing, teams can continuously improve their work and deliver high-quality software.
The team will want to reduce waste and will therefore need a quality improvement process. It may want to use its team retrospectives to consider how to improve quality. If the improvement process reduces the number of bugs that need to be fixed and the number of complaints from customers, the team will have more time to develop new features.
Conclusion
Juran’s quality planning methodology offers valuable insights for testers, enabling them to enhance the overall quality. The trilogy, comprising quality planning, control, and improvement, serves as a framework for engaging in meaningful discussions with our teams. By incorporating these concepts, we can elevate the quality of work delivered by our teams.
Published at DZone with permission of Mike Harris. See the original article here.
Opinions expressed by DZone contributors are their own.
Comments