Index Changes

Fuji Web Tooling Team High-Level Plan

This page illustrates the tentative plan of Fuji web tooling team for the next half-year. Items marked as TBD are not completely defined, or the approach is not fully developed, might change. The plan covers new features and major enhancements only, regular bug fixing process will happen as usual.

Milestone 7 (6 weeks, ending 7/17)

  • Code editing support, pure javascript level:
    • infrastructure for javascript-based: syntax highlighting (keywords, strings, numbers, delimiters, html/xml/css markup), code completion (word-based).
  • Public demo
    • add multiple users support;
    • make deployment optional (will be disabled for the demo);
    • add download as .zip option (download the compressed sources project to open in NetBeans);
    • add feedback option;
    • various other improvements and changes.

Milestone 8 (est. 6 weeks, ending 8/28)

  • Code editing support
    • Support for code completion
    • Support for Java, Ruby, XML and JSON formats
  • Performance optimizations
    • Javascript profiling, find and eliminate front end inefficiencies and mem leaks.

Milestone 9 (est. 6 weeks, ending 10/9)

  • Round-trip capabilities:
    • editable IFL field in web tooling;
    • conflict resolution when sources are updated from outside (e.g. NetBeans), three modes: override sources from database, override database from sources, merge.
  • Pluggable component types API
    • Make it easy for others to create and plug-in support for their component types in web tooling
    • Create documentation for that
    • Add better handling of unknown types both on the front-end and the back-end
  • WLM SE:
    • make compatible with Fuji;
    • IFL and web tooling support;
    • better web console;
    • experiment with building web-console into fuji tooling.
  • Better support for messages tracing:
    • changes to runtime API, support for 'raw' messages (see Fuji Message Tracing APIs);
    • UI enhancements TBD (mostly focused to be able to see the message flow through the services, without having to click at each location).
  • Performance optimizations
    • Database handling -- reduce the number of queries executed

Milestone 10 (est. 6 weeks, ending 11/20)

  • Message flow diagram layout management:
    • free layout is good, but sooner or later pple will want some assistance in laying out components.

  • Web tooling preferences support:
    • infrastructure for settings;
    • various settings like font size, colors, etc.
    • various settings like what to do when a node having shortcuts is deleted;
    • various settings like default layout.
  • Installing/uninstalling/packaging components from web tooling.
  • Generic tooling-oriented runtime API:
    • all features offered by tooling should be backed by the runtime, so others could implement the API and reuse the web tooling.
  • Support for testing:
    • run tests, view pass statistics and trends.


  • Mapping component.
  • Registry functionality:
  • we know everything about deployed services, so could act like a registry.
  • Iterative, incremental approach:
    • one service changed -> one service redeployed.
  • Management and monitoring functionality:
    • add/remove runtime components;
    • view components statistics;
    • view deployed services/applications statistics.

  • Organizational issues:
    • branching milestones to make them more like valid releases;
    • checklist for components wishing to support fuji: OSGi headers, tooling metadata, etc.
  • Collaborative environment:
    • several user collaborating on the same message flow, changes made by one of them propagated to others.
  • Support for several IFL files:
    • not everything can be effectively laid out on a single diagram/ IFL file.
  • More insight into complex services:
    • graphical editors for BPEL, XSLT, etc.
  • Validation
    • Be able to define graph-level validation rules
    • Disable save/deploy (and do not do those automatically) is the diagram is invalid
    • Turn on validation for properties sheets
  • Code editing support
    • Mozilla Bespin (evaluate, possibly adapt, make part of the javascript layer support)
    • Java applet layer (more elaborate editing support, more like NetBeans, etc.)
  • Runtime enhancements (see Fuji Runtime Enhancements):
    • application namespaces;
    • reusing existing services/routes;
    • controlling access to services;
    • in-out message flows;
    • faults and error handling;
    • call-outs;
    • component in-out modes.
  • Web tooling support for the above.

JSPWiki v2.4.100
« Home Index Changes Prefs
This page (revision-8) was last changed on 01-Sep-09 05:21 AM, -0700 by KirillSorokin