Home > SOA Tips > SOA Advisor > Composite apps, paving the way for assembly line SOA
SOA Tips:
EMAIL THIS
 TIPS & NEWSLETTERS TOPICS 

SOA ADVISOR

Composite apps, paving the way for assembly line SOA


Dr. Sudeep Mallick
12.20.2007
Rating: -5.00- (out of 5)


Enterprise IT tips and expert advice
Digg This!    StumbleUpon Toolbar StumbleUpon    Bookmark with Delicious Del.icio.us    Add to Google


Composite application development is the new paradigm of application development which promises rapid time to market and ultimately the reusability of legacy enterprise information assets. The flexibility and agile delivery of composite applications is made possible by assembly of configurable components that have been carefully identified by analyzing existing enterprise applications. Reusability, configurability and assembly are key to composite applications. Reusability, modularity and assembly of configurable components are not new concepts at all, but were, more often than not, difficult to conceptualize and implement.

The mature, comprehensiveness and seamlessly interoperable tool and platform suites from leading vendors are now making possible this new style of Lego-block assembly style application development. Though there is still a long way to go. Service-oriented architecture plays a very critical role in all this. The concepts, principles and patterns of SOA enables conceptualization and realization of such configurable components and "services" a practical reality. SOA may be considered the prime driver for composite assembly.

We can define composite application as "Rapidly compose-able applications that enable business workflows through assembly of customizable and configurable pre-fabricated assets that could be deployed on runtime to access diverse enterprise resources and applications required for executing the business scenario while leveraging standardized based process, data, usage and interaction models". The first challenge on the path to CA is the identification of a suite of such reusable, configurable components and services which are amenable to assembling into a full-fledged business processes or workflows. We can term these reusable, configurable assets as Configurable Reusable Assets (CRAs). The second challenge is to identify the configurable features for the CRAs.

Having identified a set of such CRAs and features, the third challenge is to govern the lifecycle of such assets – versioning, provisioning, demand and supply management, ownership, usage policies, etc. – typical concerns of SOA management and governance. The complexity lies in handling the heterogeneity of the resulting composite. Since, the reusable components and services that would comprise a composite application would ultimately have touch points with multiple existing enterprise applications, this has implications for managing distributed transactions, propagating security credentials, single sign-on, performance bottlenecks due to possible intermediate message transformation, routing, etc. across these different applications. This is perhaps the most challenging part, distributed application development at its best or worst. Service Component Architecture (SCA) and Service Data Objects (SDO) are important standards to look out for in this space.

The reusable and configurable components and services which comprise a composite application are typically services exposing functionality from existing enterprise applications, adapters that make possible connections between disparate systems, document handlers and transformers which enable conversion among different document formats ( XML or non-XML, industry vertical open standards based or otherwise, structured or semi-structured, etc.), business process templates, sub-process templates, workflows, data and message schemas specifying a Common Information Model for enterprise entities, schemas for component/service to component/service interaction messaging, business rules, business policies, service level agreements, UI assets, business event metadata and executables, roles, etc.

These different components and services access already existing enterprise applications, which range from custom developed applications to commercial off-the-shelf products and tools such as ERP, SCM, CRM, MDM, BI, BAM, knowledge management, portal, etc. In fact most of the product vendors relevant in this space have a vision for composite application development and have identified methodologies and developed tools to encourage creation of reusable components and services that are powered by their product suites. For example, an ERP vendor would expose its legacy APIs in the form Web services interfaces ( WSDLs), which could be accessible from a registry/repository product and reused in unforeseen business use cases. For example, in order to use a Web service (CRA) in some sequence with another Web service (CRA) it may be needed to have rule (CRA) based routing in the business process (CRA), which might invoke different sub-processes (CRA) based on rules (CRA). The sub-processes may be accessing an application having different business semantics and hence message transformation (CRA) could be applied.

Vendors in this space can be partitioned into three categories – pure tool and platform suite providers (interoperable set of tools supporting composite application development), content providers (primarily industry, domain specific CRAs and composites, but also enabling building and deploying of composite applications through tools and platforms) and hybrid (primarily strong in composite application related tools, but also provide optional industry domain specific CRAs and composites).

The typical entry points for composite applications would be multi-channel delivery, rapid deployment of business processes, single view of customer, enterprise process/information mashups, cross line-of-business interaction and so on. The emerging trend of cloud computing (like IBM's recent foray [6] and Amazon's Ec2 [7]) represents another new entry point. To sum it up, composite applications are nothing but a grand vision for integration at one or more these standard enterprise architecture layers – presentation, business and data and more recently into the infrastructure later.

References

1. SCA Assembly Model V1.00

2. Composite Application

3. SAP Composite Application Framework: A Robust Environment for the Design of Composite Applications

4. Composite Applications

5. Sun Java Composite Application Platform suite (Java CAPS)

6. IBM to deliver Computing Power under a "Blue cloud"

7. Amazon Elastic Compute Cloud

About the author

Dr. Sudeep Mallick is a Senior Technical Architect and Researcher with SOA Center of Excellence, SETLabs, Infosys Technologies LTD. He has numerous publications in international journals and conferences to this credit on the topic of service oriented computing, software engineering and enterprise architecture. He is also the author of a book on enterprise IT architecture.


Rate this Tip
To rate tips, you must be a member of SearchSOA.com.
Register now to start rating these tips. Log in if you are already a member.




Digg This!    StumbleUpon Toolbar StumbleUpon    Bookmark with Delicious Del.icio.us    Add to Google



RELATED CONTENT
SOA Advisor
Approaches to Business Process Management (BPM)
Java-based Abdera open source tools implement Atom services
G1: Changes due in garbage collection for JVMs
Chrome OS in future, but what does Android offer now?
SOA pattern of the week (#7): policy centralization
Protocols for cloud services - Part 2
Tips for tracing enterprise transactions
Enterprise Architecture in the Agile age - Part 1, Styles of EA
Service Decomposition splits service, not function: SOA Pattern (Week 5)
Service Normalization reduces redundancy, waste: SOA Pattern (Week 4)

RELATED RESOURCES
2020software.com, trial software downloads for accounting software, ERP software, CRM software and business software systems
Search Bitpipe.com for the latest white papers and business webcasts
Whatis.com, the online computer dictionary

DISCLAIMER: Our Tips Exchange is a forum for you to share technical advice and expertise with your peers and to learn from other enterprise IT professionals. TechTarget provides the infrastructure to facilitate this sharing of information. However, we cannot guarantee the accuracy or validity of the material submitted. You agree that your use of the Ask The Expert services and your reliance on any questions, answers, information or other materials received through this Web site is at your own risk.



SOA Trends and Strategy - SOA Education, SOA Development, SOA Implementations
About Us  |  Contact Us  |  For Advertisers  |  For Business Partners  |  Site Index  |  RSS
SEARCH 
TechTarget provides technology professionals with the information they need to perform their jobs - from developing strategy, to making cost-effective purchase decisions and managing their organizations' technology projects - with its network of technology-specific websites, events and online magazines.

TechTarget Corporate Web Site  |  Media Kits  |  Site Map




All Rights Reserved, Copyright 2001 - 2009, TechTarget | Read our Privacy Policy
  TechTarget - The IT Media ROI Experts