|
|
|
|
|
|
|
|
|
|
|
Quality Assurance, or QA, is often given short shrift in a software development organization, especially when budgets are tight. When debating the software development budget at one of my software companies, the CEO finally asked, "Well, do you really want to hire a QA guy, or a programmer to add features to the software?"
It was a tough choice. I decided to hire the programmer because we had a huge list of features to implement. And we could not afford to implement a QA process without hiring a significant staff of QA engineers and someone to manage them.
In another example, an Accelerance client had developed their software and was getting ready for a Beta release to their first customers. They too had neglected QA. Although the work of their individual programmers was good, the entire system needed testing after the programming work was integrated together.
This client realized that going to market without a comprehensive test of the system would be a major disaster. An obvious indicator of the impending doom was the missing data on screens of the application whenever the VP of Engineering tried to use the software. Their target market was ordinary consumers who would not tolerate any missing data, confusing behavior or unexpected error messages.
How could such good engineers create such lousy software!?
It is because QA is the ugly step sister of software development. Even if the engineers are unit testing their code, they do not want to be bothered with testing the entire application. It is not considered a creative or "fun" part of the process. Consequently, QA is often neglected, leading to mediocre software and unhappy users.
Outsourcing is an excellent solution to the problem of nonexistent or incomplete QA. Yet some people are surprised to learn QA can even be outsourced. Outsourcing your QA is a terrific first step to taking advantage of low-cost offshore engineering resources.
One reason QA is such a good place to start with outsourcing is you do not necessarily need to divulge your source code. You can deliver a binary version of your software for installation and testing by your outsourced QA team. Look for a team with experience performing the type of QA that you need. You can divide QA into 5 different types of testing:
1. Requirements Testing - making sure your software does what you designed it to do
2. Usability Testing - specialized testing that may require focus groups of target users
3. Load or Stress Testing - to ensure your software has the required performance
4. Environment Testing - testing your software on different operating systems, browsers, etc.
5. Regression Testing - an automated process to repeat tests quickly on each new release of your software
Regression testing is often used with unit testing. Unit testing is performed during programming and requires access to the source code. Other separate regression tests can exercise the user and programmatic interfaces defined for your software without viewing the source code.
Avoid outsourcing too much at once. Pick the type of testing that will give you the biggest benefit. For example, Regression Testing may be valuable because you can reuse the tests yourself after they are developed by the outsourced QA team. On the other hand, Environment Testing requires a large number of test cases, and low cost outsourcing is the only way to affordably complete them.
In summary, it is important to recognize the value of QA in the software development process. You may start out with a small development team and be satisfied with the quality of their code. As the complexity of the software grows, you can add QA resources either by outsourcing or hiring your own internal team.
When you undertake the creation of a large and complex software project, it is critical to plan for professional QA as part of the effort. If you don't, you run the risk of making a bad first impression and losing critical early sales, funding for future projects, or worse. Even though outsourcing is criticized for eliminating jobs, outsourced QA may be just the tool you need to help keep yours.
Steve Mezak is a successful Silicon Valley technical entrepreneur and international outsourcing expert. Get your copy of his free report on "Outsourced Development - A Secret Weapon for Quickly Creating Software Products" now at http://www.Accelerance.com
Want to bring out the best in people?Edward W. Smith,... Read More
Kicking Winning Business Goals The competition for business... Read More
I could begin this article by providing a checklist of... Read More
Because of my work as a consultant, trainer and coach... Read More
It's that time again! Perhaps the most dreaded management practice... Read More
We all spend time on planning vacations. If it's not... Read More
Color is a big factor effecting all indoor... Read More
Outsourcing is when you hire outside professionals or services to... Read More
I love tennis both as a spectator and... Read More
A good leader has the ability to empower others. It... Read More
This article relates to the Training competency, commonly evaluated in... Read More
Human beings and the way they interact are extraordinarily Complex.... Read More
Customer relationship management (CRM) is one of the most effective... Read More
Your people are invaluable to you. They are the lifeblood... Read More
Everyone knows that an agenda is the key to an... Read More
A recent Washington Post article, described the life of temporary... Read More
Remember Papa John's commercial on TV with the slogan "Better... Read More
A few weeks ago I asked my readers what the... Read More
Times of cost cutting and downsizing has dramatically impacted the... Read More
DECIDING WHAT TO DELEGATE: Once the benefits of delegation are... Read More
Your impact at meetings will determine in a big way... Read More
IntroductionThere are a group of people in the community that... Read More
Building rapport is all about creating a relationship, in the... Read More
One of the hardest things I had discovered running my... Read More
The failures we have seen in the quality and integrity... Read More
Now we turn the corner to our final phase: Re-Discovery.Last... Read More
Envision the scenario: You've just been asked at the last... Read More
So I call my telephone company and someone picks up... Read More
When you are acclaimed for excellence during times of crisis... Read More
Creativity can be defined as problem identification and idea generation... Read More
Imagine the following scenario - you pay a visit to... Read More
A bold title, don't you think? I mean, change is... Read More
Todays business environment has changed drastically from just a few... Read More
I remember once seeing a cartoon which showed two people... Read More
It can be concluded with great certainty that certain organizational... Read More
One of my earliest childhood memories is watching Lew Alcindor... Read More
What is the number one way to prevent failure in... Read More
When asked what part of their job they find a... Read More
Being a leader isn't easy. Every one looks to you... Read More
Outsourcing is when you hire outside professionals or services to... Read More
Nearly all leaders I've encountered are underachievers. They're getting a... Read More
Everyone at the office thought that using the company e-mail... Read More
A few weeks ago, a couple of colleagues and I... Read More
This article relates to the Team Dynamics competency, which evaluates... Read More
IntroductionWhen Alex Osborn invented the creativity technique called brainstorming, I... Read More
The Number One problem in business is poor communication: between... Read More
In today's competitive world shorter product life cycles, customers rapid... Read More
Use this check list to assess your communication skills.Focus* Do... Read More
In today's article, we'll be looking at the income statement,... Read More
I'm too busy; I'd love to but I'm very busy;... Read More
Business Management |