Roadmap: Workflow GUI

From Java CoG Kit

(Redirected from Roadmap:WorkflowGUI)
Jump to: navigation, search

Contents

Basic Editing

  • Description: Make the basic editing functionality avalable
  • Priority: 10
  • Who: Mike
  • Details:
    • add saving of workflows in grapheditor
    • add nodes with yellow cog buttton
    • add edges
    • add open save in workflow
      • eg. save the state in which you last viewed the workflow. if you opened a node (hierarchically) it should show so when you save and next visit it. this may require a new xml specification to store the view in an xml format
  • Makesure this works
  • Tes by Deepti and Gregor

Component Zooming and expansion capability

Disc[22 Nov 2005]: The complex components should have expansion capabilities which when expanded should describe internal workflow in further detail. Multiple nested level of expansion will be useful. Besides this functionality, a zooming provision for a complex graph also is deemed necessary. The lib that was suggested by Mike is at: http://www.cs.umd.edu/hcil/piccolo/

Generic Panel with basic components and also imported components from the Repository

Disc[22 Nov 2005]: A basic side panel with frequently used components should be part of the editor. Also, this panel needs to be custom configurable to allow import/export of components from/to the repository. This panel can be also linked to various repositories allowing the user to be able to retrieve and display those components on the panel. The components could be part of a much larger workflow.

Add categories to workflow repository

  • Priority: high
  • Description: In order to integrate conveniently like keywords / categories be added to the repository schema and the repository. This way I could have a category gt components that

allow me to list only get related components such as "proxyinit", job "submission-form"

  • Notes [Deepti]: I think I have to think differently about the schema for this to happen. There is a better way to do this than just adding categories because then a table with maybe hundred tuples will have to be searched in order to find the related components. If this can be decomposed into a befitting normal form then that would be better. In the meanwhile, tagging the id with the name "gt" for proxy init etc as "gt-proxyinit" and using a regex to retrieve should do the work.
  • Notes [Mike]: Let's stop for a second, and before we come up with lots of things that should be added to the repository, go through why the editor should depend on the repository. Let's make two lists: the first one with what the editor needs, the second one with what the repository provides, excluding things that can be acheived with a hashtable.

Add text editor and parameter entry provision for components rendered

  • Priority: low
  • Description: Add a method to the component that allows me to register a customized editor with a component e.g. When a component is integrated in karajan and I click on it the customized editor should be popping up. I think Mike has this already implemented.

Motivation: Assume I have a component that is called blast it has a complicated parameter study. When I click on it with the left button it expands the workflow. When I click on it with the right button it only shows the parameter window that is associated with the component.

  • Notes [Deepti]: I am not sure I have seen an expandable component yet. The normal components can't be expanded and probably should be depicted differently or on rightclick should not display any functionality.
  • Discussion[Nov 22 2005]: The nodes need to have a popup window that accepts input parameters if necessary and another option to open up the component's xml/karajan text in a text editor window. I am not sure if the requirement was to be able to change the component.

Log Window for console output

Addition of a log window to view the console output is required. With ability to set error levels in log 4J to avoid debug messages. Notes[Gregor]: [Added from chat by Deepti] I think we already have such a component as part of the old desktop. Furthermore robert winch has a very very sophisticated log notification implemented. maybe its worth while to look where this is and if this can be documented on the wiki and reused.

Repository menu

  • Description: Add a repository menu to karajan
..... repository .....
    >  search componnet
    >  list components
    > add

Menu entry: add

Description: saves the current displayed component in the repository

Menu entry: list

Description: adds a list and select feature to karajan gui. when pressing the list function a window pops up that may look as follows:

Repository list:
-------------------
+ component a
+ component b
....
-------------------

a method getSelectedComponent() gets the selected component.

interface RepositoryListing()
   void connect(? repository)
   void disconnect(? repo)
   ? getSelected()
   [] getAllSelected() (see the list function)


Note: this method and the gui than can be used to include the component into the workflow as a hierachical graph placement of the graph needs to be done on a mouseclick eg once the component gets integrated the mouse focus is on the graph that you than can move freely, till you click the mouse and the location is identified (could be done later)

Note: I also like another list that lists with categories. This will look like

-------------
Math
+ lu factorization
....
Grid
+ Master slave template
.....

There should be a method that adds all categories and only a subset of them


.addCategory("ALL")

.clearCategory() .addCategory("Math") .addCategory("Grid")

the order in which the categories are added are preseverd.

The first implementation could just display all categories in whatever order.

Menu: search

Description: allows searching of a component

When pressing the search menu entry we will see:

---------------------
| search | advanced |
-------------------------------------
keyword: ____________________
[search][cancel]
-------------------------------------

text editor (component)

---------------------------------------
[save]
---------------------------------------

The search searches a component, you can edit it in the window and save

the advanced is another panel that has more options for a serach, deepti will define what this means

Task: view source

add menu entry somewher "View source" pops up text editor in which you can view and edit the source

----------------------------------------------------

text editor

----------------------------------------------------
[save][cancel]

the two editor panels shoudl be in principal the same and reused between each other

Personal tools
Collaboration and Jobs