SmartQA Community

#69

SmartQA Digest

When testing a new platform that we are building, I encountered a bunch of issues around the corners. A variety of corners each little different, it was interesting to see patterns of how bugs crept in. These interesting observations are what I have penned down in this week’s article 8 Heuristics for identifying  corner cases for testing

Corners are interesting as they are subtle, invisible really. They could be complex with many things that intersect and therefore display an unique behaviour. They may not be necessarily symmetrical at ends, nor be similar to behaviour in the middle.

As a developer focused on solving a problem for typical or generic cases one may not see the interesting extremities. For example we do everything right for a system in normal state, but miss out what happens when it is brought up the first time. This article outlines eight heuristics I discovered when testing a product that we were building, a SaaS platform. The heuristics outlined are based these aspects : Time, Lifecycle, Transformation, Position,Space, Size, Linkages and Limit.

The eight heuristics illustrated by the pictures above are crisply elaborated in the article. Click here to read the article.

Today’s QA demands deductive ability of a mathematician, creativity of an artist, mind of an engineer and value perception of a businessman. And what else? A lovely crisp  two minute video outlines these as TEN Suggestions for SmartQA

SmartBites

||VIEWS FROM INDUSTRY LEADERS||

TEN Suggestions for SmartQA

SmartQA is a beautiful combination of thinking styles, a mindset of brilliance and minimalism, tech prowess, heightened clarity, great design and meaningful pauses, outlined as ten suggestions in this crisp 2-minute video.

#68

SmartQA Digest

Last Friday the SmartQA site went into a blink, inaccessible, socially distanced to use the modern terminology! A story of how some simple choices made by software developers while implementing an automated workflow can bring down a business, especially when humans in support decide to become inaccessible.
 
Let me tell you the story. The site smartqa.org became inaccessible last Friday, and after a few minutes, I discovered that the site was not down, but unreachable. That is when my tryst with support started. Telephone, chat, emails were unanswered and after five days of relentless pursuit it was sorted without any help from support. So, what was the issue and what can we learn from this? 
 
Well, the issue seemed to be that the domain expired on Friday
despite it being renewed many weeks ago. The renewal process seems to have been botched up. A process that is completely automated, without any human intervention. What went wrong? After five days of being at it, I was given to understand that current domain registrar has possibly shifted his business partnership of buying domains to a different bulk domain provider. This required the new bulk domain provider to authenticate every domain owner with the current registrar. So an email was sent by them to each domain owner (I guess, as I got one) which was supposed to be responded to by a certain date. In my case, the email seemed to have found its way into the ‘read’ folder somehow and therefore I did not respond by the given date. So, on the date of domain expiry, the site went blink.All because of ONE email that I did not respond to! The email that somehow did not show up in my inbox. This email was never resent when response was not received. So, I as a customer never knew about this and my business stopped. 
 
All because of ONE EMAIL THAT BROKE THE WORKFLOW of automated renewal! Know what is the cost of renewal? About Rs 1000 ($12)!
 
Just imagine if this has been an online business. $12 shuts down the business! All because of a developer making a choice, of assuming that a critical action in an automated workflow is done. Never contemplating what if it is not done, how can I ensure that it is indeed done? In these times with businesses becoming fully digital, these kind of simple choices can break a business. 
 
In my case, I pursued the problem relentlessly, by analysing, by talking to a lot of people and finally a good samaritan helped me nail the problem and then poof, the solution happened. We all know that a problem is a problem, until the solution happens. And in most cases, the solution is simple!
 
On a lighter note, with support going into quarantine, the site socially distanced, I went into the ICU 🙂 A happy Covid19 story this turned out be, at the end.
 
“A typical accident takes seven consecutive errors” quoted Malcolm Gladwell in his book “The Outliers”. In the chapter on “The theory of plane crashes”, he analyses airplane disasters where he says that it is a series of small errors that results in a catastrophe. The other example he quotes is the famous accident – “Three Mile Island” (nuclear station disaster in 1979). You may want to read a nice article that I wrote on this <Seven consecutive errors = A Catastrophe>.
 
When you are building large systems that transform other’s business, stay defensive. Don’t assume that every action will be done, be it by a human or by another systems. Some of these can break the chain and business.
Two weeks ago, I gave a keynote talk titled “Be a flow. Test Brillantly.” in Tribal Qonf, an online test conference. “Good testing is a great combination of intellect, techniques, heuristics, process & technology. What does it take to do brilliant testing? Going beyond the intellect, into the deep, a state of flow, immersing into the act.” Here is a crisp FOUR minute version of this as SmartBites video. CLICK HERE to watch.

beEnriched

expandMind

SmartBites

||VIEWS FROM INDUSTRY LEADERS||

smartbits

||NUGGETS OF LEARNING||

#67

SmartQA Digest

Exactly a year ago, I published the article “3 Ideas to Staying Agile – “Compass, Cadence, Ownership” that outlined handling change from individual, business and software dev practice. These were views outlined by industry thought leaders whom I had the pleasure to discuss with. In today’s Covid world that is filled with tremendous uncertainty, this article is worth a re-read.
 
“If we take a very pure sense of what agility means, it is actually an organization’s innate capability to survive and thrive in the long run” says Tathagat Varma  in the SmartBites video “Agile  What is it really?…
 
Change in Business, Career : Compass vs. Maps
Anuj Magazine in the SmartBites video “Reinventing yourself in these changing times” says: “A extremely successful company like Nokia was wiped out when Apple launched iPhone. Why? My hypothesis is that companies that followed a compass approach as against a map approach survived. 
 
Compass gives a sense of direction of where you should be headed to and that sense of direction comes from knowing what is happening in your vicinity, whereas maps tell you to go from point A to point B and not worry about what’s happening around it. 
 
The same analogy works very well with careers as well. If one follows compass approach, we will be encouraged to figure out what’s happening in our ecosystem and define the next step accordingly. If we follow the map approach the career paths tend to more map-like ‘move from SW Engineer to Sr Software Engineer’ whereas the world around is changing, and you’re still happy, scaling probably the wrong ladder.”
 
Change in the Organisation Structure
In the SmartBites video”The changing facet of our discipline/industry” Sudhir Patnaik says: “There is a tremendous shift towards a customer-backed approach. Everything that we do is keeping our customers in mind , the extreme mindset of product ownership and the one scrum team mindset is driving phenomenal change in how we deliver product.  I think days are gone, when you have to develop, somebody else has to test and  somebody else has to deploy. It is evolving in such a way that every single member of the team owns every responsibility. So if I am a developer or test engineer, I own development, I own testing, I own deployment, I own support. That’s the team extreme ownership. That’s a disruptor.”
 
Change in SW Dev Practice
“The trends which are taking over software development, the whole software space, is in being Agile. People want to be able to deliver faster with a lot more flexibility. So what the tester needs to understand is that he has one big constraint and that is time. So you can try and reduce, squeeze as much time as you want if attention is being paid in the right places, you’ll still get the best bang for the buck. So I think that’s where we need to look at. We need to understand what’s happening in the world outside. We need to be able to focus, plan our work and execute to the plan in whatever limited time we have”,  says Vivek Mathur in the SmartBites Video “The changing landscape of dev – What does this mean to SW testing?
 
Cadence
In cycling/running there is an interesting concept of cadence. In the case of cycling, cadence is about how many times/minute you rotate the pedal. When you move from a plain terrain to a climb (change), the speed will drop. So the natural response is to expend more power by pedalling harder to maintain the speed. The challenge is that leg muscles work harder and tire out quickly. 
 
This is where cadence comes handy. Instead of expending higher energy, shifting to lower gears and rotating the legs (pedals) faster results in maintaining the same speed on the incline. So it is typically recommended to spin at a higher cadence to compensate for the change. Cadence is about continuous motion to enable a good response to the change. High cadence implies nimbler movement and using information about the terrains as we ride enables one to respond  well. 
 
How does this relate to what we do? Break the problem into smaller chunks (lower gear) and keep the problem solving rhythm going good. 
 
In this week’s SmartBits,  Arun Krishnan outlines “What is big data/analytics?“.

beEnriched

expandMind

SmartBites

||VIEWS FROM INDUSTRY LEADERS||

smartbits

||NUGGETS OF LEARNING||

#66

SmartQA Digest

As we mature we see more opposites. Find more bugs or prevent by being sensitive? Automate more or use human smartness to do less? Continuous frequent checks or smart minimal tests? Things that seem contrary, creating a tension of choice. It is really not a tussle, it is a perfect state of balance. 
 
Intelligent testing is a brilliant set of opposites. In this article ” Yin & Yang in Testing“, I relate intelligent testing to Yin & Yang, where the tension of opposites keeps one in a perfect state of balance enabling one to deliver the very best. Click here to read the beautiful pictorial article.
 
“Technology changes due to going digital cannot be done abruptly, they have to be aligned to business program objectives and QA needs to be aware of these objectives” says Sriramadesikan Santhanam in this week’s smartbits video ‘Enterprise Customers & Quality‘. Click here to watch the video.

beEnriched

Yin & Yang in Testing

Intelligent testing is a brilliant set of opposites. Is it finding more bugs or enabling brilliant code from start? Is it about frequent and continuous evaluation or being sensitive and pre-empting issues? Is it an act of doing or a state of mind? In this article I relate intelligent testing to Yin & Yang, where the tension of opposites keeps one in the perfect state of balance enabling one to deliver the very best.

Read More »

expandMind

Featured image for article "Sketchnote"

Sketchnote

Sketchnotes are purposeful doodling while listening to something interesting. Sketchnotes don’t require high drawing skills, but do require a skill to visually synthesize and summarize via shapes, connectors, and text. Sketchnotes are as much a method of note taking as they are a form of creative expression.

Read More »

SmartBites

||VIEWS FROM INDUSTRY LEADERS||

smartbits

||NUGGETS OF LEARNING||

#65

SmartQA Digest

High Performance QA is about enabling the path to brilliant code, of doing less and accomplishing more. High performance occurs when you articulate crisply, think clearly, organise well and  execute nimbly. It requires a high performance mindset that is strong, clear, agile and value oriented.

TWELVE interesting and counter intuitive perspectives to High Performance QA , beyond the typical beaten track of process, technology and skills. The perspectives are organised into FOUR themes of LANGUAGE, THINKING, STRUCTURE & DOING.

#1: LANGUAGE – “the EXPRESSION of problem/solution”
High performance communication to exploit power of expression in ’what-we-do’, ‘how-we-do’, ‘how-well-we-have-done’.


#2: THINKING – “the THINKING to solution”
High performance thinking is goal focussed, user centric, spatial, approximate, immersive and contextual

3 : STRUCTURE – “the STRUCTURE of elements”
High performance structure is about great arrangement, to connect better

#4 DOING – “the act of DOING”
High performance execution is about doing less, doing early, staying engaged

These TWELVE interesting articles are laid out in an exclusive page on High Performance QA. Click here to check this out.

 
Process & Practice – Two interesting words, what are their roles in SmartQA? Well Process is about the sequence of activities to be performed and expected outcomes, along with who-to-do-what. This helps us to be consistent and efficient. On the other hand Practice is about skills that enable the various activities to be effectively. Where do tools come in? Well in both – to plan, track, manage, do and also analyse.
Check out this week’s poster at smartqa.community on this.
 
You cannot validate if you do not know how it is constructed and what it is doing. A deep understanding of architecture in deployment is probably more necessary for today’s validation teams.“ says Jawahar Sabapathy in the crisp 90-second smartbits video Should I know the architecture to test?.

beEnriched

What Masai Mara taught me about leadership

Want to be a successful leader? Let animals be your guide. Assemble varied skills to build a great team. Let good techniques and methodical action unleash the power. Watch progress and steer continuously. Be confident. Make decisions. Enable each individual to unleash their full potential. Finally enjoy the journey.

Read More »

expandMind

Necessary but not sufficient book

Necessary but not Sufficient

I have been a great fan of Dr Goldratt having read all this books, my favourite being his first book “The Goal”. This book “Necessary but not Sufficient” is written as a “business novel” and shows the fictional application of the Theory of Constraints to Enterprise resource planning (ERP) and operations software and organizations using that software.

Read More »

SmartBites

||VIEWS FROM INDUSTRY LEADERS||

smartbits

||NUGGETS OF LEARNING||

#62

SmartQA Digest

Good testing is a great combination of intellect, techniques, process and heuristics. What does it take to do brilliant testing ? It requires one to be immersed in the act, be focussed yet unbounded, be keenly observant but non-judgemental, with outcomes that are beautiful, the activity so joyful that time stops. A state of flow. What does it take to get there? Read about this in this week’s beEnriched article “Be in a Flow. Test Brilliantly“.
 
Girish Elchuri says it is important to understand the big picture, put yourself in every role, inject probes to test better and concludes by stating that attitude is key to probing  the design, in this week’s smartbits video Adopting DFT thinking.
 
Check out this week’s postern in the SmartQA home page – Good testing happens when you combine left with right. Brilliant testing happens when you are in state of flow.”

beEnriched

expandMind

SmartBites

||VIEWS FROM INDUSTRY LEADERS||

smartbits

||NUGGETS OF LEARNING||

#61

SmartQA Digest

It has been at least a month that most of us have been working from home. Covid19 has moved a full circle around the world constantly mutating, affecting some places seriously and some much lesser. An error is what possibly caused the world to massively change in the last few months. Some of us are seeing the ill effects of this while nature given a breather has become pristine. Well, errors however painful they seem are necessary and useful. Hmmm, bugs are good!
 
It is interesting that error is what made humans possible in the first place. Without noise, evolution would stagnate, an endless series of perfect copies, incapable of change. But because DNA is susceptible to change – where mutations in the code itself or transcription mistakes during replication – natural selection has a constant source of new possibilities to test. Most of the time, these errors lead to disastrous outcomes, or have no effect whatsoever. But every now and then, a mutation opens up a new wing of adjacent possible. From an evolutionary perspective, it’s not enough to say “to err is human”. Error is what made humans possible in the first place” Steven Johnson says in his lovely book “Where good ideas come from-The seven patterns of innovation”. The chapter on “Errors” in this book is a fascinating read. This week’s expandMind article summarises key ideas from this outlining how erroneous hunch changed history, how contamination is useful, how being wrong forces you to explore, how paradigm shifts with anomalies and how error transforms into insight. Bet you will like this article “Errors are useful, innovate using them” interesting. 
 
Why do bugs happen in software? The beEnriched article this week outlines eight reasons for this and suggests being sensitive and aware to causes of errors is useful in doing SmartQA and delivering clean code. After all, doing SmartQA is not just finding issues, but sharpening one’s senses to be able to smell these and spot them from afar or near before they hit us. It is about elevating QA to be far more valuable to business success. Check out Sensitivity and awareness.
 
In this week’s smartbits, Zulfikar Deen says how needing a business mindset is key to working as a value adding partner to  IT group of an enterprise. Check out the 298-second video “Business mindset“.
 
Check out this week’s poster “It is not about finding bugs. It is being participative in the whole process of development” at SmartQA home page.

beEnriched

Why do bugs happen in software? This article outlines eight reasons for this and suggests being sensitive and aware to causes of errors is useful in doing SmartQA and delivering clean code. After all, doing SmartQA is not just finding issues, but sharpening one’s senses to be able to smell these and spot them from afar or near before they hit us. It is about elevating QA to be far more valuable to business success.

expandMind

SmartBites

||VIEWS FROM INDUSTRY LEADERS||

smartbits

||NUGGETS OF LEARNING||