LIMS Architecture

This paper describes the background and core competencies of BioSoft Integrators LLC., and introduces the LabOptimize™ LIMS laboratory tracking system.

BioSoft Integrators

BioSoft Integrators Inc. was formed in 2012 to meet the sample tracking, high performance compute/analysis and data handling challenges of life science laboratories. BioSoft Integrators designs, builds and supports customized laboratory tracking systems built our proprietary building block base.

BioSoft Integrators concentrates on assisting start-up companies who are taking ground-breaking biotechnology from research mode into production or to regulatory bodies approved for clinical use. The company’s goal is to free its customers’ staff to concentrate on more critical competitive advantages: increased throughputs, better results, data analysis, expanded service offerings, validation of science, publications and collaborations, etc.

Systems based on BioSoft Integrators LabOptimize™ System are currently running in biotech research, academic institutions, manufacturing and diagnostic domains in a dozen time zones, in some cases handling heavy demand twenty-four hours a day, seven days a week. Licenses are server-based vs seat-based, without annual renewal fees, and are priced to be more cost-effective than hiring, training and retaining an in-house team dedicated to the mechanics of process tracking and analysis.

The licensing model makes the LabOptimize LIMS™ an attractive alternative to budget conscience laboratories while the scalability and flexibility make it an ideal choice for life science ventures on the road to clinical adoption. BioSoft Integrators earned its genetic domain experience at the lab bench in high-throughput

Human Genome Project labs and at biotech start-ups (BioSoft Integrators’ founders have co-authored multiple research papers and are responsible for the Illumina GTS LIMS, Infinium LIMS, Illumina LIMS platforms and countless other platforms). Database and LIMS skills have been refined in the field on large-scale laboratory tracking projects.

BioSoft Integrators has hands-on experience integrating LIMS with liquid handling robotics, various laboratory instruments, other databases, as well as with customers’ proprietary analysis algorithms and hardware. The company’s experience in all of these areas helps to flatten learning curves and shorten project cycles.

Traditional LIMS solutions offer pre-canned workflow with the promise of accelerated deployment because the workflows are pre-written. In actuality, the pre-canned workflows are not representative of the laboratory’s standard operating procedures (SOPs) causing the lab to either revise their SOPs, or pay the LIMS company for customization of the pre-canned workflows to adhere to their processes. BioSoft Integrators understands that typically laboratory’s have unique ways of accessioning samples, managing inventory, executing assays, generating reports, connecting to systems, etc. Because of this, LabOptimize was developed with customization in mind; the base core is the, building block base, and the workflows connectivity, reporting and logging is tailored to the laboratory’s specific needs affordably.

When the company launched BioSoft Integrators LabOptimize System in early 2012, its configurable laboratory information management (LIMS) architecture built on the Java programming language and XML markup language was hailed as a much needed tool for today’s laboratory needs. BioSoft Integrators believes its robust, flexible technology will continue to stand-out as its adoption rate continues to rise.

The powerful core workflow engine combined with customizable user interface features flexes to handle both wet and ‘dry’ lab requirements at any throughput level, cost-effectively. Novel chemistries, processes, and analysis steps can usually be brought under LIMS control within weeks. Simple changes to task screens or workflow behavior take minutes to apply. The resulting customized LIMS can be revised, extended and scaled-up by BioSoft Integrators or an in-house software developer.

Technical Notes:

BioSoft Integrators lab tracking system is based on a stable architecture that serves as the core workflow engine. BioSoft Integrators LabOptimize System offers ease of deployment, reliable connections, and short response times under load.

Server: The core workflow engine of LabOptimize is written in 100% Java and deployed as a web application hosted by a Java web or EE application server. HTTP (used by the World Wide Web) minimizes performance bottlenecks and provides automatic retry in the event of a network interruption. Once configured and customized, the LIMS web app is deployed to the customer’s choice of application server and operating system: Jetty, Tomcat, JBoss, or Sun Java System App Server, Windows, or Linux (BioSoft Integrators tests on Tomcat on the Windows platform).

Like any web app, the LIMS can be configured to accept requests from outside the local intranet or can be secured behind a firewall. Powerful activity logging is available from both LabOptimize and the app server. The benefit of developing LabOptimize using Java allows clients to complete in-house development because (1) Java is a universal language known by most software engineers and (2) allows for zero dependency on proprietary base code; allowing customers to eliminate reliance on BioSoft Integrators customization support if desired.

Web browser clients send GET and POST requests to the LIMS URL, e.g. http://AppServerHost/ABC_LIMS/ . The app server dispatches the request to the web application. Laboratory robots and other devices or applications communicate with the LIMS server by sending clear text or SSL messages via HTTP POST method. Persistent connections are not required which minimizes data corruption and load on internal networks.


The XML-based process design using LinxML™ is an XML vocabulary (tag library) extended to support the LIMS configuration and to serve as an application programmer’s interface (API). XML files written in LinxML syntax specify to the LabOptimize server what tasks to include in the workflow, what screens to show to the user when a task is selected, and what to do with the data received in a request.

LabOptimize XML vocabulary supports default behaviors like:

  • queuing
  • copying contents between containers
  • rendezvous
  • batching
  • conditional routing
  • validation of an item’s status and identifier

Systems can be rapidly configured and reconfigured in a text editor or XML editor. New steps in a workflow (tasks) can be added to the XML configuration files and deployed to the server in minutes. More complex tasks may require customization by Java coding to override default core workflow engine behavior.
Depending on the lab workflow, 30 – 70% of task screens may be configured in a text editor vs coded by a programmer. This feature significantly reduces costs and time to test. Because LabOptimize accepts requests marked-up in this syntax from any XML client, load testing can be easily automated using LabOptimize XML transcripts.

User interfaces:

The visible layer of the tracking system is a set of client or ‘task’ screens that communicate via HTTP POST with the LIMS server. All BioSoft Integrators’ systems include standard LIMS browser screens to aid in configuration, queue management, workflow status and history reporting. Configuration and customization produces a set of project-specific task screens. Each day, lab technicians, analysts, scientists and lab managers interact with these screens to perform their work.

Lab personnel may use a web browser to access the LIMS from client machines running Windows, Unix, or Linux. Tasks may take advantage of configured LabOptimize XML to draw screens in the browser, or developers may support more complex interactions by writing custom HTML (usually Java Server Pages). Non-browser clients may be written in C#, Java Swing, Perl or any language that can format an XML message and send it via HTTP POST to the LIMS server’s URL. Automated client applications and periodic polling programs are commonplace in LabOptimize-based LIMS systems.


The persistence layer in the BioSoft Integrators LabOptimize is the database; there is no data buffering or caching inside the web application or app server. LabOptimize table schema and other database objects (stored procedures, et al.) collectively are called LabOptimize Core™. LabOptimize Core can be created on any JDBC-compliant database server (e.g., MS SQL Server, Oracle). The streamlined table schema is optimized for handling tens of millions of records without compromising sub-second response times. The vertical, write-optimized table design works smoothly with LabOptimize XML-configured workflows to minimize coding requirements. A consistent audit trail (who, where, when, what, etc.) is maintained for each run of a workflow task. If data complexity calls for custom tables to augment the core tables, LabOptimize offers a rich API for reading and writing data in custom tables or from external data sources. The audit trail is exclusively maintained in one set of core tables on a licensed LIMS server.

Recommended Posts