white bar background yellow bar background
Colorado Software Summit 2007 banner
Colorado Software Summit logo

The Best Way to Master a Technology Is to Teach It to Others

Jean-Sebastien Delfino

IBM Burlingame Lab

Service Component Architecture

Service Component Architecture (SCA) is a set of specifications which describe a model for developing business solutions using a Service-Oriented Architecture. One of the main goals of SCA is to provide developers with a simple methodology and programming model for creating applications and systems based on SOA.

SCA applications are composed of service components that implement business logic, offer their capabilities through service-oriented interfaces and consume functions offered by other components through service-oriented interfaces, called service references. The SCA client and implementation specification defines a programming model for implementing service components and invoking services. The SCA assembly model specification defines how you wire together and assemble components into composite applications.

SCA also allows the service implementation and service assembly to be decoupled from the details of infrastructure capabilities and the access methods used to invoke services. SCA components only need to use a minimum of middleware APIs. Infrastructure capabilities and access methods are handled declaratively through SCA policies and SCA binding profiles.

In this session, we will introduce the SCA specifications and show through coding examples how to implement services, consume services, and assemble service components. We will also show how to use SCA policies and binding profiles.

Open Source SCA — The Apache Tuscany Project

Apache Tuscany is an open source project which provides implementations of the Service Component Architecture (SCA) specifications and related technologies such as Service Data Objects (SDO). The overall goal of the project is to provide an open-source runtime platform to simplify the implementation of SOA-based applications in various programming languages such as Java, C++, JavaScript or BPEL. Tuscany integrates with well established Web Services and server technologies such as Apache Axis2, Apache Tomcat and Geronimo.

This session will explore how the Tuscany runtime works. We will work through coding examples and how to use Tuscany to implement service components, build, deploy and run composite SCA applications and communicate with Web Services. We will present how to get involved in the development of Tuscany and embed the Tuscany runtime or extend it to support additional component types, programming languages, bindings and communication protocols. We will also cover the latest developments and ongoing work with the Tuscany code base, with a demonstration of some of the latest features.

Photo of Jean-Sebastien Delfino

Jean-Sebastien Delfino is a Senior Technical Staff Member at the IBM Burlingame Lab. Currently Jean-Sebastien is working on the Service Component Architecture and the Apache Tuscany project. He has been working on SOA for more than 5 years as a technical lead in the WebSphere Process Server team and previously in the WebSphere Studio tooling team at the IBM Toronto Lab. Jean-Sebastien has over 15 years experience in software development and system integration. Prior to joining IBM he worked for Atos-Origin on a number of integration projects for European top companies in the bank, insurance and telecom sectors and various government agencies including the European Commission.

Email: delfinoj@us.ibm.com