16 November, 2009

Black Box Software Testing Foundations Course

I just completed my BBST Foundations course. BBST Foundations course is an online course which includes a basic introduction to black box testing. Ah! An online course, 1 month duration, black box testing. Yeah, Yeah, You have heard a lot about universities offering online/distance learning courses to working professionals who are desperate for university stamped paper certificates. I just figured out this is NOT such a course.

What I learned in BBST foundations course?

Basic knowledge of Computers
Before you think that I am challenging your ego, just answer this question ‘Do you know how memory storage works in computers?’ Compare your answer with actual facts of memory storage. Do they match? Basic knowledge of memory storage in computers is essential to being a good tester. This adds to the skill set of the black box tester. BBST showed me how miserable my knowledge of the basic computers is.

Basic knowledge of Arithmetic
While working on Matt’s Testing Challenge, I was surprised to see how the number of potential test cases was arrived at. At that time, I just wondered about that magic number. I did not realize that it was simple arithmetic computation. Knowledge of basic arithmetic computations is important to find the populace of tests that need to be executed.

Self-Inflicted Captivity
In India, test cases and scenarios are written by the leads and passed on to the sub-ordinates to test without questioning (in most organizations). In simple words, the trainees, junior/senior testers would not have scripted test cases or designed test strategies until they become leads themselves. The problem with these people is that they never stepped out of this captivity like me. Now I know why I failed in Matt’s Challenge. I am not concerned about winning or failing a challenge. I am concerned about not learning from these challenges. My ex-CEO Josh Pickus once said ‘Don’t be afraid to fail. Fail. But don’t fail to learn from your failure’.

Automated Testing
I worked very little on automated testing in my first job. Later on, I learned Perl which I never used. In my current job, I hardly find enough time for manual testing; forget about automated testing. Solid excuses. The truth is I have not made a determined effort to learn and practice automated testing. I realized this gap while I was studying BBST course. There were a couple of questions that focused on test automation and I was pathetic to say the least. Testers need to have a hang of automated testing. Like Elizabeth Hendrickson tweeted recently ‘I advocate 100% of *regression* tests being automated. But no, I don't know anyone who thinks 100% of all *testing* can be auto’.

Solving Practical Problems and Investigation
A tester needs to think beyond the testing job to be a good tester. Just testing may not make anyone a good tester. Being able to learn and solve different types of problems helps think differently. Identifying and solving real time problems as simple as ‘Door Lock not working’ or ‘Your car making strange noise while driving’ gives good experience in investigation skills. Investigate Now!

Careful vs. Sloppy Reading
All of us read blogs/articles/magazines/books on the internet. How much of it we really absorb and apply to our context matters over how many of these we read. Most of us fail to see the significance of careful reading. You never know when an idea strikes while you are reading. Read carefully. Sloppy reading hardly fetches anything.

Written Communication
Some of us fail to write as well as others who are good at it. Some of us write better in native languages and get intimidated to write in English for fear of losing the right ideas during translation. What if you are expected to work in a global setup where you need to interact with testers from different parts of the world? You need to interact in English and put across your thoughts precisely. You may be saying the right thing, but you may not be clear enough in your writing. This challenge was significantly seen in the foundations course where a few of us were unable to articulate our thoughts clearly resulting in more and more clarifications during group discussions. Written communication is a key skill for a tester. Start writing your experiences. Blogging is a great way to learn about writing. Start your own blog and practice writing.

Reading about diverse topics
Being a science graduate, I found psychology books fascinating. I would read psychology text books for hours on Saturdays in my college library. This helped me be a good counselor among my friends to help with their problems (silly teen problems!). Back then, I felt very proud of this trait and I read more just for fun. Today, as a tester, I find that knowledge helping me understand the emotions of the humans much better while using the software. Read anything and everything that fascinates you. Don’t get bogged down by the fact that you can’t put what you read to immediate use. Knowledge is power. Get that power.

What I learned in BBST Foundations course does not make me a good tester overnight or over a period of few months or years. It makes me a good tester if I have assimilated what made sense to me and my context and put it to practice in my daily working life. This course clearly highlighted my strenghts and weaknesses. I need to enhance my strenghts and work on my weak areas to be a better tester.

BBST Foundations course is a MUST for all people who test and who manage people who test. It was a course of reflection for me and I am glad I took this course so early in my career. I now know where I was heading all this while and I also know where I want to be heading going forward.

BBST Foundations course emphasizes on learning through practice and experience instead of memorizing answers to objective questions like the ISTQB/CSTE/CSQA and other crappy certifications (I call them crappy because the value add after getting certified is so little). Being an online course, this is no easy one to get through. It is a well thought out and practically designed course with years of hard work, revisions and modifications. BBST does not certify that you are a good tester, it will show you different paths to be a good tester. You need to figure out which path to choose and how to make it work for your context. This course has taken me a little closer to James Bach's Personal Vision of Testing Expertise 'I can test anything under any conditions in any time frame relative to my standing in the local community, how hard I try and my technical insight'.

This course is by far one of the best learning experiences in my entire life. I am looking forward to the Bug Advocacy course already! Go Experience BBST!

Thank You BBST for the lovely learning experience,

Addendum on 1st Dec 2009:
I passed the BBST exam. Pari Pass Ho Gayi!

Happy Learning,
Parimala Shankaraiah


  1. Hi Parimala,

    Nice information shared.I am also bit curious to join such course because I strongly feel that i am lacking somewhere.Please share the details for joing the course(not only the mentioned one but also any similar to it).Please help me in this regard.

    Best Regards,

  2. @Siri
    I am also bit curious to join such course because I strongly feel that i am lacking somewhere.

    BBST Foundations will help you figure out what exactly you have been lacking. You should take this course right away. Follow this link: http://training.associationforsoftwaretesting.org/bbst for more information.

    Happy Learning,
    Parimala Shankaraiah

  3. The BBST Foundations course is free to members of the Association for Software Testing. Membership is inexpensive: $85 for a 1-year membership. https://www.123signup.com/servlet/SignUp?PG=1531719182200

    We are a nonprofit, dedicated to improving the state of the practice in software testing.

    We have more advanced courses (Bug Advocacy now, Domain Testing coming probably in April, another 10 in development). These emphasize building skills in specific techniques. AST has to charge for these -- we used to support ourselves on the basis of membership fees and (mainly) conference earnings, but in this economy our conference is not making enough money. The advanced courses will cost $200 for members and $300 for nonmembers.

    -- Cem Kaner

  4. Hi Parimala,
    Many thanks for sharing such an awesome information. Its really surprising to know that there is much more to being a good tester and this one is a good eye opener.

  5. @Cem
    Hi Cem, I am very glad to see you comment on my blog. I am very thankful to You, James Bach and each and every person whose effort has gone into BBST courses to make it such a great learning experience on testing.

    Once Again - Thank You Very Much,
    Parimala Shankaraiah

  6. @Krishnaveni
    Its really surprising to know that there is much more to being a good tester and this one is a good eye opener.

    Oh there is lot more than we know of. We just need to look for them. BBST is a not just an eye opener, but a mind opener.

    Thank You,
    Parimala Shankaraiah

  7. When I follow the hyperlink in the first paragraph "BBST Foundation course" I see the following message

    500 - Internal Server Error
    This is a temporary server error.
    Please try to reload the webpage later.

    If you are the webmaster of this site please log in to Cpanel and check the Error Logs. You will find the exact reason for this error there.

    Common reasons for this error are:

    * Incorrect file/directory permissions: Above 755. In order files to be processed by the webserver, their permissions have to be equal or below 755. You can update file permissions with a FTP client or through cPanel's File Manager.
    * Incorrect Apache directives inside .htaccess file. Make sure you have not specified unsupported directives inside the local .htaccess file. Such include PHP settings and Apache module settings.

    Plainly I cut,copy, pasted the URL
    http://training.associationforsoftwaretesting.org/bbst into browser, I see same result as above.

    Could you please let me whatz going wrong?


  8. @Sarmila

    At this point, it looks like the above website is hacked. Wait for sometime and check again.

    Not sure whom to reach out to for letting them know about this problem. Will figure out and let you know.

    Parimala Shankaraiah

  9. For the main AST site, the entry point is http://www.associationforsoftwaretesting.org/

    The challenge for us has been getting a system administrator. We relied on volunteers for a long time, but once hackers started targeting our courses and our main site, that became an inadequate solution. Becky Fiedler, Scott Barber and I have had to loan the AST operating funds so that it could hire a part-time sys admin (as I mentioned above, we're going to have to start charging some money for the advanced BBST courses because professional-society cash flows are so weak in this economy) and he is just coming up to speed.

    We have a course site for the AST courses that is working. We are teaching sections of Foundations and Bug Advocacy right now. However, these classs-in-progress are at a new server under a new URL.

    You can register for AST courses or sign up for membership at https://www.123signup.com/servlet/SignUp?PG=1531719182300&P=153171900

  10. First of all. Thanks very much for your useful post.

    I just came across your blog and wanted to drop you a note telling you how impressed I was with the information you have posted here.

    Please let me introduce you some info related to this post and I hope that it is useful for software testing community.

    There is a good Software Testing resource site, Have alook



  11. Hi
    I found a good site which is providing free ebooks for software testing and QTP , Please visit

  12. I passed the BBST exam. Pari Pass Ho Gayi! -- liked this line

    You have quality of Sense of humor :)

    Thanks for sharing the useful Information.

  13. @Chandr Guddad
    You have quality of Sense of humor :)

    Oh. I am working hard on the humor part!

    Parimala Shankaraiah