Apache Etch > Home > Roadmap
Added by James Dixson, last edited by scott comer on Feb 17, 2009  (view change)

Overview

The Etch system currently includes the compiler, bindings for java and csharp, some documentation, and an ant based build system. Development for Etch cuts across the following categories:

  • IDL, Toolchain, and Language Bindings
  • Etch Services, of which there are two types
    • Services that support the Etch Cloud
    • Standard IDL implementations that support service and application development
  • Validation and Testing
  • Documentation

Some of the projects necessarily cut across the above categories, e.g adding a new transport requires some programming in each binding implementation and documentation, etc.

IDL, Toolchain and Language Bindings Proposals

IDL Roadmap - Extensions to the Etch IDL
Compiler Roadmap - Compiler enhancements / IDE Integration
Language Binding Roadmap - New language bindings for Etch and enhancements to the existing bindings
Transport Stack Concepts - Concepts related to transport stacks which cut across all bindings

Services Proposals

What use is a framework to describe services, without some cool services to use!

There are two classes of Etch Services. Services that help maintain the Etch Cloud and services that assist other services at an implementation level.

Etch Cloud Services

Etch Cloud services are services that facilitate the communication between multiple Etch consumers and producers. The following mantra is true for all Etch Cloud Services:

Neither a service (producer) nor application (consumer) should have to be overtly aware of any Etch cloud
service. It should be possible to deploy a service or application with or without any supporting Etch cloud services,
with no conditional code or changes to code.

Etch cloud services are purely deployment time considerations and are not required for operation.

  • Etch Name Service - Etch URIs can be very long and cumbersome to maintain, the Etch Name Service allows an Etch Service to look-up the necessary connection URI using an abstract reference.
  • Etch Router Service - Failover, redundancy, policy enforcement, geographic preference... the Etch Router helps Etch clients find just the right Etch service and stay connected.

Application Support Services

These are proposed services that could be used by any application or service. They abstract common activities through an Etch interface.

Validation Suite

While the unit tests assure some level of wire format compliance, nothing beats a validation test suite. We need to be able to plug in different (but compatible) transport options and then run a standard set of tests to verify that things still work (while mixing and matching bindings as well). There are two parts to this:

  • Validate Suite Framework and Service definition
  • Per binding implementation of the validation suite service

Here is some discussion on Interoperability Testing Framework.

Documentation

Current documentation is via wiki. We can always use more