T Ashok (ash_thiru on Twitter)
Summary
The way we build systems has changed, both in terms of technology and the process. The expectations of end users/businesses have changed in terms of speed of delivery and in terms of expectations. In this article are outlined 12 tips to morph and reinvent oneself to become a modern smart tester.
1.Become tech savvy. Know the insides.
Understand what happens behind the hood. Know what your system is composed of. Learn to think of issues resulting from integration of various technologies, of different systems that make your solution.
2.It is ‘-ities’ that is key. Go beyond functionality.
Yes, correctness of functionality is important. But in these times, it is ‘-ities’ that are key to success. Well we know for sure how usability has become mainstream. We also know ‘compatibility’ is critical especially device compatibility of mobiles/tablets. Performance, security, error recovery is now a given. So it is necessary to become adept in evaluating ‘-ities’ too.
3.Focus on value. It is not about activities.
What matters now is not how-many, it is really how-valuable. End users are keen on the value-offering i.e. how does it help me do better, how does it ease my life..?
4.Automated test is basic hygiene now. Become comfortable with tooling.
Well it is expected that you exploit technology/tools to accelerate what you do and replace what you do. So being comfortable with tools and rapidly able to exploit other tools/languages to getting things done is expected. Tooling is no more an esoteric skill. Remember it is not about ‘big’ tools, it is about also having a a nice ‘SwissKnife’ tool set to enable you to do faster/better/smarter.
5.Be Agile. Respond quickly.
It is no more about days, it is about hours. Change your mental model to test in short sessions, change your mental model to re-test far more efficiently, change your mental model to focus on impact far sharper.
6.Test is no more just an activity. Make it a mindset.
As we morph to deliver clear code faster, it may not always be an explicit activity. It is about having a ‘test/perfection mindset’ so that we built/craft code quicker and cleaner.
7.Go beyond our discipline. Copy from others.
Stay sharp and wide open to see how great quality/perfection happens in other disciplines.Unabashedly copy and adapt. It is necessary to be non-linear. Be inspired from lateral disciplines and humanities/social, nature, arts etc. to evaluate, to prevent, to build better.
8.Don’t just do. Enable ‘how not to do’.
It is not just about evaluation anymore, it is about how we can prevent evaluation. Enable building robust code. Enable better sensitisation of issues early. Do more ‘what-if’ to build better code.
9.Go beyond software metrics. Measure in business context.
It is great to use measures of testing to guide the act of testing. Given that we are in the age of speed and instant gratification, it is is very necessary to relate the software measures to business & end user context to ensure success. For example (1) it is no more just a performance metric, it is about how (say) response time affects the business(end-users) positively (2) it is not about overall coverage alone, but about what it means to the risk of the immediate releases.
10.Constantly unlearn.
Unlearning is a skill. The ability to constantly question if what we know is relevant and drop it to make way for newer skills is paramount.
11.Abstract well. Visualise better.
Today the act of building systems is brilliant with excellent abstractions facilitated by frameworks. The focus is on great clarity and the ability to reassemble/morph quickly, much like ‘Lego’ bricks. The same is applicable for us test folks too. Abstract well (1) the system and how it is composed (2) the issues you are going after and therefore the strategy (3) test assets to facilitate continual adjustment (4)automated suites so that you can flex it to suit the changing needs (5) test data so that it can be relevant for a longer time.
12.Get out of the well. Be able to scale across.
What we do now is no more a silo related to evaluation. It is imperative to build/tweak code, setup environments, deploy, assist in debug, help ideate features to improve value, in addition to testing. Be able to do ‘everything’ to scale across.
About SmartQA The theme of SmartQA is to explore various dimensions of smartness to leapfrog into the new age of software development, to accomplish more with less by exploiting our intellect along with technology. Towards this, we will strive to showcase interesting thoughts, expert industry views through high-quality content as articles, posters, videos, surveys outlined as a SmartQA Digest weekly emailer. SmartBites is soundbites from smart people”. Ideas, thoughts and views to inspire you to think differently.