page1
BIRCH - Seamless point and click data pipelining for bioinformatics
Graham Alvare1, Abiel Roche2, Brian Fristensky1* Department of Plant Science, University of Manitoba, Winnipeg, Canada R2T 2N21 and Center for Collaborative Research in Health Disparities, University of Puerto Rico2
*Corresponding author frist@cc.umanitoba.ca
Plant and Animal Genome XXIV
San Diego, California, January 9 - 13, 2016
Biolegato reuses and extends canvases and menus
to create new biological objects, each specialized
for a particular type of data.
PCD - A new language for creating BioLegato “methods” [2]
BioLegato Objects couple Data and Methods
birch - application launcher
bldna - DNA sequence analysis
blnfetch - sequence retrieval
The Object-Oriented World View:
1. A class is a formula for creating an object
2. Everything is an Object
3. Objects have Data and Methods
4. You can make new classes by reusing and extending an existing class.
Common wisdom: "If it looks like a duck, and waddles like a duck, and quacks like a duck, then it's probably a duck."
OO: If you want a duck, then design it to look like a duck, and waddle like a duck, and quack like a duck.
All it takes to add a new program as a “method”...
... is to write a menu in PCD. Thus, any program installed on
Your computer, or any program on the Web, can become a
BioLegato method.
Class: BIRD
Data: Wing, Feathers
Methods: Waddle
Class: DUCK
Data: Wing, Feathers, Bill
Methods: Waddle, Quack, Fly, Swim
Class: PENGUIN
Data: Wing, Feathers, Bill
Methods: Waddle, Honk, Swim
Reuse and extend BIRD to
to create new BIRD classes
SUMMARY
One GUI unifies most data and programs
BioLegato can utilize any data, any programs, from anywhere
OO approach models the GUI to biological concepts
tabset
# - - - - - - - - - - - - - - - - - - - - - - -
tab "General search options"
var "dbase"
type combobox
label "Database"
default 0
choices
"UniProtKB/SwissProt" "swissprot"
"GenBank NonRedundant (Protein)" "nr"
"Reference proteins" "refseq_protein"
"Protein Structure Data Bank (PDB)" "pdb"
"GenBank Patented” “pat”
"Metagenomic proteins" "env_nr"
In BioLegato, the menus correspond to methods, and the canvas corresponds to the data. Both menus and canvas are read when the program is launched. Canvases are Java plugins, while menus are written in PCD, a new, compact language that describes the contents of menus, such as buttons, sliders and file choosers. Thus, new BioLegato classes can be created by reusing existing menus and canvases, or creating new menus and canvases.
Why a Duck?
The Object-Oriented World View
Most of the PCD code specifies
“widgets”, like buttons, sliders,
and file choosers, that set the
parameters for any program
that BioLegato runs
This code creates
the Run button,
specifying one or
more programs to
run, and which
parameters to pass
to the program(s)
This poster designed using
ABSTRACT
The BIRCH system addresses many of the bioinformatics challenges
faced by laboratory researchers, including the difficulty of installing
programs, the learning curves associated with using each program and conversion of file formats. BIRCH includes a wide array of programs,
all of which are accessible through a growing family of BioLegato
interfaces. BioLegato interfaces embody the real world objects with
which biologists are familiar. These include: DNA (bldna), protein
(blprotein), DNA alignment (bnalign), protein alignment (bpalign),
NCBI keyword queries (blncbi), molecular markers (blmarker) and phylogenetic trees (bltree). Each interface gives the user an intuitive
view of the data, and allows the user to launch programs relevant to
that type of data. As importantly, in many cases output from one step
opens a new BioLegato instance. For example, a sequence translated
by bldna would appear in a new blprotein window. In many cases,
complex data pipelines are launched from simple menus, and all file
conversion functions performed automatically. The programs in BIRCH
are launched through the birch launcher, and the system is managed
using the birchadmin tool. Almost all of the functionality of BioLegato
interfaces is specified by BioLegato's easy to use language PCD. PCD
allows for the rapid addition of new 3rd party programs to the BIRCH repertoire, or the rapid creation of new BioLegato interfaces for new
types of data. BIRCH can be installed on Mac or Linux systems using
an automated install wizard.
BIRCH Web site: http://home.cc.umanitoba.ca/~psgendb
panel
var "Run"
type button
label "Run"
shell "(nice -n 4 blastp -remote -query %in1% -db %DBASE% -task %SEARCHTASK% -matrix %MATRIX% -evalue %EVALUE% %WORD% %SEG% %LMASK% %SMASK% %EQUERY% %OQUERY% %COMP% -outfmt %VOPTIONS% -max_target_seqs %MAXDISP% -out %in1%.blastp -show_gis -parse_deflines; python $BIRCH/script/blast2gi.py %in1%.blastp %in1%.tmpcsv; cat %in1%.tmpcsv | tr ',' ' ' > %in1%.csv; rm %in1%.tmpcsv; %WHERE% ) &"
close true
blncbi - run Entrez queries at NCBI
build complex queries
examine output in
blncbi spreadsheet
Point and click pipelining: When BioLegato
runs a program, output goes to a new
BioLegato object, with methods
appropriate to the type of data.
There is always a next step.
DNAML
maximum
likelihood
phylogeny
retrieve sequences
from NCBI
extract coding
sequences
blprotein - protein sequence analysis
translate
search for more defensins using
TBLASTN
retrieve hits and
combine into a
single set of
proteins
DRAWTREE
blpalign - work with protein alignments
MRTRANS multiple DNA alignment
from protein alignment
1. Create plant defensin dataset
2. Multiple alignment and phylogeny
(using a small sample of the dataset)
bltree - work with trees
blnalign - work with DNA alignments
REFERENCES
1. Fristensky B (2007) BIRCH: A user-oriented, locally-customizable, bioinformatics system. BMC Bioinformatics , 8:54
2. Alvare GGM, Roche-Lima A, Fristensky B (2012) BioPCD - A Language for GUI Development Requiring a Minimal Skill Set Int. J. Computer Appl. 57:9-16. http://www.ijcaonline.org/archives/volume57/number6/9117-3273. doi 10.5120/9117-3273
Visit us on FaceBook at
BIRCHBio