About UsMy AccountView Cart
Browse or Search over 5 million articles »
Find Articles by Publication

Home | Industry Information | Business News | Browse by Publication | I | IBM Systems Journal

Management of the service-oriented-architecture life cycle.

Article, News, Research, Information, Industry & Business News
» View article excerpt

Read this article now - Try Goliath Business News - FREE!  
You can view this article PLUS...

  • Over 5 million business articles
  • Hundreds of the most trusted magazines, newswires, and journals (see list)
  • Premium business information that is timely and relevant
  • Unlimited Access
Now for a Limited Time, try Goliath Business News - Free for 7 Days!
Tell Me More Terms and Conditions

Purchase this article for $4.95

Already a subscriber? Log in to read full article
 

Publication: IBM Systems Journal
Publication Date: 01-DEC-05
Delivery: Immediate Online Access
Author: Cox, D.E. ; Kreger, H.

Article Excerpt
INTRODUCTION

The traditional solution life cycle, including requirements analysis, modeling, and architectural design, followed by detailed design and construction in an IDE (integrated development environment) for deployment to a runtime environment, is evolving toward a more integrated process. As management technology expands in scope, management tasks and capabilities (and thus the enablement of a management solution) are introduced earlier in the solution life cycle, into the phases of modeling, development, and testing, not just in the runtime environment.

The solution life cycle can be broadly divided into the preproduction phase and the production phase, as shown in Figure 1. The steps of the preproduction phase are typically performed by architecture, design, and development organizations. The product of the preproduction phase is a packaged, tested set of solution artifacts (software components, installation programs, database and interface schema definitions, documentation, etc.). The steps of the production phase are typically performed by deployment and IT organizations. The product of the production phase is a running solution that is optimized for availability, IT resource usage and cost, and meeting business commitments. The production phase also includes steps to introduce maintenance and upgrades, as well as steps to phase out solution components (solution-life-cycle management).

[FIGURE 1 OMITTED]

The preproduction environment includes tools and processes for planning, modeling, development, function testing, and load testing. Management requirements in the preproduction environment center around developing, testing and debugging the solution by using tools and techniques traditionally used in the production environment, and preparing the solution for management in the production environment.

The production environment includes deployment and patches, upgrades and rollbacks, control operations, monitoring and optimization, security, and life-cycle management. Management in the production environment centers around the new management issues introduced by the nature of Web Services and service-oriented architecture (SOA). The requirements for the development, testing and debugging, and production environments are listed in Table 1.

Some requirements are similar between the different SOA life-cycle phases but may be implemented by using different technology or targeted toward different roles. For example, development requirements might be best implemented in a development environment such as Eclipse, (1) whereas the production requirements might be best implemented by using a standard management server/agent infrastructure. This paper describes the management systems and capabilities needed to manage the full life cycle of an SOA.

SOA CHARACTERISTICS

One of the key distinctions between an SOA and other distributed application architectures is the granularity and formality of the application components. There are many documented best practices about the recommended granularity of services in an SOA. Some are focused on performance, and others are focused on achieving the proper level of reuse and composability. (2,3) Composability is the ability to build new things from existing, reusable interfaces and components, either independently or in combination, to satisfy system-specific and user requirements.

The following critical aspects of an SOA affect management. Services are often designed for one or a small number of closely related functions. They have well-defined interfaces and relationships. SOAs use standards-based communications and are more closely aligned with business processes.

In the following discussion, we present an example that illustrates the differences between a distributed application architecture and an SOA from a management perspective. First, we describe the distributed application architecture shown in Figure 2; next, we describe the SOA shown in Figure 3.

[FIGURES 2-3 OMITTED]

Figure 2 shows a typical business process (involving an insurance quote) and how it maps to distributed application artifacts. The distributed solution is composed of two applications running in the local IT environment, the policy application and the reporting application. The insurance-quote business process also requires use of a third-party application, the rating application, which runs in another company's IT environment.

The highlighted area in Figure 2 shows how a business process step, "rate policy," maps to the application artifacts and the IT infrastructure. The rate-policy step invokes a task in the policy application, which is a distributed application that runs on multiple application servers and depends on certain database tables hosted by a relational database management system (RDBMS). In order to complete the rate-policy task, the policy application uses Electronic Data Interchange (EDI) (4,5) to invoke a request to an external rating application. The relationship mapping is very vague and difficult to quantify. This is because the policy application supports many business processes, and there is no way to determine which business processes use the policy application. The application supports many tasks related to insurance-policy manipulation, and there is no way to discover the list of tasks. The application exposes several capabilities through a user interface only, and there is no way to describe or discover (make known) the interfaces to the capabilities.

Further difficulties are due to the fact that the tasks provided by the policy application are lumped together into a single management view of status and availability, so that there is no management interface to determine the status or performance of individual tasks. The policy application is distributed among several application servers, and there is no way to determine which of those application servers are necessary to the processing of a specific task such as rate policy. The policy application has dependencies on a RDBMS and a set of database tables, but it is impossible to determine which tasks or capabilities of the application depend on the database system or specific database tables.

The instances and locations of the policy application components are not defined or recorded in a standard, distributed repository. The EDI interface to the external application does not have any management capabilities. The dependency relationship between the policy application and the external rating application is not defined in a way that a management tool can discover.

The management of a distributed application is limited in many ways due to the ambiguous relationships described previously. The result is that IT operators tend to learn typical relationships and failure patterns by trial and error. The process of managing such a system is consequently error-prone, manually intensive, and very sensitive to changes in the system.

As an example of a process that avoids these difficulties, Figure 3 shows the same business process mapped to an SOA. The services in this architecture implement specific and granular tasks and have well-defined WSDL (Web Services Description Language) (6) interfaces. The relationships between a step in the business process, the services, and the IT infrastructure as shown in the highlighted area of Figure 3. Due to the nature of services, (7) the relationships in this figure are specific and easily discovered. This is because the services have standards-based WSDL interfaces, which can be choreographed by a flow engine such as Business Process Execution Language (BPEL); (8) the service interfaces can be described and advertised in a distributed standards-based repository (i.e., Universal Description, Discovery, and Integration [UDDI] (9,10)); the services run on specific application servers (known to the management system, but not necessarily known to the client application); and they have specific and well-defined dependencies on other services.

Management interfaces (Web Services Distributed Management [WSDM] (11)) allow discovery of dependencies on other types of resources, such as IT resources, and management capabilities of the remote rating service can be exposed through WSDM. The service instances are easily discovered through WSDM management interfaces.

MANAGEMENT SYSTEM INTERACTIONS

This section describes the high-level interaction between different aspects of the management system. It shows how some of the tasks and capabilities introduced earlier relate to the four major components of a management system, as shown in Figure 4. Although many of these tasks and capabilities apply equally to non-SOA environments, this section highlights key points that are especially important for SOA environments.

[FIGURE 4 OMITTED]

Data collection

The first task that a management system performs is the collection of data about the managed environment. For traditional IT management, the management system would typically collect data about the performance and availability metrics for servers, operating systems, and applications. For management...

NOTE: All illustrations and photos have been removed from this article.



More articles from IBM Systems Journal
Beyond predictable workflows: enhancing productivity in artful business processes., 01-OCT-06
Following the sun: case studies in global software development., 01-OCT-06
Business activity patterns: a new model for collaborative business applications., 01-OCT-06

Looking for additional articles?
Click here to search our database of over 3 million articles.

Looking for more in-depth information on this industry?
Click here to search our complete database of Industry & Market reports by text, subject, publication name or publication date.

About Goliath
Whether you're looking for sales prospects, competitive information, company analysis or best practices in managing your organization, Goliath can help you meet your business needs.

Our extensive business information databases empower business professionals with both the breadth and depth of credible, authoritative information they need to support their business goals. Whether it be strategic planning, sales prospecting, company research or defining management best practices - Goliath is your leading source for accurate information.

Home

Company Profiles

Industry Information

Business Development Resources

Business Management Resources

U.S. Job Search

Need More Information?
Start a new search.
Advertising, Privacy Policy, Refund Policy, Contact Us, Site Map, Terms & Conditions, Add to del.icio.us
Customer Service, How to Buy, Frequently Asked Questions
Copyright © 2008, ECNext, Inc., All Rights Reserved