BioLegato - Semi-automated Add-Ons
From Bioinformatics.Org Wiki
Click here to go back to: BioLegato
We have no control over 3rd party authors of programs, so we have to create an Add-On Wizard that talks the user step by step into identifying documention, data and executable files, and integrating them into BIRCH/local and BioLegato.
Target audience: They've already got a program they like that they use and understand. Now they want to integrate it into BioLegato.
The basic steps are elaborated upon in the BIRCH Administrator's Guide at http://home.cc.umanitoba.ca/~psgendb/birchadmin/addprog/addprog.html
Probably most of the time, local stuff gets installed in local/pkg.
BioLegato Add-On Wizard
The wizard asks the user to choose directories and files that contain executables, documenatation or ancillary data files. It will do a pre-selection based on file extensions, and let the user check or uncheck boxes for each file selected.
Identify files Make symbolic links from bin-xxx-xxx or lib-xxx-xxx to the corresponding files in local/pkg
Pre-screening based on file extensions Ask user to verify each file, and type in a short description of the file (eg. man page, user's guide, reference guide etc. The latter could even be choices in a combo-box or similar menu.
Includes files that the program may need to do its job, such as scoring matrices, alternative genetic codes, databases to search, lists of restriction sites etc. This does NOT refer to the input files that the program might read, containing data selected from BioLegato.
For the programmer - this would be analogous to library files or fonts that a program might have to load to be able to run.
This is done in the same way as documentation.
Based on the files defined in step 1, the wizard will make a good first guess at what should be in the menu, and present the user with that as a starting point.
Input and output files
User selects whether input files(s) come directly from BioLegato, or from disk files.
We should also look into how one might also have the option of getting data from a URI. Probably the "BioLegato" way to do things would be to do a query whose result is a list of URIs, which might be selected, rather than typed in. Nonetheless, sometimes it is convenient to type in a URI, so we should probably have that as an option.
There is probably no way to automate this part. This might work if all authors of 3rd party software followed a strict Unix man-page style for defining parameters, but that is not how it is. So, the best we can do is to give the user some sort of template that lets them pick the commandline switch (eg. -t), and the type of argument (eg. nil, filename, integer etc.) and give a name to the parameter. Actually, this is what the prototype BioPCD editor already does.
The one thing we can't eliminate is the need for the biologist to invest the time needed to read and understand the documentation, and to get good enough at running the 3rd party program at the command line, before creating a menu.
Builds a shell command with several parts:
- Input filtering step(s) - we can give the user a number of existing file filters to choose from (eg. readseq), that can be plugged into the beginning of the command line.
- automatic insertion of parameters into command line - very straightforward, once the menus are built.
- Output viewier(s) - BioLegato programs, or list of know viewers (eg. PDF, text etc.) Again, we let the user choose one or more viewers, and probably some output filters, from a list.
How about, instead of a Help button, there could alternatively be a combobox that lets you select a file, and open it just by clicking on