Enterprise Architect  
 
 

Effective Outsourcing
Follow these guidelines to determine when you should develop in house and when you should subcontract.
by Adam Kolawa, Ph.D.

September 15, 2004

Deciding whether to outsource a project is a task in and of itself, involving research, analysis, and strategy. Ultimately, you need to consider the consequences and benefits that outsourcing will bring to your company.

If you approach and implement outsourcing incorrectly, the effects aren't pretty—not only can you jeopardize your position, but you can also put the jobs of your coworkers in peril. Those are extreme consequences. However, when outsourced projects fail, people within your company end up doing the work that the outsourcer failed to do correctly—or even failed to do at all.

Other consequences of a failed outsourcing project include an increase in cost and production time—exactly what you do not want. A failed outsourcing project creates unnecessary havoc and offers no benefits to your company. To launch a successful outsourcing project, you should implement these key elements into your outsourcing plan:

  • Determine your company's focal point.
  • Focus on increases in quality and production.
  • Concentrate your efforts and your team's efforts on your company's focal point. You can outsource anything immaterial to that focal point.
  • Establish and maintain long-term relationships with vendors who specialize.
  • Increase productivity and reduce costs through error prevention.

The first action you should take is to determine your company's main focus. What exactly is the core of the business? Figure that out by answering these questions:

  • What is the company's competitive advantage?
  • What is the company's true business?
  • What is the company trying to accomplish?

You want to focus your energy and your team's energy on any projects that are related and contribute in any way to that main focus. The only projects you should think about outsourcing are the ones that have nothing to do with your company's main focus.

The next step is to evaluate and analyze the production of any projects you are thinking about outsourcing. You want to determine whether outsourcing is the most viable option. Answer these questions:

  • Do I really need to build the part myself?
  • Can I get somebody else to build it for me more efficiently?

Specialize
With your company's focal point in mind, you can begin to concentrate the efforts of your team—and you should. It allows for your team members to focus their time on improving the specialty of the business. Doing so increases the value of your team and its contribution to the business's primary intellectual property.

Any projects irrelevant to your company's focal point can potentially reduce costs and increase production. It would be wise to let someone who specializes in that area concentrate his or her efforts there for you. You end up with a higher-quality part than you could have produced on your own, in a shorter amount of time. And, because your team members don't need to spend time building the company's secondary intellectual property, the primary intellectual property increases.

At this point, you should center your efforts fully on increasing quality and increasing productivity. Cost savings is something you can explore later. Saving money is actually a benefit derived from increasing quality and productivity—not the other way around. Unfortunately, most outsourcing projects occur merely because of the price tag, without further analysis.

Often, managers focus on price when they don't know how to improve productivity. But don't reach out and take hold of something just because the price is right, because the price might be the only thing that's right. To avoid this common pitfall, you need to come up with a game plan. Simply put, figure out exactly what you do and don't want.

Establish and Maintain Relationships
If you determine that outsourcing your project is a wise move and will benefit your company, your next challenge is to establish and maintain good, long-term business relationships. More specifically, once you know your company's main focus and determine exactly where your team should and should not concentrate their efforts, your next move is to find the right outsourcer, a subcontractor with whom you can cultivate a healthy working alliance that will last. This is critical. Without it, your outsourcing project will not succeed.

One integral factor to consider when searching for the right subcontractor is location. Consider these important points during your search:

  • Personal relationships: Is it beneficial to have the subcontractor next door so that you can build strong relationships among team members?
  • Geographic location: Does it even matter? Is geographic location something you need to think about?
  • Culture: If geographic location does not matter, what about culture? Is it important that you stay within the same culture, or can you step outside it?

At this point, you should continue to think in terms of contributing to the company and the elements involved in implementing a successful project. Don't start thinking about money yet. You can evaluate the costs all you want, but if nothing is delivered—or it's delivered with poor quality—you've wasted money no matter what the cost. If you come to the conclusion that neither geographic location nor culture is important to the process of implementing a successful project, then you can evaluate your outsourcing project on a price basis. Just remember: There's always a compromise between how much something costs and how well it can be done.

So that brings us to the topic of quality. Although repetitive, this statement ties all the philosophies of this article together: You can greatly improve the quality of your final project when you develop a healthy working relationship with a company that specializes in a part that is necessary but inconsequential to your company's focal point. Because both you and your outsourcing partners are focusing more time on your respective specialties, quality increases.

You must communicate these objectives of specialization and improved quality to your team members so that they can see and understand exactly what you are trying to accomplish. Your team will appreciate that you are allowing them to focus on and contribute to the heart of the company, and letting someone else—experts in their own fields—focus on secondary parts.

So now it comes down to a logical choice. If you can achieve what you want for the minimum price, go for it. There is nothing wrong with that. That's what business is all about. But, if you make your decision based solely on the price and don't get the results you want, the minimum price could become the maximum price. If your team (or anyone else in the company) has to rewrite the code after the subcontractor delivers it, you've failed.

The subcontractor you choose must be an expert (or at least an emerging expert) in the particular area for which you need parts. Most people don't think of a subcontractor as a long-term benefit because of his or her expertise in a certain area. Instead, most people think of a subcontractor as a quick fix, beneficial merely because of permanently low prices. This is a fallacy. Low prices do not exist forever. You have only a short window of time during which prices are low. Eventually, subcontractors will drive their prices up.

That is why expertise level is so important. Once you hire a subcontractor who's an expert in the particular area you need, your team does not need to build products or parts that are not core to your project. Instead, you can leave that to the expert—the subcontractor who has the tools, experience, and skills required to deliver quality. Ultimately, it is a win-win situation—higher quality all the way around.

The result of these collaborative efforts is a worldwide network of companies that can rely on one another and trust one another. Outsourcing forces us not only to establish contacts, but also to build long-term relationships that will help us implement projects more efficiently.

Increase Productivity and Reduce Costs
Now, we finally get to the cost. The first fallacy we have in the software industry is the belief that the only way to reduce production costs is to hire cheaper labor. This thought has short legs. At this moment in time, we can go around the world to obtain cheaper labor. We can go to India and China, and soon it will be Africa, but then where will we go?

Nobody knows how long it will take us to go through this cycle. It could be 30 years. Eventually, it will come full circle. In the end, what matters most and what needs to change is an increase in productivity.

The main challenge with increasing productivity is that developers spend most of their time—80 percent of it—looking for and fixing bugs. If they can prevent errors, then they can increase productivity, thus reducing cost. And costs need to be reduced across the board.

As you can see, you must consider many elements and factor them into the implementation of the project you might outsource. Do not act in haste where outsourcing is concerned. Take the time to analyze your business and project needs. Outsource for the right reasons. When you do, your project will be successful, and your company can reap the benefits.

About the Author
Adam Kolawa, Ph.D., is the chairman and CEO of Parasoft, which he cofounded with a group of fellow Caltech graduate students in 1987. In 2001, he was awarded the Los Angeles Ernst & Young Entrepreneur of the Year Award in the software category.