SOCR-R Interface Development Project
SOCR Project - Development of a SOCR-R Interface
- Project Goal: To develop an agile and functional interface between the Java-based SOCR utilities and the C++/C-based R tools, that allows SOCR to utilize variety of R resources via a web-server.
- Background: Research these two projects (SOCR and R) and consider drafting a project specification with details on what, when, how, etc. to achieve the goal of seamless invocation of R commands from a remote R server via the (Java) SOCR interface.
- The basic Use-Case:
- User starts (a new) applet (SOCR_R_Analyses.html). The applet establishes a secure connection with Java/C/JNI server and retrieves the (plug-ins) for all R-analyses that we have described (see for example how we do the SOCR Analyses: implementedAnalysis.txt).
- Then the Java client GUI displays a drop-down list of these (the way we do the standard SOCR Java analyses, for example) and allows the user to get help (R-help + Wikipedia help) on each type of analysis. Once the user selects an analysis, they are allowed to enter data, simulate data or paste in their own data – the way the Java SOCR analyses do.
- The SOCR Java GUI interface will need to configure itself according to the type of analysis selected by the user to allow full control of the parameters that go in any R-analysis that we “describe”. Looking over at JGR/RJava and other such initiatives may be helpful. Once the user selects all appropriate parameters and enters their data the Client submits the job to the SOCR_R_Server, who executes the task and returns the results back to the client. The client may then display the results in a new “Results” tab-pane under the specific analysis GUI. Note that R results could be numeric, graphical, textual. Also, error and return codes from R should be gracefully handled (reported to the user the way R does and point the user to the specific online R docs that discuss the specific type of error.
Available_SOCR_Development_Projects
SOCR_ProposalSubmissionGuidelines
"-----
Translate this page: