DATA MANAGEMENT IN A HOSPITAL ENVIRONMENT.
THE USE OF A MINICOMPUTER. (DONNEES
D'ADMINISTRATION DANS EN ENVIRONMENT
D'HOPITAL. L'EMPLOI D'UN MINCOMPUTEUR)

Raymond Cheng, H. Dominic Covvey, Carlyle
Scase, John Gruer, Michael Bennett
University Hospital
London, Ontario

ABSTRACT

An interim solution to our need for data
management of medical information was to
design under FORTRAN IV on a PDP-10 a
relatively flexible data management program
to handle specialized areas. More recently
our work has shifted in the direction of
creating a language with functions similar
to those used in Massachusetts General Hospital's
language "MUMPS". Our approach has been to
develop this as a new version of FOCAL.
FOCAL-11 has been incorporated on a PDP-11/40
under RSX-11/D and is being modified to
permit multi-terminal access, string
manipulation and access to the data management
facilities of RSX-11/D. Work is underway
in creating flexible data management routines
callable by FOCAL and FORTRAN and on a
report generator sublanguage. Examples
of the work which we have already completed
include: an Admitting program, a storage
and retrieval system for treatment evaluation,
and a report generation system for optical-
mark check-list patient records. (Une solution
temporaire a notre besoin de données d'
administration de renseignements médicaux
était de préparer sous FORTRAN IV sur un
PDP-10 un programme de données administratives
plus ou moins flexible afin de manier
des endroits spécialisés.

Plus récemment nous avons change nos efforts
afin de créer un langage aux fonctions
semblables à celles qu'on emploie dans le
langage (MUMPS) de l'Hôpital Général de
Massachusetts. C'était notre intention
de le développer comme une nouvelle
version de FOCAL.

FOCAL-11 a été incorporé sur un PDP-11/40
sous RSX-11/D et on est en train de le
modifier pour permettre l'entrée multi-
borne, manipulation par corde et facilités
d'accès aux données d'administration de
RSX-11/D. Maintenant on travaille pour
# DATA MANAGEMENT

créer des routines flexibles de données administratives que l'on peut mettre en action par FOCAL ou FORTRAN, aussi sur un générateur de rapport sublingual.
Des exemples du travail que nous avons déjà terminé comprennent: Un programme d'admission, un système d'emmagasinage et de rétablissement pour l'évaluation de traitement, et un système de rapport générateur pour marques-optiques liste de contrôle des rapports sur les malades.)

## INTRODUCTION

Today's health care delivery systems face a major problem: the cost of health care is rising uncontrollably. This is not only because of the rising cost of facilities, communication and staff, but also because of increasingly complex medical procedures, greater demands for better medical care, and the sheer burden of information handling. One way to quickly and substantially increase the efficiency with which the health services can handle information is the intelligent application of any available computer resources to handle health care data. This should increase the capacity of the system to meet the current demand.

A huge amount of information has to be kept for hospital administration, medical records and research, and hospital services. By using computers, some advantages are foreseeable. They are:

1) reduction in the clerical work of filing and cross-referencing and re-recording information

2) reducing the storage space required by maintaining a single copy of the record in the computer, which is easily accessed by different departments

3) the provision of fast information retrieval and communication

4) easily available and easily used statistical and arithmetic computation facilities

5) test and examination interpretation

6) and, report generation, reducing typing and retyping of reports.

To achieve such goals, several computer programs have already been written by the Medical Development Group at University Hospital, London, Ontario. An Admitting Program reduces clerical work and provides information retrieval and maintainence on patients being booked, admitted and discharged (Scase 1975). A Respiratory Function program calculates routine respiratory parameters and prints out results in a report form (Scase 1975). A Psychological Test Battery scores and interprets psychological tests of the following types (presently):

1) WAIS-Clarke Vocabulary Test

2) Raven Progressive Matrices
DATA MANAGEMENT

3) Trail Making Test

4) Minnesota Percepto-Diagnostic Test

5) 16 PF

6) and the MMPI (nearing completion)

filled out by patients and outputs appropriate diagnostic statements. A Report Generator creates reports from a psychiatric admitting record for patients admitted to the psychiatric ward. A batch-oriented data management program stores information and provides reports for a study which is intended to evaluate the cost and effectiveness of an outpatient in-community novel treatment program. Programs are also available or in the final stages of development to create reports from our Psycho-physiology laboratory and to handle nursing schedules and departmental finances.

All of the above basically require a flexible data management system. We have, to date, developed all of our applications in FORTRAN IV, but the facilities required for data management are not easily created in FORTRAN. Thus a data management system (DMS) using a data management sublanguage is proposed to fill the need. This will run on a PDP-11 type processor.

A medical data management system must be able to meet the variety of requirements exemplified by the studies mentioned above: it must be flexible. Flexibility in medicine means the ability to structure files according to the specific needs of a group or department. A truly useful data management system must incorporate a sublanguage accessible by higher level languages, which creates files and allows user programs to interact with them without programmer knowledge of the disc structure. There must exist adequate facilities to map one structure into another as the needs of an area change. Needless to say, this must be accomplished without major reprogramming. Very few minicomputer system provide resources of this type.

In the hospital, reports are used as the tool for communication between and among the medical care personnel, the administration, and referring and following physicians. Any adequate DMS should be able to produce and communicate reports to the appropriate departments and individuals requiring information. A statistical package providing continuous monitoring of treatment and activities would be useful for evaluating, for example, the result of treatment with drugs or the level of use of a particular service.

The amount and type of information collected varies from one patient to another. The system should be able to handle variable length patient records. Deletion and appendage of information to a record should be easily accomplished by the system. In order to make the system accessible by all professionals in the hospital, the feature of on-line enquiry
# DATA MANAGEMENT

must be included and must be simple to use. Error diagnostics given by the system should be clear and errors should be recoverable.

## USING PROCEDURE LANGUAGES IN CREATING A DMS

### Advantages

Presently, the two most active programs running on our PDP-11/40 system are the Admitting and Respiratory Function programs. They are written in FORTRAN and have a few FORTRAN callable assembly language routines. FORTRAN and MACRO were chosen because:

1) both FORTRAN and MACRO come with the RSX-11/D monitor which we are running

2) FORTRAN is good for arithmetic computation needed by the Respiratory Function program

3) FORTRAN is machine independent

4) most programmers are familiar with FORTRAN, and

5) the assembly language is flexible and is required for implementing special features not supported by FORTRAN, for instance, file management.

### Disadvantages

1) Under the RSX-11/D system, the editor, the FORTRAN compiler and MACRO assembler are single-user programs.
This significantly reduces the access to the machine for program development. This is, however, to be overcome in an upcoming revision of the operating system.

2) To install a program, the time consuming process of creating (editing), compiling and linking must be followed.

3) Once an error is found in the program, the whole procedure of editing, compiling and task building must be repeated.

4) MACRO is an assembly language requiring a relatively sophisticated programmer.

5) There are no string manipulation features in either FORTRAN or MACRO.

6) Neither of these are designed for the purpose of data management.

7) Comparing FORTRAN or MACRO to either FOCAL or BASIC, the former two are more difficult to learn and use, and in addition, require a knowledge of an editor and linker.

8) Programs written in MACRO are machine dependent.

## FOCAL - THE FIRST STEP TO OUR OWN DMS

To overcome these drawbacks, a multi-user FOCAL-11
# DATA MANAGEMENT

has been implemented under RSX-11/D. String manipulation and access to a data management sublanguage are being added at this time. FOCAL has a simple and easily learned instruction set. Since it is an interpreter, program creation, modification, and debugging can be accomplished in one step. A large library of FOCAL programs suited for many applications can be easily converted and run under RSX-11/D.

## LIMITATIONS OF FOCAL

Several limitations also exist in FOCAL. They are:

1. Programs are not directly transportable. FOCAL is only implemented on computers manufactured by Digital Equipment Corporation (DEC). Once the DMS is written in FOCAL, it can only be run on DEC machines.

2. Slower Speed Compared to a Compiler Language. It is recognized that the execution speed of an interpretive program is slower than the corresponding code generated by a compiler or assembly language system.

3. Smaller Instruction Set. FOCAL has a relatively small instruction set compared to BASIC or FORTRAN. It does not have the capability of matrix operation as in BASIC. Also, it is not nearly as sophisticated as FORTRAN for scientific applications.

Since, however, FOCAL is only one of the languages which have access to the data management sublanguage, languages may be selected suited for a particular application. The ease of programming in FOCAL and its flexible input/output features make it still a very attractive language for implementation in a medical DMS.

## BRIEF DISCUSSION ON CHOICE OF LANGUAGE

An interpretive language is chosen because a typical program written in it occupies less core than the object code generated by a similar program written in a compiler or assembler language. In addition, as long as the interpreter is reentrant, all programs written in that language can share the same utility routines which also effectively reduces the memory required. An interpretative language is more popular and can be used by much less sophisticated programmers.

BASIC was preferred to FOCAL, but was not chosen because the single-user FOCAL has been easier to modify and BASIC was not available to run under the RSX-11/D Executive. We did not create a language of our own since it is much easier to build the DMS by adding new features to an existing program rather than to start from the very beginning. On the other hand, the DMS implemented in FOCAL is just a proto-type system in a long-term project. Other languages will be used wherever
# DATA MANAGEMENT

necessary. The language chosen will depend on the function of the routine. It is also possible to write programs under a compiler and to call them in FOCAL through a call statement.

## REASONS FOR WRITING OUR OWN DMS

There are quite a few data management systems available on the market, for example: TOTAL, GIS, IMS, MUMPS, IMAGE and so on. Most of them are for industrial applications (TOTAL, GIS, IMS), are stand-alone systems, and are expensive. Most require large-scale hardware. The only two data base systems available from the computer manufacturers for minicomputers are IMAGE (Hewlett-Packard) and MUMPS (Digital Equipment Corporation). IMAGE is a multi-user system on Hewlett-Packard machines.

MUMPS is a multi-user, medical oriented (Gabrieli 1970), single language, data base management system. It is a stand-alone system and runs on PDP-11 and PDP-15 computers. Arithmetic calculation in MUMPS is poor, and modification of the language itself is difficult. Also, MUMPS has no capability of handling real-time tasks simultaneously with data base management.

## PROPOSED FEATURES OF OUR DMS

### 1. It Should Operate in a Multi-task Environment

In hospitals, different departments and different projects often share the same resource, for instance, a PDP-11. Data management does not require full-time use of that resource. For example, the Admitting and Respiratory Function programs are running concurrently on our system now. The Admitting Program is used whenever a patient is booked for admission or admitted to the hospital, and the Respiratory Function program is used throughout the day after routine respiratory analysis. We cannot afford to have a data base system that supports these activities but which does not allow real-time tasks, for instance, our Psycho-physiology laboratory to run concurrently (Covvey 1975).

### 2. Arithmetic Computation

In the field of medical research, arithmetic computation plays an important part. Most of the routines in the Respiratory Function Program involve arithmetic computation. Surveys of patients' records, inventory control, and treatment method requires a fast and flexible arithmetic package.

### 3. Callable Sublanguage

In order to make the DMS flexible and useful, access to this system via callable routines must be available. It must be callable by any language. The user should be able to incorporate the data management features in the language of his choice without having to develop his own access methods.
# DATA MANAGEMENT

## 4. Ease of Modification

Adequate data base management in the medical area is relatively new, especially on smaller machines in the distributed environment. Since it is difficult to specify its exact requirements in its application to such a huge area, the system should be easily modified and added to and flexible enough to allow many implementations, for example, of different storage methodologies.

## 5. Ease of Use

The system must be designed to be used by hospital personnel. Few know what a computer is, let alone know about the concept of data management. Hence, access to the system should be easy and in natural language format. Operations of insertion, deletion, replacement and so on have to be simple and described in simple terms. This dictates enquiry-level implementation.

## 6. Multi-User

The system should be designed to handle many users simultaneously. When one user is doing the updating, the record being updated should be protected from access by other users, while the condition of deadlock should be prevented.

## 7. Security

Information in the system should be secure. Only authorized personnel should be allowed to update and obtain information.

## 8. Access

The system should function in both on-line and batch modes. The on-line mode provides interactive response to the user and is good for query functions. Using batch mode for large scale information updating reduces the input/ output time required. Also, batch mode is essential for inputting mark-sense forms.

## CONCLUSION

Multi-user FOCAL-11 is now running under the RSX-11/D Executive at our centre. The features of string manipulation and file management are being added to FOCAL. The full-scale development of the data management sublanguage was begun in January 1975 and portions will shortly be operational. Although development will continue over a long period of time, a basic system will be operational in late spring, early summer 1975.
# DATA MANAGEMENT

In support of the development of the system, a variety of file handling routines are being created providing flexible file structuring. Work in the future includes developing a language to supplant FOCAL and in allowing other existing languages, for instance BASIC, access to the data management sublanguage.

## REFERENCES

1. SCASE, C., COVVEY, H. D., TINGEY, R. 1975 A Booking and Admitting Program on a PDP-11/40. Eighth Canadian DECUS Symposium Meeting Program.

2. SCASE, C., COVVEY, H. D., CHENG, R. 1975 Respiratory Function Data Processing. Eighth Canadian DECUS Symposium Meeting Program.

3. Hewlett-Packard Corporation Information Management System (IMAGE/3000).

4. Digital Equipment Corporation Introduction to MUMPS For Data Management.

5. GABRIELI, E. R. 1970 Concept of an Area-Wide Health Data Network. Computerization of Clinical Records. Volume 1. Grune & Stratton, Inc. Medical Publishers. New York.

6. COVVEY, H. D., SCASE, C., HESELTINE, G. F. D., STENN, P. G. 1975 Automated Psychophysiology Laboratory. Eighth Canadian DECUS Symposium Meeting Program.