Software Group progress report for October 2008

From GO Wiki
Jump to navigation Jump to search

Software and Utilities


  • Developer transitions, training of new developer. John left the project last year. Nomi Harris covered, current developer is Amina Abdulla.
  • Reimplemented Reasoner
  • Cleared all high-priority bugs in preparation for 2.0 release
  • Regularly using OBO-Edit reasoner to suggests fixes to or to patch gene_ontology_write.obo in batch mode
  • OBO-Edit progress statistics


Development and maintenance of the AmiGO web site continues. The GO user advocacy group, taking a biologist's perspective, sets priorities for new features at the beginning of a release cycle and working with the software group to come up with a release plan. The software group develops the next release, and the GO user advocacy group becomes involved again when testing in the run-up to the release is required.

AmiGO 1.5

AmiGO_1_5 AmiGO.

The production version of Amigo was updated to release 1.5 in April, 2008 which included many new features including a GO slimmer tool, a term enrichment tool and SQL search interface (GOOSE). AmiGO 1.5 also reduced the number of long running queries that previously swamped the production nodes, and required a “killing” script to axe long running processes and malformed queries. We are happy to report the production nodes have not needed MySQL to be restarted since AmiGO 1.5 was installed.

Major features and improvements for 1.5 include:

  • Term Enrichment tool (accessible from the button/link at the top of every page)
  • GO Slimmer tool (also accessible from the button/link at the top of every page)
  • New Advanced Search page.
  • Searches are now more intelligent--will work harder to get the answers that you probably want). (top level with "FB:FBgn0040491")
  • Searches are now sorted by relevance. (top level with "pigmentation")
  • Columns can now be sorted
  • The pie charts have been replaced with bar graphs.
  • Improved download options (more formats more places)
  • Improved user interface (all over the place)
  • Regulates functionality and icons added
  • GOOSE links back into AmiGO

As part of the process of continually refining our software, the following changes and improvements have been made to the production version since the initial release:

  • Input system for slimmer and term enrichment speed increase
    • Can now take input in the many thousands
  • Rolling bugfixes
  • Rolling text fixes
  • Spam loophole on input closed

AmiGO 1.6

Considerable work has been done on the next release of AmiGO, 1.6, which is now being beta-tested. Release 1.6 will include support for several new pages to provide the Reference Genome project’s data to the public. This includes a summary page for all ortholog sets, and both textual and graphical detail pages for individual ortholog sets. Other new features being added in 1.6 are listed below. Our current schedule calls for AmiGO 1.6 to be released in production by the end of January.

AmiGO_1_6 beta.

  • Support for community annotation and real-time participation by round-tripping through GONuts
  • Graphical visualizations
  • Includes full support for Reference Genome displays
    • Links in from AmiGO (gene product details and search)
    • Details
    • Vizualization
      • Either interactive SVG and static PNG available
    • Summary
    • Cachable on the server for fast response
  • Production AmiGO site will offer optional links to beta features

Most of the new features make use of a new DBIx::Class-based API on a CGI::Application base which has improved speed, flexibility, and software clarity. We are also now making use of automated web testing enabling us to visit tens of thousands of pages and catch mistakes that may have been difficult for human testers to find, such as bad links deep in a workflow. The new APIs and design also aid the accuracy and detail of the automated testing.

Deferred features

There are a couple of features that were slated to be released in AmiGO 1.6 that were trimmed due to time constraints. These are slated to be re-added to a release in the near future.

  • Qualifiers in display: give users an easy to understand display for the qualifiers in the ontology
  • Term request client to SF: allow users to give feedback on the ontology in a very simple and friendly way.

AmiGO Beta and Alpha

The new API has enabled us to start testing new views into the GO database, such coannotation, which were previously time prohibitive. The new API will also make web services easier to create and maintain.

We’ve been experimenting with Lucene to create a search interface that is much faster and allows for very complex queries. Although Lucene is being tested as a search interface for AmiGO, the first application for this is an OpenSearch widget (allowing users to search AmiGO from their web browser’s search bar), now in testing. The OpenSearch term completion will be available as a separate service.

With the increased complexity of the GO, there is a need to improve the AmiGO ontology browser and visualizations. To this end we’ve been experimenting with two new systems. The first is an offshoot of the methods that were used to create the interactive visualization for the Reference Genome project--it’s an SVG standards-based system that allows for a lot flexibility and speed. The second is based on OpenLayers (an open source Google Maps-like framework) and provides a robust way to overlay information as well as providing an API to interested third parties who might want to create their own overlays.



  • Support for dual taxa
  • Migration to new perl API, using DBIx::Class
  • Creation of new java hibernate API, GHOUL. This will form the basis of both the refence genome tracker tool and the refG tree-based curation tool

Reference Genomes

  • Siddhartha replaced Sohel as developer for tracker tool
  • Migrated tool to GWT 1.5

Function Process Links

  • multiple scripts for extracting function-process links based on XPs and GO term names
  • Mining_function_process_links_from_pathway_databases
    • Wrote tools for extracting links in GO based on BioPAX exports from pathway databases
    • Tools for aligning GO and pathway dbs based on CHEBI xps

Logic Based QC