The importance of Service-Oriented Architecture (SOA) is often
overlooked by both IT professionals and business leaders alike. Many
view it as an over-hyped trend, something that can be implemented once
the market reaches maturity or as something not immediately relevant to
their business. Unfortunately these beliefs are misguided.
With analysts regularly stating that SOA is the single most
important IT initiative in the last decade, there is little doubt that
it promises new levels of innovation, sharpened business agility, and
key competitive advantage. A report from Gartner in Spring 2007 stated
that 50 percent of new mission-critical applications and initiatives
during 2007 would be based on SOA. By 2010, this will rise to as much as
80 percent the analyst firm said.
As such, it's critical that IT professionals and CTOs gain a
clear understanding of SOA sooner rather than later if they are to reap
the benefits for their business.
The concept of SOA
It's important to view SOA as an architectural concept, not a
technology. It offers a means for companies to weave applications and
processes together in a flexible manner and reuse them where necessary.
It's often easier to think of it as a software development style
that allows applications to be assembled from reusable components,
instead of being built from scratch.
If you compare coding to building a house, then SOA is the IT
equivalent of putting a pre-fabricated house together and just
connecting up the pre-built pieces. A more technical definition might be
that SOA is a collection of services that communicate with each other
through standard interfaces. The services are self-contained and do not
depend on the context or state of the other services, and they work
within a distributed systems architecture.
In an increasingly complex IT environment, the fear is that SOA
will add a further layer of complexity. In fact, it's just the
opposite--SOA is all about simplifying complexities. Instead of
re-creating every part of a software application from scratch, SOA
enables pre-designed, pre-built, and pre-tested components to be rapidly
assembled into powerful new applications. Application boundaries can be
extended to include functions from anywhere inside or outside the
organisation.
The whole point of SOA is that it simplifies the process of
planning, developing, managing, deploying and sharing automated services
via an open IT architecture. An SOA architecture helps you change
applications so that they respond quickly and efficiently to evolving
business and market requirements.
With the building blocks of an application already in place, SOA
allows application logic to be reused, the creation of standard
processes to link business and IT across an organisation, redundancies
to be eliminated and systems across the entire enterprise to be linked
up and leveraged as needed.
Thanks to interchangeable reusable parts, standard containers and
open interfaces, SOA should actually simplify application development
and maintenance. Any 'complexities' associated with SOA
aren't from SOA itself but are more about changing how we think
about software.
What about web services?
Web services and SOA are not one and the same thing. Even if you
apply object-oriented approaches, you won't end up with the
reusable, autonomous components that lie at the heart of SOA. While web
services specifications have driven SOA development by using SOA to
design distributed, enterprise-wide, market-driven applications,
businesses can expand the use of web services from simple client-based
functions to systems that better harness the functionality of legacy
systems. While web services play a role in SOA, they're just one
bit of the equation.
Contrary to popular belief, implementing SOA doesn't mean
having to throw out legacy systems. SOA actually helps you leverage
existing data and application assets so that you can reuse them rather
than re-create them. Services can be introduced incrementally over
existing legacy applications, preserving your investment while letting
you take advantage of new opportunities.
Waiting for SOA concepts to mature is a false economy. As more and
more companies begin deploying services as the preferred method for
communicating with customers and vendors, the risk rises that
organisations failing to adopt these services will be left behind. In
its predictions for the Top IT trends in 2007, IDC described SOA as
"the foundation for next-generation IT and the business and
consumer services that depend on it."
SCM and SOA: a winning combination
Before embarking on SOA, identify an overall business process for
evaluating, building, testing, deploying, and updating services. Then,
create an IT environment conducive to crafting quality SOA--one that
provides a detailed inventory of resources as well as structured
development processes. This is easy with software configuration and
change management solutions (SCM), which provide visibility and
accessibility to IT resources as well as the process-management
oversight required for proper execution of SOA.
Because services can be described almost entirely by their
metadata, it's imperative to have this complete, detailed, and
accessible inventory so you can find and reuse those key corporate
assets. This structured approach delivered by SCM will help you manage
the services throughout their entire lifecycle rather than only through
the initial development and deployment stage.
Once the processes are in place, you can start thinking about
designing a robust, open solution for defining and enforcing processes
to manage the stored resources.
Services development is not just down to the IT department--it must
be a partnership between IT and end users to ensure there is proper SOA
governance. The building of a services-oriented architecture requires
detailed knowledge of how the business processes work, how they are
used, and who uses them. The most important initial steps for SOA
projects have nothing to do with choosing or deploying software but
rather with establishing a clearly defined plan devised from business
and IT collaboration so that services can be reused across the
enterprise or with outside organisations. Applying this best practice
approach for SOA development is made possible through the SCM solution,
which enables reusability and enforces repeatable, traceable processes
across the development lifecycle.
To make the best use of services, a single point of management and
control is critical.
This is also delivered via the right SCM solution. Companies will
continue to simplify and consolidate their IT environments, and while
this is a good idea in a traditional IT shop, it is essential for
effective SOA development.
SOA challenges
Although SOA can be easy to build and deploy, it also poses
challenges. Effective SOA deployment demands commitment and tenacity.
While it's easy to fall back on the 'quick-and-dirty'
methods of the past when responding to urgent issues, this will backfire
with an SOA-based infrastructure.
Although easy to deploy and with wide reaching potential, a coding
mistake in SOA--like in any other IT endeavour--can wreak havoc on your
business in a short space of time. Because applications are speaking
directly to each other and increasingly performing transactional updates
on their own, an error in an SOA application can extend farther than one
in a more traditional environment.
Businesses must be willing to take responsibility for proper
planning, management and testing. Implementing best practices in design
will ensure that systems are easily adaptable.
The benefits can, however, outweigh the potential pitfalls. SOA
uptake is rising rapidly for very good reasons. This year, IDC reported
that companies worldwide spent nearly $2 billion on total SOA-related
software in 2006 and predicted that spending will increase at an overall
48 per cent five-year compound annual growth rate from 2006 to 2011 to
reach nearly $14 billion in 2011.
You only have to look to the eBays, Amazons, and Googles of the
world, who are already successfully executing SOA projects, to clearly
see the difference between hype and reality. The message to the IT world
couldn't be clearer: SOA is here and now. Dismiss it as over-hyped
and risk fading away like the companies that thought the Web was
over-hyped.
Aldon is a provider of Application Lifecycle Management (ALM)
solutions, bringing the benefits of process-driven application change
management to IT, and accelerating the delivery of mission-critical
business applications.
Daniel Magid, CEO. Aldon Software. www.aldon.com
RELATED ARTICLE: Breach Of Privacy: How Vulnerable Are You?
With the implementation of the WEEE directive now complete in the
UK and the end of the first compliance period approaching--are
businesses actually aware of the dangers of not ethically disposing of
their PC's?
Failure to do so can result in identity theft. With recent horror
stories of bank and address details turning up on computers dumped in
Africa, the last thing companies want to see are their names mentioned
in a watchdog style expose on third world exploitation and data
security. Recent statistics from the Home Office reveal that fraud is
costing the UK nearly two billion a year, while online fraud has
increased by 8000% in the last two years (FSA). Are you doing enough to
ensure you don't fall victim to identity fraud, and safely
disposing of all your assets? Too many people and businesses are
completely unaware of the importance of PC disposal and keeping your
data safe.
COPYRIGHT 2007 A.P. Publications
Ltd. Reproduced with permission of the copyright holder. Further reproduction or distribution is prohibited without permission.
Copyright 2007, Gale Group. All rights
reserved. Gale Group is a Thomson Corporation Company.
NOTE: All illustrations and photos have been removed from this article.