Title page for ETD etd-06082010-143027

Type of Document Master's Thesis
Author Jin, Lu
Author's Email Address lujin@vt.edu
URN etd-06082010-143027
Title Building Matlab Standalone Package from Java for Differential Dependence Network Analysis Bioinformatics Toolkit
Degree Master of Science
Department Electrical and Computer Engineering
Advisory Committee
Advisor Name Title
Wang, Yue J. Committee Chair
Lu, Chang-Tien Committee Member
Xuan, Jianhua Jason Committee Member
  • Java driver
  • C driver
  • Differetial Dependence Network
  • C shared library
  • Java Native Interface
  • Matlab Compiler
Date of Defense 2010-05-26
Availability unrestricted
This thesis reports a software development effort to transplant Matlab algorithm into a Matlab license-free, platform dependent Java based software. The result is almost equivalent to a direct translation of Matlab source codes into Java or any other programming languages. Since compiled library is platform dependent, an MCR (Matlab Compiler Runtime environment) is required and has been developed to deploy the transplanted algorithm to end user. As the result, the implemented MCR is free to distribution and the streamline transplantation process is much simpler and more reliable than manually translation work. In addition, the implementation methodology reported here can be reused for other similar software engineering tasks.

There are mainly 4 construction steps in our software package development. First, all Matlab *.m files or *.mex files associated with the algorithms of interest (to be transplanted) are gathered, and the corresponding shared library is created by the Matlab Compiler. Second, a Java driver is created that will serve as the final user interface. This Java based user interface will take care of all the input and output of the original Matlab algorithm, and prepare all native methods. Third, assisted by JNI, a C driver is implemented to manage the variable transfer between Matlab and Java. Lastly, Matlab mbuild function is used to compile the C driver and aforementioned shared library into a dependent library, ready to be called from the standalone Java interface.

We use a caBIGTM (Cancer Biomedical Informatics Grid) data analytic toolkit, namely, the DDN (differential dependence network) algorithm as the testbed in the software development. The developed DDN standalone package can be used on any Matlab-supported platform with Java GUI (Graphic User Interface) or command line parameter. As a caBIGTM toolkit, the DDN package can be integrated into other information systems such as Taverna or G-DOC.

The major benefits provided by the proposed methodology can be summarized as follows. First, the proposed software development framework offers a simple and effective way for algorithm developer to provide novel bioinformatics tools to the biomedical

end-users, where the frequent obstacle is the lack of language-specific software runtime environment and incompatibility between the compiled software and available computer platforms at user’s sites. Second, the proposed software development framework offers software developer a significant time/effort-saving method for translating code between different programming languages, where the majority of software developer’s time/effort is spent on understanding the specific analytic algorithm and its language-specific codes rather than developing efficient and platform/user-friendly software. Third, the proposed methodology allows software engineers to focus their effort on the quality of software rather than the details of original source codes, where the only required information is the inputs and outputs of the algorithm. Specifically, all used variables and functions are mapped between Matlab, C and Java, handled solely by our designated C driver.

  Filename       Size       Approximate Download Time (Hours:Minutes:Seconds) 
 28.8 Modem   56K Modem   ISDN (64 Kb)   ISDN (128 Kb)   Higher-speed Access 
  Jin_L_T_2010.pdf 1.20 Mb 00:05:33 00:02:51 00:02:30 00:01:15 00:00:06

Browse All Available ETDs by ( Author | Department )

dla home
etds imagebase journals news ereserve special collections
virgnia tech home contact dla university libraries

If you have questions or technical problems, please Contact DLA.