Difference between revisions of "SWUG:AmiGO Architecture Roadmap"

From GO Wiki
Jump to: navigation, search
(New page: == Goals == *Reduce software development time **Migrate away from legacy perl architecture **Reuse OE java model *Enhance user experience **client-side interactivity through selective j...)
 
m
 
(7 intermediate revisions by 2 users not shown)
Line 1: Line 1:
 +
== Short-term Roadmap  ==
 +
This is a mostly in order list of upcoming featues in AmiGO. These will hopefully be the beginning of a more rapid release process. The 'User Interface' items and 'Developer' items will go on in parallel.
 +
 +
=== User Interface ===
 +
These are the changes that will be seen and used by the general public.
 +
 +
==== Term Enrichement, Slimmer, and Search Relevance ====
 +
Coming in next release.
 +
 +
==== Graph view of annotations ====
 +
Views for the reference genome data. Starting with integrate of Mary's scripts with AmiGO against a live database.
 +
 +
==== AmiGO ORB interface ====
 +
Add the ability for users to request new terms when their search fails. Demoed at meeting.
 +
 +
==== Boolean additions to search ====
 +
This will change nothing for most users, but will give power users the ability to perform boolean searches on the database. It can be quietly rolled out.
 +
 +
==== GOOSE and AmiGO integration ====
 +
More closely link GOOSE with AmiGO and make sure that they are in sync (or that syncing issues are spelled out).
 +
 +
==== Wiki abilities ====
 +
Work with Jim Hu to integrate the GO NUTS wiki pages with AmiGO (work out URLs, links, etc.). This will add things like the ability to comment on terms and gene products. Examples:
 +
* [http://gowiki.tamu.edu GO NUTS]
 +
* [http://gowiki.tamu.edu/wiki/index.php/Category:GO:0035287_%21_head_segmentation GO NUTS example]
 +
 +
==== Bi-axial viewer ====
 +
Mainline this AJAXy component.
 +
* [[AmiGO:_Prototypes#Early_Biaxial_and_SVG_Viewers|demo]] on demo page
 +
 +
=== Developer ===
 +
These are backend changes that will enable some of the changes of the frontend and make development and maintenance easier.
 +
 +
==== API for AmiGO ====
 +
A broad refactorization of the AmiGO codebase to made extensions and programming easier. This will be an ongoing process and is related to pretty much everything.
 +
 +
==== ORB API stablization ====
 +
Make sure that ORB has a stable API and backend. The API will be the important part; and after that is satisfactory, we can explore making ourselves less dependent on SF.
 +
 +
==== Proper session handling (Kart) ====
 +
Solidify the way that AmiGO handles user information. Will allow seamless progression from one AmiGO component to another.
 +
 +
==== OBD-XML output (OBO backend) ====
 +
A first step in using OBO as a backend and an exercise in using AJAX techniques on the frontend. Also a way of offering a web API to AmiGO.
 +
 +
==== Full OBO backend ====
 +
All the power at our fingertips.
  
 
== Goals ==
 
== Goals ==
  
 
*Reduce software development time
 
*Reduce software development time
**Migrate away from legacy perl architecture
+
**Migrate away from legacy perl architecture (go-db-perl)
**Reuse OE java model
+
** [http://wiki.geneontology.org/index.php/OBO-Edit:Datamodel Reuse OE java model]
  
 
*Enhance user experience
 
*Enhance user experience
**client-side interactivity through selective javascript
+
**client-side interactivity through [[AmiGO:_Prototypes|selective use of javascript]]
 
**Seamless flow through components
 
**Seamless flow through components
  
Line 17: Line 64:
 
== Transitioning from perl to java ==
 
== Transitioning from perl to java ==
  
[[Image:amigo-perl-arch.jpg]]
+
[[Image:amigo-perl-arch.png]]
[[Image:amigo-java-arch.jpg]]
+
[[Image:amigo-java-arch.png]]
  
  
  
 +
[[Category:AmiGO]]
 +
[[Category:Web Presence Working Group]]
 
[[Category:AmiGO working group]]
 
[[Category:AmiGO working group]]

Latest revision as of 19:27, 8 November 2007

Short-term Roadmap

This is a mostly in order list of upcoming featues in AmiGO. These will hopefully be the beginning of a more rapid release process. The 'User Interface' items and 'Developer' items will go on in parallel.

User Interface

These are the changes that will be seen and used by the general public.

Term Enrichement, Slimmer, and Search Relevance

Coming in next release.

Graph view of annotations

Views for the reference genome data. Starting with integrate of Mary's scripts with AmiGO against a live database.

AmiGO ORB interface

Add the ability for users to request new terms when their search fails. Demoed at meeting.

Boolean additions to search

This will change nothing for most users, but will give power users the ability to perform boolean searches on the database. It can be quietly rolled out.

GOOSE and AmiGO integration

More closely link GOOSE with AmiGO and make sure that they are in sync (or that syncing issues are spelled out).

Wiki abilities

Work with Jim Hu to integrate the GO NUTS wiki pages with AmiGO (work out URLs, links, etc.). This will add things like the ability to comment on terms and gene products. Examples:

Bi-axial viewer

Mainline this AJAXy component.

Developer

These are backend changes that will enable some of the changes of the frontend and make development and maintenance easier.

API for AmiGO

A broad refactorization of the AmiGO codebase to made extensions and programming easier. This will be an ongoing process and is related to pretty much everything.

ORB API stablization

Make sure that ORB has a stable API and backend. The API will be the important part; and after that is satisfactory, we can explore making ourselves less dependent on SF.

Proper session handling (Kart)

Solidify the way that AmiGO handles user information. Will allow seamless progression from one AmiGO component to another.

OBD-XML output (OBO backend)

A first step in using OBO as a backend and an exercise in using AJAX techniques on the frontend. Also a way of offering a web API to AmiGO.

Full OBO backend

All the power at our fingertips.

Goals

  • Reduce software development time
  • Interoperate with externally developed software
    • Client-side (javascript plugin components)
    • Server-side (JSF)
      • Share components with EBI OLS, QuickGO, NCBO BioPortal

Transitioning from perl to java

Amigo-perl-arch.png Amigo-java-arch.png