Chapter 33

On-Site/Offshore Model

Outsourcing emerged as a major concept in the twentieth century, when a number of manufacturing products were outsourced to China and Japan. The offshore outsourcing model can provide exceptional value to clients. Increased efficiency and cost advantage are the two basic elements that made the outsourcing approach popular. When the IT boom evaporated and companies were forced to maintain their profit line, they often outsourced the development, testing, and maintenance to Asian countries such as India, China, and others. This chapter analyzes the important elements of outsourcing with special reference to testing and the advantages and issues involved.

Project management, according to the American Society for Quality (ASQ), is the application of knowledge, skills, tools, and techniques to meet the requirements of a project. Project management knowledge and practices are best described as a set of processes. A critical project process is software testing. The following section describes the implementation considerations for managing this endeavor.

The objectives of this section are to:

Describe basic project management principles.

Contrast general project management and test management.

Describe how to effectively estimate testing projects.

Describe the defect management subprocess.

Discuss the advantages and disadvantages of the offshore and onshore models.

List the steps for integrating the testing activity into the development methodology.

Step 1: Analysis

Corporate management should evaluate the outsourcing option. It should not be chosen as a matter of routine. A committee should carefully study the following aspects and submit a report to senior management to make a decision on outsourcing.

Some questions that need to be answered include the following:

  1. ■ Could the products, development, testing, or maintenance be outsourced?

  2. ■ What part of the project can be outsourced?

  3. ■ What experiences have other companies had with outsourcing?

  4. ■ Are there options available for the line of product in the market?

  5. ■ What are the short-term versus long-term business processes to outsource?

  6. ■ Are the requirements defined beforehand?

  7. ■ Are there frequent changes in the business process outsourcing project?

  8. ■ Does the client’s location have the extra capacity it needs?

Management should analyze the report and only if the product could be successfully outsourced with substantial benefits to the company should the decision to outsource be taken.

Step 2: Determine the Economic Trade-Offs

Once management has decided to outsource the product, then the cost—benefit analysis should be done. This can be performed in two ways:

  1. The advantages of outsourcing in terms of cost within the same geographical location

  2. The advantages of outsourcing among the various competitive outsourcing clients available

Corporate management should not be carried away by the cost—benefit studies projected by the outsourcing vendors (see the Vendor Evaluation Excel spreadsheet on the CD accompanying this book). These studies have been prepared with the primary objective of capturing new business and have not taken into consideration various recurring and unexpected project costs that normally form part of any project operation. Eighty percent cost saving may land a company in the hands of a vendor that is not going to deliver a quality product within the schedule. Normally, studies show that around 40 to 50 percent benefits accrue to outsourcing firms in terms of cost. Any projections above this industry average are questionable.

Step 3: Determine the Selection Criteria

Outsourcing projects have become catastrophic to many firms in the United States for the simple reason that the selection process adopted by them is wrong.

  1. Geographical location: The location of the outsourcing country is a primary factor in selecting the outsourcing partner. Countries such as India and China get more outsourcing projects owing to their geographical locations, because the 24/7 work environment can be ensured in these locations. When U.S. companies start their operations in the morning, already two rounds of shifts have been completed for the requirement sent to these locations the previous day. The project management group often finds it very difficult to evaluate the output received as the day begins.

  2. Optimum utilization: Maximum usage of the previous hardware resources can be done if the work is carried out 24/7 in different locations. Because the globe is interconnected by IPLC and VPN, the load to the server can be distributed across locations and maximum utilization of the servers can be ensured.

  3. Quality deliverables: The quality of the deliverables from the vendor should be evaluated with respect to compliance with the company’s quality standards and with respect to international quality standards.

Project Management and Monitoring

The success of the on-site/offshore model depends on the effective project management practices adopted by the companies. Several companies that began experimenting with this model have backtracked. Unless clear project management practices defining the role and responsibilities for the on-site/offshore team are established, this model is bound to face several obstacles in delivering the expected cost advantages.

Outsourcing Methodology

Having decided to outsource, the outsourcing methodology should clearly define what to outsource, and what cannot be outsourced. Potential activities that can be outsourced are shown in Figure 33.1. Of course, the activities depend heavily on (1) completeness of the requirements, (2) effectiveness of communication, (3) whether the project supports operating effectiveness or strategy, and (4) the existence of well-defined project management, quality assurance, and development.

Operational effectiveness is concerned with working cheaper or faster. Strategy is about the creation of a long-term competitive advantage for the business. An application development that is strategic and has multiple spiral iterations should not outsource the entire development and quality assurance activities. An application development project with well-defined requirements and that will not have a major effect on the operations of the business is a candidate for offshoring.

Images

Figure 33.1   Onshore versus offshore activities.

On-Site Activities

  1. ■ The initial feasibility study to decide whether the particular development/testing/maintenance can be outsourced should be decided by the corporation. This part of the activity cannot be outsourced for obvious reasons. As indicated, this study will result in a cost—benefit analysis and the advantages and disadvantages of outsourcing.

  2. ■ When a decision has been made to outsource a part or whole process, a requirements analysis should be conducted to decide the portion of the business process that is to be outsourced. These requirements should be clearly documented so that there is no communication gap between the management and the vendor on the deliveries and expectations.

  3. ■ The project management process for effectively monitoring and managing the outsourced projects should be established. The roles and responsibilities of the on-site coordinator and offshore team should be clearly documented. This should be decided by the management and should be signed off by both senior management and the vendor.

  4. ■ The acceptance criteria for the outsourced projects should be clearly documented. The acceptance test should be conducted by the corporation by involving the actual end users or business analysts. Proper guidelines and checklists should be created for the acceptance criteria.

  5. ■ The business implementation should be done by the corporate office as this cannot be outsourced.

Offshore Activities

The following are potential activities that could be outsourced:

  1. Development—Outsourcing a software development process is the major activity that has been stabilized across the globe. A number of software companies have emerged in regions such as India, China, and Southeast Asia, which lend effective support to businesses in the United Kingdom and the United States in the development of software code. These companies accredit themselves with the international standards such as CMM, ISO, and other international auditing standards, and a clear process is established for verifying the deliverables.

  2. High-level and detailed design—With the English-speaking knowledge gained by these countries and the globe shrinking with networks, in addition to software development, other related activities such as high-level design and system design could be transferred offshore.

  3. System testing—With global connectivity made simple and inexpensive, many of the testing activities can be outsourced. Because system design and development happen in the offshore development centers, system testing can be performed offshore. This reduces the cost of hiring additional resources at higher cost or dislocating the business resources from their routines that will indirectly affect business growth.

  4. Quality assurance—Quality assurance and software testing are other important activities that are candidates for outsourcing by U.S. companies. This directly relates to the outsourcing of development and other related activities. Most of these vendors have developed expertise in modern software testing tools, and they execute these automated test scripts from anywhere across the globe.

  5. Support and maintenance—Application maintenance and support (AMS) is another critical activity that is extended to the long-term outsourcing of maintenance and support of the critical applications. Many of the call centers for critical applications of organizations such as U.K. Railways and major telecom companies have already been moved to countries such as India.

  6. Follow-up activities—Any other documentation work pertaining to software development, design development, or quality assurance can easily be outsourced by the standards for the deliverables. With the development of the Internet, tools such as Placeware, and even training, can be outsourced to remote locations.

Implementing the On-Site/Offshore Model

Once it has been decided to outsource after the initial analysis phase, the outsourcing should be managed in a phased manner. Phasing should not affect the existing business activities of the company. The following five phases define the process.

Knowledge Transfer

In this phase, the offshore core team visits the client site to understand the application that is to be outsourced. These technical and business resources communicate with the existing client resources and internalize the functional, technical, and operational aspects of the applications. Normally, a client coordinator is nominated to plan, act as liaison, monitor, and evaluate knowledge transfer sessions with active participation. The offshore team makes a reverse presentation of its understanding of the system so that the client coordinator is convinced of its knowledge acquisition. This team will prepare training and other documentation to be passed on to the rest of the offshore team.

This team will consist of identified process experts from the outsourced company who will document the processes followed at the client location. These processes will be integrated or aligned with the vendor’s process so that the client deliverables will pass any audit requirements.

Detailed Design

Once the initial knowledge acquisition phase is complete, the technical team will prepare a detailed design for the hardware, software, and connectivity requirements, which are to be in place to start the operations from the remote locations. The technical team from the client side will authenticate this design. Once the technical details are approved, the infrastructure team at the remote location will start to put the environment in place. The client’s server and applications will be connected and a sanity test will be performed for verification.

The business analyst team will prepare a migration plan for migrating the planned activities such as development, testing, design, or maintenance in a phased manner.

Milestone-Based Transfer

The on-site/offshore transition process provides a framework to shift the responsibility of development, testing, design, support, and maintenance from on-site to offshore with a step-by-step methodology, without affecting the normal business of the client. Key milestones for smooth transfer are the following:

  1. ■ Establish the environment at the offshore location.

  2. ■ Train the offshore resources.

  3. ■ Plan the move of the identified activities in a phased manner.

  4. ■ Obtain offshore stability.

Steady State

Over a period of time the offshore environment will be stabilized and the deliverables will start flowing to the on-site location with the anticipation of improved quality and less cost. This is a critical period, during which the on-site project management activities should focus on meticulously reviewing the deliverables, making conference calls to clarify issues with the offshore team, and other related activities. Once this steady state is achieved, the model has been established.

Application Management

Once the design, development, and testing are completed and the product has gone live, further enhancements will be required (new requirements arising out of business necessity will require changes in the code) and ongoing maintenance will be needed. Moreover, during the normal business cycle, jobs such as data backup and purging the data can be outsourced. As the vendor companies have specialized in the business domain, they will be in a better position to offer these services on a long-term basis at low cost.

Ideally, 20 to 30 percent of work is done on-site and 70 to 80 percent is outsourced offshore, depending on the criticality of the project. Usually, requirements analysis, development of detailed specifications, critical support, and implementation are performed on-site, and development and testing are outsourced offshore.

Prerequisites

The following are the important prerequisites for an effective on-site/offshore model to deliver the desired results.

Relationship Model

The relationship model should be established for a successful on-site/offshore model. Figure 33.2 shows a higher-level relationship model. The roles and responsibilities of the project manager at the on-site client, on-site vendor coordinator, and the offshore team should be clearly established.

Images

Figure 33.2   Relationship model.

Some of the generic responsibilities of the on-site client team are the following:

  1. ■ Initiate and participate in all status conference calls.

  2. ■ Coordinate and provide information on testing requirements.

  3. ■ Provide clarifications and other required data to the offshore team.

  4. ■ Review offshore test deliverables and sign off on the quality of deliverables.

  5. ■ Single point of contact with offshore project manager in obtaining clarifications raised and in obtaining approvals on the test deliverables from the respective on-site departments and divisions.

  6. ■ Establish and maintain optimal turnaround time for clarifications and deliverables.

  7. ■ Approve timesheets.

  8. ■ Finalize timelines/schedule for test projects in consultation with offshore project manager.

  9. ■ Prepare and publish daily status of all test requests outstanding to all parties.

  10. ■ Proactively inform requests or any other changes that will affect the deliverables of the offshore team.

The following are some of the generic responsibilities of the on-site client team:

  1. ■ A single point of contact for the offshore team in interacting with the on-site coordinator should be identified.

  2. ■ The time and methodology for the daily/weekly/monthly status review calls should be decided, and the participants in these various calls should be decided at the various stakeholders’ levels.

  3. ■ Overall project management activities and the review process should be defined.

  4. ■ A weekly/monthly status report format and contents should be decided.

  5. ■ Prepare and publish daily progress through status report.

  6. ■ Follow up with on-site coordinator in getting clarifications for issues raised by development/test team engineers.

  7. ■ Support and review process for all project-related test documents and deliverables prepared by development and test team engineers.

  8. ■ Allocate test projects to offshore test engineers.

  9. ■ Identify resources for ramp-up and ramp-down depending on the project requirements at the various phases of the project.

  10. ■ Prepare a project plan and strategy document.

  11. ■ Convey project-related issues proactively to on-site coordinator.

  12. ■ Responsibility for the quality of the deliverables should be explicitly declared.

  13. ■ Responsibility for project tracking and project control should be decided.

  14. ■ Conduct daily and weekly team meetings.

  15. ■ Collect timesheets and submit them to on-site coordinator.

  16. ■ Finalize timelines/schedule for test projects in consultation with on-site coordinator.

Standards

Several companies that have experimented with on-site/offshore models to minimize their costs ended up in failure primarily because of the incompatibility between the sourced and vendor companies on the technical standards and guidelines. Although the companies are CMM compliant and ISO certified, there are vast differences in the standards adopted between them for the same source code or testing methodology.

The standards of the vendor companies should be evaluated and synchronized with the standards and guidelines of the outsourced company. The development standards, testing methodology, test automation standards, documentation standards, and training scope should be clearly defined in advance. Apart from the foregoing, the following should also be taken into consideration:

  1. ■ Request for proposals (RFP) procedures

  2. ■ Change request procedures

  3. ■ Configuration management

  4. ■ Tools

  5. ■ Acceptance criteria

The acceptance criterion is another critical factor that should be defined with the help of the end users who are going to ultimately use the system. If the standards and deliverables are not acceptable to them, the project is going to fail in the implementation phase.

Images

Figure 33.3   Example cost–benefit case study: cost–benefit analysis between on-site and offshore models.

Benefits of On-Site/Offshore Methodology

The ultimate advantages of this model are the savings in time, money, and communication. The case study described in Figure 33.3 demonstrates the ideal usage of the offshore model and describes the approximate benefit that companies may reap with the onshore/offshore model. The statistics may vary from 80 to 40 percent.

In the case study, the XYZ Company will have the following parameters to evaluate in this analysis (critical success factors are noted in parameters 10 to 13):

  1. The number of resources required—five.

  2. The schedule for the project is assumed to be 6 months.

  3. The cost of on-site existing resources is assumed to be $80 per hour.

  4. Eight hours per day and 22 days per month are considered.

  5. Offshore resources are considered at the cost of $150 per day.

  6. Initial knowledge transfer is assumed for 2 weeks at nominal cost.

  7. Project management cost is estimated at 30 percent of the resource cost.

  8. Initial environment establishment cost and subsequent maintenance cost are assumed nominally.

  9. A percentage of recurring administrative cost included.

  10. The requirements have undergone complete reviews and sign-offs by the stakeholders.

  11. Communication has been established by the project manager and is excellent.

  12. The project is nonstrategic to the business.

  13. Complete standards have been established and documented.

Although it can be quite difficult to satisfy the expected demand for IT resources in Western countries, it is a completely different scenario in countries such as China and India, where there are many available programmers with good academic backgrounds. These vendor companies typically possess an extensive, highly specialized knowledge base.

Another advantage is that we can engage these resources only for required times, not on a continuous basis. This has the potential of substantially saving the cost for the company.

Owing to the geographic location advantage of these regions, 24/7 service can be achieved from these vendors. The service requests that are sent at the end of the day in the United States are delivered at the beginning of the next working day.

Most of these outsourcing companies are CMM level 5 with ISO certification, with established processes and procedures that enhance the quality of deliverables.

The onshore/offshore model can enable the organizations to concentrate on their core business, carry out business reengineering, and provide information that is valid, timely, and adequate to assist decision making at the top management level as well as quality and cost control at the middle and lower levels.

On-Site/Offshore Model Challenges

The following are the key challenges:

Out of Sight

The offshore team being out of sight intensifies the fear of loss of control for the on-site project managers. This can be overcome by visiting the stakeholders and vendors’ facilities offshore to gain confidence. Second, the established processes, methodologies, and tools, which are industry standard due to CMM and ISO and IEEE standards, will provide additional confidence.

Establish Transparency

The vendors should provide the clients with complete transparency and allow them to actively participate in recruiting offshore resources and utilizing their own resources on-site, as they deem appropriate.

Security Considerations

The security considerations on the secrecy of the data can be overcome by a dedicated network set up exclusively for the client.

Project Monitoring

The failure of established project management practices can be attended to by tailoring the project management practices to suit the requirements of the clients.

Management Overhead

When the overall cost benefit is evaluated, the management overhead is additional, and expenses using this model can be substantial.

Cultural Differences

Although fluency in the English language is considered an advantage for outsourcing most of the projects from Europe and the United States, the cultural differences can create difficulties. However, individuals tend to adapt to the different cultural environment very quickly.

Software Licensing

This is another problem relating to global licensing or regional restrictions on the use of software licenses that needs to be dealt with on a case-to-case basis.

Future of the Onshore/Offshore Model

Several companies have attempted and are attempting to incorporate the onshore/offshore model to reduce IT costs. Although the cost savings are clear, the quality of the offshore deliverables depends heavily on the clear onshore project management practices and standards. Even though there is a 24/7 work paradigm because of the overlap in global time differences, communication and cultural adjustments are critical success factors.

However, offshoring is a mistake when technology companies confuse operating effectiveness and strategy. Operational effectiveness is concerned with working cheaper or faster. Strategy is about the creation of a long-term competitive advantage, which for technology companies is usually the ability to create innovative software.

Outsourcing developers and quality assurance testing is feasible when the software developed is not a key part of the pipeline of innovation for products a company actually sells. For example, when Web site design or back-office software such as accounts payable or inventory control is outsourced, that can be an effective approach because it improves operational effectiveness. However, writing and testing innovative software are skills that cannot be produced on an assembly line. It requires hard-to-find development, design, and testing skills. Farming out development efforts overseas will not create a competitive advantage. When a technology company outsources a majority of its software development, that company may lose its capacity to be innovative and grow its competitive edge.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset