... you will never turn back
(Munich, Germany) Some time ago, I wrote about the value taken with the execution of Proof of Concepts (POCs), and how important they are to give us confidence for future decisions. I would like to go back to this matter because I believe POCs are an important starting points to scale product complexity. At the same time, there is a task we can handle in order to improve product quality: User acceptance tests (UAT). So if we do it well we can increase product complexity and plan UAT in an incremental process of add/ develop new features and also other non-functional requirements.
This strategy of tracking product complexity growth with test coverage and parallel UAT, fits into several Agile principals:
- User centered design;
- Design thinking,
- Continuous testing (part of the DevOps strategy).
Product value Growth
As I mentioned before, Proof of Concepts are often designed to test new technologies, new concepts or new technical approaches to new or known problems.
I am sure that agilists (Agile practitioners) have gone through the experience of developing product, increasing the number or complexity of features. Thus, they went through different functional incremental phases: from a PoC, to a prototype, ending with a Minimum Viable Product (MVP). Those mean a growth in the product complexity.
Planning User Acceptance Tests in parallel with increasing product complexity
If we want to test the prototype or the MVP, we can do it in different aspects:
- the concept test or
- the quality assurance test.
Once we reach this stage, we will assume that the test strategy is already defined and that all test methods selected have already been applied. In this post we focus particularly on role and plan of User Acceptance Tests, for the concept acceptance.
Acceptance tests can be done on 3 levels:
- Alpha test – A small group of internal collaborators with specific knowledge, constituting a representative group of customers or users of the product (Key users).
- Beta Test – Small group of clients (1). Personally, I have experience planning Beta testing, through dividing the Beta phase into two sub phases: one with internal Key users, adding other departmental representatives involved with the product. And in a second phase, I added a real group of clients (2). Of course this is only applicable if the complexity of the product, the budget and the size of the market exist and so justify it.
- Pilot – a set of customers before the product is released.
It is up to each individual company and the corresponding product strategy, to decide how to test and in how many stages the UATs are divided.