Standards
Leveraging SCA for Standardizing the Composite Application Ecosystem
Catalyzing the adoption of composite applications via standards
Jul. 10, 2008 02:00 PM
Composite applications are the new breed of applications that are built rapidly by composing ready-made configurable and customizable service components together. This is similar in spirit to creating new recognizable objects by snapping together pre-fabricated Lego blocks in unforeseen ways.
The advent of composite applications could be considered a logical progression from Web services, component-based development, and packaged application platforms. Service enabling existing legacy applications into standalone modular
service components with stable interfaces greatly enhances the reusability of enterprise information assets. Depending on the business context, these reusable service components could be re-configured with different properties, giving them situation-specific behavior. They could then be linked together in meaningful ways to deliver new business applications enabling new business processes. In some cases some small yet critical implementation aspect of the service could even be redeveloped (via custom scripts) to provide the requisite behavior – which is similar to packaged application-style customization.
Reusability, configurability, and assembly are key to composite applications. Although the idea of assembling configurable components has been around for quite sometime, the increasing maturity of tools and platform suites from leading vendors is pushing its adoption into the mainstream. SOA plays a critical role in realizing this vision.
We could define composite applications as “rapidly compose-able applications that enable business workflows through the assembly of customizable and configurable pre-fabricated assets that can be deployed at runtime to access the diverse enterprise resources and applications required for executing the business scenario while leveraging standardized-based process, data, usage, and interaction models.”
Challenges
Building composite applications may look like an attractive idea; however, it’s rife with challenges:
- The first challenge is the identification of reusable, configurable service components amenable to being assembled into full-fledged business processes or workflows.
- The second challenge is the identification of the context-specific variations of these reusable service components. Depending on the business and technical context, these aspects of the service components would have to be specified before deployment. For example, the same service that provides analytical data on product sales to another consuming enterprise application over RMI/IIOP could be reconfigured and re-provisioned to provide data over SOAP/HTTP to the mobile devices of field sales personnel.
- The third challenge is to govern the life cycle of such modular assets – versioning, testing, provisioning, demand and supply management, ownership, usage policies, etc. – typical concerns of SOA management and governance.
- The fourth challenge is handling the heterogeneity and complexity at runtime. The service components would ultimately have touch points with multiple existing enterprise applications resulting in complexity in terms of transactions, security, performance, etc.
About Sudeep MallickDr. Sudeep Mallick is a senior technical architect and researcher with the SOA Center of Excellence, SETLabs, the R&D arm of Infosys Technologies Ltd. He has numerous publications in international journals and conferences to his credit on the topic of service-oriented computing, software engineering and enterprise architecture and is also the author of a book on Enterprise IT Architecture. His current area of interest include Service Oriented Software Engineering, SOA Governance, and Composite Applications.
About Ashwini Kumar JeksaniAshwini Kumar Jeksani is a software engineer working for the SOA Center of Excellence , SETLabs, the R & D wing of Infosys Technologies Ltd. His area of interests are SOA enabling technologies such as ESB, Composite Applications, SCA & Web Services, and his current area of work is in SAP Enterprise SOA (eSOA).