Can't donate to charity?
Volunteer computer time
or Support SETI!
R&D Sponsorship Center
Fonts.com
December 2012

Home Page
Feature Archive
A&I Column Archive
Production Tools
State Marketing Data
US Marketing Data
World Marketing
Classifieds
Service Directory
Quality Assurance
3D Printing


Subscribe to Advertising & Marketing Review!
Contact Ken Custer at 303-277-9840.



The Quality Assurance Equivalent of the Perfect Storm


by Glen Emerson Morris
Related Columns
Desktop Manufacturing
Hits the Home Market

It's the biggest revolution of the 21st century. And it's going on now.
The Fab Future of
Desktop Manufacturing

Desktop manufacturing is finally getting affordable, at least to businesses.
The Object of 3D Printing
Print anything you need, from cameras to cars, and do your own recycling.
The Future of Arthur C. Clarke
One of the greatest science writers predicts what this century will hold for us.
Recommended Columns
The Greening of Expectations
It's not a fad, it's critical to our survival.
The Learning Curve to Prosperity
Buckminster Fuller predicted the resource crunch now hitting us. He also gave us the tools to deal with it.

It seems about every week some high tech company has a major marketing disaster related to software quality. Sometimes it's a mobile application, sometimes a Website, but it's always the same story, a marketing idea didn't translate to sound software and some company lost money, market share and possibly a few senior executives too. There's a reason this seems to be happening more often than it used to.

As more and more traditional business IT departments are being asked to integrate social marketing, mobile Web apps and other new marketing technologies into traditional corporate Websites there aren't enough skilled people who understand both marketing and IT to go around. As many businesses have been finding out, the engineering processes needed to develop good corporate software are significantly different than the engineering processes needed to develop marketing driven software targeting Internet based desktop and mobile users.

One of the core issues is that the engineering practices that evolved in the mainframe era make certain assumptions that are no longer valid. One invalid assumption is that the different hardware and software components the IT department is working with are all more or less compatible with each other. In a time when all of a company's hardware and software came from a single vendor like IBM, or Sun, etc., compatibility wasn't an issue. IBM and friends had already done a considerable amount of compatibility testing, and their products usually worked with each other. These days, even if a company does have an IBM mainframe, they're still probably having to use an Apache server with Linux, PHP, Java, and any of dozens of other open source and third party applications as well, just to keep marketing happy. And most likely, they test all of this new technology the same way as the tested the old technology.

To their credit, many corporate IT departments have attempted to modernize their software development process, but it has introduced new problems.

Previously the most popular software development processes has been the Waterfall method. This approach is based on a lot of planning and documentation, and is commonly used for products where major improvements were expected with every release. The Waterfall methodology requires documentation be generated for each project including exactly what each of the features were to be, otherwise known as a product requirements document (PRD). The PRD became the basis for the quality assurance test plan, a document which describes how a software project is to be tested. Generally each feature listed in the PRD has a corresponding test case (or set of test cases).

Over the past decade a new approach to software development known as the Agile methodology has gained widespread popularity. The Agile approach breaks a large software project down into many smaller incremental releases, or scrums, each lasting just a few weeks duration. There's much less documentation. The advantage is that a company can respond to the competition in weeks, possibly in days.

Another invalid assumption is that there will be adequate time for testing. One of the core problems with the Agile methodology is that it doesn't take into account the amount of time to needed to perform adequate compatibility testing. A new feature may work by itself, but it also may break other previously working features. The only way to be sure nothing else is broken is to run a comprehensive test of the Website. Unfortunately, it can take a QA team a month to comprehensively test a complex commercial Website, and sometimes the Agile approach only allows one or two weeks for testing. The result is an occasional PR disaster.

Software project managers need to understand that simply testing new features as they are added to a Website won't guarantee there won't be major technical problems when the site goes live. It's how the whole thing works that matters. A new search feature could be really cool, but if it breaks checkout functionality it could cost more than it could ever payback.

Another invalid assumption is that the users can be told what platform and browser to use. A corporate IT department can dictate what platforms and browsers company employees must use, but it can't get away with telling consumers what they have to use. Today consumers may be using any of over 6,000 platform/OS/mobile device combinations. Companies can't afford to ignore consumers on mobile devices, there are just too many of them these days. Unfortunately, IT departments never had to learn how to test a wide variety of desktop, tablet and smart phones, and it shows.

We seem to have hit a perfect storm for quality assurance. We'll start to navigate out of the storm when we begin to recognize and address the depth of the ocean. Quality assurance is deeper and a lot more complex than it's been given credit for. And the complexity of today's Internet marketing makes smooth sailing difficult, but not impossible.

The Agile method can be used to develop solid software but certain considerations have to be factored in. The quality assurance team should be involved in the project from the beginning. One of the QA teams first responsibilities should be to provide an estimate of the time, personnel and resources required to adequately test the Website or Web application. The QA team should also be allowed to run comprehensive systems tests, and not merely test specific new features. In addition, the QA team should be prepared to fully document the testing process, and write the product requirements documents if none exist.

If it sounds like the QA department is going to need extra funding, you're, so to speak, on the money. The only way to deal with a very limited schedule is to have more people testing more machines than were needed for longer development cycles. And the number of people who can do this kind of job is very limited.

Glen Emerson Morris was a senior QA Consultant for SAP working on a new product to help automate compliance with the Sarbanes-Oxley law, an attempt to make large corporations at least somewhat accountable to stockholders and the law. He has worked as a technology consultant for Yahoo!, Ariba, WebMD, Inktomi, Adobe, Apple and Radius.




Copyright 1994 - 2011 by Glen Emerson Morris All Rights Reserved ' keywords: Internet advertising, Internet marketing, business, advertising, Internet, marketing. For more advertising and marketing help, news, resources and information visit our Home Page.


Back to top

Economic Indicators
Census 2010
Census Bureau
BEA   NTIA
Health   Labor
Commerce Dept.
More...



It's Time to Let
A Robot
Make Your Sales Pitch!
Support
Roy the Robot
Funded by Kickstarter