How many times have you, as a customer, felt like a Quality Control Guinea Pig when you purchase a new product? How patient are you with really poor quality?More and more it feels like companies are in such a rush to get product out the door, they fail to think about the customer.Or, maybe more to the point, they fail to RESPECT the customer.
Though we do see some of this in physical products, it is much, much more prevalent in software. Think about it. When is the last time, after an app update, you didn't see anything different? Or worse, things that did work now do not. It happens all the time. In fact, the process has become so widespread and frequent that many smart phones, for instance, don't even tell you when updates are occurring.
The Security Update Excuse
I agree that it is nice that software companies work to improve their products.New functionality and new features are always fun, but that is not what we are talking about here.It is also nice that companies work on killing bugs, but why are we, as customers, the Quality Control team?
I am getting really tired of the "security update" excuse and the related fear mongering that software companies are spreading as a way to hide the fact that they did a crappy job. It sounds like they are protecting you, but if they have repeated "security updates" it really means they don't properly check their code first.
More important, the continuing software updates mean they are purposefully releasing software to you that is not properly tested. This, puts you and I in jeopardy simply because they are too lazy to figure it out prior to release.It says they are willing to sacrifice your security to avoid doing their job properly.
Wow! Those are strong statements.Oh, and they are obviously over generalizing, but there is truth in them. I don't believe it is deliberate - as in they are maliciously making security holes - but, neglect to do proper quality control is only a whisper better.
Some History
Just after the WWII era, Quality Assurance and Quality Control came to the forefront in manufacturing, in large part by an American, but not so accepted by Americans.Japan, on the other hand, listened and eventually started to clean our clocks with superior quality in their products. As you may know, US manufacturers worked hard to catch up and QC (short for Quality Control) quickly became part of everyday language. Over the years, we have all come to understand more about quality, and expect it.
Unfortunately, the principles of statistical process control don't translate directly to software. Yet, there are methods and there are specialists that build quality metrics for software.These folks are far and few between, and they are not normally working for the mass of small software companies.
In the days before the ever-present internet, software came on disks. It was much more carefully checked and tested before it was released, because if they made a mistake, it was expensive to make and ship all the new disks.
The days of floppy disks are thankfully gone. However, the ever present connectivity of the internet has brought back the early 1900's attitude of "slap it together", but in software.For example, the Model T changed the world, but early cars were a hassle to keep running.Are we now in the software equivalent of Model T's in the way we feel about quality control for software?
Are we as customers so eager for new software that we will accept bugs, and willingly expose ourselves to security threats just to have an app right now?
An Industry Quality Control Problem
There are problems with big companies (likethis software example) and small ones. Perhaps the biggest problems are in newer branches of mobile apps and web development. The very low barriers to entry in the software world makes it easy for a few folks with a good idea to make something and release it to the market in mass. It works for them, so it must work for everyone - Right?
Don't get me wrong, I am a HUGE supporter ofentrepreneurshipandstartups.However, do your quality control and make sure it REALLY WORKS before you release it.
In fairness, some outlets like the Apple Store do have standards that producers must meet, which certainly helps, but there are other areas - especially in the website software arena - that have no systematic quality control. A good marketing campaign and a beautiful presentation on the surface are all too much like looking into a casket. You might not like what's inside.
Also, in fairness, not all startups or web-ware companies have a cavalier attitude about quality control. Ask most, and they will say something about how important it is. Hat's off to those who really try, and especially to those who accomplish it. Yet, even the companies with a stated focus on quality control, like MickySoft for instance, struggle. The evidence is the constant updates and continual fixes.
Again, I admire the attempts and the work that goes into those constant updates, but the updates are, in themselves, evidence of a missing understanding about quality. And, I am sure the reasons for it are as varied as the products they produce.
Commitment
When a customer puts the money down and installs the software, it puts them in a committed position. Take web-ware for instance. Sure, customers can change software again later, but it is not like buying a new toothbrush and just tossing the old one. A website takes a ton of work (and cost) to implement. Changing platforms or themes or shopping carts is no trivial matter, so it is particularly frustrating when a software company does not show respect for their customers by thoroughly testing.If a website breaks because an update is not fully tested, that is just stupidity. Unfortunately, that is becoming more of the norm. Our experience says
Software companies don't have anywhere near the commitment to their customers that customers have to the software.
Seriously, those of you that write software, PLEASE familiarize yourselves withQuality Control Methodsand start using them. Show some respect to your customers - the very ones that allow you to be in business.
This idea of commitment means many companies (like MickySoft) leverage your commitment tobully youinto having their way.
Our Experience
In a recent example, a problem occurred onour websitebecause of a new update. (Similar problems have come up many times.) In this case, I was quite happy the software company was very responsive in their support - but really, if they can make a fix, update the software and release a new version in a couple hours, they have not done thorough quality control. The fix for my problem could just as well have broken something for another customer - just like the last minor update that broke things for us. Though it seems good on the surface, the mantra of super quick response to problems (for this industry), is horribly short-sightedcustomer disservice.
The answer is thorough quality control processes that every version completes before release. Yeah, that makes them less responsive to customer problems because it takes more time to thoroughly fix things. However, it also keeps most of those problems from happening in the first place.So, Which is better?
I Am A Customer. Do They Care?
I often wonder as I look through lists of "Fixes" for new software updates: What are they thinking?I notice too, the dates of the releases. (Some companies hide the dates to mask the embarrassment, but it is the same.) Often, they publish a long list of "fixes" every few days until their new version becomes stable.That means hundreds of customers spend thousands of hours of frustration because the software company failed in Quality Control. If nothing else, it dims my view of the company as well as those who run it.
I wonder if they even care that their customers waste time and money in frustration? I certainly don't get the impression that it makes any difference at all to them. Sure, they want to fix things, but I don't think they much care about your inconvenience,your time or frustration.
What Comes Around ...
Many years ago, Hewlett Packard had a slogan they used internally."Quality is FREE if you do it right the first time." I espouse that saying, and I suggest every product oriented company - hard or soft - put it up on their walls.
It is virtually impossible to write bug free code, I know.However, implementation of careful Quality Control processes will find most of the bugs before the customer gets them. That means a better reputation and happier customers. It also means customers are more likely to come back, tell friends, and all those other good things.Why build a business on anything less?
Oh, and just for the record, it is not only software products that need to think carefully about the customer. You don't want them asking"What Bonehead Designed This?"
Note:For an interesting twist, read Michael Lim's article "The Role of Software Quality Assurance is NO longer about TESTING or QUALITY!" The content of his article is only a piece of the puzzle, but I really appreciate his out-of-the-box thinking about software quality control.