Mobile applications are here to stay – whether an end user application on a smart phone, or an application used in a B2B environment, whether the device be a hand held and not the commonly used smart phone, the applications in their various forms and factors will only continue to rise. Mobile computing has rightly become a large horizontal wherein any technology that shapes, or any new domain that brings in a new scenario for consumption, the mobile element is omnipresent.
Given the diverse nature and ever increasing scope of mobile applications in scenarios that address end user expectations, requirements analysis is a very important phase. This is probably more important than even the mobile application engineering phase itself – it is not a new adage that a job well begun is half done – this is very true in the engineering world where testing the requirements is a very important phase especially when you plan the mobile app testing effort. I was reading an article this morning on how most teams say that they test requirements but when asked on how exactly they do it, they often fumble. It was a good post with a checklist on how to go about this effort – you can get more details here. The reason this is especially important for mobile application testing is as follows:
- As mentioned earlier the integration points, the diversity, scope and omnipresence of the mobile domain is increasing by the day
- In most cases the mobile engineering effort may even be a standalone freelance effort, which allows the engineer to wear a tester/user perspective hat upfront.
- It opens up a lot of the testing scenarios for discussion upfront bringing in better overall feasibility analysis. A tester is able to fully understand e2e workflows and better engage with the business teams upfront, which will help in a more robust quality effort moving into the delivery cycle
- Last but not the least, this brings in better team bonding overall with everyone huddling to review requirements upfront rather than thinking of just the engineering implementation that follows.