SDD1.012

advertisement
SNPPEB 1.0
Software Design Document
(current document version 1.012)
Document update history:
version 1.0
Created by Fengkai Zhang on Aug 4, 2004
Description: First draft for general idea
version 1.01
Modified by Fengkai on September 29, 2004
Draw flowchart to show design, and also address the issues in SRS1.01
Version 1.011
Modified by Fengkai on Oct 1, 2004
Still address to SRS1.01
More detailed module design in section 5.
Version 1.012
Modified by Fengkai on Oct 6, 2004
Still address to SRS1.01
Modify module design in section 5 from version 1.011.
1. Description
The requirements in SRS will be fully addressed in this software design document or alternative
solution should be given. We will try to use the functionalities and service provided by NCBI to
simplify our implementation. Also, "Primer3" (http://frodo.wi.mit.edu/primer3/primer3_code.html)
will be integrated into our application within the useage condition in its copyright document.
2. Function Design
In this version of design document, we have a primary design to address the issues in SRS 1.01,
and draw a design flowchart.
a. Source file preparation
NCBI dbSNP website (http://www.ncbi.nlm.nih.gov/SNP/) provides services by email to (1)
retrieve detailed information between two STS markers and (2) get all SNP information of a list
of SNPs.
In current stage, we design our application to accept compressed XML file provided by NCBI
dbSNP website.
b. SNP information retrieval
i.
Upload source file:
The user can select source file from client computer and upload it to the server. The
server will check the file format and display SNP information or give error message
if the file format is not correct.
ii.
Display SNP information:
Fields to display one SNP: checkbox (for next step primer design), rs#, allele,
flanking sequence, orientation, verification, function class, location and other.
The user may select SNP and go to get primers.
c. Primer design in batch
i.
Parameter setup
This page will be similar to the primer3 web application to setup parameters to run
primer3. The default value will be given according to suggestions from our lab
specialists.
ii.
Display Result
This page will display the primers for a list of SNPs. The format will be customized
by our lab specialists.
3. Flowchart
Prepare source file from
NCBI dbSNP website
Webpage to
accept source file
Check file
formate
OK
Display SNP info
and choose SNPs
to get primers
Parameter setup
for primer design
Call Prmer3
Display primer
design result
Bad
Error
message
page
4. System Requirement and Running Enviroment
Programming tool: Perl, CGI, BioPerl, XML::Twig
Primer design software: Primer3
Running environment: Redhat Enterprise Linux ws3, Dell workstation Precision 670
Server: bioinfo.vipbg.vcu.edu/SNPPEB
Client: IE, Mozilla, or Netscape browser and internet connection
5. Module and Webpage Design
a. HTML:
Form to accept source file and call cgi programs
i. – welcome.htm:
(1) Give simple instruction how to get compressed XML file from NCBI
(2) Browse source file (compressed XML file)
(3) Submit source to server.
ii. …
b. CGI, PM modules
Upload files
Check files
Show error messages
Uncompress files
Parse XML file
Display SNP information
Setup parameters for primer3
Run primer3 by bioPerl
Output primers from primer3
i.
– load_process.cgi
(1) Check file name. If end with .gz (NCBI compressed file) or .xml, go to (2);
otherwise, go to (3)
(2) Upload file to server temp/ folder, (if .gz file, uncompress it, change name with
extension .xml), and pass XML file to SnpInfo::process(). Server file name will be
unique and it will be used as process id when server handles multiple requests.
(3) Echo error message for wrong file format.
(4) Applay XML::Twig to parse XML file and get corresponding information.
Information is saved in a temp file.
(5) Display SNP information through cgi. Let user select SNPs and run Primer3 by
call primer3.cgi.
ii.
– primer3.cgi
(1) Set up parameters
(2) Call Bio::Tools::Run::Primer3 to run Primer3.
(3) Display Primer Result.
iii. – Error.pm
Template to display error message and back to main page.
Download