What does the future hold?

One of the most amazing things about working in the technology and software world is that this industry advances so fast that I have no real idea what software/technology I'll be testing on and writing about in 10 years time.

10 years ago I hadn't really heard of cloud computing, now I'm testing call centres hosted in the cloud. 10 years ago I was just starting to test on web apps, now it seems everything is available online.

Almost every article I read is about testing web apps, using web testing tools or some form of web based testing service. Combine this with the general mobile phone uptake trends you have a very mobile, very web, very technology heavy future. Add to this the lowering of barriers of entry (cost and availability of technology) and it wont be long before we are facing option paralysis when deciding which configuration to start testing on first.

As more people adopt modern technology, whether willingly or not, it's clear a wider array of technology and applications will be moving online and mobile providing us with numerous challenges of not only testing the functionality but also the human factors (or ergonomics) side of our apps and the devices they run on.

Self service (by end users) is also becoming a big selling feature and with mobile devices being just as powerful as many desktop devices it's clear we have a future dominated by mega massive selections of devices to test against, all running on varying degrees of network capability used in a mind melting variety of contexts. Add to that the seemingly natural way in which the future generations have perfected the art of managing multiple devices and we can quickly see how testing may need to evolve to keep up.

So my domain knowledge of the product and industry will need to evolve to keep up with technology and trends, this hasn't changed much. It's always been the case.

But also my approaches, test tools and ideas about testing will need to grow, shift and evolve too. But also too my test environments will need to evolve to keep up with the relentless progress of technology and communications. In fact, some test environments may just need ripping apart and rebuilding. And for some, this could be the biggest testing challenge they will face.

So how do you see your test lab or your test "approach" evolving over the next 10 years?

Image courtesy of : http://www.flickr.com/photos/levitateme

I ain't afraid of no Ghost

As someone interested in history, culture, photography and architecture (amongst other things) it's no surprise that I'm fascinated with Ghost Signs.

Ghost signs are wall painted signs from the 19th and 20th century that are still visible in today's modern world. Check out the Flickr group here for an idea. They represent to me a perfect combination of old and new. A mutual partnership; historical respect and rampant modernisation.

Image courtesy of http://www.flickr.com/photos/imarcc/

There are ghost signs on the walls of office blocks, coffee houses and loft apartments. They are everywhere, often un-noticed by us as we go about our daily lives, but they are indeed still there, a stubborn pointer to history and lives now long gone. Look closely and you'll start to see them, faded and peeling but representing a time gone by.

Yet we also have modern signs and symbols dotted around our environments too from "For Sale" signs to "Fly Posters". We are creating our own urban landscapes. Modern signs, often short term and lightweight, often re-usable, moveable, recycleable, flexible and targetted.

The White Swan, Grosvenor Street West - Fleurets - Leasehold For Sale sign

Image courtesy of http://www.flickr.com/photos/ell-r-brown/

Many modern signs serve several purposes and have future re-use built in. No longer a permanent advert but a temporary display, ready to be removed to make way for the next sign. A reflection of ever changing modern times maybe?

In the testing world i see some interesting similarities.

There are people hanging on to traditional (Existing? Old? Trusted? Proven? Unchallenged? Accepted? Archaic?) ways of working. Running their testing in the same way, over and over again, often complaining about the same problems...over and over again. Never pushing a boundary. Never trying anything new. Maybe never needing to?

Then there are people completely ignoring the past and forging ahead with new ways of doing things. These people are mavericks. They are ahead of the curve. The problem is, they are "out there" and often their ideas and concepts don't make sense or they ignore the past and make the same mistakes..again.

But there are many who are embracing the past, but are not being bound by it. They are learning from the past mistakes yet embracing new ways of working. They are embracing diversity, collaboration, new communication methods and advances in technology.

These people are exploiting their skills to the maximum but are respectful of what has gone before. They are building on the past, not ignoring it or destroying it. They are using an old framework for something new. They have repurposed an idea or concept. They have made something old relevant to the next generation.

They are using tried and tested approaches to testing but mixing this with new tools to help make these processes more efficient. They are virtualising, automating first, exploring, outsourcing, learning, sharing, collaborating, coworking, socialising, networking, crowdsourcing and enhancing the testing world all the time. Taking what they already know and what has been proven and making it work for today's workplace. Tweaking it and making it relevant again.

The products and hardware we test on/against is changing..fast, so too does our understanding and appreciation of testing. A new generation of testers are entering the workforce. This next generation might not work in the same way as my generation. We shouldn't stifle that.. We should embrace it.. The values I hold may not be the same ones my son will hold, that doesn't mean he is wrong. (not all the time anyway :) )We (or the next generation) just need to do an update to our testing.

A lot of what I do today would not have been possible just a few years ago, but the goal remains the same. The passion, interest, sense of enquiry and downright determination of the tester remains. Stuff still needs testing.

Let's embrace what works, add to it, subtract from it, mash it up and merge it. Let's create our own version of Ghost testing. Let's not ignore the past, but let's not be bound by it either.

July UKTMF

A big thanks to Paul Gerrard and Susan Windsor for organising yesterdays UK Test Management Forum in London. Also a big thanks to the sponsors for the event; SQS UK, Original Software and Tricentis Technology & Consulting

It was a cracking turn out with about 100 people there. Great to see so many familiar faces but also lots of new faces too.

Paul started the afternoon with news of the merger between his company, Gerrard Consulting, and Susan Windsor's company, WMHL. They are keeping the Gerrard Consulting name and are looking to expand in to the main stage of the consulting world. They both talked about a new tool called Testela which sounded interesting. Looking forward to finding out more when it's released.

BTW - Stephen Hill's blog is an excellent write up of the afternoon...here, so I wont do any more other than to include some photos.

There was a lot to agree with and a lot to disagree with about Jonathan Pearson's talk on "The Dark Side of Application Quality Management Ten Black Holes to Avoid For Successful Application Delivery" Some lively discussions took place around metrics and agile and many other topics. Jonathon also remained dressed as Obi Wan for the entire talk. Impressive. I must admit that their tool is looking increasingly like a tool capable of satisfying many needs within the testing community. It appears to be flexible, incredibly extensible and doesn't empose restrictions on how and what methodology or approach you can take. It's also got support for exploratory testing, which sounds very interesting indeed.

Second up for me was James Wilson. I worked with James many years ago and his topic of choice was very interesting. Why is testing in an Agile with Scrum environment hard? (And what can we do about it?)

It was one of the best discussions I've had for a long time. The presentation essentially got hijacked but there were some interesting ideas put forward about how to run soak tests in short sprints and how to manage the quality of your release, when time and cost are fixed. Good stuff.

As usual, some after conference drinks :)

 

       
Click here to download:
july-uktmf-kjalqhDIDreoveFxAHgp.zip (260 KB)

 

I'll show you mine.......

Inspired by a post by Michelle Smith about what's on her walls when she is working I thought I'd open something up to the testing community and see if we can't get some insights in to testers workspaces going. To continue the mantle from Michelle I've posted some pictures of my walls and home office. I work from an office at New Voice Media but when I'm at home writing blogs yada yada this is my inspiration.

Mine, it would appear, is not quite as neatly laid out or as decorative as Michelle's and I couldn't photograph the whole study as I have a bath side panel, some tiles and my DIY tool kits laid out...I must find some time to fix that bathroom.

I'm a big fan of the NBA. I'm not entirely sure how I got in to it, because here in the UK it's by no means a popular sport but I'm a fan none-the-less. I was also lucky enough to get to see a NBA match when I was in New York a few years back. It was excellent. The game itself was poor but the atmosphere was fantastic. Nicks versus Golden State Warriors......

Here in Britain it's got some core followers but it barely registers in the newspaper and you'd be hard pushed to find someone to talk to about basketball. Although you can't see in this picture, but the NBA image is made up of lots of little images of basketball players from the past. Also some modern art from my son :)

 

A map of the British Isles. I find it intriguing that many people in Britain are striving to explore the world and dismiss Great Britain as boring and dull. One look at this map and it's clear I haven't explored 99% of the British Isles so I can't join them in saying it's boring and dull.

And some books.

So why not upload your photos to flickr and tag them with "softwaretestingclub" so we can collate them together, maybe for a funky ebook. Maybe just as an experiment.

There's method in the madness

There's a growing number of people in the testing world doing something I've been calling Method Testing, although that's probably not the right term. Named after Method Acting (Wikipedia : Method actors are often characterized as immersing themselves in their characters to the extent that they continue to portray them even offstage or off-camera for the duration of a project.) I'm using this term to describe the testers who emerse themselves in their end users environment to learn how their customers use their product and in what way and on what devices. They then bring this back to the lab and test against it, often in situ, often with real end users.

In my opinion this is taking testing to a higher level than many can realistically go, but it all comes down to your goals, budgets and aims. Unfortunately, those who do Method Testing don't seem to write much about it..... In the examples I hear about it's not uncommon for the test team to prepare a "real life" environment (not just a real life computer configuration) in which to test, often using real end users, sometimes using actors and often using props.

This differs from UAT in that they are doing this as part of their day to day testing, not just at the end, when to be honest..it's often far too late.

A friend of mine tests medical equipment and it's associated software. He has a fake emergency room kitted out with dummies (in various medical emergency positions), medical equipment and costumes, he even uses fake blood. Proving the software works (or doesn't) is one thing but making sure it works under pressure, in situ and is usable is something completely different. Usability testing at it's best. He even employs actors once a week to act as patients adding extra drama and realism. They often bring in real surgical teams to run through a typical procedure. The whole development team observe the behaviour and adjust accordingly. He films the sessions to learn more about the actions performed in surgery and potential flaws with design. Sure it's expensive...very expensive, but it's invaluable for him. The software industry he is in demands working kit..all the time. I'm trying desperately to get him to write about it.

At the almost completely free end of the spectrum, another friend of mine tests call centre software and he has a small call centre environment set up with a seating plan in the corner of the office, so he and his team can role play a typical call centre scenario. He's not only testing the software, but testing in sudo-situ, with terminals, seats, wallboards and background chatter.

He suggests that it "tricks the mind" in to thinking differently about the software. I think he's on to something.

I know of several testers who test their software whilst out and about on trams, trains, at the beach, from a cafe etc on a variety of mobile devices using free wi-fi or shared connections. That's because they know roughly how and where their software is to be used. They are testing in situ. They are exploring, learning, feeding back. They are immersing themselves in the environments their customers will use their product in. They are doing method testing.  They are also extremely lucky :)

But what ties all of the above is that they are all reporting remarkable results in customer satisfaction <-- the ultimate feedback on product acceptability?

They are making an effort to emulate the end users real environment, to make sure the softwares original purpose is right, for the right people and under the right contexts.

But it's too tricky to find out who uses our software and how they use it..isn't it?

Not always. For a small few this might be true but in reality the majority of us just don't bother to seek out this information or we look in the wrong place. Why not try one or all of the following:

1. Speak to support desk or customer services. They are on the front line of complaints and feedback and can give you invaluable insight. They often maintain lots of records on system configurations and usage patterns. They don't stash it away from you to be mean, they probably just don't know you want it.


2. Speak to sales or accounts teams. They sell the stuff and maintain relationships with the customers. They will have more information than you would imagine.


3. Attend a sales pitch. You will learn loads, trust me. You'll also see the types of questions your customers ask about the product.


4. Attend (or give) a training session on the softwared to real users. You can observe them first hand and see which bits trip them up or confuse them.


5. For webapps or websites use Google Analytics or other website traffic monitoring tools or build in some performance/usage measuring. The amount of information Google Analytics gives you is insane. Browsers, screen resolutions, locales, referal sites, devices. You can find out bounce rates, pages navigated to/from, time on page, links hit etc etc etc etc Mind blowing stuff that really will make a difference to your test approach.


6. Talk to the customers....(might be worth checking with key people in your company first though :) )The majority of customers are more than happy to show you around their offices and show you the software in use, especially if it's not working too well!


7. Give customers easy and simple ways of reporting back problems from your software. Encourage them to be clear about the issues and log pertinent information.


8. Actively encourage customer involvement by hosting forums and chat rooms where they can discuss your product. Encourage them to be truthful and honest. Engage with them. You'll be amazed at how receptive customers are to honest and upfront conversations. Ask for feedback on what environments your product gets used in. Ask for the truth about your product. You can't blindly push on releasing if people are hating on your product. Or you can, but it won't be for long :)

The information is out there..everywhere. It's a case of widening your awareness fields and grabbing it. Analysing it. Using it. Reacting to it. Learn how your users use your product and you are gaining invaluable feedback on how to test it. It's never a replacement for real end users but it's a great addition to testing your software in a test lab with controlled environments and no idea about how your users use your software.

It might be time to step outside of this test lab comfort zone and do some in situ testing. Or should that be Method testing? Customer emulation testing? End user situ testing? No doubt someone will have a good name for it. I personally like method testing. And although your managers may think your mad for wanting to test in the same environments as your users, they'll appreciate it in the long run. There is, after all, some method in your madness.

A slight return

I've been a bit too busy on various side projects recently and realise I've not given this blog the attention I used to. Unfortunately the rest of the year is going to be mad too. So this blog will see fewer posts than normal..but I am still working on some new content for it. Here's why it's taking a back seat though:

 

Firstly I'm going to be taking a short break to get my Agile Testing Days presentation finished. I've got lots of research that needs collating and some more interviews to do with peeps in the testing community. The super cool organisers of Agile Testing Days also sent me a special speakers logo. How neat is that?

Secondly, I'll also be starting to ramp up my contribution to The Software Testing Club blog, which, by the way, you can all do too here.

Thirdly, I need some sleep :)

 

And for those who have not been in the loop with all things Software Testing Club then I should let you know we have officially disapproved this cheeky little ebook.

http://blog.softwaretestingclub.com/2010/07/ebook-by-cbpbos-building-a-test-team/

And we had nothing to do with it  :)


We've also started posting out some printed copies of the forthcoming Testing Planet (the Software Testing Clubs very own newspaper)

Some people will have already received the printed version and we are releasing the digital version very soon indeed. It's slightly later than expected, but hey....it will be worth the wait.

I must admit it looks amazing (I am biased though). Don't forget you can help support the work that the peeps here at The Software Testing Club do by purchasing your printed copy. Wink Wink.

Oh yeah. I'll also be at Eurostar later this year. Hopefully I'll get to see some of you there.

Rob

I'm from the future

The eagle eyed amongst my regular readers seem to have noticed that I am indeed from the future.

I posted my last blog post from the future, exact date: August 28th, 2010

I've been rumbled. Now....is the future dark or bright? http://www.developsense.com/presentations/e2008twofutures.pdf

That would be telling wouldn't it?

What do you want from me?

You've surely been in the same situation? You're sat using an app or site that requires some form of data entry from you, the problem is, you have no idea what it wants. There is no advanced information, communication or guidelines on what rules are going to be applied to your data. There's sometimes an ambiguous or tricky to find error message. Sometimes there's nothing.

As a software tester these types of bugs in our apps are low hanging fruit. They are quick wins, easy gains and an incredible booster of usability. I refer to them as "clarity bugs". Features, functions or capabilities that just need a little bit of extra "clarity" to understand them or make them work. This may come in the form of on-screen prompts or help files or documentation or maybe through training, but sometimes there just needs to be that little bit of something extra.

 

Image courtesy of : http://www.flickr.com/photos/rdolishny/

 

Help text that isn't helpful is pointless and confusing. None existent help is assuming a level of knowledge by the end user that might not be right. Errors that aren't descriptive are frustrating and time wasting.

To only explain what the user did wrong after they've actually got something wrong is wasteful and irritating. Communication is key.

When there is no explanation about what criteria the data and subsequent validation must meet it's is an easy usability defect to grab. (think about max and min lengths on fields, or password validations or date formats etc) Don't become blind by your pre-existing knowledge and sail straight past the fact it's not explained anywhere. Are we sure our end users know about our specific data validation?

It can end up with the user sat there screaming "what do you want from me?" whilst hammering on the keyboard hoping they submit the perfect data.

These usability bugs are bugs. Plain and simple. Even if the application works, if it's not usable then the chances are your customers will simply stop using it :(

Want to know some more about good form design and general usability?

Check out :

 

 

Test Data or Shady Re-Ordering Technique?

I don't normally post these types of blog where I include a screen shot of an error I've found in the wild on someone else's site. There's plenty of others doing that and with great effect. But this one really made me think.

On the Hampshire Library Search page there appears to be either:

  • Left over test data

Or

  • A lazy data ordering technique where everything no longer needed is prefixed with a Z to shift it to the end of the list. (why not delete it?)

 

Sadly though, some languages seem to have been discontinued (do the people who speak them know?) yet have double entries making the list somewhat confusing. To make matters worse the search form itself didn't appear to work. When searching for books in Winchester I get books from everywhere but Winchester. It's a reverse search feature.

How many of us go through the software once it's released to the wild? Would we have drilled down this low and spotted these issues? Do you think these issues were present in testing?

 

London Testers Gathering


I had an absolute blast at the London Testers Gathering organised by Tony Bruce. Great bunch of peeps who love to talk testing. Enjoyed The Testing Geeks presentation on iCheckWebsite.com which looks really interesting. I was scooting around the site this evening and it looks very interesting indeed. Head on over to check it out : http://www.icheckwebsite.com/

It was also the first time that I got to see the Testing Planet printed version and I am really stoked with it. It looks fantastic printed out in newspaper style. It really is something very different. Love it. Digital version out soon.

If you want to get your hands on a copy then head over to : http://blog.softwaretestingclub.com/thetestingplanet/

Or you can check out issue 1 of The Software Testing Club magazine : http://wiki.softwaretestingclub.com/The+Software+Testing+Club+Magazine+-+No+1

I was also fielding a lot of questions about the Tester Types and who/what they are. Well, you'll find them here with a load of other cool content from the STC : http://wiki.softwaretestingclub.com/Software-Testing-Resources

I'd suggest that if you get the chance to get along to one of these events you jump at it. Drinks, food and testing.

Enjoy:

                                   
Click here to download:
london-testers-gathering-wwaroIddGgeccoHAgtlv.zip (818 KB)