Reprinted from American Laboratory September 2005 Creating Rich

3
Creating Rich Web-Based LIMS With Programmable XML Technologies by Dinu Toiba Laboratory information management sys- tems 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) environ- ment, 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 por- tal-like features that allow data con- sumers to prelog-in requests for test- ing, view sample status, and access reports. Other vendors offer server- based options by employing emula- tion technology such as Microsoft Corp. (Redmond, WA) Windows™ Terminal Services (WTS) and Citrix Systems, Inc. (Fort Lauderdale, FL) MetaFram ® enabling LIMS deploy- ment 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 avail- able 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 illus- trated 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 enter- prise business and manufacturing sys- tems over the years. Impressive progress in PC hardware and system technology has enabled comprehensive client-side computing with enhanced usability, flex- ibility, 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 con- nected via a LAN or WAN. Throughout the late 1980s and early 1990s, client/server was an industry buzzword, as applications were migrated from centralized minicomputers and mainframes to networks of desktop computers. 1 Client/server architecture requires software installation and updat- ing 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 soft- ware. 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 net- work 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 XML and SOAP-based Web services are now allowing developers to provide the scalability and usability required by complex systems such as LIMS. Reprinted from American Laboratory September 2005

Transcript of Reprinted from American Laboratory September 2005 Creating Rich

Creating Rich Web-Based LIMS WithProgrammable XML Technologies

by Dinu ToibaLaboratory information management sys-tems convert mass amounts of data intoanalytical information useful throughoutthe enterprise. Traditionally based onfamiliar client/server technologydeployed in a local area network/widearea network (LAN/WAN) environ-ment, these mission-critical computingsystems have generally been isolated andfully accessible only to users connected tothe laboratory’s LIMS network.

In the rush to develop products thatdeliver laboratory automation featuresthrough a Web browser interface, severalLIMS vendors added browser front endsto existing products, offering Web-enabled software. A number of thesepackages integrate HTML-based por-tal-like features that allow data con-sumers to prelog-in requests for test-ing, view sample status, and accessreports. Other vendors offer server-based options by employing emula-tion technology such as MicrosoftCorp. (Redmond, WA) Windows™Terminal Services (WTS) and CitrixSystems, Inc. (Fort Lauderdale, FL)MetaFram® enabling LIMS deploy-ment over the Web.

Both of these methods focus onextending the existing applicationreach, making LIMS accessible toenterprise clients. These approachespresented limited graphical userinterfaces (GUIs), and in some casescomplex configuration management,with less than optimal response times.Shortcomings have fueled demand fortrue Web-based solutions purposely builtto utilize advanced Internet technologyas their computing platform. A trueWeb-based application delivers anuncompromising “rich” user experience,together with unlimited enterprise reach.

This article examines currently avail-able Internet deployment options andillustrates the historical developmentof LIMS software from standardclient/server technology through

Web-enabled solutions to the arrivalof rich, scalable Web-based LIMSapplications. This technology is illus-trated by the version 10 Web-basedLIMS application (STARLIMSCorp., Hollywood, FL).

Deployment options forcommercial LIMSsolutionsThick client—client/serverapplicationsThe familiar client/server model haspowered LIMS and most other enter-

prise business and manufacturing sys-tems over the years. Impressive progressin PC hardware and system technologyhas enabled comprehensive client-sidecomputing with enhanced usability, flex-ibility, and scalability. In client/serverLIMS architecture, the client processesthe user interface and performs some orall of the application processing. Serversmaintain databases and process requestsfrom clients to extract data or updatedatabases. A LIMS application serverprovides additional business processingfor clients. Servers and clients are con-nected via a LAN or WAN.

Throughout the late 1980s and early1990s, client/server was an industrybuzzword, as applications were migratedfrom centralized minicomputers andmainframes to networks of desktopcomputers.1 Client/server architecturerequires software installation and updat-ing on all clients and is generally limitedto LAN or WAN environments.

Thin client—terminalservices basedTo quickly deploy applications overthe Web, many software developers,LIMS vendors included, adopted theterminal services approach—alsoreferred to as server-based computing.

An example of this is TerminalServices, in which all applicationexecution, data processing, anddata storage take place on theserver. Applications and userdesktops are displayed on clientsusing terminal-emulation soft-ware.2 The advantage of thisapproach for LIMS and otherenterprise system vendors was theability to expand the reach ofapplications to user desktops anddevices located throughout thenetwork or beyond it via the Web.However, this approach requiresupfront investments in robustservers and uncompromised net-work availability.

Thick client—Web-enabledapplicationsOriginally written for client/serverenvironments, several LIMS productswere modified to allow connectivitythrough the Web. By replacing directclient–database connection (i.e., opendatabase connectivity [ODBC]) withWeb services protocols (i.e., simpleobject access protocol [SOAP]), remoteaccess to databases was made possible.The advantages of this approach areaccessibility to a central database frommultiple sites and a familiar, rich user

XML and SOAP-basedWeb services are nowallowing developers toprovide the scalability

and usability required bycomplex systems such

as LIMS.

Reprinted from American Laboratory September 2005

interface. The inherent disadvantage isthe need to install and update clientsoftware on every user machine,thereby increasing IT management bur-den and limiting portability.

Early Web-basedapplicationsEarly Web-based applications offered effi-cient HTML tools for navigating theWeb, and provided broad access to awealth of content. These applicationsaim for reach—not rich—which meanssupporting the widest number of clients atthe cost of some functionality.3 For exam-ple, the requisite from a LIMS resultsentry screen is that upon editing a cell, aset of simultaneous processes would betriggered including calculations, valida-tions, and screen. In a pure HTML envi-ronment, complex solutions such as thosedescribed above could not be designedand constructed (see Figure 1).

Modern Web-basedapplicationsRecent developments in programmableeXtensible Markup Language (XML)and SOAP-based Web services are nowallowing developers to provide the scal-ability and usability required by com-plex systems such as LIMS. Rich userinterfaces created with XML form

engines, such as the integrated XMLSTARLIMS Form Definition (XFD)designer (STARLIMS), can nowreplace static HTML pages with a rich,fully functional GUI equivalent to thatachieved by thick client versions.

Leveraging these developments, Web-based version 10 was written for theMicrosoft .NET platform using XMLGUIs and Web services. The .NETplatform was chosen because of itsmajority status in the enterprise mar-ket, accessibility to scores of program-mers, strong framework for buildingrich GUIs, and built-in support of

SOAP-based Web services. This tech-nical infrastructure is powered by theconfigurable LIMS business logicdeveloped over 15 years by STAR-LIMS Corp.

Key technical requirementsfor Web-based applicationsVersion 10 was built to meet the fol-lowing technological requirements:• Rich, fully functional GUI leading

to a rich user experience compara-ble to or better than client/server

• Built to Internet standards, com-prising design norms users havegrown accustomed to on the Web,to significantly decrease trainingduration and complexity

• Zero client side installs, eliminat-ing the costly process of installingand maintaining every potentialclient machine both on the intra-and extra-nets

• Scalable, easily configurable addi-tional hardware resources and abil-ity to employ load balancing algo-rithms to supply uninterruptibleservice to a growing number of users

• A single application for both designand run time, eliminating the needto maintain special power user ver-sions on non-Web-based platforms

• Full enterprise integration via Web services

• Separation of user interface frombusiness logic with standard Webservices used to communicatebetween the two

• Predictable response times

Figure 1 Evolution of Internet technology.

Figure 2 STARLIMS version 10 architecture.

• Easy-to-use design tools that allowclient system administrators toenhance or modify system func-tionality as required by changingbusiness requirements.

ArchitectureAs demonstrated in Figure 2, version10 architecture follows that of stan-dard Web-based applications, wherethe client side is a Web browser andthe server side is composed of a scal-able and extensible application anddatabase server “farm.” Communica-tions between the client and serverare achieved through standard Webservice messaging over hypertexttransfer protocol (HTTP) or option-ally secure HTTP (HTTPS) for amore protected environment.

To take advantage of all available pro-cessing power and allow for a rich userexperience, version 10 splits its codeinto business logic, which is executedon the server side, and presentationcode run by a .NET control residingon the Web client.

To provide scalability, STARLIMSapplication servers utilize hardwareresources by dynamically creating exe-cution threads that concurrently han-dle business logic requests. The scal-able distributed server farm iscontinuously monitored by a balanc-

ing server, which analyzes the work-load and directs requests to the opti-mal server.

The STARLIMS client is a standardWeb browser that hosts a .NET con-trol charged with dynamically pre-senting the user interface. The con-trol, named the STARLIMS XFDRenderer, is automatically deployedon the client every time a new ver-sion is available. In addition to theclassic GUI controls, such as labels,buttons, and textboxes, this technol-ogy supports more complex controlssuch as hierarchical data grids, tabcontrols, and selection boxes. Fordata-aware components, special busi-ness actions called data providers areused to interface the GUI with thedata model that resides on the server.For increased security, client-sidescripting code is run in an isolated(sand-boxed) environment, and theserver side business logic code is sepa-rated from the client-side code. TheSTARLIMS XFD Renderer uses thelocal machine’s computational capa-bilities, resulting in reduced serverand network loads (see Figure 3).

The same STARLIMS client when setto design mode exposes the STAR-LIMS XFD designer, built to allowauthorized users to intuitively config-ure business rules and processes asrequirements change. Through drag-

and-drop design tools, the STAR-LIMS XFD designer dynamically cre-ates XML forms containing both lay-out tags, used in a declarative way fordescribing the user interface, andJScript.NET code, used to program-matically handle these elements, theircorresponding events, and makeremote calls to business logic serviceslocated on the server. Communica-tions between the GUI and the busi-ness logic are achieved via standardWeb services. The integrated designeris also used for creating Web servicesthat are made available to third-partyclient applications for seamless inter-operability between enterprise appli-cations to STARLIMS.

ConclusionImpressive advances in the technol-ogy continuum over the past few yearshave ushered in an era of demand forenterprise-wide LIMS data availabil-ity. This data availability, coupledwith the emergence of rich, full-featured Web-based LIMS, is facilitat-ing timely enterprise action, reducingthe total cost of ownership, andenabling multisite organizations toconform to best practices.

References1. Computer desktop encyclopedia.

Retrieved Jul 12, 2005, fromwww.answers.com/topic/client-server.

2. www.microsoft.com/technet/prodtech-nol/windowsserver2003/library/TechRef/2 c b 5 c 8 c 9 - c a d c - 4 4 a 9 - b f 3 9 -856127f4c827.mspx.

3. http://msdn.microsoft.com/library/d e f a u l t . a s p ? u r l = / l i b r a r y / e n - u s /dnwinforms/html/clickonce.asp.

Mr. Toiba is Vice President, Research & Devel-opment, STARLIMS Corp., 4000 HollywoodBlvd., Ste. 515 S., Hollywood, FL 33021-6755, U.S.A.; tel.: 954-964-8663; fax: 954-964-8113; e-mail: [email protected].

Figure 3 STARLIMS version 10 screen.