"Extrasourcing" is disciplined, strategic and appropriate offshore software development that calls for extended or virtual groups offshore. If it's done right, it can make offshore software development a success in 10 ways. Click here to see the first five. Here are the second five.
- Parallel offshore efforts lead to accelerated release cycles: Since the local software development group is always working only on prototypes of the next release, there is a possibility that multiple release cycles could be planned at the same time. For example, while the local software development group is working on, say, prototyping v3.0, multiple offshore software development groups are working on hardening, testing and fixing bugs in V2.8 and V2.9, in parallel. When these releases are ready, they could be released on a schedule that makes sense to your customers. Time between releases is not dictated by development tasks and schedules, thus compressing release cycles.
- Development continuity: Extrasourcing ensures that the local software development group always has a group of people familiar with the source code of every release. If software development efforts are fully outsourced, knowledge of the code may be only with the vendor, and this may be somewhat disconcerting. If for some reason the offshore vendor relationship does not work out, there will be a local group of software developers familiar with the code.
- Safe and effective knowledge management: One of the biggest concerns companies may have with complete offshore software development is safe and effective knowledge management. With extrasourcing, this concern is somewhat alleviated since core knowledge about requirements, architecture and complex technical designs are always available to the local software development team.
- Intellectual property protection: Extrasourcing enables companies to provide stronger intellectual property protection. Many highly sensitive parts of the software that incorporate intellectual property can be wrapped in an API (Application Programming Interface) -- and only the interfaces provided to the offshore development team for further development. This can ensure that core intellectual property is always protected.
- Alternative sourcing: If a relationship with an offshore software vendor does not work out, extrasourcing will make the switch to another vendor a little easier. Knowledge transfer is less of a problem because the core software development group may have the knowledge to do effective alternative sourcing as opposed to when the whole project is outsourced.
Offshore development promises, has delivered, and continues to deliver a lot of value to those companies that have the knowledge and experience to do it right. Extrasourcing provides a thoughtful effective way to pick the right parts of projects for offshore development, provides a framework for ensuring their success, and safeguards intellectual property and knowledge management.
Nari Kannan is a technical consultant with Iris Software, Inc. in Metuchen, N.J. He also has extensive experience defining and developing products using offshore development resources in India for such companies as FileNet and Inktomi. He can be reached at firstname.lastname@example.org.