The SQA2 Blog: BBT - Behavioral Based Testing
Modern Technology Startup
The modern technology startup achieves growth and success with the help of many things: determined programmers, savvy visionaries, hard work, late nights, limited funds, coffee, and most importantly, a good idea. This is the template for any startup.
When you step back and look at a snapshot of a startup, you see many activities. From designing and planning, to building and marketing. However, you don’t often see dedicated testing. It’s understandable why dedicated testing often does not occur in business. Even companies beyond the startup phase don’t see the benefit. Unfortunately, these companies also most likely face constant development problems and regular code rollbacks. Now I’m not going spend too much time going over why software quality assurance testing is essential for the success of any software development effort. If you read “Why is Software Quality Assurance Essential?” you’ll understand why we believe no companies that need Software Quality Assurance can survive and thrive long-term without it. Let’s talk about the added benefits that BBT brings to any startup.
BBT is a simple framework that handles the hard and time consuming work. Sometimes there just isn’t enough time to identify, realize and execute all test cases in a testing cycle. In fact, we’ve seen over the years that this is often the case. With the use of BBT, one can identify and realize all positive and negative test cases for a given feature with a simple Cause and Effect graph. Using basic Boolean logic with truth tables, a la BDD, the framework generates all test cases possible from a given requirement in “Given When Then” format.
Cost is one of the biggest areas to consider in any startup. If an activity is not producing or generating revenue it is a limitation. This is the major reason QA is not included in the original plan. With BBT, any organization can have the test cases, automation, and complete coverage without breaking the bank because BBT produces so much benefit from a little amount of work.
From a simple website with a few forms to complex infrastructures, BBT can handle any scenario, any requirement, and any challenge. All it takes is the paradigm shift to think in BBT terms and creating the BBT charts correctly. With reuse being an important principle in BBT, changing requirements no longer has the ripple effect it once had.
Let’s say a project manager wants to change the way users log into your application. What areas do you need to consider during this effort? Well first, you have to think about testing the new login behavior itself, but also existing test cases that refer to the existing login behavior. Then include the automation that uses the login and you have a nightmare of an effort to change such a simple feature. This same nightmare is made a pleasant dream with BBT. Updating a single login chart updates all test cases and automation associated with it immediately and automatically. No matter the size of the infrastructure utilizing that login chart, it’s updated in one living, breathing document.
Super hero QA
Imagine you found a super hero status QA Analyst you could hire. They were capable of handling every aspect of the SQA process and somehow had time to spare. Every requirement tested, every positive and negative path covered, a full automation suite with complete coverage, all built with little effort by this Analyst of Steel. This Analyst is capable of managing impactful changes in requirements. Propagating those changes through all associated test cases and automation. Not only that, but every code release, this QA Analyst is so confident in their testing effort, you would follow them into any battle. You’d hire them in a heartbeat, right? Let’s be honest, this sounds like fiction, especially the part about confidence. What if I told you this were achievable, even for a start up with a limited budget? This is not a dream.
With BBT, a dedicated QA Analyst can be this super hero you dream about. By utilizing BBT, you get: test cases, realized steps, full coverage on requirements (both positive and negative test paths), and a living, breathing document that updates itself quickly and completely. Adding on top of this the BBT Tool and Framework and you have a force to be reckoned with!
Image provided courtesy of stokpic.com