Monday, July 11, 2011

Oracle SCA Composites Visualized By MS Visio

An Oracle SCA Composite is described through an associated configuration file called composite.xml. This file uses a standardized XML-based format called the Service Component Definition Language (SCDL, commonly pronounced “skiddle”) to describe the artifacts this SCA Composite contains and specify how they relate to one another. The composite.xml mainly includes the SCA Components, exposed and external referenced services implemented via adapter and the wires between these artifacts.

The composite.xml file is rendered in JDeveloper with the Visual SCA Composite Editor. This editor works for development and offers a “drag & drop” way of SCA programming.

clip_image001

Unfortunately Oracle offers no image export feature on this editor. This feature could be similarly to the “Create JPEG Image …” feature on the BPEL Editor. An image export would be very helpful for the creation of documentation. Additionally it would be helpful to discuss a SCA Composite structure without starting always JDeveloper (or even to have JDeveloper on the disk). Composite screenshots are often do not capture the whole composite and keep only a section of the composite. It would be desirable if SCA Composites are zoomable on Composite Editor. This feature could be similarly to the “Zoom” slider on the BPEL Editor.

For all these reasons, I developed a “SCA to Visio” application. This application takes the composite.xml, parses the content and creates a MS Visio diagram. This diagram reflects the SCA Composite. The application uses ActiveX or COM automation components natively on the Windows COM and Win32 libraries. A COM Automation server controls Microsoft Visio which has to be installed on the same machine. I tested the “SCA2Visio” application with a JRE6 version on a Win7 system with Microsoft Visio Premium 2010.

The generated Visio diagrams could be printed, re-layouted, stored in several graphical formats, enriched with additional information and could be zoomed in and out. It’s ideal for any documentation and architectural discussion. Additionally it’s a good way to show Composite-to-Composite overview diagrams.

This diagram is an SCA2Visio example of the last Calculator application used on my Spring Bean blog entry.

clip_image003

Download of SCA2Visio application is available here (Zip, 5.73 MB). Try it!