You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 5 Next »

Student: Nirmal Fernando

Student e-mail: nirmal070125 AT gmail DOT com

Student Major: Computer Science and Engineering

Student Degree: Undergraduate

Student Graduation: October 2011

Organization: Apache Software Foundation

Assigned Mentor: Raymond Feng

Abstract: 

Apache Tuscany provides a comprehensive infrastructure to simplify the task of developing and managing Service Oriented Architecture (SOA) solutions based on Service Component Architecture (SCA) standard. Tuscany Java SCA is a lightweight runtime that is designed to run standalone or provisioned to different host environments.

Task is to implement a tool which generates composite diagrams from the composite files to illustrate the SCA artifacts and their wirings. SCA artifacts are composite, component, service, reference.

This tool can serve multiple purposes:

1) Help document Tuscany's tutorials and samples
2) Be integrated with the SCA domain manager to visualize the SCA domain (contributions, composites, nodes etc)

Implementation Plan:

Composite XML should be generated using the Tuscany's in-memory representation of the composite model.
It will then will give as an input for the Composite Analyzer. Composite Analyzer then analyzes the XML document
and grab the relevant DOM Elements such as Composite, Component, Service, Reference, Wire etc. and starts to
build the SVG document using SVG DOM API of Apache Batik.

After Composite Analyzer built up the SVG document it will be the output which represents the composite diagram.

DOM elements (Composite, Component, Service, Reference, Wire etc.) possibly be static classes which holds the
shape of the artifact, colour, other static properties and will be given the dynamic properties (such as position, size etc.)
as input, in order to create a DOM element and it will be then handover to the Composite Analyzer.

Deliverables:
  1. Code of the tool which will be built.
  2. Tests to verify the accuracy of the diagrams generated.
  3. User documentation on operation of the tool and sample diagrams generated.


Time-line:

April 20 - May 23

  • Read on Tuscany SCA Java, understand the design, and concentrate on project relevant parts
  • Read on Scalable Vector Graphics (SVG) 1.1
  • Read on Apache Batik and build examples to get familiar

May 24 - July 10

  • Mid-term evaluation of the project.

July 12 - August 15

August 16 - August 22

August 26

  • Final evaluation deadline.
Community Interactions:

Biography:

  • No labels