Unterabschnitte

Realisierung

Das Tumordatenbankprogramm basiert auf dem proprietären anwendungsgekapselten relationalen Datenbanksystem der Firma Progress in der Version 8. Der Zugriff auf die Datensätze sowie die Programmierung der Benutzerschnittstelle erfolgte in der gleichnamigen Programmiersprache Progress 4gl. Die verwendete Entwicklungsumgebung ProVision gestattet zusammen mit der Programmiersprache Progress der vierten Generation die graphische Gestaltung von Eingabemasken direkt am Bildschirm und die ereignisgesteuerte Programmierung. Das Tumordokumentationssystem kann entweder als Einzelplatzversion auf dem Windows PC oder als Client-Server Installation in einem TCP/IP Netzwerk betrieben werden. Clientseitig wird Windows als Betriebssystem, serverseitig Windows NT oder diverse UNIX-Derivate wie auch Linux verwendet.

Zur Arbeitserleichterung des dokumentierenden Arztes besteht die Möglichkeit Patientenstamm- und Bewegungsdaten aus einem übergeordneten Klinikinformationssystem zu übernehmen. Hierzu wurde mittels der kostenlos verfügbaren Programmbibliothek ProtoGen/HL7 [5] eine Schnittstelle für das standardisierte medizinische Kommunikationsprotokoll HL7 geschaffen [6].

Das Datenmodell der Datenbank und der Quelltext des Programms steht allen Interessierten kostenlos zur Verfügung. Die zugrundeliegende Datenbanksoftware und die 4GL Entwicklungsumgebung der Firma Progress muss jedoch direkt bei Progress Deutschland erworben werden.

Dadurch ist gewährleistet, dass alle Programmnutzer das Programm an ihre eigenen Bedürfnisse anpassen können. Dadurch ist eine leichte Integration in die vorhandene EDV- und Organisationsstruktur möglich und ein erhöhter Investitionschutz gegeben. Funktionen zur Arztbriefschreibung und Dokumentenverwaltung, die in Grundzügen im Programm realisiert sind, können somit einfach auf die jeweiligen klinikinternen Arbeitsabläufe zugeschnitten werden.

Die Benutzerschnittstelle des Programms ist modular aufgebaut, um eine problemlose Erweiterung des Programms zu gewährleisten. Diese Erweiterungsmöglichkeit ist zwingend erforderlich, da selbst ein umfangreiches Tumordokumentationsprogramm nicht alle Aspekte von vornherein abdecken kann, die möglicherweise für eine spezielle Studie von Bedeutung sind. Die Darstellung der Benutzerschnittstelle über zahlreiche kaskadierte Fenster ist für eine Windowsanwendung unüblich, wird jedoch von den Benutzern nach kurzer Einarbeitungszeit akzeptiert, da ein hoher Kontextbezug erreicht wird. Die Dateneingabe durch kontextsensitive Wertelisten unterstützt, die durch berechtigte Benutzer gepflegt werden können.

In der ersten Ausbaustufe ist das Programm neben den Funktionen zur Tumordateneingabe mit einer Datenexportschnittstelle zum Export aller Daten und einer Importschnittstelle für Patientenstamm- und Bewegungsdaten ausgestattet. Abfragen und Reports können innerhalb des Datenbanksystems mittels der Programmiersprache Progress programmiert werden. Der Import der exportierten Daten in eine relationale Datenbank gestattet die Durchführung beliebiger Abfragen mit der Abfragesprache SQL.

Programmtechnische Details

Bezeichnungen

Für die gleiche physikalische Größe, bzw. den gleichen Schlüssel wird in der Datenbank durchgängig die gleiche Bezeichnung verwendet. So bezeichnet das Attribut patient stets die interne Patientennummer in der Datenbank. Primärschlüssel einer Datenbanktabelle tragen stets die gleiche Bezeichnung, wie die Tabelle selbst. Für alle Primärschlüssel bzw. Fremdschlüssel werden entsprechende Indexe angelegt. Der Indexname wird so gewählt, das anhand des Namens Reihenfolge und Zusammensetzung des Index deutlich wird. klinik_patient bezeichnet einen Index bestehend aus der Klinik- und Patientennummer. Zähler werden bezeichnet wie die Felder, die sie füllen mit nachgestelltem _seq. So bezeichnet patient_seq einen Zähler, der das Feld patient füllt.

Benutzerschnittstelle

Die Benutzerschnittstelle ist stark modular aufgebaut. Dies ermöglicht einerseits die leichte Erweiterbarkeit des Programms, andererseits die mehrfache Verwendung des gleichen Moduls in unterschiedlichem Kontext. Die Kommunikation zwischen den Programmen erfolgt mittels globaler Variablen, die in der Datei globals.i und tumdok.p definiert sind. Die Datei globals.i muss bei allen Programmmodulen inkludiert werden. Beim Aufruf eines neuen Programmmoduls werden jeweils die aktuellen Tabellenschlüssel an das aufgerufene Modul übergeben.

Dr. rer. nat. Stefan Langenberg Fr 1. Mai 08:51:10 CEST 2020