Is Quality Assurance agile?

photo by Gideon Is there a real business plan or not, when a software project is started it is known to everyone who participate in it that it would eventually become a product. It would not always be developer’s pet – it will become real thing used in real world by real users. It will also gather some new people who will work on it and think of it as their pet. I am talking about sales department, product marketing but also configuration management, documentation team, support, integration teams but also quality assurance team. Some of software vendors, especially smalls, does not have all those teams, but essentially all vendors, even startup teams are profiling different roles of people which respectively works on development, configuration management, marketing, customer support… But those are all inside guys, and when outside guys – users and customers – are getting their hands on product, product becomes a real thing and in real world, wishes of users does not always reflects wishes of company which is developing the product.

Because quality is not only matter of standards but also a matter of perspective, in a software project – especially if it is a startup – QA engagement becomes more important when real customers start to make business with it.

More quality to some, more complication to other

All of these aforementioned groups of people can have different perspective on what comprises quality of a product.

Lot of new features and new versions will make developers busy and their managers happy but integration and documentation teams will have headaches. Myriad of customizing options will make techie users happy but businesses (customers) suffer if average user cannot figure out how to use the software. If product became too bloated by constant patching delivered too early to satisfy unforeseen requirements by customers and marketers push, end users will be unsatisfied.

So, what means more quality to some, for other it means more complication. Do you remember the user`s boycott when Twitter people proudly introduced “powerful” retweet feature? According to lot of seasoned Tweeterers, it turned out that new feature did not reflect user wishes. Why? It simply differed a lot from common understanding of what retweet means. Method of discovering this is called heuristic analysis. Users does not need to know the fancy name, but are mostly doing heuristics analysis when are introduced to new features. They are deciding is the software with new feature remaining consistent with its history, comparative products, intended use and so on.

Agility of Quality Assurance

In order do avoid discontent among users of certain software product, Quality Assurance team plays key role. Those guys are there to conduct tests and analysis of product but most important, to act and think of software as real end users, to anticipate their wishes and become to know their common ways of doing things and assess the odds of new features in product to become something users will use and love or avoid and nag about. Their job is to establish a bridge between different kind of people which are taking part in forming software product and contribute in providing information which will help making software product the right thing for them all.

All those activities of Quality Assurance team, if performed in outlined intense, is in essence agile. Following dry and non communicated but well documented process where requirements are lost behind abstract phrases is not as important as people who develop and use the software. Quality Assurance watch for individual needs and make response to change easier to development seeking results wich will satisfy end users and customers while keeping the product developer`s pet.