CBDI Forum
CBDI Service Oriented Architecture Practice Portal
Independent Guidance for Service Architecture and Engineering
Search:

CBDI Knowledgebase

Report Summary
Title: Applying Product Line Techniques to SOA
Author: John Butler
Publication Date: 16 February 2006
Report Type: Journal
Report Class: Best Practice
Abstract: Architectural flexibility and support for requirements variability across the various departments of an enterprise is one of the key benefits of SOA. Often one department will follow a slightly different process for that particular business sector or domain. SOA provides the mechanisms to enable many types of variability at both design-time and runtime. But this is also a key driver behind software product lines and application family engineering, two well established software techniques. This series of articles explore some of the techniques used for product line engineering that can be used to raise the state of the art of SOA.
Backgrounder: Over the years a plethora of software development methodologies have been devised to address the various business and technology challenges faced by the development organizations. Many of these methods have been targeted at the development of custom applications used internally by an enterprise. Custom development methodologies tend to be optimized to support the development of one particular solution that meets a relatively limited set of requirements. A problem exists with these methodologies, however, as the size and diversity of the enterprise that a development organizations supports becomes larger. Often large organizations have tremendous opportunities to reuse components while also having departments or divisions that need functionality with slight variations. Supporting these types of variations has typically been difficult and often leads to redundant application development. Fortunately, an ever expanding market for commercial-off-the-shelf (COTS) software products that can be configured has driven the creation of methods aimed solving this problem. Significant research has been undertaken in the area of software product lines by a number of individuals and organizations. The following are a sample of the resulting methods: - Carnegie Mellon Software Engineering Institute - Product Line Practice (PLP) Initiative, - Weiss and Lai - Family-Oriented Abstraction, Specification, and Translation (FAST), and - Jacobson, Griss, and Jonsson - The Reuse-driven Software Engineering Business (RSEB) or as some call it, Application Family Engineering (AFE). Whether a developer of these types of packages uses object oriented, component-based, or procedural code, the need to be able to quickly customize a product within a set of constraints to meet the specific needs of one or more customers exists for many software product vendors. In parallel, Web technologies and service oriented architectures (SOA) have helped to advance the state of the art in distributed systems processing enabling significant improvements in architectural flexibility, integration and software reuse. The approach put forth by CBDI for delivering solutions using SOA includes methods for identifying reusable services and the variations required by consumers of those services. Reuse and variability analysis are also key components of the product line approaches described above. Given this similarity, there are two obvious questions. First, how similar are these activities? Second what other opportunities exist for reusing product line techniques within the framework of SOA? In this article we will look specifically at identifying reusable components (core services in the CBDI approach) and variability analysis. Subsequent articles will look at other aspects of product line methods and how they can be applied to SOA.
Report Size: 9 pages
Report Access Type:
  Silver/Gold (Premium)
Available for separate purchase Single copies of recent CBDI Journals may be purchased
Login
Username: 
Password: 
 
   
Please note that by proceeding you are providing the CBDi Forum with approval to use cookies. Please also ensure that you have cookies enabled in your browser.
 

  © Everware-CBDI Inc 1999-2008