Differences between revisions 2 and 3
Revision 2 as of 2005-09-29 23:53:28
Size: 4052
Editor: GaryBader
Comment:
Revision 3 as of 2009-02-12 01:03:27
Size: 4063
Editor: localhost
Comment: converted to 1.6 markup
Deletions are marked like this. Additions are marked like this.
Line 5: Line 5:
  * [http://cytoscape.org/ Cytoscape.org website]
  * [wiki:FrontPage Cytoscape wiki]
  * [http://groups.google.com/group/cytoscape-announce Cytoscape announce mailing list]
  *
[http://groups.google.com/group/cytoscape-discuss Cytoscape discuss mailing list]
  * [http://groups.google.com/group/cytoscape-cvs Cytoscape CVS commit message mailing list]
  * [[http://cytoscape.org/|Cytoscape.org website]]
  * [[FrontPage|Cytoscape wiki]]
  * [[http
://groups.google.com/group/cytoscape-announce|Cytoscape announce mailing list]]
  * [[http://groups.google.com/group/cytoscape-discuss|Cytoscape discuss mailing list]]
  * [[http://groups.google.com/group/cytoscape-cvs|Cytoscape CVS commit message mailing list]]
Line 16: Line 16:
The Cytoscape development process philosophy supports effective collaborative tool building. The groups involved in Cytoscape development have all recognized common needs in network visualization and analysis as well as individual needs and priorities. Ideally, working together saves large amounts of time for each group and allows each group to spend time working on more important projects, like life science research. To effectively manage this process, the groups collaboratively brainstorm about common needs at an annual ["Cytoscape Retreat"] and throughout the year over conference calls and on mailing lists. All features that are discussed are tracked on the ["Future Cytoscape Features"] page. The Cytoscape development process philosophy supports effective collaborative tool building. The groups involved in Cytoscape development have all recognized common needs in network visualization and analysis as well as individual needs and priorities. Ideally, working together saves large amounts of time for each group and allows each group to spend time working on more important projects, like life science research. To effectively manage this process, the groups collaboratively brainstorm about common needs at an annual [[Cytoscape Retreat]] and throughout the year over conference calls and on mailing lists. All features that are discussed are tracked on the [[Future_Cytoscape_Features]] page.
Line 26: Line 26:
Plugins, or non-core features, are implemented as any plugin written by any interested developer anywhere. Developers implementing Cytoscape plugins are encouraged to make them available under an open-source license, but are free to make them available under any license, including a commercial one. Plugins that are publicly released can be announced on the [http://groups.google.com/group/cytoscape-announce Cytoscape announce mailing list] and posted to the [http://cytoscape.org/plugins2.php Cytoscape plugins web page] by sending a message to the [http://groups.google.com/group/cytoscape-discuss Cytoscape discuss mailing list]. Plugins, or non-core features, are implemented as any plugin written by any interested developer anywhere. Developers implementing Cytoscape plugins are encouraged to make them available under an open-source license, but are free to make them available under any license, including a commercial one. Plugins that are publicly released can be announced on the [[http://groups.google.com/group/cytoscape-announce|Cytoscape announce mailing list]] and posted to the [[http://cytoscape.org/plugins2.php|Cytoscape plugins web page]] by sending a message to the [[http://groups.google.com/group/cytoscape-discuss|Cytoscape discuss mailing list]].

Cytoscape is an open-source project that aims to develop a network visualization and analysis application and extensible platform. Originally developed at the Institute for Systems Biology, Cytoscape has grown to involve many groups. Currently, the groups collaborate efficiently via the following process.

Communication

Process

The Cytoscape development process philosophy supports effective collaborative tool building. The groups involved in Cytoscape development have all recognized common needs in network visualization and analysis as well as individual needs and priorities. Ideally, working together saves large amounts of time for each group and allows each group to spend time working on more important projects, like life science research. To effectively manage this process, the groups collaboratively brainstorm about common needs at an annual Cytoscape Retreat and throughout the year over conference calls and on mailing lists. All features that are discussed are tracked on the Future_Cytoscape_Features page.

There are two general types of features

  • Plugins (Non-core): available as external plugins that are optionally packaged with Cytoscape
  • Core: Ideally, Cytoscape core remains a lean and modular framework for maximal reuse. To acheive this, core features are shipped as part of Cytoscape either as:
    • Core code: present in the /cytoscape/src directory (application specific features, like menu additions)
    • Core library: jar file in the /lib directory) (majority of core features, like the graph library or task API)
    • Core plugin: jar file always shipped with Cytoscape in the /plugins directory (majority of modular features, like filters, right-click menu, data format support, etc.)

Plugins

Plugins, or non-core features, are implemented as any plugin written by any interested developer anywhere. Developers implementing Cytoscape plugins are encouraged to make them available under an open-source license, but are free to make them available under any license, including a commercial one. Plugins that are publicly released can be announced on the Cytoscape announce mailing list and posted to the Cytoscape plugins web page by sending a message to the Cytoscape discuss mailing list.

Core features

A key aspect of development is that core task prioritization is based on the selfish needs of the groups involved. This ensures that features are implemented as quickly as possible and to completion. If a development group identifies a feature that they need for their research or other work and they are prepared to implement the feature, they communicate with the rest of the Cytoscape developers to make sure no one else is already working on the feature. If someone else is working on the feature, the groups collaborate to work on the feature. The features are implemented as plugins, where possible, in space set up for each user and group. When a group is ready with a feature, it is presented to the rest of the collaborators for review (API, features, code, etc.), at which point other interested groups provide feedback. Once feedback is incorporated and testing is complete, the feature is finished and packaged appropriately in the core. It is expected that core features are professionally implemented and include full Java documentation, user manual documentation and unit tests.

Community_development_process (last edited 2010-02-09 22:09:28 by GaryBader)

Funding for Cytoscape is provided by a federal grant from the U.S. National Institute of General Medical Sciences (NIGMS) of the Na tional Institutes of Health (NIH) under award number GM070743-01. Corporate funding is provided through a contract from Unilever PLC.

MoinMoin Appliance - Powered by TurnKey Linux