Service-oriented development of applications (SODA) is
the best way to approach globally distributed application
development and maintenance, according to a new report by
Gartner.
The research group says that the principles of service oriented
architectures - assembly and orchestration, loose coupling,
standardisation, use of registries, enterprise service buses and
process-centricity - can bring cost savings and other benefits such
as reduction in errors and increases in the speed of
development.
Research VP, Joseph Feiman, said, One of the reasons to consider
SODA in a global model is that your development partners may
already have artifacts to reuse and assemble. Because SODA is still
evolving, global partners and providers do not yet consistently
have registries of reusable artifacts to employ, however, they
should become commonplace as SODA matures."
An example of the use of SODA in global application development,
according to Feiman, is assembly and orchestration - the bringing
together of many single processes and directing the way they work
as a larger whole.
"This can be done at locations that differ from where the
services were developed, which enables optimal ratios between
quality of skills and the cost of globally distributed skills. For
example, services could be developed at offshore locations with low
labour costs, while the assembly and orchestration could be done at
on-site locations where business expertise is concentrated, thus
balancing cost and skills," says Feiman.
Likewise Feiman takes the concept of loose coupling, where
services are easily and quickly connected or detached to make
larger processes, and applies that to application development, with
small teams working in different locations being assigned tasks
that fit the overarching project.
"It is easier for globally distributed application development
teams to develop loosely coupled services than monolithic
applications. It is also easier to assemble teams and assign work,
as well as track bugs, issues, status and progress. This ease of
use is not related to technology as much as to all the human
factors inherent to a small, localised team environment," he
says.
The study goes on to outline how standardisation, registries,
enterprise service buses and process-centricity can all be
incorporated into a methodology for consistently successful
application development.