Laboratory information management systems
convert mass amounts of data into
analytical information useful throughout
the enterprise. Traditionally based on
familiar client/server technology
deployed in a local area network/wide
area network (LAN/WAN) environment,
these mission-critical computing
systems have generally been isolated and
fully accessible only to users connected to
the laboratory’s LIMS network.
In the rush to develop products that
deliver laboratory automation features
through a Web browser interface, several
LIMS vendors added browser front ends
to existing products, offering Web-enabled
software. A number of these
packages integrate HTML-based portal-like features that allow data consumers
to prelog-in requests for testing,
view sample status, and access
reports. Other vendors offer server-based
options by employing emulation
technology such as Microsoft
Corp. (Redmond, WA) Windows™
Terminal Services (WTS) and Citrix
Systems, Inc. (Fort Lauderdale, FL)
MetaFram® enabling LIMS deployment
over the Web.
Both of these methods focus on
extending the existing application
reach, making LIMS accessible to
enterprise clients. These approaches
presented limited graphical user
interfaces (GUIs), and in some cases
complex configuration management,
with less than optimal response times.
Shortcomings have fueled demand for
true Web-based solutions purposely built
to utilize advanced Internet technology
as their computing platform. A true
Web-based application delivers an
uncompromising “rich” user experience,
together with unlimited enterprise reach.
This article examines currently available
Internet deployment options and
illustrates the historical development
of LIMS software from standard
client/server technology through
Web-enabled solutions to the arrival
of rich, scalable Web-based LIMS
applications. This technology is illustrated
by the version 10 Web-based
LIMS application (STARLIMS
Corp., Hollywood, FL).
Deployment options for commercial LIMS solutions
Thick client—client/server applications
The familiar client/server model has
powered LIMS and most other enterprise business and manufacturing systems
over the years. Impressive progress
in PC hardware and system technology
has enabled comprehensive client-side
computing with enhanced usability, flexibility,
and scalability. In client/server
LIMS architecture, the client processes
the user interface and performs some or
all of the application processing. Servers
maintain databases and process requests
from clients to extract data or update
databases. A LIMS application server
provides additional business processing
for clients. Servers and clients are connected
via a LAN or WAN.
Throughout the late 1980s and early
1990s, client/server was an industry
buzz word, as applications were migrated
from centralized minicomputers and
mainframes to networks of desktop
computers.1 Client/server architecture
requires software installation and updating
on all clients and is generally limited
to LAN or WAN environments.
Thin client—terminal services based
To quickly deploy applications over
the Web, many software developers,
LIMS vendors included, adopted the
terminal services approach—also
referred to as server-based computing.
An example of this is Terminal
Services, in which all application
execution, data processing, and
data storage take place on the
server. Applications and user
desktops are displayed on clients
using terminal-emulation software.
2 The advantage of this
approach for LIMS and other
enterprise system vendors was the
ability to expand the reach of
applications to user desktops and
devices located throughout the
network or beyond it via the Web.
However, this approach requires
upfront investments in robust
servers and uncompromised network
availability.
Thick client—Web-enabled applications
Originally written for client/server
environments, several LIMS products
were modified to allow connectivity
through the Web. By replacing direct
client–database connection (i.e., open
database connectivity [ODBC]) with
Web services protocols (i.e., simple
object access protocol [SOAP]), remote
access to databases was made possible.
The advantages of this approach are
accessibility to a central database from
multiple sites and a familiar, rich user interface. The inherent disadvantage is
the need to install and update client
software on every user machine,
thereby increasing IT management burden
and limiting portability.
Early Web-based applications
Early Web-based applications offered efficient
HTML tools for navigating the
Web, and provided broad access to a
wealth of content. These applications
aim for reach—not rich—which means
supporting the widest number of clients at
the cost of some functionality.3 For example,
the requisite from a LIMS results
entry screen is that upon editing a cell, a
set of simultaneous processes would be
triggered including calculations, validations,
and screen. In a pure HTML environment,
complex solutions such as those
described above could not be designed
and constructed (see Figure 1).
Figure 1 - Evolution of Internet technology.
Modern Web-based applications
Recent developments in programmable
eXtensible Markup Language (XML)
and SOAP-based Web services are now
allowing developers to provide the scalability
and usability required by complex
systems such as LIMS. Rich user
interfaces created with XML form engines, such as the integrated XML
STARLIMS Form Definition (XFD)
designer (STARLIMS), can now
replace static HTML pages with a rich,
fully functional GUI equivalent to that
achieved by thick client versions.
Leveraging these developments, Web-based
version 10 was written for the
Microsoft .NET platform using XML
GUIs and Web services. The .NET
platform was chosen because of its
majority status in the enterprise market,
accessibility to scores of programmers,
strong framework for building
rich GUIs, and built-in support of
SOAP-based Web services. This technical
infrastructure is powered by the
configurable LIMS business logic
developed over 15 years by STARLIMS
Corp.
Key technical requirements for Web-based applications
Version 10 was built to meet the following
technological requirements:
- Rich, fully functional GUI leading to a rich user experience comparable to or better than client/server
- Built to Internet standards, comprising design norms users have grown accustomed to on the Web, to significantly decrease training duration and complexity
- Zero client side installs, eliminating the costly process of installing and maintaining every potential client machine both on the intra and extra-nets
- Scalable, easily configurable additional hardware resources and ability to employ load balancing algorithms to supply uninterruptible service to a growing number of users
- A single application for both design and run time, eliminating the need to maintain special power user versions on non-Web-based platforms
- Full enterprise integration via Web services
- Separation of user interface from business logic with standard Web services used to communicate between the two
- Predictable response times
- Easy-to-use design tools that allow client system administrators to enhance or modify system functionality as required by changing business requirements.
Architecture
As demonstrated in Figure 2, version
10 architecture follows that of standard
Web-based applications, where
the client side is a Web browser and
the server side is composed of a scalable
and extensible application and
database server “farm.” Communications
between the client and server
are achieved through standard Web
service messaging over hypertext
transfer protocol (HTTP) or optionally
secure HTTP (HTTPS) for a
more protected environment.
Figure 2 - STARLIMS version 10 architecture.
To take advantage of all available processing
power and allow for a rich user
experience, version 10 splits its code
into business logic, which is executed
on the server side, and presentation
code run by a .NET control residing
on the Web client.
To provide scalability, STARLIMS
application servers utilize hardware
resources by dynamically creating execution
threads that concurrently handle
business logic requests. The scalable
distributed server farm is
continuously monitored by a balancing server, which analyzes the workload
and directs requests to the optimal
server.
The STARLIMS client is a standard
Web browser that hosts a .NET control
charged with dynamically presenting
the user interface. The control,
named the STARLIMS XFD
Renderer, is automatically deployed
on the client every time a new version
is available. In addition to the
classic GUI controls, such as labels,
buttons, and textboxes, this technology
supports more complex controls
such as hierarchical data grids, tab
controls, and selection boxes. For
data-aware components, special business
actions called data providers are
used to interface the GUI with the
data model that resides on the server.
For increased security, client-side
scripting code is run in an isolated
(sand-boxed) environment, and the
server side business logic code is separated
from the client-side code. The
STARLIMS XFD Renderer uses the
local machine’s computational capabilities,
resulting in reduced server
and network loads (see Figure 3).
Figure 3 - STARLIMS version 10 screen.
The same STARLIMS client when set
to design mode exposes the STARLIMS
XFD designer, built to allow
authorized users to intuitively configure
business rules and processes as
requirements change. Through drag-and-drop design tools, the STARLIMS
XFD designer dynamically creates
XML forms containing both layout
tags, used in a declarative way for
describing the user interface, and
JScript.NET code, used to programmatically
handle these elements, their
corresponding events, and make
remote calls to business logic services
located on the server. Communications
between the GUI and the business
logic are achieved via standard
Web services. The integrated designer
is also used for creating Web services
that are made available to third-party
client applications for seamless interoperability
between enterprise applications
to STARLIMS.
Conclusion
Impressive advances in the technology
continuum over the past few years
have ushered in an era of demand for
enterprise-wide LIMS data availability.
This data availability, coupled
with the emergence of rich, full-featured
Web-based LIMS, is facilitating
timely enterprise action, reducing
the total cost of ownership, and
enabling multisite organizations to
conform to best practices.
References
- Computer desktop encyclopedia. Retrieved Jul 12, 2005, from http://www.answers.com/topic/client-server.
- http://www.microsoft.com/technet/prodtechnol/windowsserver2003/library/TechRef/2cb5c8c9-cadc-44a9-bf39-856127f4c827.mspx.
- http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnwinforms/html/clickonce.asp.
Mr. Toiba is Vice President, Research & Development,
STARLIMS Corp., 4000 Hollywood
Blvd., Ste. 515 S., Hollywood, FL 33021-6755, U.S.A.; tel.: 954-964-8663; fax: 954-964-8113; e-mail: [email protected].