Project Task Page: Compose

Status: Stasis - Compose can create Graphline based Kamaelia systems
Current Developers: Michael
Current "inflight" dev location: /Code/Python/Kamaelia/Tools/Compose*
Start Date: August 2005
Expected End Date: n/a
End Date: na
Date this page last updated: 12 December 2006
Estimated effort so far: 20 days (est)


Compose will be a tool capable of visually composing and editting any Kamaelia system.

As Compose is created/improved, it will be capable of creating more and more complex Kamaelia based systems visually. The outcome will be a tool for generic systems, but especially networked & multimedia applications.

The potential for a graphical tool has been recognised all along, and care has been taken in the design of Axon to allow this to happen, and to ensure that any running system structure is introspectable at runtime. Indeed, first came the system, then introspection, then visual creation. Any extensions to the system (eg for non-dataflow components) are suggested to follow the same mould - text/introspectable first, graphical second.

  • A graphical tool provides for rapid prototyping
  • There is the potential for a generic "spreadsheet of applications"
  • There is the potential to build versions with a targeted interfaces for different user types:
    • Non-technical BBC users
    • Technical BBC users
    • Children
  • As a debugging tool, the ability to visually delve inside a running system and fix things (much like opening the hood of a car) is an extremely interesting prospect - especially if this can be done in a sustainable, maintainable way.


This section is largely about WHO has influenced this task to do WHAT, and where possible WHY. It is also about WHO to contact with regard to this task to influence what's going on.
  • Task Sponsor: Michael Sparks
  • Task Owner: Michael Sparks
  • Developers involved in the task at some point
    • Michael Sparks
    • Matt Hammond
  • Users:
    • Michael Sparks
  • Interested third parties
    • Ryan Lothian
  • Requirements
    • To be added - this is largely exploratory work in nature.

Relevant Influencing factors:
Section started after the 0.5 release. For brevity, it has been skipped for now.



Expected outputs are likely to be iterative. This page is non-exaustive.
  • A tool for visualising Kamaelia systems
  • A tool for introspecting running Kamaelia systems
  • A tool for creating Kamaelia pipelines
  • A tool for creating Kamaelia graphlines
  • A tool for creating Kamaelia graphlines and setting up any necessary initial configuration code
  • A tool for turning such graphlines and config code into reusable components themselves (eg for insertion into a shared repository)
  • A tool for creating new, based components textually and inserting them into a repository
  • ...


  • Axon Visualiser - in the Kamaelia 0.2 release
  • Visual Pipe Builder - in the Kamaelia 0.4 release
  • Compose 1.0 - graphline editor - in the Kamaelia 0.5 release

Realistic possibilities arising as a result of activity on this task

Section started after the 0.5 release. For brevity, it has been skipped for now.

Related Tasks

Tasks that directly enable this task (dependencies)

  • Section started after the 0.5 release. For brevity, it has been skipped for now.

Sub Tasks

  • Section started after the 0.5 release. For brevity, it has been skipped for now.

Task Log

This log was started after the 0.5 release. For brevity, it has been skipped for now.

  • Matt, August 2006 - Initial pipeline version created
  • Michael, October 2006 - Pipeline version based on repository introspection created.
  • Michael, September 2006 - Graphline version created
  • Michael, December 2006 - PTP created


PTP created, -- Michael Sparks, 12 December 2006


Kamaelia is an open source project originated from and guided by BBC Research. For more information browse the site or get in contact.

This is an ongoing community based development site. As a result the contents of this page is the opinions of the contributors of the pages involved not the organisations involved. Specificially, this page may contain personal views which are not the views of the BBC. (the site is powered by a wiki engine)

(C) Copyright 2008 Kamaelia Contributors, including the British Broadcasting Corporation, All Rights Reserved

This web site is powered by the same code created for the bicker manor project. For more details, contact Michael Sparks at BBC Research directly (cf contact)