Organisations are increasingly reliant on their IT infrastructure to help drive success. But in an increasingly competitive marketplace, capitalising on new business opportunities means moving fast.
However, a lack of integration among IT assets—systems, applications and data—makes it difficult for IT to respond quickly and effectively to changing business needs. Consequently, worker productivity is negatively impacted, and growth and competitiveness are compromised.
At the core of these challenges is the lack of readily accessible, relevant information presented to stakeholders in a coherent, unified manner. They cannot readily share information with one another, and therefore cannot effectively provide insight into business processes that span cross-functional areas.
What is needed is both a standards-based means of integrating diverse systems and applications over a heterogeneous set of platforms and communication protocols, as well as a loosely coupled means of achieving integration so that the underlying infrastructure promotes rather than impedes further change as business needs evolve.
Enter SOA
Service Oriented Architecture (SOA) provides the design framework to integrate siloed applications so that their functionality can be accessed as services on a network. Most commonly implemented through standards-based, technology-neutral Web Services, SOA breaks down monolithic applications into a suite of services, implementing functionality in a modular fashion. It also allows the creation of services and composite applications that exist independent of the underlying technologies.
Web Services is the most common way to implement SOA because it utilises standard transports, encodings, and protocols to exchange information. Moreover, Web Services enable computer systems on any platform to communicate, and are used in a range of application integration scenarios.
Overall benefits of SOA
SOA benefits accrue for the organisation at two different levels, that of the business user and that of the IT organisation. From the business point of view, SOA enables development of a new generation of dynamic applications that address a number of top-level business concerns that are central to grow and competitiveness.
Essentially, SOA solutions promote enhanced business decision-making. People, processes and systems spanning multiple departments can more readily be mapped into a single unified view; therefore organisations can react more quickly to problems as they arise. It also allows for greater employee productivity by providing streamlined access to systems and information and enables stronger connections with customers and suppliers. SOA unlocks critical supply and demand chain processes - by making available dynamic applications and business services to external customers and suppliers, not only is richer collaboration is possible, but customer/partner satisfaction is increased.
From the IT department’s point of view, service orientation provides the framework through which to simplify the creation and management of integrated systems and applications, and a way to align IT assets with the business model and changing business needs.
- More productive, more flexible applications. The service-oriented approach enables IT to make existing IT assets more productive and more profitable to the business without the need for custom-coded one-off integration solutions. It also enables the development of a new generation of composite applications that provide cross-functional capabilities.
- Faster, more cost-effective application development. Standards-based service design enables IT to create a repository of reusable services that can be combined into higher-level services and composite applications. This lowers the cost of solution development and testing, reduces redundancy, and speeds time to business value.
- More manageable and secure applications. Service oriented solutions provide a common infrastructure (and documentation) for developing secure, monitored, and predictable services. And since a strong authentication and authorisation model is used for all services, the SOA approach provides greater overall security.
Overcoming SOA Challenges
What is the business rationale for SOA? I’d like to share a “Real World approach to SOA” which includes a look at some of the tools, technologies, framework and guidance required for building and maintaining SOA solutions, as well as how that enables business users to streamline and optimise business processes in a manner that increases productivity, lowers costs, and promotes organisational agility.
Embarking on an SOA project has its challenges; both at the organisational and technical level, and these challenges will be exacerbated if expectations are that SOA is a cure-all for all ailments. For SOA initiatives to be successful, it is critical to:
- Define clear business goals. The first step in any SOA undertaking is to clearly identify critical business problems or challenges.
- Clearly define the scope of the SOA project. The goal of any given SOA project should not be to massively renovate the entire IT infrastructure or to “SOA Enable” all your services. The real goal of each SOA endeavour is to take on specific business challenges and create solutions in iterative, incremental steps.
- Avoid SOA for the sake of SOA. SOA should not be technology driven—it should be driven by the business needs of organisation.
- Manage the process. Service and applications map to processes and desired business outcomes across functional areas of the organisations. It is critical that ownership be assigned so that they can be inventoried and managed in order to ensure that the needs of the organisations continue to be met.
Realizing a SOA Project: Focus on the Business Drivers
Two approaches are commonly pursued for implementing SOA: top-down and bottom-up. A top-down approach may cause the infrastructure to be out of sync with the business whereas a bottom-up approach can lead to a chaotic implementation of services created without regard to organisational goals. The “middle-out” approach is a successful hybrid of the two. Business drivers and strategic vision are first employed to set clear direction and priorities. Based on these, the organisations take multiple iterative steps to build out slices of end-to-end capabilities.
An Incremental Delivery Approach
Once the business drivers are defined, the process of implementing the technology can begin.
- Expose - The expose phase of the SOA approach focuses on which services to create from the underlying applications and data. The expose phase is also concerned with how the services are implemented.
- Compose - Once services are created, they can be combined into more complex services, applications or cross-functional business processes. Because services exist independently of one another as well as from the underlying IT infrastructure, they can be combined and reused with maximum flexibility.
- Consume - By creating composite applications, you can deliver to the business new dynamic applications. Users can consume the composed service through web portals, rich clients, Office Business Applications (OBA), and mobile devices.
Many big SOA implementation projects have failed to bring the expected benefits, so keep it simple, and do incremental and short cycles. Time-to-value is a critical metric. Get the business benefit as soon as possible and evaluate the return of investment (ROI) before entering the next incremental cycle. Make the necessary adjustments and start the next cycle, because businesses changes and so should your SOA project.
Another drawback of many SOA projects is in the Consumption phase, where they concentrate most of the effort and resources on the Exposure phase and fall short on a crucial part, where the end-user finally gets to access these valuable services to drive the expected business performance. If a poor User Experience is provided to the people that are making the business happened, it is useless to have an “arsenal” of services in the company’s backbone. It’s like having a good phone infrastructure without a telephone device. So provide the best and most productive User Interface to the end-users of your SOA services.
The Technology Stack
Service Oriented Architecture is built into every aspect of the Microsoft technology stack, from the developer tools that build Web Services such as .NET*, to server products (like BizTalk Server, SQL Server and Microsoft Office SharePoint Server) which further Web Service construction by connecting and orchestrating services, and finally to the composite applications that consume Web Services (such as web-based applications available via the Intra-, Extra- or Internet, as well as rich client applications developed with Visual Studio using smart client technologies that can run on either a Desktop Computer or a Mobile Device.
Another interesting way to consume these SOA services is developing system using the Microsoft Office 2007, also known as Office Business Application (OBA). In many cases, one of the most valuable phases of any given Business Process is done in an unstructured way, where users get to collaborate using their day-to-day tools. Having these day-to-day tools integrated into a structured Business Process via SOA will dramatically increase productivity and drive business value.

Note: The .NET Framework 3.0, released in 2006, extends the .NET Framework 2.0 application programming interfaces with new technologies for building applications to provide seamless interoperable communications, the ability to model a range of business processes, and to manage identity and create a differentiated user experience.
Where to Begin Your SOA Project?
The ability to readily change and optimise business processes is the key to organisational competitiveness and growth. Organisational agility can be compromised when supporting IT assets cannot flexibly respond to changing business needs. Unlocking IT resources from their application silos and making their functionality broadly available across the organisations promotes business process optimisation and organisational agility. If SOA is to become a strategic asset for your organisations, it is vital to measure your progress in building an optimised infrastructure.
Marcos Pinedo, Platform Strategy Director, Microsoft APAC
|