4632
Comment:
|
7734
|
Deletions are marked like this. | Additions are marked like this. |
Line 4: | Line 4: |
(Under construction) |
* Focus on improving existing features rather than adding new features. * Fix as many outstanding bugs as possible. * Fix as many ''micro-barriers'' as possible. * Make sure that the workflow described in the Nature Protocols paper is fully supported. While the protocol works as described, it can be brittle in places. The goal is to make this as robust as possible. Of course, supporting this workflow should NOT preclude the use of Cytoscape in other ways. We should NOT remove capabilities or flexibility. The protocol looks roughly like this: 1. Load networks. * Agilent LitSearch * cPath * Pathway Commons? * IntAct and/or DIP? 1. Load attribute, synonym, and annotation information about the networks. * GO annotations * attribute files * synonyms? * Gene expression data (ArrayExpress?) 1. Analyze the networks. * MCODE * jActiveModules * BiNGO * Cytoscape's built in tools like filters, selection, etc.. 1. Make joural quality images and publication materials. * Export graphics * Export session to web = Timeline = Release Date: |
Line 6: | Line 29: |
* Relatively smaller set of new features. * Cleaning up backlogs (from 2.5) = Timeline = Release Date: TBD = Release 2.6 Feature Ideas (VERY tentative) = |
* The first beta release should be available before the Cytoscape retreat: Nov 6th-9th, 2007. * The final release should go out before Christmas 2007. = Release 2.6 Features = |
Line 13: | Line 33: |
* '''Support for ["Molecular Interaction Maps"] and/or SBGN.''' [''Agilent, NCI?''] To correctly render Molecular interaction maps or Systems Biology Graphical Notation would require the development of several new node shapes and other graphical capabilities. We will want to incorporate this support incrementally over two or more versions of Cytoscape. Some possible features (in order of difficulty, only a subset to be implemented): |
||'''Title''' ||'''Lead''' ||'''Description''' ||'''Status''' || ||'''Cytoscape Themes.''' ||Sarah and Alex ||We think it would be useful to provide customized versions of Cytoscape for specific users. An example would be a biologist themed release that would include all plugins to support import/export of biological file formats. ||Ready for testing || ||'''Filter UI redesign.''' ||Peng ||To construct complex filter with the combination of AND, OR, and NOT. ||Ready for testing || ||'''Dynamic Filtering algorithm''' ||Peng ||develop an algorithm to apply filter with time complexity ~ lnN. N is the total number of nodes and edges.The intent for the changes to the filters UI is to allow dynamic selection of nodes and edges based sliders and other widgets in the filter. This isn't possible for 2.5 so we've pushed it to 2.6. ||Testing || ||'''Refactor the Network Manager to support selection and operations on multiple networks.''' ||Mike and Kei ||It is often the case that users have hundreds of networks loaded at any given time. It would be useful to be able to perform operations (such as applying a layout) on more than one network at once. Also, we need to separate Network Panel's tree data model from GUI. || || ||'''[:BioWebServiceConnectivity:Web Service Client Manager and User Interface for Bio Web Services (Biomart/NCBI/KEGG)]''' ||Kei ||Provide a simple interface to bio-database web services that will facilitate id mapping and attribute import in Cytoscape. This will address use cases 3 and 4 listed [http://baderlab.org/IdentifierMapping here]. ||[:BioWebServiceConnectivity:RFC] is ready. IntAct, NCBI and Biomart clients are ready for testing. || ||'''Modal Label Positioning''' ||Mike ||Provide an edit mode to Cytoscape that allows node labels to be moved simply by clicking on them and dragging. || || ||'''Clean up old bugs''' ||Everyone ||Ongoing. || || ||'''In memory session saving''' ||Mike ||Explore writing a session file without first writing tmp files. We ''should'' be able to do everything in memory. This will prevent many permission error bugs. ||Ready for Testing || ||'''Properties''' ||Mike and Sarah ||We need global properties that are saved in the .cytoscape directory automatically, in addition to the cytoscape.props. Some use cases are: saving the last directory used, saving bookmarks stored by users. || || ||'''Workflow Panel.''' ||Allan ||A Cyto''''''Panel that presents a list of actions corresponding to the steps of the Nature Protocols workflow above. When the user clicks on an item in the list, the appropriate step in the workflow is initiated. || || ||'''XGMML improvements''' ||Scooter ||Rewrite the XGMML reader and writer to significantly reduce the transient memory use and improve performance. ||Ready for testing || ||'''Load Network from URL improvements''' ||Scooter ||Enhance the Load Network from URL to not use temporary files ||Ready for testing || ||'''Load Networks''' ||Ben ||Update the existing Pathway Commons Plugin (which provides connectivity between pathwaycommons.org and Cytoscape) to provide similar functionality as the cPath Plugin. || || == Enlist non-core developers == * '''Undirected Edges''' Lead: Mike - Add proper support for undirected edges. * '''["Consolidated graph analysis plugin"]''' Lead: Kei - Several graph analysis algorithms (e.g. shortest-path and graph statistics) are available as plugins, but they are not collected in a common location. We can borrow some code from [http://jung.sourceforge.net/ JUNG] project for this part. See ["Future Cytoscape Features/Simple graph statistics"] page. == Backlogs from 2.5 == * '''Linkout from Attribute Browser''' Lead: ??? - Get Linkout and Linkout from Attribute Browser using the same code. Make sure that linkout works for any attribute, not just ID. * '''Cytoscape Class Cleanup''' Lead: ??? - Ongoing. * '''!CyAttributes Name Clashes''' Lead: ??? - Related to attribute namespaces? == Move to 3.0 == * '''Attribute namespaces.''' - Extend attributes to include the concept of a "namespace". This could be used to bind node attributes to specific networks, to specific groups, or to simply provide some assurance of uniqueness for plugin authors by binding an attribute to a plugin. * '''Headless mode/Layering.''' See the [:CodeLayering:Layering RFC] and the [:HeadlessModeRFC:Headless Mode RFC]. * '''Refactor event handling, GINY, and others.''' As always, there is much refactoring to be done. Cleaning up event handling is particularly important because the current disorder is causing problems for plugin writers. * '''Support for ["Molecular Interaction Maps"] and/or SBGN.''' Lead: Allan [''Agilent, MSKCC, NCI?''] - To correctly render Molecular interaction maps or Systems Biology Graphical Notation would require the development of several new node shapes and other graphical capabilities. We will want to incorporate this support incrementally over two or more versions of Cytoscape. Some possible features (in order of difficulty, only a subset to be implemented) |
Line 22: | Line 67: |
* '''Support for layered graphics.''' [''MSKCC, Agilent, Gladstone?''] The goal is to allow users to add images or other graphical objects to the background and foreground of networks to further enhance network visualizations. * '''Cytoscape Themes.''' We think it would be useful to provide customized versions of Cytoscape for specific users. An example would be a biologist themed release that would include all plugins to support import/export of biological file formats. '''Dynamic Filters.''' The intent for the changes to the filters UI is to allow dynamic selection of nodes and edges based sliders and other widgets in the filter. This isn't possible for 2.5 so we've pushed it to 2.6. * '''["Consolidated graph analysis plugin"] - '''Several graph analysis algorithms (e.g. shortest-path and graph statistics) are available as plugins, but they are not collected in a common location. We can borrow some code from [http://jung.sourceforge.net/ JUNG] project for this part. See ["Future Cytoscape Features/Simple graph statistics"] page. * '''Spreadsheet capability for attribute browser.''' The ability to manipulate attributes within Cytoscape would provide users flexibility that Cytoscape currently doesn't have. * '''["Scripting"]''' - Both general scripting language support and Cytoscape original simple scripting language. * '''Attribute namespaces.''' Extend attributes to include the concept of a "namespace". This could be used to bind node attributes to specific networks, to specific groups, or to simply provide some assurance of uniqueness for plugin authors by binding an attribute to a plugin. * '''Properties''' We need global properties that are saved in the .cytoscape directory automatically, in addition to the cytoscape.props. Some use cases are: saving the last directory used, saving bookmarks stored by users. == Refactoring == * '''Refactor Graphics Export''' Freehep is OK, but there are many bugs and few options. We should write our own graphics export that allows users to set the resolution desired for bitmaped images (gif,png,jpg) and also properly support PDF, PS, and SVG (including transparency). * '''Refactor the Network Manager to support selection and operations on multiple networks.''' It is often the case that users have hundreds of networks loaded at any given time. It would be useful to be able to perform operations (such as applying a layout) on more than one network at once. Also, we need to separate Network Panel's tree data model from GUI. * '''Refactor event handling, GINY, and others.''' As always, there is much refactoring to be done. Cleaning up event handling is particularly important because the current disorder is causing problems for plugin writers. * '''Undirected Edges''' Add proper support for undirected edges. * '''In memory session saving''' Explore writing a session file without first writing tmp files. We ''should'' be able to do everything in memory. This will prevent many permission error bugs. * Better headless mode (communicating to scripting feature?) == Backlogs from 2.5 == * Linkout from Attribute Browser * Cytoscape Class Cleanup * !CyAttributes Name Clashes * Clean up old bugs |
* '''Support for layered graphics.''' Lead: ? [''MSKCC, Agilent, Gladstone?''] - The goal is to allow users to add images or other graphical objects to the background and foreground of networks to further enhance network visualizations. * '''Spreadsheet capability for attribute browser.''' Lead: ??? - The ability to manipulate attributes within Cytoscape would provide users flexibility that Cytoscape currently doesn't have. * '''["Scripting"]''' Lead: Kei and Scooter - Both general scripting language support and Cytoscape original simple scripting language. |
Release 2.6 Use Cases / Overall Themes
- Focus on improving existing features rather than adding new features.
- Fix as many outstanding bugs as possible.
Fix as many micro-barriers as possible.
- Make sure that the workflow described in the Nature Protocols paper is fully supported. While the protocol works as described, it can be brittle in places. The goal is to make this as robust as possible. Of course, supporting this workflow should NOT preclude the use of Cytoscape in other ways. We should NOT remove capabilities or flexibility. The protocol looks roughly like this:
- Load networks.
- Load attribute, synonym, and annotation information about the networks.
- GO annotations
- attribute files
- synonyms?
Gene expression data (ArrayExpress?)
- Analyze the networks.
- MCODE
- jActiveModules
- BiNGO
- Cytoscape's built in tools like filters, selection, etc..
- Make joural quality images and publication materials.
- Export graphics
- Export session to web
Timeline
Release Date:
- The first beta release should be available before the Cytoscape retreat: Nov 6th-9th, 2007.
- The final release should go out before Christmas 2007.
Release 2.6 Features
New Features
Title |
Lead |
Description |
Status |
Cytoscape Themes. |
Sarah and Alex |
We think it would be useful to provide customized versions of Cytoscape for specific users. An example would be a biologist themed release that would include all plugins to support import/export of biological file formats. |
Ready for testing |
Filter UI redesign. |
Peng |
To construct complex filter with the combination of AND, OR, and NOT. |
Ready for testing |
Dynamic Filtering algorithm |
Peng |
develop an algorithm to apply filter with time complexity ~ lnN. N is the total number of nodes and edges.The intent for the changes to the filters UI is to allow dynamic selection of nodes and edges based sliders and other widgets in the filter. This isn't possible for 2.5 so we've pushed it to 2.6. |
Testing |
Refactor the Network Manager to support selection and operations on multiple networks. |
Mike and Kei |
It is often the case that users have hundreds of networks loaded at any given time. It would be useful to be able to perform operations (such as applying a layout) on more than one network at once. Also, we need to separate Network Panel's tree data model from GUI. |
|
[:BioWebServiceConnectivity:Web Service Client Manager and User Interface for Bio Web Services (Biomart/NCBI/KEGG)] |
Kei |
Provide a simple interface to bio-database web services that will facilitate id mapping and attribute import in Cytoscape. This will address use cases 3 and 4 listed [http://baderlab.org/IdentifierMapping here]. |
[:BioWebServiceConnectivity:RFC] is ready. IntAct, NCBI and Biomart clients are ready for testing. |
Modal Label Positioning |
Mike |
Provide an edit mode to Cytoscape that allows node labels to be moved simply by clicking on them and dragging. |
|
Clean up old bugs |
Everyone |
Ongoing. |
|
In memory session saving |
Mike |
Explore writing a session file without first writing tmp files. We should be able to do everything in memory. This will prevent many permission error bugs. |
Ready for Testing |
Properties |
Mike and Sarah |
We need global properties that are saved in the .cytoscape directory automatically, in addition to the cytoscape.props. Some use cases are: saving the last directory used, saving bookmarks stored by users. |
|
Workflow Panel. |
Allan |
A CytoPanel that presents a list of actions corresponding to the steps of the Nature Protocols workflow above. When the user clicks on an item in the list, the appropriate step in the workflow is initiated. |
|
XGMML improvements |
Scooter |
Rewrite the XGMML reader and writer to significantly reduce the transient memory use and improve performance. |
Ready for testing |
Load Network from URL improvements |
Scooter |
Enhance the Load Network from URL to not use temporary files |
Ready for testing |
Load Networks |
Ben |
Update the existing Pathway Commons Plugin (which provides connectivity between pathwaycommons.org and Cytoscape) to provide similar functionality as the cPath Plugin. |
|
Enlist non-core developers
Undirected Edges Lead: Mike - Add proper support for undirected edges.
["Consolidated graph analysis plugin"] Lead: Kei - Several graph analysis algorithms (e.g. shortest-path and graph statistics) are available as plugins, but they are not collected in a common location. We can borrow some code from [http://jung.sourceforge.net/ JUNG] project for this part. See ["Future Cytoscape Features/Simple graph statistics"] page.
Backlogs from 2.5
Linkout from Attribute Browser Lead: ??? - Get Linkout and Linkout from Attribute Browser using the same code. Make sure that linkout works for any attribute, not just ID.
Cytoscape Class Cleanup Lead: ??? - Ongoing.
CyAttributes Name Clashes Lead: ??? - Related to attribute namespaces?
Move to 3.0
Attribute namespaces. - Extend attributes to include the concept of a "namespace". This could be used to bind node attributes to specific networks, to specific groups, or to simply provide some assurance of uniqueness for plugin authors by binding an attribute to a plugin.
Headless mode/Layering. See the [:CodeLayering:Layering RFC] and the [:HeadlessModeRFC:Headless Mode RFC].
Refactor event handling, GINY, and others. As always, there is much refactoring to be done. Cleaning up event handling is particularly important because the current disorder is causing problems for plugin writers.
Support for ["Molecular Interaction Maps"] and/or SBGN. Lead: Allan [Agilent, MSKCC, NCI?] - To correctly render Molecular interaction maps or Systems Biology Graphical Notation would require the development of several new node shapes and other graphical capabilities. We will want to incorporate this support incrementally over two or more versions of Cytoscape. Some possible features (in order of difficulty, only a subset to be implemented)
links on Nodes for Processes, i.e. double-click on a Process Node and jump to a new Network View.
- editor, renderer, and graph layout support for 90-degree geometry, e.g. snap-to-grid.
- Coordinate System (like a legend except that it accommodates pans/zooms/viewport changes).
- support for adding graphical annotations on an annotation plane (see layered graphics below).
- editor, renderer, and graph layout support for new edge types, new node shapes.
- add, drag/drop structured evidence onto a Node or Edge
- editor 'templates' for composites
- sub-molecular entities, e.g. binding sites, domains, splice variants. Introduce the construct of a 'site' on a node.
Support for layered graphics. Lead: ? [MSKCC, Agilent, Gladstone?] - The goal is to allow users to add images or other graphical objects to the background and foreground of networks to further enhance network visualizations.
Spreadsheet capability for attribute browser. Lead: ??? - The ability to manipulate attributes within Cytoscape would provide users flexibility that Cytoscape currently doesn't have.
["Scripting"] Lead: Kei and Scooter - Both general scripting language support and Cytoscape original simple scripting language.