software testing services
Rex Black Consulting Services | software testing experts providing consulting, outsourcing, and software training
CALL US TODAY
(866) 438-4830
ISTQB certification testingISTQB certification testing ISTQB certification testing
PMI

Archive for the ‘best practices’ Category

Kind Words on our Web Resources

A new reader of the RBCS website sent some kind words that we want to share here:

The RBCS web site is outstanding. Only a few days ago, I was introduced to RBCS’ work via a CAI webinar. I’m delighted to learn from the online articles and publications about the many facets of testing. Enlightening concepts include: establishing relationships and involving other members of the project team into the testing process, aligning testing goals with the business client’s goals via risk-based testing, and examining the topic of measuring to ensure that we fully understand what we’re measuring and why.

Bill Minckler, MBA, PMP, CLSSBB
Senior Project Manager State of Ohio

Thanks, Bill.  I’m glad you find the resources useful.  I hope you’ll subscribe to the RBCS monthly webinars, which are also free resources, focused on content not advertising.  You can catch then on our YouTube channel, or better yet, attend live to earn PMI PDUs and participate directly in the 30 minute Q&A at the end.

Useful Pairwise Testing Links

As people familar with my books, webinars, and training on test design techniques know, there are a few situations where pairwise and other combinatorial testing can make a lot of sense, especially for higher-risk systems.  Following a webinar, listener Terry Croskrey sent the following useful links:

I first got introduced to you on your ITUNES Podcasts and then your books. You are an excellent writer and presenter and I appreciated your enormous contribution to the Profession of Software Testing!

Thanks, Terry.

I wanted to pass on some recent software I discovered  for ALL Pairs and Orthogonal Array creation…that is easy to use.

Article: http://msdn.microsoft.com/en-us/library/cc150619.aspx

PICTS: http://download.microsoft.com/download/f/5/5/f55484df-8494-48fa-8dbd-8c6f76cc014b/pict33.msi

NIST free software: http://csrc.nist.gov/staff/Kuhn/kuhn_rick.html

ACTS GUI software: http://csrc.nist.gov/groups/SNS/acts/index.html

I’d add to this the link http://www.pairwise.org.

Independent Testing in an Agile World

My Agile Testing Opportunities webinar continues to stir up discussion.  A listener, Rana Zoghbi, commented:

Hello,

I have a small question concerning this presentation:

You have talked about the opportunities of agile in testing, but what about the pitfalls that a tester can encounter in an agile environment? I am pursuing the Professional tester course – Foundation level, and it mentions that usually an agile mode is hostile towards independent testing. Can you please elaborate further on this?

 Thanks,

Rana  

Thanks for the opportunity to clarify some points, Rana. First, in terms of pitfalls, yes, there are testing pitfalls associated with any lifecycle model, and Agile is no exception.  My presentation yesterday was focused on how Agile lifecycles offer testers cetain opportunities (also present with any lifecycle model), but, if you want to hear about the pitfalls, you can listen to my previous webinar, Agile Testing Challenges.

Second, whether Agile teams are “hostile” to independent test teams is something that varies widely.  We have a number of clients that are using Agile methods and have independent test teams.  In a number of those situations, the independent test team is well-respected and well-established as a complement to the Agile approach.  The way in which the independent test team interacts with the Agile teams tends to vary, so I’d recommend that you check out my previous webinar on Test Organization Options for more details.

Historically, there certainly was some bad blood between Agile methodologists and professional testers. One early sign of trouble occurred when Kent Beck, the originator of Extreme Programming, gave a keynote at the now-defunct Quality Week conference in San Francisco in 1999.  In his talk, he was reported to have said that the entire concept of independent testing was going to fade away, since it would be made irrelevant by the Agile approach to creating software. 

Thirteen or so years later, we (the professional testers) are still here and still relevant.  There are still some dogmatists on the extreme fringes of the Agile world who reject the concept of professional, independent testers, sure.  However, my sense is that pragmatic software practitioners who are adopting Agile–and often adapting it in the process–see the value of independent test teams, staffed with professional testers, and providing testing services to their Agile teams.  I certainly see a lot of clients that are successfully doing so.

The Value of Testing

I received the following message from Helen Huang.  My comments are found below, inline…

Dear Rex ,

 You are my idol, I am your fan

Thanks, Helen.  I appreciate your trust.

 I am tester .I has work this job of 5 years on China. Now I meet some problem in my working.

 1. In china , I find many company always talk the tester value ,what is the tester value ? . eg: Find the number of bug Or find a bug problem ?

 This is a common problem.  Test organizations often do not have clearly defined objectives.  This makes it very hard to demonstrate value.  The first step to demonstrating the value of testing is to work with stakeholders to define what testing should contribute.  I wrote about this in Chapter 2 of Beautiful Testing, which I’d encourage you to use as a way to making the value of testing measurable.

2. In China, many companies will consider automation and performance testing as a standard test KPI?

 Performance is often a key value for testing.  It’s important to understand the need for performance testing, as it is quite expensive to do well.  I’d encourage you to check the RBCS Library, especially the Digital Library, for my thoughts on performance testing.

Automated regression testing is also a major potential source of value.  It’s very hard to do this well, so you need to understand how to make this effort success. About half of automation efforts fail, often due to poor planning.

3. Now many Chinese tests were halfway decent, there is no specific test theories for the current lot of people think that the ability of the test failed. Test is not taken seriously in the project

 Again, I think this is a matter of not having clearly defined objectives.  I’d encourage you to work with stakeholders to understand what testing can contribute.

Please help me to work out this question.?

 I hope this is helpful, Helen.  Please feel free to respond to this post to continue the discussion.

Thanks

Helen .w. Huang

Alarming Network Design Bug

I recently flew to China on a 747.  The entertainment system was a complete failure, and no one in the upper deck cabin (where I sat) had any access to it.  They gave us all free frequent flier miles to make up for it.  When they gave me the voucher, I said, “I hope the avionics software is better tested than the entertainment system.” 

Yes, that was a somewhat rhetorical comment, as I know about the DO-178B standard and how that would affect testing of avionics software versus entertainment system software.  However, I have some concerns about that standard and what compliance to it really means.  For example, that standard, being white-box based, only requires that you test code that’s there to some degree.  What about code that shouldn’t be there, or code that should be there but isn’t (due to bad requirements or design)?

Shortly after I arrived, I received this link via e-mail: http://bit.ly/sNYQBa

Now, this is alarming.  Suppose, in all of the resetting of the entertainment systems that was done to try to restore working order, some bad signals had gotten sent to the avionics system through leakage over network?  How could that happen, you might say, as this link talks about deliberate hacking into the network?  Well, if it can be done deliberately, and you have dozens of in-seat computer systems booting over the network from the storage system, isn’t it possible that all of that network traffic could leak due to a bug in the way the entertainment system is implemented?  Even if the traffic doesn’t interfere with the avionics directly, if there’s a lot of it, you have the possibility of denial of service effects.

Of course, this can’t happen with newer planes, you might say.  Oh, really?  I believe I read articles when the A380 and the B787 were being built that both used a single network infrastructure.  I can only assume they use this same “virtual network” approach to try to keep traffic separated.

Another Software Tester with Agile Angst

Long time reader ML Gregory wrote me with the following concern:

Subject: To QA or not to QA, that is the question

I was looking for an article about QA in an agile world. I’m uneasy about a change our company is doing – eliminating QA. Testers who choose to stay must work in development as a developer writing tests. No test cases will be written, no bugs will be written. I’ve seen it before and was hoping to find some authoritative material on this type of change.

I’ve written about various ways Agile methodologies can challenge testing (most recently in the blog, but also in an article and a webinar). What you’re describing here, though, is a variant of the problem which is actually independent on Agile per se.

What you are describing is a problem I refer to as the Christmas Tree Ornament problem. I would be willing to bet that these three changes–no independent testers, no bug reports, no written tests cases–have been changes that people have wanted for some time. When the change to an Agile methodology came along, people hung these wishes onto Agile like a Christmas tree ornament.

It’s not unusual for these particular problems to occur with Agile, especially the “no bug reports” problem. Some Agile advocates do push for no tracking of bugs found during the iteration, which of course has the effect of making it impossible to gather metrics about the software process’s quality capability. However, I’ve seen other organizations that are definitely not using Agile have this same problem.

There’s not necessarily a lot you can do to resist these changes. They usually come with a lot of momentum. Standing in the way of an approaching train is not a good career move. Perhaps passing on the links I provided above, along with this blog post, can help.

I’d be interested in other thoughts from you and from other readers.

Where to Find Quick Tips on Software Testing Techniques?

I received a request from Martin for help on how to apply orthogonal arrays.  He wrote:

Hello,

I am working on putting together testing at work using an orthogonal array. This is the first time I’ve used this method. I read about it in detail in Rex’s books. But I’m having difficulty remembering all the steps. I need a little help to jog my memory. Could you please send me the high-level, bulleted, steps for creating the orthogonal array with my test case data?Thank you.

Sincerely,

Martin

Sure, Martin, you can take a quick listen to the key parts of my webinar on pairwise testing techniques. This webinar addresses how to use orthogonal arrays and other pairwise tools.  After you listen to that, I’d suggest you go to www.pairwise.org to find a free downloadable tool. Last I heard, the US Department of Commerce had funded a project to create a pairwise tool (your tax dollars at work!) that will actually do classification trees as well, and I think you might find it there.

In general, Martin, if you are looking for a refresher on test design techniques, a good first stop is the RBCS Digital Library.

Why RBCS Chose the ISTQB Certification?

I had a recent e-mail from Eleni Chee, a listener to our webinars.  She wrote:

Hi,

Firstly, I just wanted to thank you for conducting awesome webinars, I’ve definitely learned a lot from it.

I noticed that you also provide training for people interested in pursuing the ISTQB certifications. I’m just wondering why ISTQB – why not QAI or ASQ? Is it because ISTQB is a better certification? Please advise. Thanks!

Regards,

Eleni Chee

First, Eleni, thanks for the kind words about out webinars.  We definitely aim to provide the best testing webinars in the business, with a focus on good content, not advertising pitches.  I’m glad to hear that we’re hitting that target with you.  I hope you will pass on our webinar invitations to other friends and collegues who could also benefit. 

Now, to answer the question about why we only follow the ISTQB software tester certification, yes, we do think it is better. I chose to get involved with the ISTQB program after careful study of the different options, including ASQ and QAI.  We not only offer accredited training, but I also chose to get involved in the program itself, to help improve it.  I’ve had the privilege of serving as ISTQB President, ASTQB President, and ISTQB Governance Officer, as well as being involved as an author for the Foundation syllabus, Advanced syllabus, and Expert syllabus. 

You can learn more about the ISTQB certification and what makes it the best by listening to this webinar (http://www.rbcs-us.com/software-testing-resources/155) and/or reading this article (http://www.rbcs-us.com/images/documents/ISTQB-Certification-Why-You-Need-It-and-How-to-Get-It.pdf). If you want to learn more about the Advanced certifications specifically, check out this webinar (http://www.rbcs-us.com/software-testing-resources/96) or this article (http://www.rbcs-us.com/images/documents/The-ISTQB-Advanced-Syllabus.pdf).

Bonus Bug of the Week

This week, I’m pleased to feature a bonus bug of the week, courtesy of long-time reader John Singleton. He wrote to tell us:

Rex,

I was posting some comments in response to your blog post, entitled “Bad Agile Implementation Causes Software Test Challenges”.  For whatever reason, the Submit button was entirely non-responsive in Firefox. Thankfully, switching over to IE resolved it.

Not griping, just thought you’d want to know. Good, thoughtful response you gave.

Cheers,

John

I responded:

Hi John–

That’s weird. It’s usually the other way around with WordPress (the software we use for our blog): Firefox works when IE doesn’t. I guess we have a bonus bug of the week. ;-)

Glad you liked the post. I’m looking forward to your comments.

Regards,

Rex

So, while this isn’t a very serious bug, it is part of a very serious pattern: Failure of major players in the web world to test browser compatibility.  See my previous posts http://bit.ly/mdBIRY and http://bit.ly/mPkD9z.  Is this a lack of understanding of basic test design techniques such as equivalence partitioning and (for particularly risky situations) pairwise testing?  Or just a lack of caring?

I have to say that this pattern is not universal.  Working with a major e-commerce client this week, I was pleased to see that they include testing of most of the major browsers, covering the equivalence partitions. 

What do you think about this pattern?  Are you in the web world, and, if so, do you test browser compatibility?  If not, why?

Bad Agile Implementation Causes Software Test Challenges

I recently received an e-mail from a software tester, which raises some interesting issues about testing in an Agile environment.  I’ve interspersed my comments with the original e-mail, using “RB:” to indicate my text.

Hi Rex,   I am a ISTQB Foundation Level certified software tester and your book on Foundation level helped me clear the exam. Thanks for that. I never knew you had a website and visited it recently, infact today only.

RB:  You’re welcome. I’m glad you found the book and the website useful.  I hope you like the blog, too.

There is somethign that I want to know and I thought you might help.   I am into manual testing and currently into a project which follows Agile methodology.  

RB:  Many people are in this situation these days, though you seem to be suffering from a bad implementation of Agile.

The problem that I face is, we are given new features to write test cases and test them once or twice every week but some of them do not have any specification at all. And when we raise our concern that we need some requirement or specification to identify our test cases etc , the functionality is explained  in one liners over chat windows and the excuse that we are following Scrum methodology and hence we do not have any written specification or requirement for this feature.

RB:  That’s not following Agile best practices, but we have run into situations with a signficant number of clients where not all of the Agile best practices are in place.  Ideally, there are user stories (lightweight requirements) which are documented and managed.  Techniques and tools for doing so differ, but what you describe is not sufficient for testing, and probably not for development either. 

This is a classic mistake of interpreting a situation as a Manichean choice (i.e., one hand good, other hand evil), rather than understanding that the question is one of degree.  In this case, the Manichean choice is being made with respect to the Agile principle that says to “value working software over complete specifications.”  Notice that this does not say, “Don’t bother to write any specifications whatsoever,” but plenty of companies following Agile have interpreted it that way.

Another concern is, we do not have any  test reporting template. We are just given features to test over email and we test and report them over email as well. But I would like to maintain at least some bare minimum documentation so that I have at least some record of what I have done which should also help me in keeping everybody on the same page.  

RB:  Yes, this is another challenge that happens in testing, and not only in Agile.  The failure to record what was tested (both in terms of tests themselves as well as traceability back to the test basis) is common.  As you point out, this leads to test results that are completely subjective and undocumented.  Not only is this inadequate for release decisions, it’s completely useless in terms of process assessment.

What do you think should be my approach in such a scenario? Please advice.

RB:  You are facing a lot of the challenges I first discussed over three years ago in a presentation on Agile testing challenges, which later became a webinar (http://www.rbcs-us.com/software-testing-resources/92) and also an article (http://www.rbcs-us.com/images/documents/agile-testing-challenges-english.pdf).  I’d recommend you take a listen/look at those.

Thanks and Regards Neha Srivastava

RB:  You’re welcome.  Good luck.  You might need to find a place where you can practice more effective and enlightened testing, because you’re unlikely to learn much other than bad habits from working in an environment like this one.



 
`