With
U.S.
enterprises increasingly looking to offshore talent to reduce costs, the American programmer has become, in bottom-line speak,
a “fungible asset.”
As the globalization of software development unfolds all around us, it's clear that dollars-per-line-of-code is but one of
the equation's variables. Other factors influencing this view include time to market, the speed with which project teams and
resources can be assembled, and the rate at which tools and techniques can be transferred between offshore outfits and U.S
and European companies. The
Hollywood industry provides a clue about the framework needed to support global software development. In its 1995 story “Why every
business will be like show business,” Inc. stated that the film industry — which assembles on-demand teams that work to achieve predictable results under time and budget
pressure — defines an organization model that will be co-opted by other industries in the future.
But another model exists that is more directly relevant to software development: the open-source movement.
“It’s no accident that all significant open-source projects are global,” says Andy Singleton, founder of Needham, Mass.-based
Assembla (see "Dynamic foresight of tomorrow's development methods"). “That thought should be stuck in the mind of anyone who wants to produce world-class software.”
It’s tempting to believe global outsourcing is as simple as “specs in, widgets out,” jokes Brian Behlendorf, co-founder of Brisbane, Calif.-based CollabNet — an ASP that supports distributed software development — and co-founder of the Apache Software Foundation. Behlendorf points out, however, that in reality things never work that way. “Those specs and widgets are embedded in a complex and subtle
framework of collaboration.”
Leadership and methodologies
When speaking with offshore outsourcers, often the first topic discussed is formal process. Many are avid students and experienced
practitioners of software methodologies such as RUP (Rational Unified Process) and CMMI (Capability Maturity Model Integration).
These methods have been “adapted” to the reality of transnational and cross-cultural collaboration. Such adaptation is crucial.
Princeton, N.J.-based outsourcer EPAM connects teams of developers in
Moscow
and
Minsk,
Russia
, with enterprise-class clients such as Colgate, Haliburton, and CareFirst. When clients lack a well-developed project-management infrastructure, EPAM can provide it. But when clients bring their
own infrastructure to the table, the outsourcer will adapt. “Maybe you’re using [software management toolset] Rational ClearCase, but you haven’t implemented all of it,” hypothesizes Max Bogretsov, EPAM’s director of professional services. In that case, EPAM will supply only the missing ingredients you need.
Equally flexible is offshore outsourcer Virtusa, according to Virtusa client Glen Snyder, vice president of engineering at Natick, Mass.-based edocs. “We didn’t want to learn [Virtusa’s] methodology,” Snyder says. His internal development team’s eclectic style is an evolving mix of RUP and elements of XP (extreme
programming), which Virtusa was willing to accommodate. XP relies heavily on proactive unit testing and advocates pair programming — that is, teams of
two working shoulder to shoulder on development, code review, and testing.
Those practices have been adapted by Virtusa to take advantage of the around-the-clock cycle of distributed development, says AshokSuppiah, senior vice president of R&D at Virtusa, which has offices in Westborough, Mass., and Sri Lanka. “While
Asia is sleeping, developers in the client facility can review code or run integration tests, and vice versa,” he says.
Companies such as EPAM and Virtusa have never thrown bodies at Y2K remediation or maintenance of COBOL software. Instead they equip teams with the best tools,
train them to use and refine best practices in multiple disciplines, and deploy them in engagements that are, for their clients,
highly strategic.
“We want to focus on what we do best: generating the IP [intellectual property],” says Bill Baggott, vice president of outsourcing at Pegasystems in
Cambridge,
Mass.
, and another Virtusa client. In Pegasystems’ case, that IP is a rules engine — the PegaRules Process Commander — which, through four iterations during the past 20 years, Pegasystems has developed into a smart BPM (business process management) platform used mainly by the health care industry. Pegasystems’ product isn’t really software; it is BPM delivered in the form of software built in collaboration with Virtusa.