Managing data in a medical office with GECAMed

The GECAMed program owes its existence to an unfortunate event: the insolvency of a major software vendor in Luxembourg.

In the aftermath of this event, many doctors were left up in the air, with no one to maintain the software in their private medical offices. Some of the users turned in their distress to the Centre de Recherche Henri Tudor to collaborate in developing a modern, future-oriented program.

In particular, the stakeholders wanted to solve the support issues caused by the vendor's insolvency with a new approach. Thus, they decided to develop a program under a free license whose support and ongoing development would no longer depend on a single company. The resulting GECAMed program [1] is licensed under the GPLv3. The acronym derives from "Gestion de Cabinets medicaux," which translates to "management of medical practices."

The Centre de Recherche Henri Tudor is a publicly owned research institute. The Luxembourg researcher and industrialist Henri Owen Tudor, among other things, built the first usable lead-acid battery based on the principle developed by Gaston Planté. The institute combines several topically oriented departments, including one with a focus on health policy (the "Santec" Team).

The program itself is available in Luxembourg's official languages: French and German, as well as in English. The user can select the preferred language individually. Although the system is based on the Luxembourg ruleset, and thus not approved for electronic billing of statutory health insurance funds in some countries, it is still possible to use the software. A successful case in Germany illustrates this.

In 2008, I took a decisive step and handed back my authorization to bill statutory health funds as a surgeon. This removed the need for an officially approved software program to document cases and bill the services provided. Free programs with integrated image management were difficult to find for surgical needs, however, and CRM software exhibited significant deficiencies in medical terms.

It was not until 2010 that the spark for using GECAMed was lit during a chat at the MEDICA trade fair in Düsseldorf, Germany, and I have been using it ever since. The front end is a Java program, with the PostgreSQL database providing the back end.

Structure

GECAMed has a modular structure (Figure 1). The module sidebar (1) contains the buttons that let the user toggle between the enabled modules. The program displays this bar permanently so that you can access the desired module directly from any part the program. The size and layout of the buttons, and their availability, is defined in the settings.

Figure 1: The three-panel main window provides quick access to all of the software modules and their respective functions.

The menubar (2) contains important actions for the respective modules and other functions. The main panel (3) changes depending on the currently selected module. The software follows this concept throughout.

For example, the Patient module lets you enter personal data (Figure 2). As in a patient's traditional paper medical records, today's electronic documentation lets you store additional documents, including scanned third-party diagnoses, letters, or x-ray images in this area (Figure 3).

Figure 2: The Patient area with all the relevant data. You can use the bar on the right to add third-party diagnoses.
Figure 3: X-ray images in DICOM format are stored, as with conventional patient records, directly with the patient's data.

Installation

GECAMed is written in Java and runs on the Linux, Mac OS X, and Microsoft Windows platforms, as well as other operating systems, provided they support Java version 1.5. The software is available as a Debian package from the project homepage. From there, you can also pick up a Windows executable, a Mac archive, or a tarball of the latest version, if you choose.

The software installed without difficulty on Ubuntu, and the system automatically resolved the dependencies. Further tests with machines running Linux Mint and Windows were also trouble-free.

After a reboot, you can type the URL http://localhost:8080/gecamed in your browser. If you are not accessing the software from the computer on which it is installed, replace localhost with the IP address of the corresponding computer. When you click Start GECAMed , the browser attempts to download the client, and the computer then typically asks you what you want to do with the file (Figure 4). You can store the downloaded file (Gecamed.jnlp ) as a launcher at any location.

Figure 4: The OpenJDK variant IcedTea experienced some difficulties when using the Browser to download the client and opening the file via Java Web Start.

When launched with Java, the program starts, but the OpenJDK variant IcedTea experienced some problems, unlike the Oracle Java version. Unfortunately, it is no longer included in the Ubuntu and Mint package repositories. You will find many how-tos for replacing Java on the Internet, however [2].

The developers paid special attention to granular rights management (Figure 5). For example, GECAMed distinguishes between users and doctors because various users need to retrieve and use information about patients. As a result, users created by the administrator have different rights. From the perspective of the software, a "Doctor" comprises a set of information stored on the system relating to the physicians working in the practice. Individual users can then access the billing information, but not the medical data.

Figure 5: As the administrator, you can define rights individually for each user.

The administrator also can modify the panel by hiding any modules that are not required. For example, because I am a surgeon, I decided to hide the Laboratory module.

Database and Adaptation

The database used in GECAMed is PostgreSQL; with appropriate skills, this allows you to make adaptations that meet your personal requirements. With the PgAdmin program from the Ubuntu repositories, you can manage the database in a graphical front end (Figure 6), which means you can add billing numbers dictated by your national ruleset (e.g., the German ruleset in my case).

Figure 6: Assuming you have the necessary skills, PgAdmin lets you modify the underlying database to add new billing values relevant to your medical office or to create specific rules.

Entering individual billing numbers is also conveniently supported directly in the Billing module by clicking the appropriate button. The corresponding tables are available in Billing . In principle, nothing keeps you from importing the whole table of fees for doctors, but for individual testing or addition of specific billing numbers, the Billing module provides an Add button (Figure 7).

© © Centre de Recherche Public Henri TudorFigure 7: The Billing module.

Letters, Invoices, Forms

To create invoices, it is a good idea to rely on the LibreOffice word processor. The Letters and Templates module gives you the opportunity to store appropriate templates with placeholders for fields in the database, and integrating the address management system contained in GECAMed was problem-free in my tests. If needed, you can design an appropriate letterhead and invoice templates in LibreOffice.

An integrated form editor lets users create printing templates adapted to the special needs of the medical office. If that is not enough, you can export the pre-configured printing templates in the JRXML format of the free reporting software JasperReports [3]. You can thus modify the reports in the Jasper iReport program and then upload the data once again.

The software will not overwrite the default templates. This means that you can use a specific version of a report available on the system for each registered doctor or assign a specific version of a template.

Backup

Clicking Administrator | Global Settings takes you to a dialog where you can configure, schedule, and launch a backup. The developers preset the path for backups to /gecamed/gecamed_backup . The DB_BACKUP_DIR=new_path property in the JBoss configuration <Gecamed installation path>\Jboss-4.0.5 .ga\server\default\conf\gecamed_server changes this setting. However, it is easier to save the automatically generated archive to an external medium at regular intervals, so you will always have an external backup at hand.

The dump file containing all of the entries from the database, along with the structure, is very small and compact. For around 1,000 patients, it weighs in at less than 10MB. The associated ZIP file with all the letters and other scanned data (e.g., x-ray images) is much larger, however, at around 300MB.

Other Modules

A number of other modules are grouped around the actual patient management functionality. An integrated DICOM viewer lets you integrate x-ray images in the database, which you can then access in the patient module. (DICOM, Digital Imaging and Communications in Medicine, is an open standard for storing and sharing medical image data and is the basis for digital archiving in doctors' offices and clinics.)

Users additionally have the option of storing lab results and managing and viewing various custom-configured forms with specific computations, such as the expected date of childbirth or BMI index.

The ability to scan third-party diagnoses directly into the module and save the associated files is also very convenient. Pictures of intraoperative findings are thus available directly in the patient's records.

The Waiting Room module provides a rapid color-coded overview of which patients are waiting to be seen. From there, if needed, you can access patient records directly for editing. This module also works directly with the Agenda module for managing dates.

Conclusions

The Luxembourg-based developers have produced a very useful piece of free software in GECAMed. Thanks to its underlying open structure, it positively invites users to adapt it to their own needs.

In this example of a surgical private practice, the software has been running stably for two years. On a newly installed server, the complete system can be restored in about an hour from backed up files. In particular, the ability to integrate patient images, including x-ray images, makes GECAMed ideal for many disciplines.

Acknowledgments

The author thanks Guido Bosch and his team at Santec and his own team led by Jens Ferring for their patience, as well as Dirk Störk from C-K-N.biz, who took a leap of faith and installed a Linux server.

The Author

Martin Schwarz is a specialist in surgery, including plastic surgery and hand surgery. In 1992, he and six colleagues founded a surgical outpatient clinic. As the person in charge of IT, he was never quite satisfied with the available medical records software, despite repeatedly switching vendors; thus, he was continually on the lookout for a new approach.