More Resources

Getting the SOA equation right.


by Magid, Daniel
Software World • Nov, 2007 • VIEWPOINT

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.


1  2  
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.


Browse by Journal Name:
Today on Entrepreneur
Related Video

e-Business & Technology
Franchise News
Business Book Sampler
Starting a Business
Sales & Marketing
Growing a Business
E-mail*:
Zip Code*: