![]() |
home | about Q/P | contact us | ||
![]() |
|||||
| article | ||||
![]() |
Scott Goldfarb and Roger Heller As companies attempt to focus on core competencies many are considering outsourcing various aspects of their in-house operations. The driving force behind this decision is typically cost reduction and organizational restructuring. In the Information Systems organization outsourcing can range from buying a software package to outsourcing all software development, support and data center operations. This article will explore the various aspects of how to establish a winning approach to outsourcing all of software development and support. Future articles will address the specific requirements for outsourcing software projects and packages. Background Companies who have ventured into outsourcing arrangements have had both positive and negative experiences. The outcome often depends on how the original contract is structured, how the customer/ vendor relationship is managed and how the end results are measured. If done correctly, outsourcing can be a win-win situation for both the customer and the outsourcer. A key component to a successful outsourcing relationship is the ability to communicate and document performance results using meaningful business oriented metrics. Unlike the other business functions, metrics for software outsourcing contracts have been difficult to document and quantify. Leading edge companies who are pursuing and offering outsourcing arrangements are taking aggressive steps to remove the ambiguity from software outsourcing contracts. These organizations are utilizing software metrics based on function points, defects, problems and effort to document performance. The resulting metrics provide the basis for contract negotiations, monitoring results and payment. Making the Decision Making the decision to outsource software functions is difficult and is often based on frustration rather than facts. The decision should be based on a solid understanding of departmental performance. Software metrics should be utilized to establish a baseline of productivity, quality and the costs associated with providing these services in-house. When analyzed against industry norms the results may be positive. In addition, the baseline may uncover process improvement opportunities to eliminate the frustrations. On the other hand, the analysis may result in the realization that outsourcing is a viable alternative. Having quantifiable baseline data allows a company to enter into an outsourcing venture knowing the objectives they want to achieve, the anticipated benefits and the metrics required to measure and manage the contract. Establishing the Baseline For a total outsourcing contract a broad reaching quality and productivity baseline is preferred. This will ensure that the contract basis is a fair representation of the customer's historical performance. Developing the baseline requires a structured approach. The first step is to determine its composition. The baseline composition should be a representative sample of the customer's environment. The sample should consider baseline time frames, project/application size, technology and project type (i.e. maintenance, enhancement and new development). The next step is to collect the baseline data. The data collected for the baseline should include: function points; financial and level of effort data; project attributes; problems and defects; and user satisfaction. The analysis of this data will provide valuable information to both parties including: productivity rates; quality statistics; maintenance requirements; and improvement opportunities. Baseline results vary significantly across organizations. This is due to technology, culture, history and skill base which dictate performance and drive the baseline. Some companies have attempted to use "standard" quality and productivity rates to establish outsourcing contracts. The use of these standard rates should be approached with great caution since they have proven to be inappropriate on a number of outsourcing arrangements. Managing the Customer/Vendor Relationship In order to maintain a healthy Customer/Vendor relationship an ongoing process needs to be established. The process should provide assurances to the customer that they are receiving the appropriate products and services as contracted from the vendor. From the vendor's perspective, the process should help manage quality, productivity and costs which are critical to the success of the relationship. In total, processes are required to track performance, communicate status and document results. The first process to be addressed is the Systems Development Methodology (SDM). Use of the vendor's methodology versus the customer's must be decided. Great care must be taken in making this decision to ensure that the method used will fit the current development environment and allow for future maintenance. When outsourcing the complete development function the vendor usually prefers to use their own methods and techniques. In the event that the customer requires the vendor to use an in-house methodology they must realize that the use of unfamiliar techniques may have a negative impact on quality and productivity and, as a result, the ongoing relationship. Typically, modifications to the selected methodology are often necessary to satisfy the needs of both parties. The second process to be considered is Project Management. A large majority of the work associated with outsourcing arrangements are project based. Standard project management techniques often require modifications due to the addition of the outsourcing organization. Changes may include: tighter control over project deliverables; formal budget/schedule variance analysis; well documented Customer/Vendor roles and responsibilities; and a change control process that quantifies impact on time and cost. The next area requiring attention is the Accounting/Budgeting process. Most software accounting processes in use today were not designed with outsourcing in mind. As a result a companies' entire software accounting process may have to be revamped for outsourcing. The accuracy of the time accounting often requires improvement as well as the incorporation of quality and productivity measures. A number of organizations are pushing this concept further by redesigning their processes to use function points as the basis for budgeting software services by business area. Lastly, Software Measurement is required to effectively manage the Customer/Vendor relationship and ultimately measure success. As previously discussed, measurement will help identify the need for outsourcing and is often the basis for contract payment. Measurement should also be the primary tool for evaluating the quality of deliverables, quantifying changes in scope and identifying process improvements. Used properly, measurement can become the most effective communications tool available to customers and vendors. It is important to recognize that establishing the processes discussed takes time. Many organizations require a full year to implement these ongoing processes. Time is required to develop the processes, train personnel and integrate the techniques into the daily software development and support activities. In addition, management will need to monitor, modify and mandate as appropriate. Validating the Results The use of software metrics in outsourcing contracts will eliminate much of the up-front ambiguity. However, there is still the need to validate the performance of the vendor against the agreement. Critical to this process is the ongoing validation and auditing of performance data. The performance validation should be approached with the same level of control and discipline a company follows to close its books, audit its results and produce its annual report. Using a cohesive approach, actual performance and variances should be documented along with specific recommendations designed to improve adherence to contract requirements. A number of companies have found that this is best accomplished by a mutually agreed upon, unbiased, third party. The third party will provide many services including: performance validation, function point rule interpretation, conflict resolution and performance comparisons to industry benchmarks. This level of commitment helps ensure contract compliance and promotes the use and acceptance of software metrics as a critical component of outsourcing. Summary Outsourcing can result in significant benefits for both customer and vendor. A winning approach needs to be followed to help ensure a successful relationship. The approach begins with a baseline to fully understand the current environment and develop a fair contract with the vendor. Next, management processes need to be reviewed and modified to help manage the Customer/Vendor relationship. Lastly, the use of metrics and auditing the results is necessary to manage vendor performance and the ongoing relationship. About the authors Scott Goldfarb, President and Roger Heller, Vice President, Q/P Management Group, Inc wrote this article. If you found this article valuable and would like to respond or request more information please click here and in the subject line indicate 'Outsource'. © Copyright, 2000-2001. Q/P Management Group, Inc. Proprietary and Confidential. All Rights Reserved. |
|||