[Index]

Debian-Med Projet. Free Software in Health Care

 
Andreas Tille
Phycisist Robert Koch Institut, Germany; Debian-Med Project Manager

 

Free Software in Health Care Andreas Tille <tille@debian.org> v0.1 11 March 2003 Free operating systems such as Linux are widely deployed on all sorts of servers, and also making inroads on desktop systems run by end users. The main motivations for this development are security and total cost of ownership. The end users have particularly been stimulating the development of free office applications, which have a wide audience. As for specialized tasks such as managing a medical practice, there is a much smaller set of users and thus the number of gifted programmers among this set of users is drastically smaller compared to everyday usage. However, Free Software has previously tried to address several different special fields, in some cases as well as proprietary alternatives. This trend actually also makes sense from a commercial perspective, as support and maintenance require experts with specialized knowledge, and therefore account for most of the cost anyway. As such, it becomes reasonable to have a business model in which developers give the software away freely but then charge for its support. This paper gives an overview of the current state of Free Software for medicine ranging from medical practice management up to microbiological research. Moreover, it sketches how all this software will be integrated into the Debian GNU/Linux distribution by the so called Debian-Med project, and explains the motivation for basing the project on Debian rather than some other distribution.

1. Motivation

2. Profile of target users

3.Status of Free Software for medicine

4. Examples of practice management systems

4.1 GnuMed
4.2 Torch (formerly known as FreePM)
4.3 Res Medicinae
4.4 Tk Family Practice 4.5 OIO — Open Infrastructure for Outcomes
4.6 More medical practice management systems
4.7 Why does the world need this whole lot of free programs to manage patient data?

5. What is Debian-Med?

5.1 What is Debian?
5.2 What is Debian? (next try)
5.3 Differences from other distributions
5.4 Debian-Med?
5.5 History of Debian-Med

6. Goals in detail

7. Why use Debian for medical care?

8 How does Debian-Med work?

8.1 Metapackages
8.2 Special configuration
8.3 Documentation packages
8.4 User roles
8.5 What Debian-med does not do

9. Problems for implementation Certification

9.1  Certification
9.2 Changing legal guidelines

10. Future

 

1. Motivation
There are quite a different applications of electronic data processing in health care. This results in different target users with special needs. So some kind of classification has to be done:

General practice

Outpatient Care

Medical science

There are a lot of applications which might be useful for medical science. Examples where some Free Software is available or in progress of development are:

Microbiology

2. Profile of target users
Typical target users of Debian-Med have very limited knowledge about the internals of computers. They are experts in medicine or microbiology and they need reliable tools.

The effort to download Free Software from the net, perhaps compile the source after reading installation manuals and install the compiled software on their local system is simply not acceptable because they have no qualification for this job. They just need a ready-to-run system to do their real work.

The target user also does not want to do any administration work such as caring for special needs for special user groups or keeping the system up to date.

Moreover there is only an interest in a limited subset of available Free Software. For instance they are normally not interested in development environments. However, if some services (i.e. web server) are needed for end user tools they have to work silently without intervention of the user.

There is a big need for easy-to-use software. Time is money and sometimes important to save lives in this field. So trouble caused by strange usage is unacceptable. (Bad interfaces can also endanger patients in other ways, as with Therac-25.)

Security and confidence of data are an absolute must in health care. Neither loss of data nor third party eyes on the data are acceptable. This remains valid also for the process of future updates of the software.

Non-native English speakers normally do not speak English fluently and thus they need documentation and user environment in their native tongues. This is important to spread free medical software all over the world.

3. Status of Free Software for medicine
Because microbiology plays in many fields of medicine an important role, Debian-Med also supports this group of programs. Especially in this field, many programs lack any graphical user interface. That's why many microbiologists fear to use these programs, even though they often are of good quality. Currently there are projects to collect those command-line tools under one common GUI.

The practice management software which is currently under development normally has graphical interfaces but often they are missing ergonomic features like intuitive mouseless usage.

Several existing programs which might be useful for medical tasks are not really free in the sense of the Debian Free Software Guidelines (DFSG). Programs which are incompatible with the DFSG cannot be included in Debian. This is possibly a drawback for those programs because they could profit by spreading widely on the back of Debian over the whole world.

Often microbiological programs are developed at universities by students or graduates. Once these people leave the university the programs they developed might be orphaned; i.e. , not actively maintained anymore. If their licenses are too restrictive, it may be impossible for anyone else to take over; sticking to DFSG -free licenses avoids that problem.

In medical care, often non-Intel-based architectures are used. Debian currently runs on 11 different architectures and automatic build servers normally compile software packages as necessary. If autobuilders for other architectures show problems, Debian maintainers will normally fix them and send the original authors a patch. Moreover, users can report run-time problems via the Debian Bug Tracking System.

Many programs which are written from scratch use their own non-standard file formats. However, it is often important for programs to be able to share data with each other, both for reliable exchange of patient data but also for microbiological and clinical research.

Often there are several programs which try to solve identical or similar problems. Later in this paper we illustrate this in detail for the problem of medical practice management. Normally all these programs show very interesting approaches but all of them have certain drawbacks. So joining programmers' forces might make sense here.

Sometimes the tools or backends used in free medical software are not appropriate for such applications. For instance sometimes database servers which do not use transactions are used to store patent data which is completely inacceptable. Other programs use web clients as frontend which is not really good for quick (mouseless) usage.

One important problem is that complex software packages are hard for the target users to install. But this problem can be easily solved by shipping the software as binary package - exactly what inclusion in Debian means.

4. Examples of practice management systems

4.1 GnuMed

4.2 Torch (formerly known as FreePM)


4.3 Res Medicinae


4.4 Tk Family Practice


4.5 OIO — Open Infrastructure for Outcomes

Open Infrastructure for Outcomes



OIO is a shared and free infrastructure that supports the pooling of expertise, assessment instruments, data management, training, quality assurance, and reporting tools as a way to reduce the cost of conducting outcome assessments. An alternate method to manage patient and research data was implemented. Besides predefined forms each user is able to define new ones and can specify, how these can be linked to the existing ones.

It uses PostgreSQL as a database backend which seems to be an appropriate choice for this purpose. The database backend is accessed by the Zope web application server which builds a web interface. This has its uses, but a quick access via keyboard would also be a nice feature for each type of practice management systems.

4.6 More medical practice management systems FreeMed

FreeMed
Is a practice management system written in PHP with a MySQL database backend. MySQL is not appropriate here because it lacks transactions — at least in the version which was used as long as the FreeMed project was alive. The development of FreeMed was stalled for a long time but has been awaken recently.

There is only a web frontend with the drawbacks discussed above. On the other hand it is quite a nifty web frontend which might be interesting as an additional interface to other solid database backends for instance to the GnuMed database which provides an interface which is flexible enough for this purpose.

SQL Clinic
This is a complete clinical and administrative application for providers of psychiatric housing, although the software is designed to accommodate an entire Community Mental Health Care Center (CMHC) or private practitioners (both clinical social workers and psychiatrists) working in behavioral health. Technical support is free via mailing lists. Support contracts are available from Saint Vincent Catholic Medical Centers of New York.

It uses a PostgreSQL database backend, and builds a Web interface in Perl. It is used in production for this special purpose but ist has to be checked how it can be adapted to a more common purpose.

... and others ...

There might be a handful of further programs trying to cover the same purpose.

4.7 Why does the world need this whole lot of free programs to manage patient data?
It might seem strange that there exist so many programs to manage patient data with more or less the same goals. While it might make sense to differentiate between a single practice of a general practician and managing a hospital, it really does not make sense to write several pieces of Free Software covering exactly the same purpose.

However, there are reasons for this variety:
First, there are simple historical reasons. Somebody was faced with the situation that his (or her) proprietary system did not fit his expectations and started a project, using whatever tools his skills and knowledge permitted. Unfortunately, there was little communication between different developers.

Moreover the starting phase of each project was normally more or less silent and the projects were relatively obscure. So people with the same goal were not aware of each other.

As a consequence of the different technological decisions and different designs, it is not really easy to join different projects in their current state.

5. What is Debian-Med?

5.1 What is Debian?
Linux is just the kernel of your operating system.

Well, at least this is what people who do not know Debian right might think about it. But in fact Debian is a different kind of distribution ...

5.2 What is Debian? (next try)
The Debian Project is an association of individuals who have made common cause to create a free operating system. This operating system that we have created is called Debian GNU/Linux , or simply Debian for short.

Moreover, work is in progress to provide Debian for other kernels, including in particular the Hurd , NetBSD and FreeBSD . There have even been discussions of a possible port to Windows.

These individuals, called Debian developers, are connected via the web of trust built by cross-signing GPG keys.

Web of trust

 

5.3 Differences from other distributions
Debian is not a company but an organisation.

5.4 Debian-Med?
Debian-Med is a so-called Debian internal project . These internal projects try to cover the needs of special groups of users. For the Debian-Med project these users are medical care professionals.

It is important to understand that Debian-Med is completely integrated into Debian. It is not a separate distribution. If you get the Debian GNU/Linux distribution you have all of Debian-Med.

Debian-Med takes care of program packages in the field of medicine which are already integrated in Debian. This means to check whether they integrate perfectly into the menu system and for availability of essential documentation and perhaps of translations of very important parts.

Debian-Med also builds packages of medical software which is missing inside Debian and integrates of those packages to work well with all other software in Debian.

Medical users have to concentrate on their work. The computer should help them do this work without attracting attention. That's why menus flooded with stuff they do not use, configuration stuff which the distributor could do, etc. should not bother them in everyday life. In this sense Debian-Med wants to maintain a general infrastructure for medical users.

5.5 History of Debian-Med
The Libre Software Meeting in Bordeaux is a great event where Free Software developers from all over the world can meet. There were several tracks of certain end-user-related topics. In 2001, developers in the track of Free Software in Medicine observed that free medical software is really hard to install for the target user.

Some people just started to translate installation instructions to solve this problem. But this is no real solution because keeping the translations up-to-date in several languages seems impossible.

At the social meeting in the evening the Debian developers who attended the conference had some Bordeaux wine at first ...

with Bordeaux wine

Suddenly somebody said the alarming words:

There is a laptop open!

Thus the discussion about the problem of medical software started and a talk was prepared how this kind of problem could be solved easily with Debian.

Preparing a talk

That way the idea of Debian-Med was born.
The official start of the Debian-Med project was in January 2002.

7. Why use Debian for medical care?

  1. The Debian GNU/Linux distribution has a strong focus on security and stability, which is an evident precondition for medical care tasks.
  2. The powerful packaging tools allow sophisticated depends - conflicts - replaces combinations to make sure that all components will work together.
  3. Debian has strong quality assurance for the packages. One key feature of this quality management is the Bug Tracking System which is open for everybody to report bugs and search for certain known problems.
  4. Debian is carefully tested. Each package has to undergo an evaluation process in the so called unstable distribution. Once a package has not shown any important problem for a certain time period it goes into the testing distribution. This distribution is the release candidate for the future stable distribution which is released only when all release critical bugs are resolved. This careful testing process is the reason why Debian has a longer release cycle than other distributions. However, in terms of stability this is an advantage.
  5. Each package has to comply with strict rules, the so-called policy. The advantage of these rules is that they guarantee that different packages work together smoothly.
  6. Support of 11 hardware architectures (auto builders: alpha , arm , hppa , i386 , ia64 , m68k , mips , mipsel , powerpc , s390 , sparc )
  7. Debian is developed by about 1000 volunteers. That means that every developer is free to maintain programs he is interested in or he needs for his special tasks in real life. That's why Debian is able to cover different fields of specializations — its developers just want to solve their own special problems. This broad focus is different from commercial distributions which just try to cover mainstream tasks.
  8. Moreover Debian developers need not care about the advice of a boss. All developers can have the same influence on development — they just have to do it if they want a certain feature realized.

8. How does Debian-Med work?

8.1 Metapackages
Metapackages are Debian packages with practically no real content. They just contain dependencies on other Debian packages. As such, if you want to install a meta package which depends on a collection of medical software for a certain task all these packages have to be installed to resolve the dependencies of the meta package.

As a consequence, no research for available medical software is necessary. Simply installing the appropriate metapackage will install all necessary stuff. Therefore, the user is not forced to browse the whole package list of Debian, which contains more than 10.000 packages and thus would definitely confuse a normal user because he does only need a very limited subset of this amount of packages.

The simple technique of installing all packages covering a certain tasks allows easy comparison between software covering the same task. This allows users to find out which one fits their habits best.

Metapackages have a further advantage: they make the system safe against accidental removal of packages which might be useful to solve certain tasks.

A further option is to declare conflicts on incompatible packages. For instance it might seem sane to install only one practice management system in one medical practice so as not to confuse patient databases. So it has to made sure that only one such system is installed.

Thus, meta packages are a useful tool for easy installation of a reliable system with low administration effort. The technique of meta packages and how to use them optimally is explained in detail in a talk about Debian internal projects by Andreas Tille .

8.2  Special configuration
Meta packages might contain adapted configuration to adapt certain packages to work best for the intended use. In this way it is possible to care for the special needs of Debian-Med users.

8.3 Documentation packages
As explained above, documentation is one important goal of Debian-Med. Consequently, packaging and creating of relevant documentation is an important part of the Debian-Med project.

As for translation, it might be reasonable to use the technology of the Debian Description Translation Project .

8.4 User roles
Normally there are many more applications available on a computer than an average user would need. On the other hand, not all application should necessarily be available for all users. This brings some role concept into mind.

So Debian-Med defines the group med which administrators can easily managed via debconf . When installing the package med-common , on which all Debian-Med packages depend, the system administrator defines a group of medicine users. These users will be presented with an extra menu " Med " which just contains the medical applications which are installed on the system. This makes it easy to concentrate on the tasks the users want to solve.

Moreover users of role med could have extra configuration which prepares the applications for optimal use.

Other users which are not members of the group med will not be bothered with this additional stuff.

8.5 What Debian-med does not do
Debian-Med does not develop medical software.

This is a frequently asked question because interested people often think that the Debian-Med project aims to develop medical software. This is wrong. As Debian is just a distribution of third party Free Software in general, Debian-Med just maintains for the part of Debian which is useful for medical care.

So Debian-Med is just responsible for smooth integration of third party medical software into Debian. This software is developed by other people which generally are happy that their software is distributed with the well known Debian GNU/Linux distribution.

9. Problems for implementation
9.1 Certification
Health insurance agencies demand correct supply of data which have to be compliant with the law of their particular countries. In the case of erroneous submitted data the user might run into big trouble. Therefore, accurate accounting is an absolute must for practice management systems. Only providers able to provide accurate data will stay at the market. This is true for both kinds of systems: Open and Closed Source.

As such, certifications for practice management software are needed. The German BMfGS (Ministry of Health and Social Care) has indicated that this should also be possible for Open Source software.

There is also a precedent where Open Source software was certified: Deutsche Teleckm only lets certified software access the firmware of ISDN-cards. So the drivers in the Linux kernel for those ISDN cards need certification. This will be done by defining a MD5 checksum which the code has to match.

Technically this is realized by registering the checksum of the certified source code. The verification of this checksum ensures that the actual code is identical with the code which was certified.

9.2 Changing legal guidelines
Sometimes the guidelines fixed by law may change with very short deadlines. This means the practice management software has to be changed very quickly and the user depends on timely changes. Often users have doubts that Open Source software developers could afford this because it is common sense that Open Source software is developed by some funny geeks hacking around on their keyboards far from daylight. But this prejudice is very outdated.

Production systems for practice management software definitely require commercial support. Users have to learn that Free Software does not mean free like free beer. Well the code is free of charge but if users want commercial support they have to pay for it. They have to pay for it as they would have to for any other piece of software they use in their practice. This is no different. The advantage is that the availability of the source code makes support easier and users are safe for the future. So in the longterm run Open Source software will be cheaper but you do not get it for nothing.

Moreover analyses show that free availability of the source code makes the work of service providers more easy, provides insurance for continuous independence from producer and thus it is less expensive in the long term run. Using the change of legal guidelines as an example it should made clear that Free Software is not identical to free of charge usage. Of course greater institutions like hospitals are able to hire specialists who might replace external service providers but also these specialists cost money.

Commercial support requires the expert knowhow of bioinformaticists who have knowledge in both fields: software engineering and medicine. This leads to a business model for companies that sell support for medical Free Software

regarding meaningful usage of Free Software or the choice between different Free Software projects solving the same problem. This implies a detailed knowledge of the Free Software market. Debian-Med will give a good overview about different solutions.

Installation
of the software in customers office. The ideal situation would be if all necessary programs would be included in Debian to enable trouble-free installation.

Support
by adapting the software to special requirements can be done by a support company. However, it is in the interest of the support company to forward these changes to the upstream authors to get those new features included in future versions. For this purpose the Debian Bug Tracking System might be used to supply patches.

Updating
of the installed software in case of security issues or new versions. Debian shows its strength here because this is solved by powerful tools which are of really great help for a support company.

10. Future
The first steps are done in the form of metapackages which can be used to install medical software. Developers and upstream authors have been encouraged to package additional medical software which is not yet available in Debian. More packages are visible on the horizon.

Moreover there are documents written and the requirements for a user menu structure are fixed, waiting for the new implementation of the Debian menu system. The interest regarding the Debian-Med project was increased by giving several talks.

On the one hand this attracted developers of free medical software projects. They hope for an increasing popularity of their project while Debian-Med lives from the work of those developers. Thus a kind of symbiosis can be observed.

On the other hand there is an increasing interest from users who partially offered to help regarding to their skills. In this way Debian-Med is kind of a link between developers and users.

So the first version of Debian-Med will be included in the next stable Debian release, code-named Sarge . This does not mean that Sarge will be fit to solve all medical tasks, because this depends mainly on the state of the quality of the upstream developed software. But the goal is to have several kinds of software packaged for evaluation and testing at least.

Moreover a Knoppix -based Live-CD already serves as a tool for easy demonstration of the power of Debian-Med.

 

 

 

 

This document is published under the FDL license
(GNU Free Documentation License, by its Spanish acronym. Version 1.2, November 2002)
of the Free Software Foundation. The copyright belongs to the authors. For further
details go to: http://www.fsf.org/licensing/licenses/fdl.txt


FORM DEACTIVATED SINCE
December 1st., 2005

Your questions, contributions and commentaries will be answered
by the lecturer or experts on the subject in the Linuxmed list.
Please fill in the form and press the "Send" button.


 

 

©1994-2005 CETIFAC - Bioingeniería UNER
Webmaster - Actualización: 13-Dic-2005