Satyajit Gantayat
Satyajit has broad and deep experience in Agile coaching at the strategic senior executive level wh... Read more
Satyajit has broad and deep experience in Agile coaching at the strategic senior executive level wh... Read more
Directly or indirectly, all the twelve agile principles of “agile manifesto” convey the importance of quality. Quality is a big part of the agile software development process. It defines whether the software can fulfill all the requirements of the customers. The agile approach promotes an environment where teams are encouraged to deliver valuable, working products that meet customers' needs.
The article below shows the importance of quality in the agile approach. Also, here we'll discuss how the agile approach to quality is different from the traditional approach. So, without further ado, read on.
In agile methodology, an entire team works together on a project to deliver a quality product. The team has their own responsibilities. They decide the activities related to the project. How the product will be developed, how they’ll divide their work among team members, and how they’ll organize their work, all these things are determined by the agile team.
In short, in the agile approach, the team is accountable to deliver high quality products. And it has all the responsibilities related to product development. The entire product development process is controlled by the team members, not the project manager.
In agile methodology, the team has the approach of building quality while developing the product. Additional quality is not ensured by doing more and more quality inspection. Rather the team puts in place the best engineering practices to build products with the highest quality.
However, the traditional approach of product/project quality management is different from agile approach. In the traditional approach, the project manager controls the development process. The development team follows the direction and plan of the project manager. In this method, it's difficult to make changes as customers or clients are distant from the daily work process of the development team.
In the below chart, we’ve mentioned the key differences between agile and traditional quality management method:
Traditional Quality Management |
Agile Quality Management |
Quality is addressed reactively through product testing and fixing issues. | In agile, quality is addressed both proactively and reactively. Proactively through encouraging face-to-face communication, establishing coding standards, and pair programming. Reactively through product testing. |
Product testing occurs at the last stage of the product development process. In fact, some features of the products are tested after a long time. | In agile, testing is the part of the everyday development process. In every requirement’s Acceptance Criteria, testing is involved. In agile, the team allows automated testing in each sprint. Teams verify if all the requirements developed in every sprint meet the Definition of Done. |
Focuses on pre-established requirements | Focuses on customer changing needs |
Prioritizes documentation | Prioritizes working software |
Work progress is monitored through periodical meetings and status reports. | Work progress is monitored through daily scrum meetings and results. |
The project manager controls the work process | The team member controls the work process |
Sometimes, the development team compromises with the testing phase to meet a deadline or save money. | Testing is compulsory. It’s part of each sprint in agile |
Difficult to find bugs or issues in products at the end of the project. Also, it’s costly to fix those issues. | Easy to find the problems when you test constantly. Also, fixing issues are easier than the traditional approach. |
Executives or Managers or team leaders make most decisions. | Gives freedom to team members. They make all the decisions regarding requirements, design, and development. |
On the other hand, the agile software development method focuses on constant improvement of the delivered products. The process of product development emphasizes changes. The agile team organizes daily scrum meetings to deliver quality products.
Also, the user stories are important for understanding the quality requirements. The product owner ensures that changes are made in the product backlog, and teams are working together to determine how to solve the customers' needs. In agile software development, the development team focuses on deciding how they create the product with quality.
Because the teams are self-managing in nature, it becomes easier for them to bring changes to meet their clients' needs. The team flexibility allows them to innovate and deliver quality products. In agile quality management, user stories are involved in understanding the costumes needs. Adding acceptance criteria in user stories helps to clarify the user requirements more accurately. For example:
Want to learn Quality Management? Leading SAFe Training with SAFe Agilist Certification is the first step.
We try to merge back as quickly as we can. The goal is to merge back into the trunk at least every day. It’s good to have build validation capabilities before moving to trunk-based development, but sometimes the very fact of moving to trunk-based development makes it easier to understand what we need to automate.
Want to learn DevOps? Enroll in the SAFe DevOps Certification Training
Satyajit has broad and deep experience in Agile coaching at the strategic senior executive level while also coaching and uplifting the capability of teams and individuals. An Agile Coach and SAFe® Practice Consultant with more than 24 years of experience.
WhatsApp UsWe will get back to you soon!
For a detailed enquiry, please write to us at connect@agilemania.com
We will get back to you soon!
For a detailed enquiry, please write to us at connect@agilemania.com