Letter from the Editor – April 2012

Big and complex testing. What do these terms conjure up in your mind?

When we added this topic to the editorial calendar, I had the notion that we might illustrate some large or complex systems and explore some of the test and quality challenges they present. We might have an article on: building and testing the software for a rocket to Mars, and discuss the complex infrastructure behind it. (This, by the way, has been done many times, primarily to highlight the large scale system failures and huge sums of money wasted when projects of a massive scale are shortchanged on adequate planning, communication and testing).

We could do the same for the air traffic control system’s infrastructure, and a dozen other big software development projects that instantly come to mind. But big and complex are different to different people.

Big and complex software systems have been woven into our daily lives, and in many cases, those lives literally depend on them. It certainly, and justifiably, might give us pause when we consider that it’s people like you and me who test these systems. Medical devices, online banking, missile guidance systems, prescription drug systems – it is a big list, and you and I hope they are tested well!

When I visit companies for consulting or training, I very often hear: “We have a really complex system! It’s too difficult to diagram or describe.” After one minute of hearing their explanations, I understand it to be a database with a web front end. Simple enough. But after five minutes, it’s an inventory control system with tax and shipping integration with three varieties of credit card processing, all tied into reporting and accounting systems, accommodating three languages that all must work on five browsers and a variety of mobile devices. Indeed, what seemed simple enough at first, mushroomed in complexity very quickly. How do they test it? It has too many moving parts belonging to too many different groups. Each group has its own schedule, headaches and problems, and integrations of third party software.

I worked at Palm Computing during its early days. Palm was a pioneer in the handheld devices, smart phones and mobile computing systems that we all take for granted today. We thought we were complicated (at the time, we certainly were): changing hardware, changing OS, changing apps, hotsynching (synchronizing) to a wide variety of PCs, all in eight languages. Very ambitious indeed – and very complex testing. And yet, in retrospect, the complexity of what we were dealing with then at Palm pales in comparison to so many of the systems I see today.

How is big or complex testing different than testing other-sized products? Maybe not so different after all: good test design, for example, is important no matter what size system you test! In this issue, we look at big testing from many perspectives, to examine both the differences as well as the fundamental constants of testing. LogiGear CTO Hans Buwalda provides us with a “big picture” look at complex systems; we see examples of complex system failures; Marcin Zręda reviews Project Management of Complex and Embedded Systems; Ginny Redish describes how thinking outside the box can lead to better testing; John Brøndum says the science of testing complex systems is constantly changing; I interview some Salesforce.com quality engineering directors about their approach in testing complex systems and I examine the professional characteristics of our global survey respondents. Finally, Robert Japenga shows us how to write a great software testing plan.

When I find myself in a distant country, late at night, hard up for cash, confronted with the ATM of a bank I’ve never heard of, my plastic lifeline somewhere deep inside its bowels while it awaits my bank’s confirmation that I have funds available, my only thought is, “This had better work!” Who tests that and how well do they do it? Well, it may not always be possible to know who, but if you test big and complex bank or financial transaction systems, I hope we will give you some insight into how!

Michael Hackett
Senior Vice President
Editor in Chief

LogiGear Corporation

LogiGear Corporation provides global solutions for software testing, and offers public and corporate software-testing training programs worldwide through LogiGear University. LogiGear is a leader in the integration of test automation, offshore resources and US project management for fast and cost-effective results. Since 1994, LogiGear has worked with hundreds of companies from the Fortune 500 to early-stage startups, creating unique solutions to exactly meet their needs. With facilities in the US and Vietnam, LogiGear helps companies double their test coverage and improve software quality while reducing testing time and cutting costs.

For more information, contact Joe Hughes + 01 650.572.1400

LogiGear Corporation
LogiGear Corporation provides global solutions for software testing, and offers public and corporate software testing training programs worldwide through LogiGear University. LogiGear is a leader in the integration of test automation, offshore resources and US project management for fast, cost-effective results. Since 1994, LogiGear has worked with Fortune 500 companies to early-stage start-ups in, creating unique solutions to meet their clients’ needs. With facilities in the US and Viet Nam, LogiGear helps companies double their test coverage and improve software quality while reducing testing time and cutting costs.

The Related Post

This is our third issue concerning topics of Continuous Delivery (CD) and DevOps with the inclusion of Continuous Testing. DevOps has been around for a while and I hope the period of buzz is over and companies moving towards building a development pipeline have begun their process, including changing their test strategies.
A while ago, I helped start a Software Quality Certificate Program as a part of the Software Engineering Program at the University of California, Santa Cruz Extension in Silicon Valley. I was on the Board of Advisors. While putting the curriculum together, a few people suggested a Measurement and Metrics course. Since I was teaching ...
Because of the type of work I do (consulting projects at different companies), I’ve been lucky in my Software Development career to have worked on a bunch of software projects specific to hardware devices or integrating new hardware into software systems. Starting with the Palm Pilot, I worked on some operating systems (OS) projects, firmware, ...
Software development projects are multifaceted. There is staffing and budget work. There are communication and team dynamics. There are project and process issues from what the customer wants, when they want it, revenue projections, and production dates. As part of my work in helping people deliver software, I get involved in all aspects mentioned above. ...
A lot has changed since I began staffing test projects. From hiring college students and interns for summer testing programs, to building networks of offshore teams around the world, and from having 24-hour work schedules to having instant crowdsourced public beta or bug bounty testing—things have changed.
If you are reading this issue, you are probably aware of the impact on the business world of cloud computing. Most people do not have a good grasp on what the cloud is or how people and products can use it. BTW, you are already a cloud user. If your email is stored somewhere “on ...
What is testing in Agile? It’s analogous to three blind men attempting to describe an elephant by the way it feels to them. Agile is difficult to define and everyone has their own perspective of what Agile is. When it comes to testing and Agile the rules are what you make them. Agile is ideas ...
Continuous Testing… what is it? When we first decided to do a magazine issue dedicated to the DevOps practice of Continuous Testing, I joked with someone: “It’s about testing continuously.” And their reply was: “Yeah. What else would it be?” I was joking, but clearly the joke didn’t land. Continuous Testing is about testing continuously, ...
I was just recently at a company that had a beautiful test architecture, framework, and Cucumber with tons of well-automated tests. But there was no good test management on top of the Cucumber tests, and they did not do a good job tagging the tests. Although almost everybody on the team could write and maintain ...
API testing– an old school technology gets way cool again. APIs and testing them is nothing new; the technology has been around for decades. The most basic definition of an API is an exposed function— a producer (person or company) writes a function and exposes it so that others, consumers, can use it. We copy ...
Every organization goes through times when the internal, or home team, cannot execute the testing project easily or quickly enough. The reasons are many, from the lack of an effective test strategy to low automation engineering skill, to staff positions going unfilled due to a great job market. With everyone working and very few people ...
Automation is a mantra in testing. Anyone associated with software development wants more test automation, but it’s often misunderstood. People who do test automation know how difficult it can be. But some people do not understand that automation is code, and that it needs to have architecture and design just like production code. They do ...

Leave a Reply

Your email address will not be published.

Stay in the loop with the lastest
software testing news

Subscribe