RFC Name : Web Front End (proof of principle)

Editor(s): Sarah Killcoyne, Allan Kuchinsky

Date: October 24, 2007

Status: draft

<<TableOfContents: execution failed [Argument "maxdepth" must be an integer value, not "[2]"] (see also the log)>>

Proposal

Cytoscape offers a lot of functionality for a desktop user, but more and more scientific work and collaboration is done via the web. Many popular applications also offer both a web and desktop version.Biologists find the web browser user interface an intuitive way to get things done. Since they are already familiar with the web user interface, there is less of a learning curve that the user needs to climb before being able to use the application. In order to allow Cytoscape users to use the web for their work, a basic web front end can be added to Cytoscape after relayering of the core has been finished to provide simple access to the model and to parts of the core.

Background

This is a proof of principle project that will be done after the relayering of Cytoscape (RFC 46). Some aspects of the design of the project, e.g. learning about and deciding upon a choice of alternative web-based graphical rendering packages (e.g. AJAX, GWT, Flash), can be done concurrently with the relayering of Cytoscape.

Use Cases

Scenario: collaboration via simple sharing of networks and data.

You and I are molecular biologists investigating cardiovascular disease. We work in different labs in different institutions. I have been using Cytoscape for two years, as a standalone application. You have never heard of Cytoscape and generally try to avoid installing and learning complicated new software. You use the web daily for literature searches, email. We both use microarrays and statistical data analysis programs. I have done some time course studies using microarrays, have built a biological network via literature search using a list of most differentially regulated genes in the microarray data, and have identified a small number of genes which appear to be acting as switches for regions of activity -- they are highly connected in the network and tend to be up-regulated when their neighbors in the network are down-regulated, and vice versa. This hypothesis is consistent with what I observe when I overlay my data on the network. When my putative targets are up-regulated, their neighbors are down-regulated, and vice versa. I want to corroborate my hypothesis by sending my biological network with you and having you perform the same kinds of data overlay using microarray data that you have generated independently. I email you a URL, which, when you traverse it, downloads my Cytoscape network and displays it in your web browser. You select a microarray data file in your Finder window and drag/drop it onto the web browser page. The browser client reads in the file, parses it, and presents a spreadsheet (or heatmap) view of the data. You step through the spreadsheet (or heatmap), selecting a column at a time and observing how the node colors change. You notice a similar pattern except in the case of one group of samples which have been drawn from patients who had been treated with a certain drug. You feel that this is an anomaly worth further study and tell me so in your email response to me. You also take a closer look at one gene which you think is particularly interesting. You perform a control-click mouse gesture and see a context menu that lists the names of a number of database resources. You select one of the menu items and a browser window is brought up with detailed information about the gene of interest. In the meantime, I run another literature search, this time adding the name of the drug into the search context, which generates a new network, which has noticeable differences from the first one. I overlay my microarray data on this new network and we do another couple of iterations of data visualization and network inference in this manner.

Implementation Plan

The view and application layers of Cytoscape can be swapped out to provide a web front end through use of web technologies including Tomcat, SVG and/or the Google web toolkit.

The scenario above requires the following functionality in Cytoscape browser client:

A first implementation of this front end would be limited to the minimum software required to support the functionality of the scenario above. Additional functionality could be phased in to support capabilities such as:

The goal is not to duplicate the full functionality of Cytoscape in a web front end, but rather to provide a subset of Cytoscape that is sufficient to support a conventional workflow for a non-computer-oriented life user.

Project Management

Project Timeline

It is estimated that a basic implementation could be provided in 6-8 weeks after relayering has been done. After a prototype has been worked out a release version could be done in 12-16 weeks time. An actual timeline can be worked when the relayering gets to a point that the correct hooks are available for Views/Applications to be added.

Tasks and Milestones

  1. Prototype web front end (est 6-8 weeks)
  2. Write new RFC describing release version (est 1 week)
  3. Release version (est 12-16 weeks)

RFC 46 - Cytoscape Refactor

Issues

1. Are we assuming that this is an infrequent user?

1. Are we assuming that this user always works in collaboration with a user who has full version of Cytoscape?

1. What are the further implications of 1 and 2 above?

Comments

How to Comment

Edit the page and add your comments under the provided header. By adding your ideas to the Wiki directly, we can more easily organize everyone's ideas, and keep clear records. Be sure to include today's date and your name for each comment. Try to keep your comments as concrete and constructive as possible. For example, if you find a part of the RFC makes no sense, please say so, but don't stop there. Take the extra step and propose alternatives.

WebFrontEnd (last edited 2009-02-12 01:03:36 by localhost)

MoinMoin Appliance - Powered by TurnKey Linux