Saturday, March 24, 2012

Does Process QA role exist in Agile

The above question is a very controvorsial one. In this context QA means Quality Assurance Professional. In some companies QA and QC terms are being used interchangeably. QA professional are eyes and ears of the management. They check whether the defined processes are being followed. If not, provides visibility about the key issues to the management so that timely actions can be taken. In SCRUM, XP or other Agile methodologies there is no clear role like QA, defined.It is left upto the companies to define the roles and responsibilities. However CMMI has a defined Process Area PPQA (Process and Product Quality Assurance) where there is specific mention about some of the roles of QA.
Any organization or project, irrespective of the methodology or life cycle or standards it follows, any role exists due to the value add it brings to the organization or the project. If there is less or no value add some day the role may phase off. This simple rule is applicable for Process QA role too. Following are some of the operational differences of a Process QA role in Agile as compared to Waterfall approach:
  • QA should use a judgemental approach towards auditing where there are less records. For example sometimes there may not be record of minutes of meeting or review records as these things happens almost everyday. In Agile there are alternative practices like Daily Standup, Pair Programming for meeting effectiveness and effective reviews. QA should be in a position and should be competent to judge whether the alternative practices are working well.
  • Should be able to propose the the life cyle of the project and the required metrics based on the agile process defined.
  • Should have good competency to assess the Continuous Integration Situation and Build Management of the team and provide suggestions for improvement.
  • QA should be able to understand the domain and the technical details of the project. This sometimes is not a mandatory skills. But if QA has this skill then it makes them more powerful and able to take decision in a more effective manner.
  • Should be able to drive key meetings like Retrospection, Kaizen.
  • QA should be Agile by himself or herself and should keep upto the pace of the team's progress and ensure that the processes are monitored closely.

The above list may go on and on. We don't wish this post to be a real comprehensive one. The important point is that QA role is very important. Any organization, big or small, require governance mechanism and Process QA professional can really help the organizations to perform better with effective governance system.

1 comment:

Anonymous said...

QA testing is very important for normal work of your business software, but it's better to provide it using quality assurance companies.
I'm using http://www.nixsolutions.com/services/quality-assurance-services/ This is the best quality assurance company I've ever work with.
The main reason why I choose them from the great quantity of different QA companies it's the price and the feedback about their work.
I'm glad about the results of their work. So if you need some help contact them and I'm sure they can help you. Good luck.

Architecting for Continuous Delivery

This short article will provide details about the various architecture specific requirements for good implementation of continuous delivery...