COMMENT: Analyst's Corner
SOA Means BusinessBy David Baum
Service-oriented architecture delivers the technology that businesses want.
Oracle Magazine spoke with Chris Haddad, vice president of Applications Platform Strategies at Burton Group, about how to make headway with service-oriented architecture (SOA).
Oracle Magazine: How do you define success in the context of SOA?
Haddad: Many people will say they want to achieve greater agility, reduce time to market, and minimize costs. But those goals apply to any IT project. I consider SOA projects successful when services are shared and reused, software assets are consolidated and provide redundant capabilities, and projects conform to common standards. Tangible success metrics provide small steps required to realize bigger goals.
Oracle Magazine: What's the best way to adopt SOA with minimal disruption?
Haddad: Have clear adoption strategies. You want to identify gaps in your software development lifecycle and create an environment that fosters collaboration and trust. Some companies decide they need to improve their operations-management capabilities so services will be reliable, available, and secure enough to be shared across teams. Others decide to upgrade their change-management processes. In any case, you need a consensus about how to describe services. Most companies start small by creating a single service and sharing it with a specific community.
Oracle Magazine: What happens as these SOA implementations gain momentum?
Haddad: Far-seeing organizations begin to take inventory of all their software assets, services, and application frameworks. This allows them to create a shared infrastructure of business functions, to migrate their applications to these common functions, and to create "event awareness" within their IT architectures so they can monitor business processes and data changes.
Oracle Magazine: How do development projects create reusable software assets?
Haddad: You can't reuse a service capability unless you understand what the service will provide to your project, so business and technical users need to jointly define entities that underpin their business processes. For example, in the financial services market, you need a universal definition of an account object. Once you reach agreement, you can bring commonality to all applications that access these objects, and you can promote reuse because the data elements consumed by the applications are built into the service. Every well-designed service is a pragmatic step toward achieving these goals.
Oracle Magazine: What's the relationship of business process management to SOA?
Haddad: Business process management provides a way for discussing business needs and service capabilities. It forces businesspeople and IT people to devise a shared language, so they can align their IT systems with the business processes they want to execute. Business Process Execution Language [BPEL] lets you describe business goals technically; tools such as Oracle BPEL Process Manager help you define and orchestrate services and then expose them as discrete building blocks. As you develop a holistic picture of your IT capabilities, you can weave new and old functions into a unified portfolio and align your information systems with how people want to work.
Oracle Magazine: What's a good example?
Haddad: Suppose your organization wants to revamp its call center systems. SOA creates interfaces to the applications and data repositories, so you can simplify the way people interact with these systems and streamline the tasks that they need to perform. BPEL helps you describe the necessary business services and implement them according to your model of where the business is going.
Oracle Magazine: How can SOA affect other business initiatives?
Haddad: For example, SOA can affect business intelligence [BI], which is all about gaining visibility into business performance, metrics, and trends. BI requires links to data repositories, analytics, reports, and data visualization tools. SOA serves as a catalyst for connecting these entities and normalizing the semantic data representations. The first step is to implement mediation agents that can monitor messages and event streams and generate alerts that feed real-time dashboards or event processor engines. Developers want to take their dashboards and hook them up to this new runtime infrastructure, which supports publication and consumption of services. This is much more efficient than building point-to-point connections between event publishers, processing engines, and information consumers.
David Baum (email@example.com) is a freelance business writer based in Santa Barbara, California.
Burton Group is a technical research and advisory group focusing on service-oriented architecture and other topics.