EuroPACS-MIR 2004 In the Enlarged Europe P. Inchingolo & R. Pozzi-Mucelli (Eds)
6.4
HDW2: a Powerful and Customization-Friendly Java-Based Dicom Workstation Emiliano Miniussi1, Pierpaolo Bosazzi1,2, Paolo Inchingolo1, Mauro Masè3, Aldo Vittor1 1
Health Telematic Laboratory, DEEI, University of Trieste, Italy 2 UCO of Radiology, DSCTM, University of Trieste, Italy 3
Insiel spa, Trieste, Italy
Corresponding author: Paolo Inchingolo, HTL, DEEI, University of Trieste, via Valerio 10, 34100 Trieste, Italy,
[email protected]
HDW2 (HTL DICOM Workstation version 2) is a modular application, written in Java, working as a DICOM client for a wide range of medical data, and adherent to the IHE Project. It is one of the last innovation steps of the DPACS project (Data & Picture Archiving and Communication System), started in 1995 at the Health Telematics Laboratory (HTL) of the University of Trieste [1]. Beyond typical functions of DICOM clients, HDW2 adds advanced characteristics like image preview during browsing, management and visualization of a wide range of DICOM modalities (including Structured Reporting and Waveforms for cardiology, pneumology, etc.), DICOM and non-DICOM Printing, and wide-scale configurability, as referring WS for radiology specialist, reports and images visualization WS for general practitioner, anonymized search & visualization WS for didactics, etc. An advanced tool for configuration and distribution has been developed, that allows generation of the most adequate application for each different need and its distribution/update by web, using Java Web Start technology. INTRODUCTION The DPACS project "Data and Picture Archiving and Communication System" [1], started about 9 years ago at the Health Telematics Laboratory (HTL) of University of Trieste, had (and currently still has) the goal “to develop, implement and an update a scalable, cheap and universal system with accompanying tools, to store, exchange and retrieve all health information of each citizen at hospital, metropolitan, regional, national and European levels, offering a virtually integrated electronic health record”. DPACS, currently running since 1997 at the UniversityHospital Body of Trieste (Azienda UniversitariaOspedaliera “Ospedali Riuniti” of Trieste) and in some other territorial health bodies, has been in these years a reference point for the fostering of the e-health integration from small (hospital departments) to very large (countries) health environments, using few consolidated standards (DICOM and HL7) and pursuing to a tight interconnection and partial fusion of hospital and territory services, including a promotion of health care and mobile care integrated with the hospital plants. It is obvious that in this process, during its 9 years of
life, the DPACS project has been characterized by revisions and updates of the solutions regarding the databases and the archiving servers – see the DPACS-2004 project [2], the integration among databases – see the VI-HER project [3], the management of the information flows, adhering to the concepts and the frameworks of the “Integrating the health care enterprise” (IHE) project [4], and rebuilding the terminal devices (Workstations), to assure retrieval and presentation of all types of medical data (images, curves, signals, reports, etc) in a very heterogeneous range of environments. This last point is the object of the present paper. The design and the development of HDW (HTL DICOM Workstation) started three years ago, with the collaboration of Insiel S.p.A., with the precise goal to offer an “universal” but cheap workstation able to retrieve, visualize and manage any type of clinical data, in an integrated environment. Some choices, as DICOM and HL7 for any type of data, assure that HDW can be used as a generic client for DPACS and for any other DICOM- and HL7-based archiving system. HDW version 1 was presented in Oulu during the 20th EuroPACS Conference [5]. The characteristics of this first version, fully experimented and validated by radiologists (mainly at the Hospital of Cattinara, in Trieste) and by medical doctors of other specialties, has encouraged to proceed forward. This experience has evidenced the opportunity to include some new features in version 2 of HDW (HDW2), as an easy distribution, installation and maintenance subsystem, an improved presentation of the image series making use of icons descriptions rather than textual ones, and an easy personalization of the client according to the particular environment and level of use of its current implementation. The HDW2 philosophy seems to have been a good choice for the optimization of the developing resources, and, as consequence, of the cost of the developed software, with the goal to produce a workstation the most complete as possible, able to be distributed, thanks to a powerful configuration system, in many different “partial editions” each one being a template for the needed functionalities in each particular operating environment. Finally, the adoption of IHE Frameworks for radiology and IT and the planning of using them also outside the walls of radiology [6-7] seems to be another appreciated
E.U.T. Edizioni Università di Trieste © 2004 - University of Trieste - ISBN 88-8303-150-4
215
characteristic of HDW2. HDW MAIN FEATURES HDW is a Java-based application intended to fully support the query-retrieve-visualization process of clinical data. The user is made able to interrogate a remote storage server, to recover desired studies or series and finally to visualize them in a suitable viewer. Opening local files, printing and exporting data in various formats are also implemented operations. Communications with remote archiving systems take place according to DICOM specifications, even with TLS support to be enabled when required. In a first frame of the application it is possible to specify selection criteria for a first-level patient query submitted to the server. Thereafter the user easily refines the search at study and eventually, if requested, at series level. When desired information are found, the corresponding DICOM instances may be retrieved and displayed. The retrieval operation supports images, even in compressed (encapsulated) format, structured reports (SR) and curves (Waveforms). An appropriate software module is integrated for visualization of each of these data formats: an image viewer with image processing capabilities, an SR viewer and a Waveform viewer. Being written in Java language, HDW may run on any platform for which a Java™ Virtual Machine (JVM) and Java™ Advanced Imaging (JAI) [8] exist. Deployment of HDW is possible both with Java™ Web Start (JWS) technology, to ease distribution and installation in a wide environment, and as a stand-alone application. At the moment it is mainly used on Windows and Linux systems, and deployed with JWS. GOALS OF HDW VERSION 2 The development of the second version of HDW answers to some well-defined needs. On one hand, a list of improvements was filled up as a result of the interaction with users of the first version of the software. On the other, we wanted to optimize resources to address with the application a larger target of users. One of the first goal was the easiness of use. Particular care was given to the user interface, to make it simpler and functional. Only the more used features are quickly reachable, previews of images are preferred, and mouse-keyboard combinations are widely adopted. Yet, less used but powerful capabilities are still available and may be hidden or enabled by means of configuration settings. New functionality were added, including smart retrieve, data clean on exit and automatic previews. The smart retrieve feature implies that a retrieved instance does not need to be downloaded from the server a second time if re-queried later in the same session. For privacy sake, if desired, locally cached data may be automatically deleted. Previews of series are offered at query time, by downloading in background one of the image instances of the queried series and displaying a thumbnail of it. Internationalization of the user interface was also con-
216
sidered. Supporting new native languages, not still provisioned, requires only the insertion of a proper plain text file containing the translations. The overall software architecture was developed so that now adding new features is simpler than in previous versions. The highly modular structure of the code makes HDW a sort of harmonic collage of reusable, almost independent, components. By acting mostly on configuration files only, from the same compiled code we can obtain applications with very different appearance (“editions”), exactly tailored at the different needs. As a significant side effect, each module has an autonomous life-cycle and follows its own evolution path. Thus HDW may be seen not like a single software, but as a sort of framework for cooperating modules. New versions of every component are developed and tested separately from the main application. When a satisfying maturity level is reached the old module is substituted with the new one, and the whole HDW is therefore improved. One of the goals since the first version was the easiness of deployment even in a complex, differentiated environment. While at first it was achieved mostly by JWS technology, the general modularity helped in the development of a new configuration and distribution system. With this tool an installation manager in few steps may set up and build different editions of HDW, configure them for different kinds of users and finally make them available on the web with JWS. The HDW2 client The Main Module of HDW2 builds up the framework itself. It provides global and user-interface related facilities to other modules: menus, toolbars, internationalization, messages to the user, inter-component communications, logging. It also acts as manager of the global options system, which is the core for the generation of the different HDW editions and their configuration. Options Sytem Configuration system
Edition system
When requested, the framework runs the different modules. This structure was designed to easily add and integrate new components, so that the system may grow as needed. HDW2 framework Log system
LocalFiles Module
Messages system
Toolbar & Menù system
Search & ClinicalCard Module
I18n system
Print Module
Options system
Viewer Modules
Each module is nearly an application on its own, made able to interact and cooperate with others by the framework.
The Local Files Module is an advanced DICOM-files browser inside a local filesystem. Besides a presentation based on previews with thumbnails, it also remembers recently visited folders, has a built-it DICOM-files search engine, it can manage the DICOM DIR format and may directly show DICOM tags of a file as well.
The Search and Clinical Card Module manages all the steps of the query-retrieve process toward storage servers, from patients selection based on key fields and attributes up to the download of appropriate instances. Once an individual is chosen a sort of restricted clinical card is shown, where all his data available on the remote server are progressively presented in a patient-studyseries tree fashion. Alongside some detailed information about any selected study or series, a preview of every one of the latter is displayed. This permits to distinguish at first sight data of interest and avoid waste of time, otherwise spent in unnecessary downloads.
Both local DICOM files and remotely retrieved series may be visualized by means of proper Viewer Modules. At the time of writing we have developed an Image Viewer, an SR Viewer and a Waveform Viewer.
Lastly, the Print Module offers the printing activities. Either DICOM printers or local system ones are supported, along with usual standard options for layout, paper format and so on. Other modules are currently planned for future development: RIS communication and integration, advanced searches on a per study basis, sophisticated image processing (filtering, 3D-reconstruction, consistent presentation). On the other hand, existing modules will be further improved: one example is the export feature that will be enriched with mpg (movie) capability. Configuration and deployment system The new deployment tool of HDW2 is centered on a web application developed on Apache Tomcat [9]. In few simple web pages, various different HDW editions may be built, configured and published for end-user distribution, either with JWS or with a classical download-and-install method. In the following picture a sample logical scheme of the deployment process is illustrated, from source code to final application. Actors involved are highlighted, both human (developers, installers and final users) and software (editor engine, configuration engine and so on). The developer builds some JAR files from source code – quite fast thanks to the adoption of ANT technology [10] – and arranges the templates for the generation of different editions, for their configuration and publishing. The installer, for instance the system administrator of an healthcare institution, loads these components into the publishing system. With the aid of the web application he produces the editions he needs, configures them for different sets of users, if any, and makes them available on his intranet. On his side, by simply clicking on a link in a web page, the user gets HDW2 installed and configured, exactly tailored on his needs. This deployment system provides also an easy way for software updates, e.g. when the developer releases a new version or fixes some bugs. With this feature, the various editions set by the installer may be automatically republished with the same previous settings, without the need of repeating every single step.
217
of use. An hypothetical Full Edition may be a valid workstation for primary reporting while a slightly limited one becomes a secondary reporting workstation. We may have a Limited Edition for browsing of studies or a Viewer Edition to include in a read-only media like a CD-R with DICOM DIR formatted data. The TLS connection capability may be used for remote consultation from outside the institution network. Finally, being developed according to IHE guidelines, HDW2 is suitable for each context described in integration profiles. CONCLUSIONS With HDW2 a single but highly modular and configurable product was attained, to address many different needs. Whenever new features are required, implementing them has a lower development cost and a minor or no impact on existing software code. From an unique base of software code many differentiated “editions” are obtainable, by means of a friendly deployment tool. The particular deployment system developed concentrates in a single point the configuration and distribution activities, simplifying system administrators work. Different software installations may be managed and reconfigured now very easily, as software is updated and improved. References
HDW – HTB Insiel S.p.A. is concluding its new implementation of the HIS-RIS-CIS platform – currently distributed as “Gestore 2” - using the Oracle HTB platform. HDW2 is being currently integrated with the Insiel-HBT platform, other than with the current Gestore 2 ones. HDW - IHE One of the new goals in the development of HDW has been the adherence to the IHE Project. The following actors have been identified for HDW in the second version: Image Display, Print Composer and Secure Node. Currently, the following profiles are being implemented: Scheduled Workflow Profile, Basic Security, Consistent Presentation of Images, Access to Radiology Information. Their extension outside radiology is matter of discussion (currently we are evaluating their use in cardiology, for example to manage Holter exams [6]) and, of possible proposals to the IHE Committees. We hypothesize in a next future (HDW3) the extension to other profiles and to other actors (i.e. report creator, report reader, evidence creator).
Image Display Print Composer Secure Node
SWF *
CPI * *
ARI *
SEC * * *
SOME POSSIBLE USE CASES The edition mechanism unfolds many different schemes
218
1.
Fioravanti F, Inchingolo P, Valenzin G, Dalla Palma L. The DPACS Project at the University of Trieste. Med. Informat., 1997 22(4): 301-314. 2. Inchingolo P., Bosazzi P., Cicuta D., Faustini G., Barbaro A., Miniussi E., Vittor A. DPACS-2004 becomes a java-based opensource modular system. Idem, pp. 215, 218. 3. Vittor A., Miniussi E., Barbaro A., Bosazzi P., Inchingolo P. VIEHR: an XML-based virtual integrator to compose the electronic health record from multiple queries/retrieves to servers of Enterprise and Territorial Information Systems. In: EuroPACS-MIR 2004 in the Enlarged Europe. P. Inchingolo & R. Pozzi Mucelli (eds), EUT, Trieste, 2004, pp. 501, 502, 4. Integrating the Healthcare Enterprise. http://www.rsna.org/IHE 5. Inchingolo P., Belloni R., Bergamasco S., Bosazzi P., Mininel S., Miniussi E., Radin S., Savella N., Vittor A. (2002). New trends of the DPACS project. In: Proceed. 20th EUROPACS annual meeting (Sept 5-7, 2002), J. Niinimaki, E. Ilkko & J. Reponen Eds, Oulu University Press Editor, pags.205-208. 6. Inchingolo P., Poli A., Fonda F. Proposal for a cardiology information system model based on DICOM standard and IHE Initiative for a territorial health body. In: EuroPACS-MIR 2004 in the Enlarged Europe. P. Inchingolo & R. Pozzi Mucelli (eds), EUT, Trieste, 2004, pp. 307, 310, 7. Barbaro A., Miniussi E., Vittor A., Bruno P. Buccelli M., Mininel S., Inchingolo P. Dicomization in pneumology: a step toward and extended home-hospital healthcare integration. Idem, pp. 345, 348, 8. Java Advanced Imaging (JAI) http://java.sun.com/products/javamedia/jai/ 9. Apache Jakarta TOMCAT: http://jakarta.apache.org/tomcat/ 10. Apache ANT http://ant.apache.org/