The Many Flavors of Application Software Outsourcing

  • Written By:
  • Published:

Defining the Problem

In the 1990s many companies rushed to upgrade or replace their legacy software prior to January 1, 2000—affectionately known forevermore as "Y2K." There was fear and concern that many legacy software applications would be unable to handle the requirements of a change in the first two digits of a four-digit year in date fields. A large number of companies chose to purchase and implement new software packages that handled most of their business processes in a single, integrated package from companies such as SAP, PeopleSoft, Epicor, Mapics, Intentia, and other ERP providers. Many other companies chose to modify their existing software to handle the Y2K requirements. Regardless of which approach a company decided to take, almost every company was working on its IT applications and demand for resources grew steadily.

During this time and continuing into the 2000s, labor costs for IT resources in the US and Europe spiraled higher at a rapid rate as a direct result of the demand created by Y2K, the dot-com bubble, and the rush to get on the Internet bandwagon. Today, there is a much larger reliance on IT applications, and IT applications touch a much larger part of an average business. The result is that IT-related labor demand, and therefore costs, are still quite high. Additionally, expectations and desires for software features from users and packaged software customers, combined with new demands created by the advent of the Internet, have resulted in tremendous breadth and complexity in the software used by most companies. This additional complexity has also contributed to the need for more IT resources.

During the same time period, the cost of computer hardware and other infrastructure equipment has fallen as the price to performance ratio of each successive generation of equipment is better or faster than the previous and usually costs less or the same as the previous version. The net result is that overall IT department costs have increased dramatically, and now typically constitute a greater percentage of the overall budget than they did fifteen years ago. Hence, many CEOs are now looking to reign in those costs without sacrificing any of the benefits or services that they have come to rely on.

How does application software outsourcing work?

As companies look to reign in IT costs, many are turning to outsourcing. But how does application software outsourcing work? Traditional thinking would suggest that a company would decide to outsource some portion of its software development and support, select an outsourcing provider, and then transition the work to that provider. However, an important step needs to be considered before selecting a provider. Companies must decide which outsourcing model they wish to engage. There are several ways that a company can utilize an outsourcing provider to supplement or support their application software. Among them are the following alternatives:

  1. Specific project model
  2. Supplemental model
  3. On-site model
  4. Off-site model

There are pros and cons to each of these alternatives. What is best for one organization may not be best for another one. There are also some variations to each of these that will be discussed later in the article. It is important for a company to understand the different approaches before it begins looking for an outsourcing provider.

Specific Project Model

One option is to outsource one or more specific development projects. Companies can outsource entirely new applications, add new modules to existing applications, migrate an application to a new platform, or many other application-related tasks. One of the key benefits to this approach is that there can be a very clear expectation of scope, time, and cost. One of the challenges in obtaining clear expectation is that the buyer has to provide a complete set of requirements, specifications, or both. If the buyer only provides requirements without design specifications, then by default, the buyer is allowing the outsourcer much more freedom in the design and therefore the coding of the solution. If the buyer provides requirements and design specifications, then the outsourcer has much less leeway in completing the task, and must write code that matches the specifications. In general, the advantage to the specific project method is that the buyers know exactly how much will be spent for the project and when it will be completed, and this arrangement is ideal for a fixed-fee bid. Estimating risk is transferred to the outsourcer, meaning that the outsourcer may have to absorb the cost of project overruns (or receive the benefit of coming in under budget). However, solution risk is higher for the buyer, meaning that the buyer may not get exactly what was desired or envisioned even though the system exactly matches the requirements or specifications.

Supplemental Model

Another outsourcing model is to supplement the capacity or capability of the existing IT department. There are several variations to this approach. These approaches vary based on the focus of the arrangement, whether it is on an ad hoc basis or focused on a specific subset of IT work, such as new development or maintenance of older applications.

Ad hoc: The buyer can obtain additional design, development, support, or quality assurance resources. These resources act as an extension of the buyer's current organization, and the leadership of the existing IT organization directs the outsourcer's work. The primary advantage of this approach is that additional resources are added at a lower cost than if hired locally. A disadvantage is that the company has to manage resources in a remote location, which requires extra project management, detailed project documentation and rigorous communication processes. Assuming that the buyer has invested time and energy training the resources, another disadvantage is that the buyer pays for all of these resources every month whether needed or not, until such time that the buyer decides to permanently decrease the size of the team.

Specific application: The buyer can elect to have the outsourcer maintain or continue to develop an existing application (or both), while the buyer continues to maintain or develop other existing applications. For example, some companies may outsource the customization and support of their ERP solution to either their ERP provider or to a third-party outsourcer, while continuing to maintain all of their other applications. The main advantage is that the buyer can focus on applications built in one technology or domain while the outsourcer focuses on a different technology and domain.

New development only: The buyer outsources all future new development and uses the in-house resources to maintain all legacy applications. This option is the least risky from a skill and knowledge transfer perspective. The outsourcer provides skills in the new technologies and the buyer doesn't have to retrain existing employees in those new technologies. The buyer's very skilled and experienced resources who originally developed the legacy application are typically the best resources to continue to support that application. This option is best for companies that are still running many applications that are twenty years old or more.

Maintenance only: Buyers outsource the support for most or all of their legacy applications and perform all new development internally. The advantage is that many developers want to move forward to new technologies, and this approach satisfies their desire to remain "current" and to work on "new stuff" rather than maintaining old code. The disadvantage is the cost and time involved with knowledge transfer. Buyers have to train the outsourcer in the functionality of the legacy application and maybe even train them in the technology, in addition to training their own staff on new technologies.

On-site Model

Whereas the project model is a point solution, and the supplemental model extends the current IT staff with additional capacity, another outsourcing alternative is to outsource part or all of the IT department. As with the other models, there are several variations to this model as well.

On-site application support: The buyer outsources all application development and support to the outsourcer. All of the application support resources currently employed by the buyer become employees of the outsourcer. The majority of the work continues to be performed at the same work location at the buyer's site. The main advantage of this approach is that future costs are known and fixed for the buyer. The disadvantage is that the buyer has less control and less flexibility than before.

On-site IT Outsourcing: This approach is a slight variation to the on-site application support approach. In this approach, the entire infrastructure is also given or sold to the outsourcer. Some work may be moved to other locations where the outsourcer can provide the same level of service, but utilizes shared resources or on-demand services. One of the key elements to this approach is service level agreements (SLAs), which are negotiated and included in the contract agreement. The outsourcer is responsible for supporting all of the applications, and for keeping the computer hardware and network operational and up-to-date per the contract SLAs. The main advantage of this approach versus the on-site application support model is that the outsourcer is now 100 percent responsible for all of the buyer's IT. The outsourcer is counting on the fact that it will be able to achieve the SLAs at a lower total cost by taking advantage of their vast knowledge of IT and extensive technology infrastructure.

Off-site Model

While on-site models provide resources locally, another option is to provide these resources from remote locations. This model is fast becoming the most popular approach to application software outsourcing. The specific project model and the supplemental model can both be setup as on-site or off-site models. In the off-site model, the buyer engages with an outsourcer who has a development center in India, China, the Philippines or some other low cost location. Much or all of the programming, testing, quality assurance, documentation, and other tasks are performed in the off-site location. There are several advantages to the off-site model. First and foremost is cost. Typical companies can expect to reduce their development costs by 30 to 40 percent by taking their development offshore. Also, many of the offshore outsourcers have developed very robust and repeatable processes, and are often certified at the highest levels by various certifying organizations such as the Carnegie Melon Software Engineering Institute (Capability Maturity Model - CMM) and International Organization for Standardization (ISO). The disadvantages have to do with language and communication, time zone differential, and physical distance, among other challenges. These disadvantages can lead to unmet expectations, inadequate solutions, and extra stress for the managers who have to work directly with the offshore organization on a daily basis.


Once a company has decided to outsource some or all of its IT spending, it must also select the most appropriate outsourcing model for its business. Different outsourcing models should be evaluated and compared based on their ability to meet the strategic needs of the business today and into the future. Each model has advantages and disadvantages, and should be weighed carefully against the other alternatives. This will help determine which model to implement, as well as determine which kind of provider to select. The advantages of outsourcing are attainable, but proper planning and strategy are critical to attaining this value.

About the Author

A.B. Maynard has over twenty years of technology, industry, management consulting, and application software experience. He is an experienced executive with leadership experience in the software industry, Big 4 Consulting, and Fortune 1000 industrial companies where he gained extensive experience in outsourcing, IT services, enterprise software solutions, and performance metrics.

A.B. has recently led projects to select offshore outsourcing providers, negotiate outsourcing contracts, implement outsourcing relationships, establish and run program management offices, define and implement metrics, and drive continuous improvement projects. He has also developed marketing programs and go-to-market strategies for consulting and outsourcing providers. He serves as the outsourcing specialist for Technology Evaluation Centers, and is president of Agilocity Consulting, a firm dedicated to helping companies improve their performance and profitability through the intelligent use of strategy, technology, outsourcing, and offshoring.

A.B. has a Master of Business Administration from Villanova University, a Bachelor of Industrial Engineering from Georgia Tech, and is CPIM certified by APICS.

He can be reached at

comments powered by Disqus