Wednesday, October 24, 2012

Charming the Customer: Persona Based Testing

Software testers are increasingly being challenged to provide better test coverage for the applications they test. Persona Based Testing (PBT) puts testers in the customer’s shoes like never before to enhance testing coverage with the ultimate goal of not only meeting customer expectations, but exceeding them.

One of the main objectives of software testers is to ensure that the software they are testing meets the specified requirements and maintains a certain level of quality. What would happen if the software that is delivered to the customer not only meets the requirements but instead, exceeds them?

Undoubtedly, you would have a very happy and repeat customer. Software testers are often required to put themselves in the customer’s place to ensure that the software is providing what the customer requires. This can be challenging when teams are basing their tests solely on written requirements (that in most cases may not fully capture the customer experience or how they will utilize the software).

Persona Based Testing (PBT) is a software testing technique that puts the tester front and center in the customer’s frame of mind to determine the use cases that customers will execute in a day-to-day setting. PBT simulates various persona(s) that would use the software and, as such, helps develop more comprehensive test cases. In addition to reviewing the actual requirements for a software project, PBT also takes into account how the customer will be using the software in their own environment. For example, a requirement for a software application may be:
“The developed software must be able to be installed on a … platform”

Testers may meet this requirement by developing a set of test cases that will test installing the software and verifying if the installation worked or not. But this alone would not allow us to understand how we can exceed the customer’s expectations One solution is to find out from other internal, customer facing groups (such as Tech Support, Beta, Product Management, etc…) how their IT Administrator (the Persona) will perform the installation:

    Will the IT Administrator install on a virtual machine?
    Will the IT Administrator install the database required for this installation on the same server?
    Will the IT Administrator install the software on a drive other than C:\ drive?
    Etc...

By putting oneself in the place of the Persona (in this case, the IT Administrator), one can see how easy it is to come up with several use cases in a matter of minutes. Going further with this example, one can expand on the number of Personas that can be applied – for example, once the software is installed by the IT Administrator, who would then use it and in what capacity? Would it be Accountants? Engineers? This iterative process would continue until the list of reasonable Personas has been completely defined.
Conclusion
PBT is a very powerful testing technique that software testing teams can employ very easily to not only meet the requirements set out for them, but to exceed them and to foster increased communication between teams and within the testing team. By brainstorming on various personas that will use your software, you will not only enhance the product itself but also the dynamics of your testing team by making them an integral part of the software delivery cycle.
  •     Will the IT Administrator install on a virtual machine?
  •     Will the IT Administrator install the database required for this installation on the same server?
  •     Will the IT Administrator install the software on a drive other than C:\ drive?
  •     Etc...

By putting oneself in the place of the Persona (in this case, the IT Administrator), one can see how easy it is to come up with several use cases in a matter of minutes. Going further with this example, one can expand on the number of Personas that can be applied – for example, once the software is installed by the IT Administrator, who would then use it and in what capacity? Would it be Accountants? Engineers? This iterative process would continue until the list of reasonable Personas has been completely defined.

Conclusion

PBT is a very powerful testing technique that software testing teams can employ very easily to not only meet the requirements set out for them, but to exceed them and to foster increased communication between teams and within the testing team. By brainstorming on various personas that will use your software, you will not only enhance the product itself but also the dynamics of your testing team by making them an integral part of the software delivery cycle.

About the author

Baljeet Bilkhu has a wide range of experience as a software test lead and test manager. Baljeet’s career includes more than sixteen years in information technology with a focus on testing, compliance, reporting and quality management.

Baljeet is also a co-inventor of a patent related to automated testing (US Patent 7433804) and patent publication US 2007/0162548A1. More.

No comments:

Post a Comment