Outsourced Product Development

Size: px
Start display at page:

Download "Outsourced Product Development"

Transcription

1 Outsourced Product Development - An Overview

2 2 ABSTRACT: Outsourced Product Development is a rapidly emerging niche as more product companies consider outsourcing their product engineering work. By partnering with an OPD firm, Independent Software Vendors are able to pay more attention to market analysis, planning, launching and marketing of products. This white paper examines the reasons behind outsourcing product development, elaborates on its benefits and the other aspects to be considered when outsourcing product development.

3 3 Introduction Outsourcing 'non core' activities to gain economic advantage has become an essential component of any successful business strategy. However, as an industry matures, what constitutes its 'core activity' undergoes change. For instance, manufacturing was once considered the core competence of many established industries, from automobiles to footwear. Today, organizations have realized that manufacturing does not enable them to differentiate themselves in the market place, and therefore, manufacturing is widely outsourced. Similarly, software product development is considered the core competence of many Independent Software Vendors. However, the global competitive market has changed that core expertise from product development to product management. While the mindset that product development is not the core competence of product companies goes against currently established norms, it is becoming the trend today, and is followed by many successful product companies. This white paper examines the reasons behind outsourcing product development, and elaborates on its benefits and the other aspects to be considered when outsourcing product development. What is Outsourced Product Development? OPD, as the name implies, is the outsourcing of specific activities or all activities related to the development and maintenance of a product. OPD enables product companies to tap the productbuilding expertise and global talent pools available with OPD providers. While outsourcing product development may seem conceptually similar to the outsourcing of software applications development, there are significant differences. These differences are primarily in the areas of skill-sets, standards and execution expertise required for product development. Detailing the differences between product and applications development is a topic that requires an independent discussion, but we shall attempt here, to put in perspective, the primary differentiators. The major differentiating factors of OPD can be classified into: A. Technology related An application is "custom-built" for a single organization or set of users, but a product is generic" and is built to cater to the demands of a wide variety of users. However, each user needs to be able to use the

4 4 product in a way that suits him/her. Hence, a product must be customizable, scalable, robust, well architected, and must have a solid framework on which one can improve and build new features. In the generic IT services business, it is enough if the functionality requirements of software are met. This is not at all the case when building products. A software product goes through several iterations and lifecycles and as a result, many versions exist. A software product is also likely to be in many languages and with various customizations. During the course of time, several versions may start to co-exist, with different customized pieces in different installations coming together. If the under-the-hood engineering of the software is not strong enough, maintenance of the various versions of the product could turn out to be a nightmare. B. People related Building a "well-engineered" product requires a much higher level of skills than what it takes to build an application. Typically, those who need application development services, review and test the screens of the application, and that generally suffices for them to know whether the application works or not. Whereas, product customers look into the code base, to see how it meets the attributes of scalability, robustness, customizability and architecture adherence. Hence, the engineers working on product development need to have a much higher order of skills. C. Process related Again, in a generic application model, good documentation, proper configuration management, strict adherence to the design, architecture and coding standards are important, but not mandatory. In software product development, this discipline is "mission-critical", to say the least. How else can a software product be built as multiple modular versions, to address different needs of the market, lend itself to customization, or scale between a 10 user and a user base? Why Outsource Product Development? With the software market becoming more competitive and mature, product companies are under immense pressure to periodically release new versions of existing products. In a global competitive market, ISV's efforts to achieve better time- to-market is challenged by Shorter product life cycles Technological obsolescence Rapid advances in design and engineering technologies Increasing design and engineering complexity

5 5 Necessary infrastructure changes required with new technology to product development Moreover, product development is an intensive activity that requires a lot of attention. If the management's attention is spent on the routine aspects of product development, then market analysis and marketing activities that directly impact the success of the company will not get top priority. In the long run, this will have a direct impact on the profitability of the company. If a product company is able to crash its product roadmap and release new versions earlier than planned, it could gain significantly in terms of market share and revenues. However, budgets for product development are fixed and resources are finite. So, the only way ISVs can crash their product roadmap and generate quick and improved versions of their products is to outsource product development activities to an OPD provider. By outsourcing product development, companies are able to Acquire expertise Build additional resources Make faster and more frequent releases Minimize development costs, and above all Boost up their bottom line by focusing on new competencies How to begin outsourcing product development? Product development is still viewed as a core competence of ISVs, and any effort at outsourcing this activity is likely to face some resistance. Moreover, questions relating to IP security are inevitable during any outsourcing discussions or decisions. Consequently, a step-by-step approach is the bestrecommended course of action to begin outsourcing product development. Peripheral Development Co-Development OPD - EMERGING MODELS Modular Development Full fledged Development There are many activities involved in a typical product lifecycle, including product development, product reengineering and migration, product maintenance, product implementation, and product testing. A product company can outsource one or more of these activities to start with or it can outsource the entire gamut of activities at once. Larger product companies are recommended to begin with outsourcing just one or two of these activities. Once they feel confident with the delivery capabilities of their OPD partner, they can outsource the other activities.

6 6 Startup companies, on the other hand, will be more open to outsourcing all the above activities, so that they can focus their energies on defining and marketing the product, as opposed to building an engineering team. Emerging Models of Product Development Peripheral Development: In this model, ISVs outsource certain activities of the product lifecycle, such as testing, documentation or product implementation, but not the core development activity itself. This helps ISVs gain comfort with the OPD provider's capabilities and also educates the provider on the specialized domain knowledge related to the product. One key advantage of this model is that the source code of the product does not have to be shared to begin working together. Modular Development: Here, companies outsource the development of bits and pieces of the product, which are primarily considered non-core. Product integration skills becomes the key for both client and service provider in this model of development. CO-Development: A model whereby both ISVs as well as the service provider's team work in an onsite-offshore manner to develop the product. This helps the client develop trust in the service provider's capabilities. Full Fledged Development: The service provider takes complete responsibility for product development. The idea /product knowledge alone is gained from the ISV and the service provider does the end-to-end product development and delivers the project/product. Case Studies The following case studies illustrate how product companies at different levels are moving up the value curve by tapping the OPD model. Case Study - I An e-procurement software provider for the pharmaceutical and higher education markets wanted to find ways to speed up their product development efforts. With this objective, they outsourced the creation of one module on a trial basis to an OPD provider.

7 7 When this assignment proved successful, the ISV rapidly ramped up the team with the OPD provider to 20 people, with most of them operating at an offshore location to take advantage of the cost differentials. The ISV's team and the outsourced team worked in a "co-development" model, sharing the development work on the modules that were required for every release. The long-term relationship with the OPD provider has existed for over 3 years and has helped the ISV: Release 3-4 versions of their product every year (on a hosted model) Crash the product roadmap and include features earlier than planned, leading to faster customer acquisition Focus more on product management, as opposed to dealing with the overheads of managing a team Achieve higher R&D productivity for every development dollar spent Case Study - II A startup ISV had a vision to change the way the organic food market operates. Through an innovative software solution, they wanted to increase the reach and reduce the cost of organic food products in the US. As a strategy, the ISV decided to outsource the complete product development effort to an OPD provider and focus on the product vision, product management and customer development. This decision was taken, primarily because the entrepreneur behind this venture, clearly recognized that partnering with a company that already has product development experience, would be a faster and less expensive way to build the product, as opposed to building an engineering team in-house. The product, which has gone through several iterations and beta releases, is currently being scaled up to be used by a large volume of users. It has been developed at a cost of around $500,000, while it would have taken more than four times this amount, if the development had been done fully in-house. The cost-savings achieved was partly due to the ability of the provider to tap low cost development locations. The companies continue to work together on future releases to enhance the core product functionality, while building additional features that can open up new revenue streams. Case Study - III A leading mainframe integration software provider wanted to automate testing of the various drivers they had created. While the drivers had been created over many years by a highly skilled team of mainframe engineers, an adequate testing process was not in place and it took 3 weeks to just do an ad-hoc" round of testing of the drivers in different environments. To solve this problem, the ISV decided to work with an OPD provider, with whom they could potentially scale the relationship into core development as well. The testing engagement, served as an entry point for the OPD provider to understand the technology and also for the ISV to develop a level of comfort with the provider.

8 8 After more than a year of intensive test automation effort with WinRunner, a complete and comprehensive test cycle on the drivers now takes just 2 days. The ISV has started tapping some development services from the OPD provider as well, moving the relationship on to a different level. Summary OPD, as a business model, has gained acceptance as an extended development option for product companies. OPD companies can fill gaps not only in development but also in training, knowledge and resource requirements during times of critical need. They can represent a relatively low-risk, high benefit opportunity for product companies but careful planning and monitoring at all development stages is a must. However, ISVs that see OPD as a short-term cost-cutting opportunity may get disappointed with the results. To derive true business benefits, they must make OPD an integral element of their overall business strategy. Aspire Systems (India) Pvt. Ltd. 1/D-1, SIPCOT IT PARK, Siruseri, Tamil Nadu Tel : Fax: info-india@aspiresys.com