|
Where the Buzz Is
Web services, open source and agile development are top of mind in development
In the world of application development, three approaches these days are generating all the buzz: Web services, open source and agile development. These aren't mutually exclusive -- you can engage in agile processes and still use open source software to build a product. Here is more detail on each.
1. Web Services
Web services has become the hottest aspect of application development today as companies look to develop applications with this XML-based tool set. Nearly half the respondents in a CIO Decisions survey reported using them.
If programs are seen as buildings, Web services are the hammers and nails used to build them. Organizations most commonly use XML for three types of operations: Remote Procedure Calls (RPC), Representational State Transfer (REST) and service-oriented architecture (SOA). The most prevalent of these is SOA, where the basic unit of communication is a single message. According to Jeffrey Hammond, senior analyst at Forrester Research, this type of Web service is both flexible and easy to use.
SOA comprises loosely coupled and transparent services that speed delivery of software by leveraging reusable services. Organizations embracing the architecture can make changes to services one at a time, which minimizes disruption. Other benefits: increased quality through independent testing and verification; ability to integrate disparate programs more easily through open standards and technology; and reduced cost and risk through leveraging existing transport protocols and Internet infrastructure.
Of course, this flexibility also can be a negative. Security is always an issue, with hackers finding holes in even the most seemingly bulletproof apps. Performance can be a problem, too, as XML-dependent services and loosely coupled architecture are not built for speed.
"[SOA] is traditionally a text-based, metadata-loaded document format, which makes it incredibly inefficient from a network, processor and storage performance perspective," says Ron Schmelzer, senior analyst at Waltham, Mass.-based ZapThink.
There are ways to address the performance issues, though. Schmelzer says there are three approaches: using specialized hardware accelerators, an optimized software and compression approach, or binary XML to replace the unparsed, text-based XML.
');
// -->
|