Quality Theme

From PRINCE2 Agile wiki
Jump to: navigation, search

Never Compromise Quality

Agile practitioners are usually more serious about quality, and the delivery method also helps them; for example, fine tuning is usually left for the end in Waterfall approaches, where external pressures do not allow the developers do so, and as a result, quality is compromised. In Agile, small pieces of product are delivered incrementally, which provides the chance to spend enough time on all quality activities. So, the first thing is consider is that quality is not compromised in Agile, and it should be reflected in the PRINCE2 Agile as well.

Continuous and Integrated Quality Activities

The other difference in Agile is that quality activities are not separate from other types of activities. Team members are usually focused on pieces of product instead of specialist activities, and members with all kinds of expertise work together until the item is "done". The quality activities are done continuously, and are integrated with other activities. This should be reflected in the Quality Management Strategy. Another consequent of this is that the customer should be available to the project (e.g. for user acceptance testing), which should be reflected in the Communication Management Strategy, and the role descriptions captured in the Project Brief and Project Initiation Documentation.

Continuous testing requires effort, and therefore, it's required to have automated tests as much as possible. This is also something that should be considered in the Quality Management Strategy, if it's applicable to all products, or in the quality method section of related Product Descriptions.

Other Quality Methods

It's also common to use Test-Driven Development or Behavior-Driven Development in Agile environments, which are another types of quality methods.

Since Agile projects do not use upfront design, it's usually necessary to ensure quality by having continuous Code Refactoring. Refactoring is the improvement of code without changing its external behavior. This is a good way of minimizing the Technical Debt.

Definition of Done

If the requirements are well-defined, they will be broken down into many small functional, independent items that require a less or more similar set of steps. These steps can be documented in a "Definition of Done", and usually include the quality criteria. In other words, the quality criteria can be unified and stored in a Definition of Done in PRINCE2 Agile.

See Also

External Links