Reprinted from American Laboratory September 2005 Creating Rich
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.