DE112015004487T5 - Kontextuelle Arbeitsablauf-Verwaltung - Google Patents

Kontextuelle Arbeitsablauf-Verwaltung Download PDF

Info

Publication number
DE112015004487T5
DE112015004487T5 DE112015004487.6T DE112015004487T DE112015004487T5 DE 112015004487 T5 DE112015004487 T5 DE 112015004487T5 DE 112015004487 T DE112015004487 T DE 112015004487T DE 112015004487 T5 DE112015004487 T5 DE 112015004487T5
Authority
DE
Germany
Prior art keywords
user
data
actions
data objects
computer system
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
DE112015004487.6T
Other languages
English (en)
Inventor
Jesus Orlando Sanchez Merchan
Gustavo Ignacio Gomez Gonzalez
Marcel Josef Manser Sonderer
Diego Enrique Parra Leal
Anwar Saud Hussein Ibañez Okamell
Jose Alcides Aranzazu Montoya
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Bizagi Group Corp Washington Us
Original Assignee
BIZAGI GROUP
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by BIZAGI GROUP filed Critical BIZAGI GROUP
Publication of DE112015004487T5 publication Critical patent/DE112015004487T5/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • G06Q10/103Workflow collaboration or project management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • G06Q50/22Social work or social welfare, e.g. community support activities or counselling services
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H10/00ICT specially adapted for the handling or processing of patient-related medical or healthcare data
    • G16H10/60ICT specially adapted for the handling or processing of patient-related medical or healthcare data for patient-specific data, e.g. for electronic patient records
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H40/00ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices
    • G16H40/20ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices for the management or administration of healthcare resources or facilities, e.g. managing hospital staff or surgery rooms

Landscapes

  • Business, Economics & Management (AREA)
  • Engineering & Computer Science (AREA)
  • Strategic Management (AREA)
  • Human Resources & Organizations (AREA)
  • Entrepreneurship & Innovation (AREA)
  • General Business, Economics & Management (AREA)
  • Economics (AREA)
  • Health & Medical Sciences (AREA)
  • Tourism & Hospitality (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Marketing (AREA)
  • Quality & Reliability (AREA)
  • Operations Research (AREA)
  • Primary Health Care (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Public Health (AREA)
  • Epidemiology (AREA)
  • Data Mining & Analysis (AREA)
  • Game Theory and Decision Science (AREA)
  • Educational Administration (AREA)
  • Development Economics (AREA)
  • Biomedical Technology (AREA)
  • Child & Adolescent Psychology (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Stored Programmes (AREA)

Abstract

Ein Computersystem zum Erzwingen eines Arbeitsablaufs, wobei das Computersystem umfasst: einen Computerspeicher umfassend: einen Satz von Aktionen; eine Vielzahl von Datenobjekten, wobei jedes eine Spezifikation aufweist, die eine oder mehrere des Satzes von Aktionen für eine Ausführung auf dem Datenobjekt identifiziert; und eine Vielzahl von Teilhaberobjekten, wobei jedes zu (a) einem oder mehreren der Datenobjekte und (b) einer oder mehreren des Satzes von Aktionen zugehörig ist; einem Benutzerterminal, welches mit dem Computerspeicher gekoppelt ist und konfiguriert ist, einem Benutzer zu einem oder mehreren Datenobjekten, die zu einem Teilhaberobjekt zugehörig sind, welches diesem Benutzer entspricht, Zugang bereitzustellen; und einen Computerprozessor, der konfiguriert ist, zumindest einen Teil eines Arbeitsablaufs, der eine Sequenz von ersten und zweiten Aktionen umfasst, durch Folgendes auszuführen: Ausführen einer ersten Aktion des Satzes auf einem ersten Datenobjekt der Vielzahl; das Benutzerterminal Veranlassen, in Antwort auf einen ersten Benutzer, der auf das ersten Datenobjekt am Benutzerterminal zugreift, dem ersten Benutzer eine oder mehrere zweite Aktionen zu präsentieren, die durch das erste Datenobjekt identifiziert sind und zu einem ersten Teilhaberobjekt, das dem ersten Benutzer entspricht, zugehörig sind; und wenn der erste Benutzer eine zweite Aktion am Benutzerterminal auswählt, Ausführen der der ausgewählten zweiten Aktion auf dem ersten Datenobjekt.

Description

  • HINTERGRUND DER ERFINDUNG
  • Diese Erfindung betrifft ein Computersystem zum Erzwingen eines Arbeitsablaufs. Die Erfindung betrifft nicht Arbeitsabläufe als solche, sondern ein technisch verbessertes Computersystem, welches geeignet ist, einen Arbeitsablauf zu implementieren.
  • Computersysteme zur Arbeitsablauf-Verwaltung sind für den effizienten Betrieb von Unternehmen und Organisationen auf der ganzen Welt wichtig. Viele Unternehmen verwenden Computersysteme, um Prozesse zu definieren und zu organisieren, die durch ihre Angestellten ausgeführt werden sollen. Insbesondere in großen Organisationen mit über viele Betriebsstätten oder sogar Ländern verteilten Arbeitern kann dies hilfreich sein, um sicherzustellen, dass Prozesse im ganzen Unternehmen konsistent und effizient ausgeführt werden. Zum Beispiel kann in Dienstleistungsbranchen wie z.B. Versicherungen und Banken die Verwendung von Arbeitsablauf-Verwaltungssystemen sicherstellen, dass von dem Unternehmen eine minimale Dienstleistungsqualität ihren Kunden bereitgestellt wird. Arbeitsablauf-Verwaltung kann ebenfalls als Business-Prozess-Management (BPM) bezeichnet werden.
  • Konventionelle Computersysteme zur Arbeitsablauf-Verwaltung sind gut darin, vorgeschriebene Geschäftsprozesse zu definieren, wie z.B. die Art von Geschäftsprozessen, die durch die administrativen Angestellten eines Bank- oder Versicherungsunternehmens ausgeführt würden. Unter solchem Umständen ist es für die Angestellten wünschenswert, einen vordefinierten Arbeitsablauf auszuführen, um sicherzustellen, dass passende Schreiben an den Kunden zu den richtigen Zeitpunkten gesendet werden und dass jeder von den Angestellten behandelte Fall allen erforderlichen Überprüfungen und Autorisierungen der entsprechenden Mitarbeiter unterliegt.
  • Ein Beispiel eines durch ein konventionelles Arbeitsablauf-Verwaltungssystem definierten Arbeitsablaufs, welches von einer großen Bank betrieben wird, ist in 1 gezeigt. Das System ist als eine Software bereitgestellt, über die die Angestellten der Bank ihre Aufgaben zu erfüllen haben. In diesem Beispiel wird der Arbeitsablauf 100 ausgeführt, um einen von einem Kunden empfangenen Kreditantrag zu genehmigen. Der Kreditantrag wird an der Bank durch einen von mehreren Kreditangestellten entgegen genommen, der einen neuen Fall 101 erzeugt, der den Kreditantrag repräsentiert und den Arbeitsablauf initiiert. Der Angestellte würde typischerweise Informationen vom Kreditantrag in den Fall eingeben, obwohl einige Informationen von anderen Aufzeichnungen (z.B. Bankkontoaufzeichnungen) importiert werden könnten, die sich bei der Bank befinden, falls der Kunde bereits bei der Bank ist. Sobald die vorgeschriebenen Felder des neuen Falls vollständig sind und der Angestellte den Fall als erledigt markiert, überträgt das System den Fall zum nächsten Schritt im Arbeitsablauf zur Bearbeitung des Falls durch einen der Kreditbearbeiter der Bank. An diesem Punkt wird der Fall in einer Liste von verfügbaren Fällen erscheinen, die von dem Kreditbearbeiter der Bank zu bearbeiten sind. Einer der Kreditbearbeiter öffnet den Fall und bearbeitet den Kreditantrag 102 durch Ausführen einer Folge von Überprüfungen des Kreditantrags, wie z.B. die Überprüfung der Bonitätsgeschichte des Kunden und die Überprüfung seiner Identität. Die Ergebnisse der Überprüfungen werden im Fall gespeichert und das System überträgt den Fall zu einem Bankmanager zur Genehmigung.
  • Der Bankmanager wird den Fall in seiner Liste von zu genehmigenden Fällen bei Schritt 103 empfangen, was beinhaltet, dass der Bankmanager den Fall im System bewertet, einschließlich der Ergebnisse der Überprüfungen. Wenn der Bankmanager den Kreditantrag ablehnt, überträgt das System den Fall zurück zu einem Kreditangestellten für ein Ablehnungsschreiben 104, das dem Kunden zugesendet wird. Wenn der Bankmanager den Kreditantrag genehmigt, überträgt das System den Fall zu einem Finanzangestellten für die Auszahlung des Kredits 105 durch einen Finanzangestellten und die Ausgabe eines Genehmigungsschreibens. Der Arbeitsablauf ist bei Schritt 105 oder 106 abhängig von der Entscheidung des Bankmanagers bei Schritt 103 abgeschlossen.
  • Das System, welches den Arbeitsablauf 100 erzwingt, ist konfiguriert, sicherzustellen, dass die von den verschiedenen Angestelltengruppen der Bank ausgeführten Schritte gemäß einem definierten Arbeitsablauf für die Bearbeitung von Kreditanträgen ausgeführt werden: die Schritte werden nacheinander ausgeführt, wobei jeder Schritt von einer vorbestimmten Angestelltengruppe ausgeführt wird, und erst nachdem der vorhergehende Schritt abgeschlossen worden ist. Dies kann für den in 1 dargestellten Arbeitsablauf passend sein, jedoch kann für andere, komplexere Arbeitsabläufe, insbesondere solche, in denen qualifizierte Arbeiter beteiligt sind, ein größerer Grad an Flexibilität erforderlich sein, was mit konventionellen Systemen schwierig zu erreichen ist.
  • In konventionellen Computersystemen zur Arbeitsablauf-Verwaltung werden Arbeitsabläufe durch Verlinken von an einer Datenbank gespeicherten Aktionen vordefiniert, um so Arbeitsabläufe zwischen vordefinierten Start- und Endpunkten zu definieren. Jede Aktion repräsentiert einen vordefinierten Schritt in einem Arbeitsablauf (Erzeugen oder Aktualisieren eines Falls in dem in 1 gezeigten Beispiel). Dieser Ansatz funktioniert gut für niedrig qualifizierte Arbeiter (z.B. Call-Center-Arbeiter), die wiederholt eine begrenzte Anzahl von Aufgaben ausführen, jedoch weist er erhebliche Einschränkungen auf, wenn er auf qualifizierte Arbeiter (z.B. Ärzte, Anwälte und andere Berufsgruppen) angewendet wird, die einen erheblichen Grad einer Entscheidungsfindungs-Fähigkeit behalten müssen.
  • Um in konventionellen Arbeitsablauf-Verwaltungssystemen Arbeitsabläufe für qualifizierte Arbeiter zu erzwingen, ist es unter Verwendung des obigen Ansatzes notwendig, eine sehr große Anzahl von Arbeitsabläufen in der Datenbank zu definieren, die die Bandbreite von möglichen Arbeitsabläufen, die durch die Arbeiter ausgeführt werden könnten, abdecken. Dies führt zu einem übermäßigen Verarbeitungs-Overhead, hohen Speicheranforderungen und schlechter Performance am System, sowie zu einer hohen Last bei der initialen Konfiguration des Systems, was das Definieren jedes möglichen Arbeitsablaufs betrifft.
  • In einigen Computersystemen ist es möglich, Arbeitsabläufe durch Aggregieren von definierten Arbeitsablauf-Fragmenten zusammenzusetzen. Dies erlaubt es, Arbeitsablauf-Fragmente über verschiedene Prozesse hinweg wiederzuverwenden, und kann so dazu beitragen, einige der Performance-Probleme abzumildern, wenn ein konventionelles System konfiguriert wird, um Arbeitsabläufe in einem komplexen Umfeld zu erzwingen. Jedoch kann die Speicher- und Verarbeitungslast auf ein System, welches konfiguriert ist, mit qualifizierten Experten zu arbeiten, die bei jedem Schritt in einem Prozess eine von einer großen Anzahl von Entscheidungen treffen könnten, weiterhin hoch sein.
  • KURZZUSAMMENFASSUNG DER ERFINDUNG
  • Gemäß einem ersten Aspekt der vorliegenden Erfindung ist ein Computersystem zum Erzwingen eines Arbeitsablaufs angegeben, wobei das Computersystem umfasst:
    einen Computerspeicher, umfassend:
    einen Satz von Aktionen;
    eine Vielzahl von Datenobjekten, wobei jedes eine Spezifikation aufweist, die eine oder mehrere des Satzes von Aktionen für eine Ausführung auf dem Datenobjekt identifiziert; und
    eine Vielzahl von Teilhaberobjekten, wobei jedes zu (a) einem oder mehreren der Datenobjekte und (b) einer oder mehreren des Satzes von Aktionen zugehörig ist;
    einem Benutzerterminal, welches mit dem Computerspeicher gekoppelt ist und konfiguriert ist, einem Benutzer zu einem oder mehreren Datenobjekten, die zu einem Teilhaberobjekt zugehörig sind, welches diesem Benutzer entspricht, Zugang bereitzustellen; und
    einen Computerprozessor, der konfiguriert ist, zumindest einen Teil eines Arbeitsablaufs, der eine Sequenz von ersten und zweiten Aktionen umfasst, durch Folgendes auszuführen:
    Ausführen einer ersten Aktion des Satzes auf einem ersten Datenobjekt der Vielzahl;
    in Antwort auf einen ersten Benutzer, Veranlassen des Benutzerterminal, das auf das ersten Datenobjekt am Benutzerterminal zugreift, dem ersten Benutzer eine oder mehrere zweite Aktionen zu präsentieren, die durch das erste Datenobjekt identifiziert sind und zu einem ersten Teilhaberobjekt, das dem ersten Benutzer entspricht, zugehörig sind; und
    wenn der erste Benutzer eine zweite Aktion am Benutzerterminal auswählt, Ausführen der ausgewählten zweiten Aktion auf dem ersten Datenobjekt.
  • Die ersten und zweiten Aktionen am Computersystem können nicht verlinkt sein, um so den Arbeitsablauf zu definieren.
  • Der Computerprozessor kann konfiguriert sein:
    in Antwort auf einen zweiten Benutzer, der das erste Datenobjekt am Benutzerterminal auswählt, das Benutzerterminal zu veranlassen, dem zweiten Benutzer eine oder mehrere erste Aktionen, die durch das erste Datenobjekt identifiziert sind und zu einem zweiten Teilhaberobjekt, das dem zweiten Benutzer entspricht, zugehörig sind, zu präsentieren; und
    die erste Aktion auf dem ersten Datenobjekt in Antwort auf den zweiten Benutzer, der diese erste Aktion am Benutzerterminal auswählt, auszuführen.
  • Das Computersystem kann konfiguriert sein, den Benutzer am Benutzerterminal zu authentifizieren, und in Abhängigkeit von dieser Authentifizierung das entsprechende Teilhaberobjekt am Computerspeicher zu identifizieren.
  • Der Computerspeicher kann ferner ein oder mehrere Benutzerprofile umfassen, wobei jedes ein Teilhaberobjekt angibt, wobei das Computersystem konfiguriert ist, das entsprechende Teilhaberobjekt am Computerspeicher durch Folgendes zu identifizieren: in Abhängigkeit von durch den Benutzer bereitgestellte Zugangsdaten, Nachschlagen des Benutzerprofils für diesen Benutzer und Verwenden des angegebenen Teilhaberobjekts als das entsprechende Teilhaberobjekt.
  • Der Zugriff auf das erste Datenobjekts durch den ersten Benutzer am Benutzerterminal kann eines oder mehrere der Folgenden umfassen:
    Ausführen einer Suche nach am ersten Datenobjekt gehaltener Information;
    Durchsuchen von am ersten Datenobjekt gehaltener Information; und
    Auswählen von am ersten Datenobjekt gehaltener und dem Benutzer präsentierter Information.
  • Der Computerprozessor kann konfiguriert sein, die eine oder mehreren ersten Aktionen am Benutzerterminal als auswählbare Optionen zu präsentieren.
  • Der Computerprozessor kann konfiguriert sein, die ersten und zweiten Aktionen auf den ersten Datenobjekten in Übereinstimmung mit an entsprechenden Aktionen gehaltenen Verfahrensdaten auszuführen.
  • Die ersten oder zweiten Aktionen können konfiguriert sein, das erste Datenobjekt zu modifizieren und/oder eine neue Instanz des ersten Datenobjekts unter Verwendung von Information vom ersten Datenobjekt zu erzeugen.
  • Ein oder mehrere der Vielzahl von Datenobjekten können ferner einen Kontext für eine oder mehrere der darin identifizierten Aktionen enthalten, wobei jeder Kontext einen Satz von einer oder mehreren zum Auslösen der Aktion erforderlichen Eigenschaften des entsprechenden Datenobjekts definiert, und wobei der Computerprozessor ferner konfiguriert ist, dem ersten Benutzer nur diejenige der einen oder mehreren zweiten Aktionen zu präsentieren, deren Kontext durch das erste Datenobjekt erfüllt ist.
  • Zumindest einige des Satzes von Aktionen können Vorbedingungen umfassen, die von der Aktion benötigte Information spezifizieren, und wobei der Computerprozessor konfiguriert ist, in der ausgewählten zweiten Aktion die spezifizierte Information als vom ersten Datenobjekt abgeleitet zu verwenden.
  • Der Computerprozessor kann konfiguriert sein, dem ersten Benutzer zu erlauben, nur auf das eine oder mehreren Datenobjekte zuzugreifen, die zu einem Teilhaberobjekt, welches dem ersten Benutzer entspricht, zugehörig sind.
  • Das Benutzerterminal kann in Abhängigkeit zu Konfigurationsdaten, die am Teilhaberobjekt, die dem ersten Benutzer entsprechen, gehalten werden, konfiguriert sein.
  • Der Computerprozessor und der Computerspeicher können an einem Computerserver, der mit dem Benutzerterminal gekoppelt ist, bereitgestellt sein.
  • Gemäß einem zweiten Aspekt der vorliegenden Erfindung wird ein Verfahren zum Erzwingen eines Arbeitsablaufs an einem Computersystem angegeben, welches einen Satz von Aktionen, eine Vielzahl von Datenobjekten, wobei jedes eine Spezifikation umfasst, die eine oder mehrere des Satzes von Aktionen für eine Ausführung auf dem Datenobjekt identifiziert, und eine Vielzahl von Teilhaberobjekten definiert, wobei jedes zu (a) einem oder mehreren Datenobjekten und (b) zu einer oder mehrerer des Satzes von Aktionen zugehörig ist, wobei das Verfahren umfasst:
    Ausführen einer ersten Aktion des Satzes auf einem ersten Datenobjekt der Vielzahl;
    einem ersten Benutzer Erlauben, auf ein oder mehrere der Datenobjekte zuzugreifen, die zu einem ersten Teilhaberobjekt zugehörig sind, wobei eines oder mehrere Datenobjekte das erste Datenobjekt enthalten;
    in Antwort auf den ersten Benutzer, der auf das erste Datenobjekt zugreift, dem ersten Benutzer Präsentieren von einer oder mehreren zweiten Aktionen, die durch das erste Datenobjekt identifiziert sind und zu dem ersten Teilhaberobjekt zugehörig sind; und
    wenn der erste Benutzer eine zweite Aktion auswählt, Ausführen der ausgewählten zweiten Aktion auf dem ersten Datenobjekt.
  • Gemäß einem dritten Aspekt der vorliegenden Erfindung ist ein Computersystem zum Erzwingen eines Arbeitsablaufs angegeben, umfassend:
    eine Datenbank, umfassend:
    Teilhaberobjekte, wobei jedes einen Satz von Datenobjekten spezifiziert, die zu einem Teilhaber zugehörig sind; und
    eine Vielzahl von Datenobjekten, wobei jedes eine Spezifikation aufweist, die eine oder mehrere vordefinierte Aktionen für eine Ausführung auf dem Datenobjekt und Teilhaber identifiziert, denen es erlaubt ist, jede dieser Aktionen zu initiieren;
    eine Computerschnittstelle, die angepasst ist, auf die Datenobjekte zuzugreifen; und
    einen Computerprozessor, der konfiguriert ist:
    in Antwort auf einen Teilhaber, der auf eine oder mehrere seines zugehörigen Satzes von Datenobjekten zugreift, an der Computerschnittstelle Aktionen zur Auswahl durch einen Teilhaber in Übereinstimmung mit den Spezifikationen der zugegriffenen Datenobjekte zu präsentieren; und
    in Antwort auf einen Teilhaber, der eine oder mehrere der präsentierten Aktionen auswählt, diese Aktion auf den zugegriffenen Datenobjekten auszuführen.
  • Der Computerprozessor kann konfiguriert sein, die Aktionen an der Schnittstelle in Antwort auf den Teilhaber, der auf seinen zugehörigen Satz von Datenobjekten zugreift, durch eines oder mehrere der Folgenden zu präsentieren:
    Ausführen einer Suche an der Schnittstelle nach an seinen Datenobjekten gehaltener Information;
    Durchsuchen an der Schnittstelle von an seinen Datenobjekten gehaltener Information; und
    Auswählen von an seinen Datenobjekten gehaltener und an der Schnittstelle präsentierter Information; wobei die zugegriffenen Datenobjekte die Datenobjekte sind, die die Information halten.
  • Der Computerprozessor kann konfiguriert sein, die Aktionen in Antwort auf den Teilhaber, der an seinen Datenobjekten gehaltene Information durchsucht und einen Teilsatz dieser Information auswählt, zu präsentieren, wobei die Aktionen durch den Computerprozessor in Abhängigkeit von der ausgewählten Information und nicht von der nicht ausgewählten Information identifiziert werden.
  • Jede Aktion kann Verfahrensdaten enthalten, die die durch den Computerprozessor auszuführenden Prozesse repräsentieren.
  • Die Verfahrensdaten können eine Konfiguration der Computerschnittstelle und/oder eine durch den Computerprozessor auszuführende Datenverarbeitung spezifizieren.
  • Der Computerprozessor kann ferner konfiguriert sein, die ausgewählte Aktion auf ein oder mehrere der zugegriffenen Datenobjekte in Übereinstimmung mit an der Aktion gehaltenen Verfahrensdaten auszuführen.
  • Die ausgewählte Aktion kann derart sein, dass sie das eine oder mehrere der zugegriffenen Datenobjekte modifiziert und/oder eine neue Instanz eines Datenobjekts unter Verwendung von Information von einem oder mehreren der zugegriffenen Datenobjekte erzeugt.
  • Die Spezifikationen der Datenobjekte und der Teilhaberobjekte können derart konfiguriert sein, dass eine Sequenz von Aktionen, die einen Arbeitsablauf repräsentieren, durch Teilhaber, die auf ihre entsprechenden Sätze von Datenobjekte zugreifen und ihnen an der Schnittstelle präsentierten Aktionen initiieren, ausgeführt werden können.
  • Die Spezifikationen eines oder mehrerer zugegriffener Datenobjekte können einen Kontext für eine oder mehrere ihrer identifizierten Aktionen enthalten, wobei jeder Kontext einen Satz von einer oder mehreren Eigenschaften des entsprechenden Datenobjekts zum Auslösen der Aktion definiert, und wobei der Computerprozessor ferner konfiguriert ist, dem Teilhaber nur die Aktionen zu präsentieren, deren Kontext durch die zugegriffenen Datenobjekte erfüllt wird.
  • Zumindest einige der Aktionen können Vorbedingungen enthalten, die von der Aktion benötigte und an den Datenobjekten gehaltene Information spezifizieren, und wobei der Computerprozessor konfiguriert ist, in einer initiierten Aktion die spezifizierte Information als von den zugegriffenen Datenobjekten automatisch zu verwenden.
  • Der Computerprozessor kann konfiguriert sein, dem Teilhaber zu erlauben, nur auf die Datenobjekte zuzugreifen, zu denen er zugehörig ist.
  • Die Schnittstelle kann konfiguriert sein, dem Teilhaber zu erlauben, an den Datenobjekten gehaltene Information zu durchsuchen/suchen, wobei der Computerprozessor konfiguriert ist, die Informationen auf an dem Satz von Datenobjekten gehaltener Information zu begrenzen, die zum Teilhaber zugehörig sind.
  • Die Schnittstelle kann in Abhängigkeit von an dem Teilhaberobjekt für den Teilhaber gehaltenen Konfigurationsdaten konfiguriert sein.
  • Der Teilhaber kann durch einen zu einem Teilhaberobjekt zugehörigen Benutzer des Systems repräsentiert werden.
  • Das System kann ein Profil für den Benutzer umfassen, welches einen oder mehrere durch den Benutzer repräsentierten Teilhaber identifiziert.
  • Die Datenobjekte können an einem oder mehreren Verzeichnissen an einer Datenbank des Systems logisch definiert sein.
  • Die Aktionen können nicht miteinander verlinkt sein, um so einen Arbeitsablauf zu definieren.
  • Das System kann Arbeitsabläufe nicht als vordefinierte Sequenzen von Aktionen definieren.
  • Der Computerprozessor kann einen oder mehrere Prozessoren an einem Server und einen Prozessor an einem Benutzerterminal, der die Computerschnittstelle unterstützt, umfassen.
  • Gemäß einem vierten Aspekt der vorliegenden Erfindung ist ein Computersystem zum Erzwingen eines Arbeitsablaufs angegeben, umfassend:
    eine Datenbank, die enthält:
    eine Vielzahl von Teilhaberobjekten, wobei jedes einen Teilhaber definiert und Datenobjekte identifiziert, die zu diesem Teilhalber zugehörig sind;
    eine Vielzahl von Datenobjekten, wobei jedes entsprechende Objektinformation hält und eine oder mehrere Aktionen für eine Ausführung auf dem Datenobjekt und die Teilhaber identifiziert, denen erlaubt ist, diese Aktionen auszuwählen; und
    eine Vielzahl von Aktionen für die Ausführung auf den Datenobjekten;
    eine Schnittstelle zum Bereitstellen für einen Benutzer des Systems Zugang zu an den Datenobjekten gehaltener Objektinformation; und
    ein Computerprozessor, der betrieben wird, um die Aktionen auf den Datenobjekten auszuführen, und der konfiguriert ist:
    an der Schnittstelle dem Benutzer zu erlauben, auf Objektinformation zuzugreifen, die an Datenobjekten gehalten wird, die zu einem oder mehreren durch den Benutzer repräsentierten Teilhabern zugehörig sind; und
    an Antwort auf den Benutzer, der an der Schnittstelle auf Objektinformation zugreift, dem Benutzer Aktionen zu präsentierten, die an diesen Datenobjekten als (a) zur Ausführung auf diese Datenobjekte zur Verfügung stehen, und (b) die durch zumindest einen der einen oder mehreren durch den Benutzer repräsentierten Teilhaber ausgewählt werden dürfen, identifiziert sind.
  • Gemäß einem fünften Aspekt der vorliegenden Erfindung ist ein Verfahren zum Erzwingen eines Arbeitsablaufs an einem Computersystem mit einer Datenbank umfassend Teilhaberobjekte angegeben, wobei jedes einen Satz von Datenobjekten spezifiziert, die zu einem Teilhaber zugehörig sind, und einer Vielzahl von Datenobjekten, wobei jedes eine Spezifikation aufweist, die eine oder mehrere Aktionen für eine Ausführung auf dem Datenobjekt und Teilhaber identifiziert, denen erlaubt ist, jede dieser Aktionen zu initiieren, wobei das Verfahren umfasst:
    Identifizieren eines Benutzers des Systems als einen Teilhaber;
    dem Benutzer Erlauben, auf eines oder mehrere des Satzes von Datenobjekten, die zu dem Teilhaber an seinem Teilhaberobjekt zugehörig sind, zuzugreifen;
    in Antwort auf den Benutzer, der auf eines oder mehrere des Satzes von Datenobjekten zugreift, dem Benutzer Präsentieren von Aktionen in Übereinstimmung mit den Spezifikationen des einen oder mehreren zugegriffenen Datenobjekten; und
    in Antwort auf den Benutzer, der eine präsentierte Aktion auswählt, Ausführen der ausgewählten Aktion auf einer oder mehrerer der zugegriffenen Datenobjekte in Übereinstimmung mit am System für die Aktion vordefinierten Verfahrensdaten.
  • Das Verfahren kann ferner das Veranlassen umfassen, von einem oder mehreren Benutzern, die eine Vielzahl von verschiedenen Teilhabern repräsentieren, auf ihre zugehörigen Datenobjekte zuzugreifen und eine präsentierte Aktion auszuwählen, sodass die Vielzahl von Teilhabern insgesamt eine Sequenz von Aktionen, die einen Arbeitsablauf repräsentiert, ausführen.
  • Es ist ein Computerprogrammcode zum Ausführen eines hierin beschriebenen Verfahrens angegebenen. Es ist ein nichtflüchtiges computerlesbares Speichermedium mit darauf gespeicherten computerlesbaren Instruktionen angegeben, die, wenn sie an einem Computerprozessor ausgeführt werden, den Computerprozessor veranlassen, das hierin beschriebene Verfahren auszuführen.
  • KURZBESCHREIBUNG DER ZEICHNUNGEN
  • Die vorliegende Erfindung wird nun exemplarisch mit Bezug auf die beigefügten Zeichnungen beschrieben werden. In den Zeichnungen:
  • 1 zeigt ein konventionelles Arbeitsablauf-Verwaltungssystem.
  • 2 zeigt ein Arbeitsablauf-Verwaltungssystem, welches gemäß den hierin beschriebenen Prinzipien konfiguriert ist.
  • 3 veranschaulicht eine exemplarische Struktur der Datenbank von 2.
  • 4 veranschaulicht eine Benutzerschnittstelle eines Terminals von 2.
  • 5 zeigt ein Beispiel eines am System von 2 ausgeführten Arbeitsablaufs.
  • 6 zeigt ein exemplarisches Teilhaberobjekt.
  • 7 zeigt ein exemplarisches Datenobjekt.
  • 8 zeigt eine exemplarische Prozessdefinition.
  • 9 ist ein Flussdiagramm, welches den Betrieb des Arbeitsablauf-Verwaltungssystems veranschaulicht.
  • DETAILLIERTE BESCHREIBUNG
  • Die folgende Beschreibung wird exemplarisch präsentiert, um jeden Fachmann die Erfindung herzustellen und zu verwenden. Die vorliegende Erfindung ist nicht auf die hierin beschriebenen Ausführungsformen beschränkt und zahlreiche Abwandlungen der offenbarten Ausführungsformen werden dem Fachmann leicht offenkundig sein.
  • Um die in konventionellen Systemen vorhandenen Beschränkungen zu adressieren, ist ein Computersystem angegeben, welches konfiguriert ist, zu erlauben, dass komplexe Arbeitsabläufe erzwungen werden, während die Speicher- und Verarbeitungsanforderungen des Computersystems minimiert werden. Arbeitsabläufe müssen nicht am System vordefiniert werden und bilden sich stattdessen aus der entsprechenden Konfiguration des Computersystems heraus. Jeder Arbeitsablauf repräsentiert eine Sequenz von Aktionen, die eine Gruppe von einem oder mehreren Benutzern des Systems insgesamt ausführen können. Wie nachfolgend beschrieben, können Sequenzen von Aktionen, die nicht erlaubt sind, nicht durch Benutzer des Systems ausgeführt werden, da an jedem vorgegebenen Schritt in einem Arbeitsablauf ungültige Aktionen einem Benutzer nicht präsentiert werden. Auf diese Weise kann das Computersystem Benutzer darauf beschränken, gültige Arbeitsabläufe auszuführen. Eine exemplarische Konfiguration eines Computersystems zum Erzwingen eines Arbeitsablaufs und mit den oben beschriebenen Vorteilen wird nun beschrieben werden.
  • Ein Beispiel für ein Computersystem zum Erzwingen eines Arbeitsablaufs ist in 2 gezeigt. In 2 umfasst das Computersystem 200 einen Computerserver 201 mit einem Prozessor 202, einem Speicher 204 und einer Datenbank 203. Die Datenbank könnte, wie in 2 gezeigt, am Server oder an einem Datenspeicher, der dem Server (z.B. über ein Netzwerk oder das Internet) zugänglich ist, angeordnet sein. Der Prozessor und der Speicher unterstützen einen Arbeitsablauf-Manager 205, der in diesem Beispiel Software ist, die eingerichtet ist, um auf an der Datenbank 203 gehaltenen Daten ausgeführt zu werden, um Benutzern von Computerterminals 206, 207 und 208 des Systems zu erlauben, Arbeitsabläufe auszuführen.
  • Es könnte jegliche Anzahl von Terminals geben, jedoch sind es in diesem Beispiel drei. Die Datenbank könnte eine oder mehrere über das System verteilte Datenspeicher umfassen, einschließlich lokal am Server und/oder an Speicherorten außerhalb des Speichers. Der Server könnte eine oder mehrere Verarbeitungseinheiten (z.B. Prozessorkerne, Server, oder Blades auf einem Bladeserver) mit Zugang zur Datenbank 203 und Unterstützung eines Arbeitsablauf-Managers umfassen. Die Datenbank kann eine relationale Datenbank sein, und Assoziationen zwischen Objekten der Datenbank können durch Links zwischen Verzeichnissen der Datenbank repräsentiert werden.
  • Jedes der Computerterminals kann, wie für Terminal 206 gezeigt, konfiguriert sein, um so einen Prozessor 209, eine Anzeige 210, eine Eingabe-/Ausgabeeinheit 211 und einen Speicher 212 zu enthalten. Der Prozessor und Speicher unterstützen eine Benutzerschnittstellte 213, mit der ein Benutzer des Terminals mit dem Computerterminal mittels der Eingabe-/Ausgabeeinheit 211 interagieren kann (z.B. eine Tastatur, Maus, Touchscreen etc.). Jedes Terminal könnte jede Art einer Verarbeitungsvorrichtung sein, wie z.B. ein Desktop- oder Laptop-Computer, ein Tablet oder ein Smartphone. Jedes Terminal könnte ein „dünnes“ Terminal, welches auf den Server angewiesen ist, um zumindest einen Teil seiner Verarbeitung auszuführen, oder eine eigenständige Verarbeitungsvorrichtung sein, die mit dem Server 201 verbunden ist. Es ist zu verstehen, dass viele andere Konfigurationen von Computerservern und -terminals möglich sind.
  • Die Benutzerschnittstelle 213 eines Terminals gibt dem Benutzer Zugriff auf die Datenbank 203. Die Benutzerschnittstelle könnte ein leichtgewichtiges Front-End (z.B. eine Webanwendung, die die Benutzerschnittstelle 203 bereitstellt) bereitstellen, mittels dem ein Benutzer mit dem Arbeitsablauf-Manger 205 interagieren kann, der den Zugriff auf die Datenbank 203 vermittelt und im Wesentlichen die Verarbeitung ausführt, die von einer Sequenz von Aktionen gefordert wird, die einen Arbeitsablauf ausmacht. In anderen Beispielen könnte die Benutzerschnittstelle selbst einen Teil oder die Gesamtheit des Arbeitsablauf-Managers enthalten und könnte demnach einen Teil oder die Gesamtheit der zu einem Arbeitsablauf gehörigen Verarbeitung ausführen. Viele dazwischen liegende Konfigurationen sind zwischen diesen beiden exemplarischen Extremen möglich. Die Prozessoren des Computersystems (z.B. am Server und/oder Terminals), wie durch den Arbeitsablauf-Manager und/oder Benutzerschnittstelle konfiguriert, erzwingen Arbeitsabläufe in Übereinstimmung mit den hierin beschriebenen Prinzipien.
  • Ein oder mehrere Teile der Datenbank 203 könnten an den Terminals als Kopien von Teilen der Datenbank angeordnet sein, die der Benutzerschnittstelle an diesem entsprechenden Terminal zugänglich sind und/oder durch Verteilen von zumindest einem Teil der Daten der Datenbank 203 über die Terminals des Systems. Der Server könnte selbst als ein Terminal agieren, durch den ein Benutzer einen oder mehrere Schritte eines Arbeitsablaufs ausführen kann.
  • Die Benutzerschnittstelle 213 repräsentiert ein Beispiel für eine Computerschnittstelle des Systems 200 zum Bereitstellen eines Zugangs zu an der Datenbank in den Datenobjekten gehaltenen Daten für Benutzer des Systems. In anderen Beispielen könnte die Schnittstelle an derselben Verarbeitungseinheit wie der Arbeitsablauf-Manager 205 unterstützt werden und/oder könnte nicht-grafisch sein, wie z.B. eine Schnittstelle zur Anwendungsprogrammierung (API), Web-API, oder ähnliches. Zum Beispiel könnte eine Workstation sowohl einen Arbeitsablauf-Manager als auch eine Benutzerschnittstelle umfassen, die auf einem Prozessor laufen, wobei die Workstation somit die Funktionen sowohl des Servers als auch des Terminals ausführt.
  • Ein Beispiel der an der Datenbank 203 gehaltenen Daten ist in 3 gezeigt. Die Datenbank 203 kann eine Datenschicht 301 und eine Prozessschicht 302 enthalten. Die Datenschicht kann Verzeichnisse 303 enthalten, die einen Satz von Datenobjekten und einen Satz von Teilhaberobjekten definieren. Die Datenobjekte und Teilhaberobjekte können verlinkt sein, um so für jeden Teilhaber einen Satz von Datenobjekten logisch zu definieren, die zum Teilhaber zugehörig sind. Jedes Teilhaberobjekt entspricht einer Teilhaberrolle in den jeweiligen Arbeitsabläufen, die das Computersystem konfiguriert ist, zu unterstützen. Die Verzeichnisse können zu anderen Datenquellen verlinkt sein, die sich außerhalb der Datenbank befinden (z.B. Datenquellen, die Patientenakten, oder Kontaktdetails für die Kunden eines Unternehmens halten). Die Prozessschicht enthält einen Satz von Prozessdefinitionen 304, von der jede eine Aktion spezifiziert, die einen Schritt eines Arbeitsablaufs repräsentieren kann. Die Prozessdefinitionen können auf die Verzeichnisse in der Datenschicht verlinken, um so die Daten und Teilhaberobjekte zu referenzieren, und anders herum. Zum Beispiel können die Datenobjekte kraft der passenden Links von den Verzeichnissen 303 zu Prozessdefinitionen 304, Aktionen, die für die Ausführung auf dem Datenobjekt erlaubt sind, und Teilhaber identifizieren, denen es erlaubt ist, jede dieser Aktionen zu initiieren. Die Daten- und Teilhaberobjekte, und die Prozessdefinitionen sind nachstehend detaillierter beschrieben. Andere Datenstrukturen, die geeignet sind, Daten- und Teilhaberobjekte und Prozessdefinitionen zur Verwendung in der hierin beschriebenen Weise zu definieren, können alternativ verwendet werden. Die Begriffe Datenschicht und Prozessschicht können logische Gruppierungen von Daten an einer Datenbank angeben und müssen keine entsprechende Struktur der Datenbank implizieren.
  • Der Arbeitsablauf-Manager 205 ist konfiguriert, in Abhängigkeit von der an der Datenbank 203 gehaltenen Daten ausgeführt zu werden, um so Arbeitsabläufe zu erzwingen, indem Benutzern der Computerterminals 206208 beschränkt werden, Sequenzen von Aktionen auf Datenobjekten der Datenbank in Übereinstimmung mit den an der Datenbank definierten Berechtigungen auszuführen. Dies kann gemäß dem folgenden Beispiel erreicht werden.
  • Ein Satz von Teilhaberobjekten sind an der Datenbank 203 definiert, wobei jedes einen Teilhaber in den Arbeitsabläufen und die zu diesem Teilhaber zugehörigen Datenobjekte definiert. Jeder Teilhaber kann einen Typ eines Benutzers des Systems repräsentieren, der in der Lage ist, eine oder mehrere Aktionen am System auszuführen. Zum Beispiel können in einem Computersystem, welches konfiguriert ist, Krankenhaus-Mitarbeitern zu ermöglichen, einen Prozess in einem Krankenhaus-Umfeld auszuführen, die Teilhaber die Krankenschwestern, Ärzte und andere Krankenhaus-Mitarbeiter sein, die beim Ausführen von Aktionen am System beteiligt sind. Triage-Krankenschwestern könnten ein Teilhaber sein, Notaufnahme(ER)-Ärzte ein zweiter Teilhaber, und orthopädische Chirurgen ein dritter Teilhaber. Jeder Benutzer des Systems kann zu einem oder mehreren Teilhabern gehören und es könnten ein oder mehrere Benutzer zu einem Teilhaber zugehörig sein.
  • Ein Beispiel des logischen Dateninhalts eines Teilhaberobjekts oder -definition 600 ist in 6 gezeigt. Das Teilhaberobjekt 600 enthält eine Definition des Teilhabers 601, die Information wie z.B. den Namen dieses Teilhabers und andere Eigenschaften enthalten könnte. Das Teilhaberobjekt kann auch Daten 602 enthalten, die die zu dem Teilhaber zugehörigen Datenobjekte (z.B. der oben genannte orthopädische Chirurg könnte zu Datenobjekten, die chirurgische Fälle repräsentieren, zugehörig sein) spezifizieren. In anderen Beispielen kann Information, die die Datenobjekte spezifiziert, auf jegliche andere Weise gespeichert sein – z.B. durch Verlinken des Teilhaberobjekts mit seinen zugehörigen Datenobjekten, oder Speichern solcher Assoziationen an an der Datenbank gehaltenen Spezifikationsdaten. Ein Teilhaberobjekt könnte Daten enthalten, die eine oder mehrere Konfigurationen der Benutzerschnittstelle für den Teilhaber definiert – z.B. könnte das Teilhaberobjekt eine Konfiguration (z.B. Aussehen, Anordnung von präsentierten Daten, Möglichkeit zum Durchsuchen von Daten, und/oder zum Suchen von Daten) der Benutzerschnittstelle 213 passend zur durch diesen Teilhaber ausgeführten Rolle definieren.
  • Ein Satz von Datenobjekten kann an der Datenbank 203 definiert sein, wobei jedes Datenobjekt Daten für dieses Objekt enthält. Daten an dem Datenobjekt können eine oder mehrere Aktionen identifizieren, die auf diesem Objekt ausgeführt werden können und/oder dies kann durch passendes Verlinken des Datenobjekts zu an der Prozessschicht gehaltenen Aktionen definiert werden. Jedes Datenobjekt kann ferner spezifizieren, welchen Teilhabern es erlaubt ist, jede der Aktionen, die auf dem Datenobjekt ausgeführt werden können, auszuführen und/oder dies kann durch passende Verlinkung des Datenobjekts mit an der Datenschicht gehaltenen Teilhaberobjekten definiert werden. Zum Beispiel könnten in dem Arbeitsablauf-Verwaltungssystem, welches Arbeitsabläufe in einem Krankenhaus modelliert, die Datenobjekte Patientenakten sein, eine Untersuchung (z.B. eine Röntgenaufnahme, ein MRI-Scan, ein Bluttest) repräsentieren, ein Termin sein.
  • Die Datenbank kann mehrere Typen von Datenobjekten umfassen. Neue Instanzen eines Datenobjekts (z.B. eine neue Patientenakte) können einige oder alle der Eigenschaften von anderen Datenobjekten desselben Typs erben. Zum Beispiel kann der Arbeitsablauf-Manager konfiguriert sein, eine neue Instanz eines Datenobjekts mit demselben Satz von Teilhaberobjekten zu assoziieren und/oder kann die Berechtigungen einer neuen Instanz eines Datenobjekt setzen, sodass derselbe Satz von Aktionen auf der neuen Instanz wie auf den anderen Datenobjekten desselben Typs ausgeführt werden kann. In einigen Implementierungen kann eine einzelne Definitionen für jeden Typ von Datenobjekt gespeichert sein, die die Assoziierungen und Berechtigungen von Datenobjekten diesen Typs definiert: die Datenobjektinstanzen diesen Typs von Datenobjekt können als diese Definition enthaltend betrachtet werden.
  • Ein Beispiel des logischen Dateninhalts eines Datenobjekts 700 ist in 7 gezeigt. Das Datenobjekt enthält Information 701 über das Objekt – zum Beispiel, könnte für ein Patientenakte-Datenobjekt diese Information den Namen, die Adresse, Gesundheitssystemnummer und die Krankengeschichte des Patienten enthalten. Spezifikationsdaten 702 spezifizieren die Aktionen, die auf dem Objekt ausgeführt werden können, welche Teilhaber jede dieser Aktionen ausführen können, und optional, in welchem Kontext diese Aktionen ausgeführt werden können.
  • Datenobjekte und Teilhaberobjekte, wie hierin beschrieben, können jegliche logische Sammlung von Daten sein und können oder können nicht Objekte einer relationalen Datenbank sein. Datenobjekte und Teilhaberobjekte können auf jegliche Weise am Computersystem gehalten werden, einschließlich als eine oder mehrere Dateien oder Einträge innerhalb von Dateien, oder an einer Datenbank.
  • Ein Benutzer eines Computerterminals 206208 wird an der Datenbank als ein oder mehrere entsprechende Teilhaber repräsentiert. Ein Benutzerterminal kann konfiguriert sein, um einen Benutzer zu authentifizieren (z.B. durch Anfordern von Zugangsdaten von dem Benutzer), um so ein für den Benutzer am Terminal oder Server gespeichertes Profil zu identifizieren. Das Computersystem kann konfiguriert sein, jedes Benutzerprofil mit einem oder mehreren an der Datenbank gehaltenen Teilhaberobjekten zu assoziieren, um so dem System zu erlauben, zu identifizieren, welche Teilhaber ein Benutzer eines Computerterminals repräsentiert, und somit die Daten und Aktionen, die diesem Benutzer in Übereinstimmung mit den hierin beschriebenen Prinzipien präsentiert werden. Jedes Benutzerprofil kann in der Datenbank gespeichert sein und kann mit dem einen oder mehreren Teilhaberobjekten verlinkt sein, die die zum Benutzer dieses Benutzerprofils zugehörigen Teilhaber repräsentieren.
  • Ein Benutzer wird durch den Arbeitsablauf-Manager darauf beschränkt, nur auf die Datenobjekte zuzugreifen, die zum durch den Benutzer repräsentierten Teilhaber zugehörig sind. Ein Benutzer kann auf Datenobjekte an einem Benutzerterminal auf jegliche geeignete Weise zugreifen, einschließlich durch Durchsuchen von Datenobjekten, Suchen nach Daten innerhalb von Datenobjekten, oder Auswählen von ihm präsentierten Daten. Die Schnittstelle, über welche ein Benutzer auf seine Daten zugreift, kann konfiguriert sein, Zugriff auf mehr als eine Weise zu erlauben. Wie beschrieben worden ist, kann die Benutzerschnittstelle 213 gemäß den jeweiligen Anforderungen des zum Benutzer zugehörigen Teilhabers konfiguriert sein.
  • Aktionen sind in der Datenbank 203 als Prozessdefinitionen definiert, wobei jede Aktion für die Ausführung auf einem oder mehreren Datenobjekten vorhanden ist. Ein Beispiel für logischen Dateninhalt einer Prozessdefinition 800, die eine Aktion definiert, ist in 8 gezeigt. Die Prozessdefinition kann Information über die Aktion 801 (z.B. ihren Namen und andere Parameter), und Verfahrensdaten 803 enthalten, die die Aktion selbst definiert – z.B. Instruktionen, die die vom Computersystem auszuführende Verarbeitung, wie z.B. modifizieren, erzeugen oder löschen eines Datenobjekts, einem Benutzer ein Formular präsentieren und den Eintrag von vorgeschriebener Information erzwingen, etc. Solche Verfahrensdaten könnten jegliche Form annehmen, einschließlich z.B. Daten zur Interpretation an einem Prozessor des Servers oder Clients in eine Webanwendung zur Präsentation an der Benutzerschnittstelle, Datenbankoperationen, oder jegliche Art von Programmcode, der zur Ausführung an einem Prozessor des Servers oder Benutzerterminals geeignet ist.
  • Über die sequentielle Auswahl von Aktionen durch die Benutzer des Systems in der hierin beschriebenen Weise können Arbeitsabläufe ausgeführt werden, in denen jeder Schritt durch eine oder mehrere Aktionen repräsentiert wird. Zum Beispiel kann im unten beschriebenen Krankenhaus-Beispiel mit Bezug auf 5 eine Aktion einen Termin für einen Patienten über das Computersystem vereinbaren, eine Operation an einem Patienten durchführen (was im Computersystem durch eine Aktion zum Aktualisieren eines Datenobjekts, welches die Patientenakte repräsentiert, reflektiert werden kann), oder Aktualisieren der Adressdaten eines Patienten. Jedes dieser Beispiele könnte an einem Patientenakte-Objekt ausgeführt werden.
  • Eine Prozessdefinition kann ferner Vorbedingungen 802 umfassen, die Daten (z.B. Felder eines Datenobjekts) spezifizieren, die in der Aktion von Datenobjekten zu verwenden sind, auf welchen die Aktion konfiguriert ist, ausgeführt zu werden. Zum Beispiel können im Beispiel des Aktualisierens der Adresse einer Patientenakte Vorbedingungen für diese Aktion bestimmte Daten von einem Patientenakte-Datenobjekt, auf dem die Aktion ausgeführt wird, in die Felder eines Formulars kopiert werden, das von einem Benutzer, der die Adressaktualisierungs-Aktion ausführt, auszufüllen ist.
  • Arbeitsabläufe, die im Krankenhaus-Beispiel möglich sind, könnten z.B. die Bearbeitung des Patienten von der Aufnahme bis zur Entlassung, die Reservierung eines Termins für einen Patienten in einer ambulanten Einrichtung, oder die Durchführung einer Röntgenaufnahme sein. Ein Arbeitsablauf kann selbst viele kleinere Arbeitsabläufe umfassen: z.B. kann in einem Arbeitsablauf betreffend die Bearbeitung eines Patienten von der Aufnahme bis zur Entlassung, eine Röntgenaufnahme erforderlich sein, wobei die Ausführung derselben selbst einen Arbeitsablauf repräsentieren kann.
  • Die in der Datenbank definierten Aktionen repräsentieren Schritte in einem oder mehreren Arbeitsabläufen. Jedoch sind die Aktionen, anders als bei konventionellen Systemen, die Aktionen im System nicht verlinkt, um so einen Arbeitsablauf zu definieren. Die Verlinkung zwischen den Aktionen wird durch die Teilhaber (z.B. ein Benutzer, der als ein Teilhaber des Systems authentifiziert ist) bereitgestellt, die einen Arbeitsablauf durch Auswählen einer am Computerterminal präsentierten Aktion abarbeiten. Durch Sicherstellen, dass ein Teilhaber definiert ist, der jede Aktion, die einen Schritt eines Workflows repräsentiert, durchführen kann, und dass diese Teilhaber zu den Datenobjekten zugehörig sind, auf denen die Aktionen ausgeführt werden, kann ein vollständiger Arbeitsablauf auf extrem flexible Weise erreicht werden. An jedem Punkt in einem Arbeitsablauf wird der nächste Schritt durch einen Teilhaber des Systems in dem Sinn bestimmt, dass jede für diesen Teilhaber verfügbare Aktion auf den Datenobjekten, zu denen er zugehörig ist, ausgeführt werden kann. Mittels einer passenden Definition der Daten, zu denen ein Teilhaber zugehörig ist, und der Aktionen, die durch diesen Teilhaber ausgeführt werden können, kann ein Satz von möglichen Arbeitsabläufen am System geschaffen werden. Die Anordnung erlaubt es dem System, komplexe Geschäftsprozesse in einem Unternehmen oder einer Organisation zu modellieren, die qualifizierte Arbeiter beteiligen, die dazu befähigt sind, eine Bandbreite von möglichen Entscheidungen innerhalb eines Arbeitsablaufs zu treffen. Der durch das Computersystem bereitgestellte Rahmen stellt nichtsdestotrotz sicher, dass nur bestimmte Mitarbeiter eine gegebene Aktion ausführen können, und dass eine solche Aktion in Übereinstimmung mit den Anforderungen der Prozessdefinition, die diese Aktion definiert, durchgeführt werden müssen (z.B. dass bestimmte Daten bereitgestellt werden, dass bestimmte Überprüfungen durchgeführt werden).
  • Ein Arbeitsablauf umfasst eine Sequenz von Aktionen. Jedoch definiert die Datenbank 203 einen Arbeitsablauf nicht als eine bestimmte Sequenz von Aktionen und die Prozessdefinitionen sind nicht verlinkt, um so eine vordefinierte Sequenz von Aktionen in der Datenbank zu definieren. Zum Beispiel kann das System keinerlei Daten enthalten, die Aktionen zu einer Sequenz verlinken, oder anderweitig angeben, dass eine Aktion vor oder nach einer anderen auszuführen ist. Die durch das System erzwungenen Arbeitsabläufe ergeben sich aus der entsprechenden Systemstruktur und der Definition der Datenobjekte und Teilhaberobjekte entsprechend dem durch das System modellierten Umfeld (z.B. ein Krankenhaus), und insbesondere den Rollen in diesem Umfeld, die durch die Teilhaber repräsentiert werden (z.B. die Krankenhaus-Mitarbeiter).
  • Der Betrieb des Systems beim Ausführen eines Arbeitsablaufs wird nun anhand des Beispiels mit Bezug auf 4, 5 und dem in 2 gezeigten System veranschaulicht werden.
  • Es wird der in 5 gezeigte Arbeitsablaufs 500 betrachtet, der eine mögliche Sequenz von Aktionen repräsentiert, die in der Verwaltung eines Patienten von der Aufnahme bis zur Entlassung in einem Krankenaus ausgeführt werden. In diesem Beispiel enthält die Datenbank 203 Teilhaberobjekte, die Krankenhaus-Mitarbeiter repräsentieren, die an der Ausführung von Arbeitsabläufen beteiligt sind, die durch das System verwaltet werden. Die Teilhaberobjekte definieren zumindest einen Angestellten, eine Triage-Krankenschwester, einen ER-Arzt, einen Radiologieassistenten, einen Radiologen, einen Berater, und einen Gips-Techniker. Ein oder mehrere Mitglieder der Krankenhaus-Mitarbeiter können jeden dieser Teilhaber repräsentieren. Jeder Krankenaus-Mitarbeiter könnte durch das System als ein bestimmter Teilhaber mittels der Zugangsdaten erkannt werden, mit denen er sich auf einen der Terminals 206208 einloggt.
  • In diesem speziellen Beispiel wird eine Person, die sich bei einem Unfall verletzt hat, in der Notaufnahme durch einen Angestellten aufgenommen. Das Teilhaberobjekt in der Datenbank 203, welches einen Angestellten definiert, erlaubt es dem Angestellten, alle Patientenakte-Datenobjekte, die dem System in der Datenbank 203 zur Verfügung stehen, zu sehen. Zum Beispiel kann der Angestellte mittels einem Desktop-Terminal die Patientenakte 501 anhand des Namens suchen, um die Akte für die verletzte Person (nachfolgend Patient) aufzufinden. Ein Beispiel der Benutzerschnittstelle 213 des Terminals, mittels dem die Suche ausgeführt wird, ist in 4 gezeigt. Der Angestellte gibt Suchparameter (wie z.B. den Namen der verletzten Person oder andere Informationsfelder der Patientenakte-Datenobjekte) in die Suchfelder 401 ein, und der Arbeitsablauf-Manager 205 gibt in Antwort darauf eine Liste der Datenobjekt-Treffer 402 zurück. Typerweise würde nur ein Teil der in jedem Patientenakte-Datenobjekt gehaltenen Information an der Benutzerschnittstelle angezeigt – z.B. nur der Name und das Geburtsdatum jedes passenden Patienten.
  • Der Angestellte kann nun die Patientenakte der verletzten Person (z.B. Akte 404 in 4) auswählen. Wenn diese Auswahl ausgeführt wird, verarbeitet der Arbeitsablauf-Manger 205 das ausgewählte Patientenakte-Datenobjekt, um zu bestimmen welche (wenn überhaupt) Aktionen auf diesem Datenobjekt durch den Angestellten ausgeführt werden können. Alle Aktionen, die dem Angestellten zur Verfügung stellen, werden als Aktionen 403 in der Benutzerschnittstelle präsentiert. Würde der Angestellte mehr als eine Patientenakte auswählen, könnte der Angestellte andere Aktionen präsentiert bekommen, wie z.B. „Patientenakten zusammenführen“, um doppelte Akten zusammenzuführen, oder „Akten verlinken“, um die Mitglieder einer Familie im System zu verlinken. Wenn mehr als eine Akte ausgewählt wird, könnte der Arbeitsablauf-Manager konfiguriert sein, die Aktionen anzuzeigen, die auf mehreren Akten ausgeführt werden (wie es in den Datenobjekten oder den Prozessdefinitionen spezifiziert werden könnte) und den angezeigten Datenobjekten gemeinsam sind. In anderen Beispielen könnte der Arbeitsablauf-Manager konfiguriert sein, die Datenobjekte zusätzlich oder alternativ zu verarbeiten, die dem Benutzer präsentiert werden, um zu bestimmen welche (wenn überhaupt) Aktionen auf diesem Datenobjekt ausgeführt werden können, vor oder unabhängig von der Auswahl von einem bestimmten Datenobjekt(en) durch den Benutzer. Dies kann für Arbeitsablaufe nützlich sein, in denen eine Aktion jeweils auf einer Anzahl von Datenobjekten ausgeführt wird (z.B. alle von einer Suche zurückgegebenen oder an der Benutzerschnittstelle präsentierten Datenobjekte).
  • In diesem Beispiel wird dem Angestellten die Aktion „Patient aufnehmen“ präsentiert. Durch Auswählen dieser Aktion 502 wird dem Angestellten ein Aufnahmeformular präsentiert, welches in der für diese Aktion an der Datenbank gehaltenen Prozessdefinition definiert ist. Das Aufnahmeformular könnte erfordern, dass der Angestellte Information, wie z.B. eine Beschreibung, welche Körperteile verletzt sind, ihr Schmerzniveau, ob der Patient bei Bewusstsein ist, etc., eingibt. In diesem Fall hat der Patient einen verletzten Arm und Auge. Das Aufnahmeformular würde an den Verfahrensdaten für die „Patient aufnehmen“-Aktion definiert sein. Die Verfahrensdaten könnten z.B. das Aussehen des Formulars, seine Datenfelder, welche Felder vorgeschrieben und welche optional sind, das erforderliche Format der Daten für jedes Feld, Routinen zum Verarbeiten der in das Formular eingegeben Daten, etc. definieren. Abhängig von der Art der Aktion, könnte jede mit der Aktion und in den Verfahrensdaten definierte Verarbeitung am Prozessor des Servers und/oder des Benutzerterminals ausgeführt werden. Typischerweise könnte Verarbeitung betreffend die Anzeige und Eingabe von Daten am Terminal ausgeführt werden, und jede substantielle Verarbeitung betreffend an der Datenbank 203 gehaltenen Daten könnte am Server ausgeführt werden. An einer Prozessdefinition gehaltene Verfahrensdaten könnten Routinen oder Code für die Ausführung am Terminal und/oder Server enthalten.
  • Die Prozessdefinition kann ferner einen Satz von Vorbedingungen enthalten, die von der jeweiligen Aktion geforderten Daten definieren. Die Vorbedingungen definieren für den Arbeitsablauf-Manager, welche Daten von den ausgewählten Datenobjekt(en) zu verwenden sind. Wenn z.B. der Angestellte die „Patient aufnehmen“-Aktion auswählt, kopiert der Arbeitsablauf-Manager automatisch in den Vorbedingungen spezifizierte Datenfelder dieser Aktion von der ausgewählten Patientendatenakte in ein Aufnahmeakte-Datenobjekt. In diesem Beispiel könnten die Felder den Namen, die Gesundheitssystemnummer, das Geburtsdatum und die Adresse des Patienten enthalten, wobei der Arbeitsablauf-Manager das Formular mit diesen Daten gemäß den Vorbedingungen der Aktion bestückt. Die „Patient aufnehmen“-Aktion erzeugt eine neue Instanz eines Aufnahmeakte-Datenobjekts, welches mit dem Patientenakte-Datenobjekt verlinkt ist. Das Aufnahmeakte-Datenobjekt kann in der Datenbank als ein Datenobjekttyp vordefiniert sein. Sobald die Aktion abgeschlossen ist und die Aufnahmeakte erzeugt worden ist, ist die Rolle des Angestellten in der Aufnahme des Patienten abgeschlossen.
  • Konventionelle Arbeitsablauf-Verwaltungssysteme erlauben es nicht, dass ein Benutzer seine Daten sucht oder durchsucht und dass auf der Basis der gesehenen oder ausgewählten Daten dem Benutzer Aktionen präsentiert werden, die durch den Benutzer auf diesen Daten ausgeführt werden. In konventionellen Systemen können Aktionen nur durch Auswählen eines Falles ausgeführt werden, der einem Benutzer in Übereinstimmung mit einem strengen Arbeitsablauf, der am System definiert ist, zugeteilt wurde. Der Benutzer würde dann eine vorbestimmte Aktion auf diesem Fall starten, wieder gemäß dem vordefinierten Arbeitsablauf.
  • Ein zweiter Teilhaber in dem System ist eine Triage-Krankenschwester. Der Triage-Krankenschwester-Teilhaber ist zu den Aufnahmeakten zugehörig. Wenn ein Triage-Krankenschwester-Benutzer Aufnahmeakten an einer Benutzerschnittstelle 213 eines Terminals sucht oder betrachtet, wird der Triage-Krankenschwester beim Auswählen eines Patienten, der noch nicht beurteilt worden ist, die Aktion „Patient beurteilen“ bereitgestellt. Dies wird erreicht, weil das durch den Arbeitsablauf-Manager verarbeitete Aufnahmeakte-Datenobjekt spezifiziert, dass eine Triage-Krankenschwester die „Patient beurteilen“-Aktion nur ausführen kann, wenn die Objektinformation des Datenobjekts angibt, dass der Patient noch nicht beurteilt worden ist. Mit anderen Worten, die Aktion wird nur präsentiert, wenn ein in dem ausgewählten Datenobjekt spezifizierter Kontext erfüllt ist.
  • Die Triage-Krankenschwester wählt die Aufnahmeakte für den durch den Angestellten aufgenommenen verletzten Patienten aus und führt die „Patient beurteilen“-Aktion 503 aus. Die Triage-Krankenschwester beurteilt dann den Patienten, möglicherweise mithilfe von an dem Terminal in Übereinstimmung mit dem Prozess präsentierter Information, und bestimmt die Schwere der Verletzungen. Die Triage-Krankenschwester könnte ebenso Zugang (über das Teilhaberobjekt, zu dem die Triage-Krankenschwester als ein Systembenutzer zugehörig ist) zu den Patientenakte-Datenobjekten haben. In diesem Beispiel werden die Verletzungen von der Krankenschwester nicht als lebensbedrohlich betrachtet, sodass die Krankenschwester entsprechende Notizen an die Aufnahmeakte anfügt und eine Warteschlange mittlerer Priorität für die Behandlung des Patienten in der Notaufnahme auswählt.
  • Zur Beachtung: Die Triage-Krankenschwester führt die „Patient beurteilen“-Aktion auf dem Aufnahmeakte-Datenobjekt nicht als Folge eines vordefinierten Arbeitsablaufs aus, der in der Datenbank definiert ist und durch den Arbeitsablauf-Manager ausgeführt wird. Die Triage-Krankenschwester führt die „Patient beurteilen“-Aktion auf dem Aufnahmeakte-Datenobjekt aus, weil die Krankenschwester die ihm oder ihr zugänglichen Daten betrachtet, entweder durch Durchsuchen oder Suchen, und die ihm oder ihr durch den Arbeitsablauf-Manager verfügbar gemachten Aktionen auswählt. Somit stellen die Datenbank und der Arbeitsablauf-Manager sicher, dass jeder Benutzer nur die Aktionen ausführt, die ihm in Übereinstimmung mit den entsprechenden Prozessdefinitionen für diese Aktionen und dem Kontext, in dem der Benutzer seine Daten betrachtet, zur Verfügung stehen. Auf diese Weise beschränkt das System Benutzer, um nur erlaubte Arbeitsabläufe auszuführen, ohne dass es erforderlich ist, diese Arbeitsabläufe im Voraus an der Datenbank zu definieren.
  • Als nächstes untersucht ein ER-Arzt den Patienten, z.B. wenn die Aufnahmeakte des Patienten den Anfang der an der Benutzerschnittstelle des Terminals des Arztes angezeigten Warteschlange erreicht. ER-Ärzte als Teilhaber sind zu Aufnahmeakte- und Patientenakte-Datenobjekten zugehörig. Beim Auswählen der Aufnahmeakte für den Patienten wird dem ER-Arzt mit der Aktion „Patient untersuchen“ bereitgestellt, welche der Arzt auswählt 504. Dies stellt ein Formular bereitgestellt, in welches der Arzt Notizen eintragen kann, und welches dem Arzt ebenfalls erlaubt, die Krankengeschichte des Patienten (die in Objektinformation der Patientenakte für die verletzte Person gehalten wird) und von der Triage-Krankenschwester gemachte Notizen zu betrachten. Als qualifizierter Arbeiter wird der ER-Arzt jedoch nicht durch einen Prozess geführt, der für die „Patient untersuchen“-Aktion definiert ist. Die Aktion repräsentiert den Entscheidungspunkt, an dem der Arzt die am Patienten auszuführenden Untersuchungen frei bestimmt und gibt dem Arzt die Möglichkeit, über das Arbeitsablauf-Verwaltungssystem eine Bandbreite von Untersuchungen anzuordnen (z.B. könnten die Verfahrensdaten für die Aktion eine Suchschnittstelle am Terminal bereitstellen, über die der Arzt Untersuchungen, Tests, Scans und andere Maßnahmen anfordern kann, und über die der Arzt Notizen in die Krankengeschichte des Patienten eintragen kann).
  • Der Arzt entscheidet, dass eine Röntgenaufnahme des Arms des Patienten erforderlich ist, und dass ein Augenarzt einen Blick auf das Auge des Patienten werfen soll. Das Auswählen der entsprechenden Option, die durch die „Patient untersuchen“-Aktion bereitgestellt wird, veranlasst, dass die Objektinformation der Aufnahmeakte so modifiziert wird, dass sie den Vermerk „Röntgenaufnahme erforderlich“ und „Augenarzt erforderlich“ enthält. Der Radiologieassistent-Teilhaber könnte so konfiguriert sein, dass ihm die Aktion „Röntgenaufnahme durchführen“ für so vermerkte Aufnahmeakten bereitgestellt wird, die durch einen Radiologieassistent-Benutzer betrachtet oder ausgewählt werden. Der Augenarzt-Teilhaber könnte so konfiguriert sein, dass im die Aktion „Auge Sprechstunde“ für so vermerkte Aufnahmeakten bereitgestellt wird, die durch einen Radiologieassistent-Benutzer betrachtet oder ausgewählt werden.
  • Die Benutzerschnittstelle 213 eines Terminals könnte in Abhängigkeit von dem Teilhaber konfiguriert sein, zu dem der Benutzer des Terminals zugehörig ist. Zum Beispiel könnte das Terminal so konfiguriert sein, dass einem Radiologieassistenten, der sich auf ein Terminal mit seinen Zugangsdaten einloggt, eine Liste von Aufnahmeakten angezeigt wird, die den Vermerk „Röntgenaufnahme erforderlich“ enthalten. Als zweites Beispiel könnte das Terminal so konfiguriert sein, dass einem Augenarzt, der sich auf ein Terminal mit seinen Zugangsdaten einloggt, eine Liste von Aufnahmeakten angezeigt wird, die den Vermerk „Augenarzt erforderlich“ enthalten. Dies könnte über die Verwendung von am System (z.B. an der Datenbank 203) gehaltenen Benutzerprofilen für die Benutzer des Systems erreicht werden, die die Teilhabertypen spezifizieren, zu denen jeder Benutzer zugehörig ist. Dadurch, dass es erforderlich ist, dass ein Benutzer des System sich als ein bestimmter Benutzer authentifiziert (z.B. durch Einloggen mit seinen Zugangsdaten), könnte das System das entsprechende Benutzerprofil und somit die zu den zugehörigen Teilhaber(n) zugehörige Benutzerschnittstelle laden. Die jeweilige Konfiguration der Benutzerschnittstelle für einen Teilhaber könnte in Schnittstellenkonfigurationsdaten an dem entsprechenden Teilhaberobjekt gespeichert sein.
  • Der Radiologieassistent wählt die „Röntgenaufnahme durchführen“-Aktion 505 mit Bezug auf die Aufnahmeakte des Patienten aus, was dazu führt, dass ein Röntgenaufnahme-Datenobjekt erzeugt wird, auf welchem die „Röntgenaufnahme durchführen“-Aktion ausgeführt wird. Das Röntgenaufnahme-Datenobjekt ist mit der Aufnahmeakte des Patienten verlinkt. Das resultierende Röntgenbild wird im Röntgenaufnahme-Datenobjekt gespeichert. Ein Radiologe-Teilhaber ist zu allen Röntgenaufnahme-Datenobjekten zugehörig und kann somit das mit der Aufnahmeakte des Patienten verlinkte Röntgenaufnahme-Datenobjekt betrachten. Beim Auswählen des Röntgenaufnahme-Datenobjekts wird dem Radiologen durch den Arbeitsablauf-Manager, der auf dem Röntgenaufnahme-Datenobjekt ausgeführt wird, die Aktion „Röntgenaufnahme bewerten“ präsentiert. Der Radiologe wählt diese Aktion 506 aus und gibt seine Erkenntnis, dass der Arm des Patienten gebrochen ist, in ein durch sein Terminal in Übereinstimmung mit der Definition der Aktion in ihrer entsprechenden Prozessdefinition präsentiertes Formular ein.
  • Der Augenarzt könnte gleichermaßen die Möglichkeit haben, beim Auswählen der Aufnahmeakte des Patienten die „Augen Sprechstunde“-Aktion 507 auszuführen. Der Augenarzt gibt seine Erkenntnis, dass das Auge nur kleinere Schäden erlitten hat, die keiner speziellen Behandlung bedürfen, in ein durch die Aktion präsentiertes Formular ein und die Notizen werden anschließend in der Aufnahmeakte gespeichert.
  • Sobald jede Untersuchung abgeschlossen ist, könnte die entsprechende Aktion die Aufnahmeakte mit einem Vermerk versehen, der dem ER-Arzt erlaubt, zu bestimmen, wann die Untersuchungen abgeschlossen worden sind. An diesem Punkt führt der ER-Arzt den Arbeitsablauf zur Auswählen der „Behandlungsentscheidung“-Aktion 508 auf der Aufnahmeakte des Patienten weiter. Der Arzt könnte ermitteln, wann Untersuchungen abgeschlossen worden sind, indem er an seinem Terminal nach den Akten sucht, deren Untersuchungen mittels eines entsprechenden Vermerks als abgeschlossen markiert worden sind (z.B. ein Kennzeichen oder jegliche andere Art von Hinweis). Der Arzt kann die Notizen des Augenarztes und das mit der Aufnahmeakte verlinkte Röntgenbild im Röntgenaufnahme-Datenobjekt betrachten. Der Arzt bestimmt, dass der gebrochene Arm in Gips gelegt werden soll, und ordnet somit einen Vorderarmgips aus einer Liste von durch die „Behandlungsentscheidung“-Aktion verfügbar gemachten Behandlungen an. Dies veranlasst, dass die Aufnahmeakte so modifiziert wird, dass sie anzeigt, dass ein Gips erforderlich ist.
  • Ein Gips-Techniker verwendet ein Terminal, welches konfiguriert ist, alle Aufnahmeakten zu präsentieren, in denen vermerkt wurde, anzuzeigen, dass ein Gips erforderlich ist. Sobald der Patient den Anfang seiner durch die Benutzerschnittstelle an seinem Terminal bereitgestellten Arbeitswarteschlange erreicht, wählt der Gips-Techniker diesen Patienten aus und es ihm wird die Option bereit gestellt, die Aktion „Gips herstellen“ 509 auszuführen. Diese Aktion präsentiert dem Gips-Techniker die vom Arzt in der Aufnahmeakte gemachten Notizen, die die Art des erforderlichen Gipses identifizieren. Der Gips-Techniker stellt den Gips her und markiert die Aufgabe in der Aktion als abgeschlossen.
  • Schließlich kann der Angestellte den Patienten entlassen, sobald alle vom Arzt geforderten Behandlungen abgeschlossen worden sind. Dies wird erreicht, indem das Aufnahmeakte-Datenobjekt konfiguriert ist, den Arbeitsablauf-Manager zu veranlassen, einem Angestellten die Aktion „Patient entlassen“ 510 nur zu präsentieren, wenn der Angestellte die Aufnahmeakte eines Patienten auswählt, für die alle geforderten Behandlungen als abgeschlossen markiert sind.
  • Solch ein komplexer Arbeitsablauf könnte nicht in konventionellen Systemen erreicht werden, weil die Anzahl von möglichen Untersuchungen und Behandlungen enorm ist und es wäre nicht realistisch, strenge Prozesse für jede mögliche Kombination von Untersuchungen und Behandlungen, die ein Patient erfordert, zu spezifizieren. Da ferner das Computersystem einem Benutzer Aktionen (a) gemäß den im System für Teilhaber definierten Fähigkeiten, zu denen der Benutzer gehört, und (b) dem durch die Daten repräsentierten Kontext, auf die der Teilhaber Zugriff hat, verfügbar macht, stellt das System eine Architektur bereit, die sicherstellt, dass Arbeitsabläufe sachgemäß ausgeführt werden.
  • Um z.B. zu erlauben, dass ein entsprechender Arbeitsablauf ausgeführt wird, können die Teilhaber- und Datenobjekte so konfiguriert sein, dass es für jeden Schritt im Arbeitsablauf zumindest ein Teilhaber definiert ist, der zu den Datenobjekten zugehörig ist, auf denen der Schritt auszuführen ist, und dem es erlaubt ist, die diesen Schritt repräsentierende Aktion auszuwählen. Um zu verhindern, dass Teilhaber bestimmte Aktionen auf ihren Daten ausführen, können ihre Datenobjekte so konfiguriert werden, dass sie nicht spezifizieren, dass der Teilhaber diese Aktionen ausführen kann. Um zu verhindern, dass ein Teilhaber auf bestimmte Datenobjekte zugreift, kann das diesen Teilhaber repräsentierende Teilhaberobjekt so konfiguriert werden, dass es diese Datenobjekte nicht als Objekte spezifiziert, auf die der Teilhaber Zugriff hat.
  • Ein Beispiel des Betriebs des in 2 gezeigten Systems, wenn ein Benutzer eine Aktion innerhalb eines Workflows ausführt, wird nun mit Bezug auf 9 beschrieben werden. Bei 901 loggt sich der Benutzer in das System an einem Benutzerterminal ein, z.B. durch Eingeben seiner Login-Anmeldedaten in eine als eine Webanwendung bereitgestellte Benutzerschnittstelle 213. Die Identität des Benutzers könnte am Benutzerterminal 206 oder dem Server 201 verifiziert werden. In diesem Beispiel hat der Arbeitsablauf-Manager Zugriff auf ein gespeichertes Profil für jeden Benutzer, welches dem System den Teilhaber angibt, den der Benutzer repräsentiert. Wenn der Benutzer sich in das System einloggt, weiß deshalb der Arbeitsablauf welche(n) Teilhaber der Benutzer repräsentiert und somit welche Teilhaberobjekt(e) die Daten identifizieren, auf die der Benutzer zugreifen darf.
  • In Antwort auf den Benutzer, der sich in das System einloggt, stellt der Arbeitsablauf-Manager, der am Prozessor 202 ausgeführt wird, bei 902 dem Benutzerterminal am Benutzerprofil gespeicherte Daten oder das zugehörige Teilhaberobjekt bereit, welches definiert, wie die Benutzerschnittstelle 213 am Terminal sich selbst für diesen Benutzer konfigurieren soll (z.B. das Aussehen der Benutzerschnittstelle, welche Suchoptionen präsentiert werden sollen, und ob die Schnittstelle versuchen soll, standardmäßig alle Daten von den Datenobjekten zu laden, die zu dem durch den Benutzer repräsentierten Teilhaber zugehörig sind).
  • Bei 903 übermittelt der Benutzer eine Datenanfrage an den Arbeitsablauf-Manager mittels der Benutzerschnittstelle. Zum Beispiel: der Benutzer könnte seine Daten durchsuchen, wobei die Benutzerschnittstelle konfiguriert ist, Information vom Arbeitsablaufmanager anzufordern, die das vom Benutzer ausgeführte Durchsuchen erfüllen; oder der Benutzer könnte eine Suche ausführen, wobei die in die Benutzerschnittstelle eingegebene Suchanfrage an den Arbeitsablauf-Manager weitergegeben wird, der die Suche innerhalb der Datenobjekte ausführt, die zu dem durch den Benutzer repräsentierten Teilhaber zugehörig sind. Der Arbeitsablauf-Manager erfüllt die von der Benutzerschnittstelle (904) empfangenen Datenanfragen, indem er die angeforderten Daten von den Datenobjekten des durch den Benutzer repräsentierten Teilhabers gemäß den zugehörigen Datenobjekten zurückgibt, die am entsprechenden Teilhaberobjekt (z.B. 602 im Teilhaberobjekt 600 von 6) definiert sind. Die Benutzerschnittstelle präsentiert die zurückgegebenen Daten an der Benutzerschnittstelle. Der Ablauf-Manager könnte konfiguriert sein, Daten, die auf die Datenobjekte des Teilhabers beschränkt sind, gemäß jeglicher passenden Methode zurückzugeben, wie z.B. mittels einer entsprechenden Abfrage in die Datenbank 203, die die Datenobjekte hält (z.B. könnte die Abfrage eine Liste der Datenobjekte/Datenobjekttypen enthalten, die durch das Teilhaberobjekt identifiziert werden).
  • Das Durchsuchen von Daten könnte beinhalten, dass die Benutzerschnittstelle standardmäßig Daten lädt, wenn sich der Benutzer auf dem Terminal einloggt (z.B. in Übereinstimmung mit am Benutzerprofil oder an den zugehörigen Teilhaberobjekten gespeicherten Daten).
  • Schritte 903 und 904 im Flussdiagramm-Beispiel repräsentieren einen Teilhaber (repräsentiert durch den Benutzer), der auf seine zugehörigen Datenobjekte zugreift. Ein Teilhaber könnte alternativ oder zusätzlich auf seine Datenobjekte durch Auswählen von ihm präsentierten Daten zugreifen (z.B. infolge von Durchsuchen oder einer Suche). Dies ist durch Flussdiagramm-Schritt 905 angegeben.
  • Wenn ein Benutzer auf Daten an der Benutzerschnittstelle zugreift, entweder über Durchsuchen, Suchen, oder Auswählen von an der Schnittstelle präsentierten Daten, gibt die Benutzerschnittstelle dem Arbeitsablauf-Manger an, auf welche Daten zugegriffen wird. Beim Durchsuchen oder Suchen wird diese Information automatisch dem Arbeitsablauf-Manager bereitgestellt, um den Arbeitsablauf-Manager zu veranlassen, die entsprechenden Daten zurückzugeben. Wenn der Benutzer ihm präsentierte Daten an der Benutzerschnittstelle auswählt, gibt die Schnittstelle dem Arbeitsablauf-Manager die Daten an, die ausgewählt sind.
  • Bei 905 verarbeitet der Arbeitsablauf-Manager die Spezifikationen der Datenobjekte an denen die zugegriffenen Daten gehalten werden (z.B. 702 im in 7 gezeigten Datenobjekt 700), um den Satz von Aktionen zu identifizieren, die auf diesen Datenobjekten ausgeführt werden können und die der durch den Benutzer repräsentierte Teilhaber erlaubt ist, auszuführen. Ein solches Verarbeiten könnte auf jegliche geeignete Weise ausgeführt werden. Zum Beispiel könnte der Arbeitsablauf-Manager als erstes die an den zugegriffenen Datenobjekten aufgelisteten Aktionen filtern, um einen ersten Satz von Aktionen zu identifizieren, die der Teilhaber erlaubt ist, auszuführen (906a); der Arbeitsablauf-Manager könnte dann den ersten Satz von Aktionen filtern, um die Aktionen zu identifizieren, die allen zugegriffenen Datenobjekten gemeinsam sind (906b) und somit einen zweiten Satz von Aktionen erzeugen (dieser Schritt kann nicht erforderlich sein wenn nur ein Datenobjekt ausgewählt ist). Die zugegriffenen Datenobjekte können ferner einen Kontext spezifizieren (z.B. einen Satz von Kriterien, wie in 702 gezeigt), der erfüllt werden muss, damit die Aktion dem Benutzer präsentiert wird. Der Arbeitsablauf-Manager würde deshalb schlussendlich den zweiten Satz von Aktionen filtern, um einen finalen Satz von Aktionen zu identifizieren (906c), deren Kontext durch vorbestimme Kriterien der Datenobjekte erfüllt ist (typischerweise, obwohl nicht notwendigerweise, auf die zugegriffenen Datenobjekte beschränkt) um sie den Benutzer an der Benutzerschnittstelle in Antwort auf das Zugreifen auf Daten durch den Benutzer zu präsentieren. Zum Beispiel könnten im oben beschriebenen Krankenhaus-Beispiel die Patienten-Datenobjekte zusätzlich eine „Patiententod registrieren“-Aktion spezifizieren, die jeder Arzt (der Teilhaber) ausführen kann, die jedoch dem Arzt nur beim Auswählen einer Patientenakte mit dem Kriterium „IstTot“ auf wahr gesetzt verfügbar ist.
  • Bei 906 präsentiert die Benutzerschnittstelle dem Benutzer den finalen Satz von Aktionen, die durch den Arbeitsablauf-Manager bestimmt sind. Schritte 903906 können wiederholt werden, wenn die durch den Benutzer zugegriffenen Daten sich ändern, um so sicherzustellen, dass dem Benutzer stets ein passender Satz von Aktionen gemäß den durch den Benutzer durchsuchten, gesuchten, ausgewählten oder anderweitig zugegriffenen Daten präsentiert wird. Bei 907 wählt der Benutzer eine an der Benutzerschnittstelle präsentierte Aktion aus, die den Arbeitsablauf-Manager veranlasst, auf die für die Aktion an der Datenbank gespeicherte Prozessdefinition zuzugreifen und die Aktion gemäß den Verfahrensdaten, die die Aktion definieren, auszuführen. Diese Verfahrensdaten könnten z.B. eines oder mehrere der Folgenden definieren: ein Formular, das der Benutzer auszufüllen hat, einen Satz von auszuführenden Überprüfungen von durch den Benutzer eingegebenen Daten, einen Prozess zum Erzeugen einer neuen Instanz eines Datenobjekts; ein Prozess zum Modifizieren eines Datenobjekts. Zumindest einige der Verfahrensdaten könnten am Benutzerterminal ausgeführt werden (z.B. wenn ein Formular einem Benutzer zum Ausfüllen präsentiert würde). Der Arbeitsablauf-Manager könnte konfiguriert sein, um eine Aktion mit Daten von an der Datenbank gehaltenen Datenobjekten gemäß an der Prozessdefinition für die Aktion vorhandenen Vorbedingungen zu initiieren.
  • Auf diese Weise werden die Benutzer des Systems in die Lage versetzt, passende Arbeitsabläufe auszuführen, ohne übermäßig durch vordefinierte Sequenzen von Aktionen beschränkt zu sein.
  • In den hierin beschriebenen Beispielen werden die Datenobjekte, Teilhaberobjekte und Aktionen in einer Datenbank gehalten, jedoch können ganz allgemein solche Daten überall dort, wo sie dem System zugänglich sind, und in jeglicher geeigneten Form bereitgestellt werden. Der Begriff Objekt ist derart zu verstehen, dass er die Datenbank nicht darauf beschränkt, eine Objekt-Datenbank zu sein; der Begriff Objekt wird breit verwendet und betrifft jede Sammlung von Daten mit dem hierin beschriebenen Informationsinhalt.
  • Das Computersystem von 2 ist derart gezeigt, dass es eine Anzahl von funktionalen Blöcken umfasst. Dies ist lediglich schematisch und ist nicht darauf gerichtet, eine strikte Aufteilung zwischen den verschiedenen Elementen des Arbeitsablauf-Verwaltungssystems zu definieren. Jeder funktionale Block kann in jeglicher geeigneten Weise bereitgestellt sein, einschließlich einer festen funktionalen Hardware oder als an einem Prozessor ausgeführten Software.
  • Im Allgemeinen können jede der oben beschriebenen Funktionen, Verfahren, Techniken oder Komponenten in Software, Firmware, Hardware (z.B. feste Logikschaltkreise) oder jede Kombination davon implementiert sein. Die Begriffe „Modul“, „Funktionalität“, „Komponente“, „Element“, „Einheit“, „Block“ und „Logik“ können hierin verwendet sein, um Software, Firmware, Hardware, oder jede Kombination davon allgemein zu repräsentieren. Im Fall einer Software-Implementierung repräsentieren das Modul, die Funktionalität, Komponente, das Element, die Einheit, der Block oder die Logik Programmcode, der die spezifizierten Aufgaben ausführt, wenn er auf einem Prozess ausgeführt wird. Die hierin beschriebenen Algorithmen und Verfahren könnten durch einen oder mehrere Prozessoren ausgeführt werden, die Code ausführen, der die Prozessor(en) veranlasst, die Algorithmen/Verfahren auszuführen. Beispiele eines computerlesbaren Speichermediums schließen einen Direktzugriffspeicher (RAM), Festwertspeicher (ROM), eine optische Platte, Flash-Speicher, Festplattenspeicher, und andere Speichervorrichtungen ein, die magnetische, optische, und andere Techniken verwenden können, um Instruktionen oder andere Daten zu speichern, und auf die durch eine Maschine zugegriffen werden kann.
  • Der Begriff Computerprogrammcode und computerlesbare Instruktionen, wie hierin verwendet, betreffen jede Art von ausführbaren Code für Prozessoren, einschließlich in einer Maschinensprache, einer interpretierten Sprache oder einer Scripting-Sprache ausgedrückten Code. Ausführbarer Code schließt Binärcode, Maschinencode, Bytecode, und in einer Programmiersprache wie z.B. C, Java oder OpenCL ausgedrückten Code ein. Ausführbarer Code kann z.B. jede Art von Software, Firmware, Script, Modul oder Bibliothek sein, die, wenn sie geeignet ausgeführt, verarbeitet, interpretiert, kompiliert, an einer virtuellen Maschine oder anderen Softwareumgebung ausgeführt wird, einen Prozessor des Computersystems, an dem der ausführbare Code unterstützt wird, veranlasst, die durch den Code spezifizierten Aufgaben auszuführen.
  • Ein Prozessor, Computer, oder Computersystem kann jede Art von Vorrichtung, Maschine oder zweckbestimmter Schaltkreis, oder Sammlung oder Teil davon mit Verarbeitungsfähigkeiten sein, sodass er Instruktionen ausführen kann. Ein Prozessor kann jede Art von gewöhnlichem oder zweckbestimmtem Prozessor sein, wie z.B. eine CPU, eine GPU, ein System-on-Chip, eine Zustandsmaschine, ein Medienprozessor, eine anwendungsspezifische integrierte Schaltung (ASIC), eine programmierbare Logikschaltung, ein Field Programmable Gate Array (FPGA), oder ähnliches. Ein Computer oder Computersystem kann einen oder mehrere Prozessoren umfassen.
  • Die Anmelderin offenbart hiermit jedes hierin beschriebene individuelle Merkmal isoliert und jede Kombination von zwei oder mehreren solcher Merkmale, insoweit es möglich ist, Merkmale oder Kombinationen basierend auf der vorliegenden Beschreibung als Ganzes im Licht des üblichen allgemeinen Wissens eines Fachmanns auszuführen, unabhängig davon, ob solche Merkmale oder Kombinationen von Merkmalen hierin beschriebene Probleme lösen. Mit Blick auf die vorangegangene Beschreibung, wird es dem Fachmann offensichtlich sein, dass zahlreiche Abwandlungen innerhalb des Umfangs der Erfindung gemacht werden können.

Claims (40)

  1. Computersystem zum Erzwingen eines Arbeitsablaufs, wobei das Computersystem umfasst: einen Computerspeicher, umfassend: einen Satz von Aktionen; eine Vielzahl von Datenobjekten, wobei jedes eine Spezifikation aufweist, die eine oder mehrere des Satzes von Aktionen für eine Ausführung auf dem Datenobjekt identifiziert; und eine Vielzahl von Teilhaberobjekten, wobei jedes zu (a) einem oder mehreren der Datenobjekte und (b) einer oder mehreren des Satzes von Aktionen zugehörig ist; einem Benutzerterminal, welches mit dem Computerspeicher gekoppelt ist und konfiguriert ist, einem Benutzer zu einem oder mehreren Datenobjekten, die zu einem Teilhaberobjekt zugehörig sind, welches diesem Benutzer entspricht, Zugang bereitzustellen; und einen Computerprozessor, der konfiguriert ist, zumindest einen Teil eines Arbeitsablaufs, der eine Sequenz von ersten und zweiten Aktionen umfasst, durch Folgendes auszuführen: Ausführen einer ersten Aktion des Satzes auf einem ersten Datenobjekt der Vielzahl; Veranlassen des Benutzerterminals in Antwort auf einen ersten Benutzer, der auf das ersten Datenobjekt am Benutzerterminal zugreift, dem ersten Benutzer eine oder mehrere zweite Aktionen zu präsentieren, die durch das erste Datenobjekt identifiziert sind und zu einem ersten Teilhaberobjekt, das dem ersten Benutzer entspricht, zugehörig sind; und wenn der erste Benutzer eine zweite Aktion am Benutzerterminal auswählt, Ausführen der ausgewählten zweiten Aktion auf dem ersten Datenobjekt.
  2. Computersystem gemäß Anspruch 1, wobei die ersten und zweiten Aktionen am Computersystem nicht verlinkt sind, um so den Arbeitsablauf zu definieren.
  3. Computersystem gemäß Anspruch 1 oder 2, wobei der Computerprozessor konfiguriert ist: in Antwort auf einen zweiten Benutzer, der das erste Datenobjekt am Benutzerterminal auswählt, das Benutzerterminal zu veranlassen, dem zweiten Benutzer eine oder mehrere erste Aktionen zu präsentieren, die durch das erste Datenobjekt identifiziert sind und zu einem zweiten Teilhaberobjekt, das dem zweiten Benutzer entspricht, zugehörig sind; und die erste Aktion auf dem ersten Datenobjekt in Antwort auf den zweiten Benutzer auszuführen, der diese erste Aktion am Benutzerterminal auswählt.
  4. Computersystem gemäß einem der vorhergehenden Ansprüche, wobei das Computersystem konfiguriert ist, den Benutzer am Benutzerterminal zu authentifizieren, und in Abhängigkeit von dieser Authentifizierung das entsprechende Teilhaberobjekt am Computerspeicher zu identifizieren.
  5. Computersystem gemäß einem der vorhergehenden Ansprüche, wobei der Computerspeicher ferner ein oder mehrere Benutzerprofile umfasst, wobei jedes ein Teilhaberobjekt angibt, wobei das Computersystem konfiguriert ist, das entsprechende Teilhaberobjekt am Computerspeicher durch Folgendes zu identifizieren: in Abhängigkeit von durch den Benutzer bereitgestellten Zugangsdaten, Nachschlagen des Benutzerprofils für diesen Benutzer und Verwenden des angegebenen Teilhaberobjekts als das entsprechende Teilhaberobjekt.
  6. Computersystem gemäß einem der vorhergehenden Ansprüche, wobei der Zugriff auf das erste Datenobjekts durch den ersten Benutzer am Benutzerterminal eines oder mehrere der Folgenden umfasst: Ausführen einer Suche nach am ersten Datenobjekt gehaltener Information; Durchsuchen von am ersten Datenobjekt gehaltener Information; und Auswählen von am ersten Datenobjekt gehaltener und dem Benutzer präsentierter Information.
  7. Computersystem gemäß einem der vorhergehenden Ansprüche, wobei der Computerprozessor konfiguriert ist, die eine oder mehreren ersten Aktionen am Benutzerterminal als auswählbare Optionen zu präsentieren.
  8. Computersystem gemäß einem der vorhergehenden Ansprüche, wobei der Computerprozessor konfiguriert ist, die ersten und zweiten Aktionen auf den ersten Datenobjekten in Übereinstimmung mit an entsprechenden Aktionen gehaltenen Verfahrensdaten auszuführen.
  9. Computersystem gemäß einem der vorhergehenden Ansprüche, wobei die ersten oder zweiten Aktionen konfiguriert sind, das erste Datenobjekt zu modifizieren und/oder eine neue Instanz des ersten Datenobjekts unter Verwendung von Information vom ersten Datenobjekt zu erzeugen.
  10. Computersystem gemäß einem der vorhergehenden Ansprüche, wobei ein oder mehrere der Vielzahl von Datenobjekten ferner einen Kontext für eine oder mehrere der darin identifizierten Aktionen enthalten, wobei jeder Kontext einen Satz von einer oder mehreren zum Auslösen der Aktion erforderlichen Eigenschaften des entsprechenden Datenobjekts definiert, und wobei der Computerprozessor ferner konfiguriert ist, dem ersten Benutzer nur die der einen oder mehreren zweiten Aktionen zu präsentieren, deren Kontext durch das erste Datenobjekt erfüllt werden.
  11. Computersystem gemäß einem der vorhergehenden Ansprüche, wobei zumindest einige des Satzes von Aktionen Vorbedingungen umfassen, die von der Aktion benötigte Information spezifizieren, und wobei der Computerprozessor konfiguriert ist, in der ausgewählten zweiten Aktion die spezifizierte Information als vom ersten Datenobjekt abgeleitet zu verwenden.
  12. Computersystem gemäß einem der vorhergehenden Ansprüche, wobei der Computerprozessor konfiguriert ist, dem ersten Benutzer zu erlauben, nur auf das eine oder mehreren Datenobjekte zuzugreifen, die zu einem Teilhaberobjekt, welches dem ersten Benutzer entspricht, zugehörig sind.
  13. Computersystem gemäß einem der vorhergehenden Ansprüche, wobei das Benutzerterminal in Abhängigkeit zu Konfigurationsdaten, die am Teilhaberobjekt, die dem ersten Benutzer entsprechen, gehalten werden, konfiguriert ist.
  14. Computersystem gemäß einem der vorhergehenden Ansprüche, wobei der Computerprozessor und der Computerspeicher an einem Computerserver, der mit dem Benutzerterminal gekoppelt ist, bereitgestellt sind.
  15. Verfahren zum Erzwingen eines Arbeitsablaufs an einem Computersystem, welches einen Satz von Aktionen, eine Vielzahl von Datenobjekten, wobei jedes eine Spezifikation umfasst, die eine oder mehrere des Satzes von Aktionen für eine Ausführung auf dem Datenobjekt identifiziert, und eine Vielzahl von Teilhaberobjekten definiert, wobei jedes zu (a) einem oder mehreren Datenobjekten und (b) zu einer oder mehrerer des Satzes von Aktionen zugehörig ist, wobei das Verfahren umfasst: Ausführen einer ersten Aktion des Satzes auf einem ersten Datenobjekt der Vielzahl; einem ersten Benutzer Erlauben, auf ein oder mehrere der Datenobjekte zuzugreifen, die zu einem ersten Teilhaberobjekt zugehörig sind, wobei eines oder mehrere Datenobjekte das erste Datenobjekt enthalten; in Antwort auf den ersten Benutzer, der auf das erste Datenobjekt zugreift, dem ersten Benutzer Präsentieren von einer oder mehreren zweiten Aktionen, die durch das erste Datenobjekt identifiziert sind und zu dem ersten Teilhaberobjekt zugehörig sind; und wenn der erste Benutzer eine zweite Aktion auswählt, Ausführen der ausgewählten zweiten Aktion auf dem ersten Datenobjekt.
  16. Computersystem zum Erzwingen eines Arbeitsablaufs, umfassend: eine Datenbank, umfassend: Teilhaberobjekte, wobei jedes einen Satz von Datenobjekten spezifiziert, die zu einem Teilhaber zugehörig sind; und eine Vielzahl von Datenobjekten, wobei jedes eine Spezifikation aufweist, die eine oder mehrere vordefinierte Aktionen für eine Ausführung auf dem Datenobjekt und Teilhaber identifiziert, denen es erlaubt ist, jede dieser Aktionen zu initiieren; eine Computerschnittstelle, die angepasst ist, auf die Datenobjekte zuzugreifen; und einen Computerprozessor, der konfiguriert ist: in Antwort auf einen Teilhaber, der auf eines oder mehrere seines zugehörigen Satzes von Datenobjekten, an der Computerschnittstelle Aktionen zum Auswählen durch einen Teilhaber in Übereinstimmung mit den Spezifikationen der zugegriffenen Datenobjekte zu präsentieren; und in Antwort auf einen Teilhaber, der eine oder mehrere der präsentierten Aktionen auswählt, diese Aktion auf den zugegriffenen Datenobjekten auszuführen.
  17. Computersystem gemäß Anspruch 16, wobei der Computerprozessor konfiguriert ist, die Aktionen an der Schnittstelle in Antwort auf den Teilhaber, der auf seinen zugehörigen Satz von Datenobjekten zugreift, durch eines oder mehrere der Folgenden zu präsentieren: Ausführen einer Suche an der Schnittstelle nach an seinen Datenobjekten gehaltener Information; Durchsuchen an der Schnittstelle von an seinen Datenobjekten gehaltener Information; und Auswählen von an seinen Datenobjekten gehaltener und an der Schnittstelle präsentierter Information; wobei die zugegriffenen Datenobjekte die Datenobjekte sind, die die Information halten.
  18. Computersystem gemäß Anspruch 16, wobei der Computerprozessor konfiguriert ist, die Aktionen in Antwort auf den Teilhaber, der an seinen Datenobjekten gehaltene Information durchsucht und einen Teilsatz dieser Information auswählt, zu präsentieren, wobei die Aktionen durch den Computerprozessor in Abhängigkeit von der ausgewählten Information und nicht von der nicht ausgewählten Information identifiziert werden.
  19. Computersystem gemäß Anspruch 16 oder 17, wobei jede Aktion Verfahrensdaten enthält, die die durch den Computerprozessor auszuführenden Prozesse repräsentieren.
  20. Computersystem gemäß Anspruch 19, wobei die Verfahrensdaten eine Konfiguration der Computerschnittstelle und/oder eine durch den Computerprozessor auszuführende Datenverarbeitung spezifizieren.
  21. Computersystem gemäß Anspruch 19 oder 20, wobei der Computerprozessor ferner konfiguriert ist, die ausgewählte Aktion auf ein oder mehrere der zugegriffenen Datenobjekte in Übereinstimmung mit an der Aktion gehaltenen Verfahrensdaten auszuführen.
  22. Computersystem gemäß Anspruch 21, wobei die ausgewählte Aktion derart ist, dass sie das eine oder mehrere der zugegriffenen Datenobjekte modifiziert und/oder eine neue Instanz eines Datenobjekts unter Verwendung von Information von einem oder mehreren der zugegriffenen Datenobjekte erzeugt.
  23. Computersystem gemäß einem der Ansprüche 16 bis 22, wobei die Spezifikationen der Datenobjekte und der Teilhaberobjekte derart konfiguriert sind, dass eine Sequenz von Aktionen, die einen Arbeitsablauf repräsentieren, durch Teilhaber, die auf ihre entsprechenden Sätze von Datenobjekte zugreifen und ihnen an der Schnittstelle präsentierten Aktionen initiieren, ausgeführt werden können.
  24. Computersystem gemäß einem der Ansprüche 16 bis 23, wobei die Spezifikationen eines oder mehrerer zugegriffener Datenobjekte einen Kontext für eine oder mehrere ihrer identifizierten Aktionen enthalten, wobei jeder Kontext einen Satz von einer oder mehreren Eigenschaften des entsprechenden Datenobjekts zum Auslösen der Aktion definiert, und wobei der Computerprozessor ferner konfiguriert ist, dem Teilhaber nur die Aktionen zu präsentieren, deren Kontext durch die zugegriffenen Datenobjekte erfüllt wird.
  25. Computersystem gemäß einem der Ansprüche 16 bis 24, wobei zumindest einige der Aktionen Vorbedingungen enthalten, die von der Aktion benötigte und an den Datenobjekten gehaltene Information spezifizieren, und wobei der Computerprozessor konfiguriert ist, in einer initiierten Aktionen die spezifizierte Information als von den zugegriffenen Datenobjekten automatisch zu verwenden.
  26. Computersystem gemäß einem der Ansprüche 16 bis 25, wobei der Computerprozessor konfiguriert ist, dem Teilhaber zu erlauben, nur auf die Datenobjekte zuzugreifen, zu denen er zugehörig ist.
  27. Computersystem gemäß einem der Ansprüche 16 bis 26, wobei die Schnittstelle konfiguriert ist, dem Teilhaber zu erlauben, an den Datenobjekten gehaltene Information zu durchsuchen/suchen, wobei der Computerprozessor konfiguriert ist, die Informationen auf an dem Satz von Datenobjekten gehaltener Information zu begrenzen, die zum Teilhaber zugehörig sind.
  28. Computersystem gemäß einem der Ansprüche 16 bis 27, wobei die Schnittstelle in Abhängigkeit von an dem Teilhaberobjekt für den Teilhaber gehaltenen Konfigurationsdaten konfiguriert ist.
  29. Computersystem gemäß einem der Ansprüche 16 bis 28, wobei der Teilhaber durch einen zu einem Teilhaberobjekt zugehörigen Benutzer des Systems repräsentiert wird.
  30. Computersystem gemäß Anspruch 29, wobei das System ein Profil für den Benutzer umfasst, welches einen oder mehre durch den Benutzer repräsentierten Teilhaber identifiziert.
  31. Computersystem gemäß einem der Ansprüche 16 bis 30, wobei die Datenobjekte an einem oder mehreren Verzeichnissen an einer Datenbank des Systems logisch definiert sind.
  32. Computersystem gemäß einem der Ansprüche 16 bis 31, wobei die Aktionen nicht miteinander verlinkt sind, um so einen Arbeitsablauf zu definieren.
  33. Computersystem gemäß einem der Ansprüche 16 bis 32, wobei das System Arbeitsabläufe nicht als vordefinierte Sequenzen von Aktionen definiert.
  34. Computersystem gemäß einem der Ansprüche 16 bis 33, wobei der Computerprozessor einen oder mehrere Prozessoren an einem Server und einen Prozessor an einem Benutzerterminal, der die Computerschnittstelle unterstützt, umfasst.
  35. Computersystem zum Erzwingen eines Arbeitsablaufs, umfassend: eine Datenbank, die enthält: eine Vielzahl von Teilhaberobjekten, welches jedes einen Teilhaber definiert und Datenobjekte identifiziert, die zu diesem Teilhalber zugehörig sind; eine Vielzahl von Datenobjekten, wobei jedes entsprechende Objektinformation hält und eine oder mehrere Aktionen für eine Ausführung auf dem Datenobjekt und die Teilhaber identifiziert, denen erlaubt ist, diese Aktionen auszuwählen; und eine Vielzahl von Aktionen für die Ausführung auf den Datenobjekten; eine Schnittstelle zum Bereitstellen für einen Benutzer des Systems Zugang zu an den Datenobjekten gehaltener Objektinformation; und ein Computerprozessor, der betrieben wird, um die Aktionen auf den Datenobjekten auszuführen, und der konfiguriert ist: an der Schnittstelle dem Benutzer zu erlauben, auf Objektinformation zuzugreifen, die an Datenobjekten gehalten wird, die zu einem oder mehreren durch den Benutzer repräsentierten Teilhabern zugehörig sind; und in Antwort auf den Benutzer, der an der Schnittstelle auf Objektinformation zugreift, dem Benutzer Aktionen zu präsentierten, die an diesen Datenobjekten als (a) zur Ausführung auf diese Datenobjekte zur Verfügung stehen, und (b) die durch zumindest einen der einen oder mehreren durch den Benutzer repräsentierten Teilhaber ausgewählt werden dürfen, identifiziert sind.
  36. Verfahren zum Erzwingen eines Arbeitsablaufs an einem Computersystem mit einer Datenbank umfassend Teilhaberobjekte, wobei jedes einen Satz von Datenobjekten spezifiziert, die zu einem Teilhaber zugehörig sind, und einer Vielzahl von Datenobjekten, wobei jedes eine Spezifikation aufweist, die eine oder mehrere Aktionen für eine Ausführung auf dem Datenobjekt und Teilhaber identifiziert, denen erlaubt ist, jede dieser Aktionen zu initiieren, wobei das Verfahren umfasst: Identifizieren eines Benutzers des Systems als einen Teilhaber; dem Benutzer Erlauben, auf eines oder mehrere des Satzes von Datenobjekten, die zu dem Teilhaber an seinem Teilhaberobjekt zugehörig sind, zuzugreifen; in Antwort auf den Benutzer, der auf eines oder mehrere des Satzes von Datenobjekten zugreift, dem Benutzer Präsentieren von Aktionen in Übereinstimmung mit den Spezifikationen des einen oder mehreren zugegriffenen Datenobjekten; und in Antwort auf den Benutzer, der eine präsentierte Aktion auswählt, Ausführen der ausgewählten Aktion auf einer oder mehrerer der zugegriffenen Datenobjekte in Übereinstimmung mit am System für die Aktion vordefinierten Verfahrensdaten.
  37. Verfahren gemäß Anspruch 36, ferner umfassend Veranlassen von einem oder mehreren Benutzern, die eine Vielzahl von verschiedenen Teilhabern repräsentieren, auf ihre zugehörigen Datenobjekte zuzugreifen und eine präsentierte Aktion auszuwählen, sodass die Vielzahl von Teilhabern insgesamt eine Sequenz von Aktionen, die einen Arbeitsablauf repräsentiert, ausführen.
  38. Computerprogrammcode zum Ausführen eines Verfahrens gemäß einem der Ansprüche 15, 36 oder 37.
  39. Nichtflüchtiges computerlesbares Speichermedium mit darauf gespeicherten computerlesbaren Instruktionen, die, wenn sie an einem Computerprozessor ausgeführt werden, den Computerprozessor veranlassen, das Verfahren gemäß einem der Ansprüche 15, 36 oder 37 auszuführen.
  40. Computersystem wie im Wesentlichen hierin mit Bezug auf eine der 1 bis 9 beschrieben.
DE112015004487.6T 2014-09-30 2015-08-26 Kontextuelle Arbeitsablauf-Verwaltung Pending DE112015004487T5 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
GBGB1417262.1A GB201417262D0 (en) 2014-09-30 2014-09-30 Contextual workflow management
GB1417262.1 2014-09-30
PCT/EP2015/069560 WO2016050426A1 (en) 2014-09-30 2015-08-26 Contextual workflow management

Publications (1)

Publication Number Publication Date
DE112015004487T5 true DE112015004487T5 (de) 2017-06-22

Family

ID=51901374

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112015004487.6T Pending DE112015004487T5 (de) 2014-09-30 2015-08-26 Kontextuelle Arbeitsablauf-Verwaltung

Country Status (4)

Country Link
US (1) US20170293890A1 (de)
DE (1) DE112015004487T5 (de)
GB (2) GB201417262D0 (de)
WO (1) WO2016050426A1 (de)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180197125A1 (en) 2017-01-06 2018-07-12 Microsoft Technology Licensing, Llc Tasks Across Multiple Accounts
US11379565B2 (en) 2017-10-02 2022-07-05 Microsoft Technology Licensing, Llc Identifying and consenting to permissions for workflow and code execution
US10956868B1 (en) * 2020-06-29 2021-03-23 5th Kind LLC Virtual reality collaborative workspace that is dynamically generated from a digital asset management workflow

Family Cites Families (77)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5734837A (en) * 1994-01-14 1998-03-31 Action Technologies, Inc. Method and apparatus for building business process applications in terms of its workflows
US5706452A (en) * 1995-12-06 1998-01-06 Ivanov; Vladimir I. Method and apparatus for structuring and managing the participatory evaluation of documents by a plurality of reviewers
DE19705955A1 (de) * 1996-03-29 1997-10-02 Ibm Verfahren zum Generieren einer Implementierung eines Workflow-Prozessmodells in einer Objektumgebung
US5930512A (en) * 1996-10-18 1999-07-27 International Business Machines Corporation Method and apparatus for building and running workflow process models using a hypertext markup language
US5826239A (en) * 1996-12-17 1998-10-20 Hewlett-Packard Company Distributed workflow resource management system and method
US5978836A (en) * 1997-07-28 1999-11-02 Solectron Corporation Workflow systems and methods
US5960404A (en) * 1997-08-28 1999-09-28 International Business Machines Corp. Mechanism for heterogeneous, peer-to-peer, and disconnected workflow operation
US6088679A (en) * 1997-12-01 2000-07-11 The United States Of America As Represented By The Secretary Of Commerce Workflow management employing role-based access control
US6397191B1 (en) * 1998-06-05 2002-05-28 I2 Technologies Us, Inc. Object-oriented workflow for multi-enterprise collaboration
US6505176B2 (en) * 1998-06-12 2003-01-07 First American Credit Management Solutions, Inc. Workflow management system for an automated credit application system
US6606740B1 (en) * 1998-10-05 2003-08-12 American Management Systems, Inc. Development framework for case and workflow systems
US6279009B1 (en) * 1998-12-04 2001-08-21 Impresse Corporation Dynamic creation of workflows from deterministic models of real world processes
US6546364B1 (en) * 1998-12-18 2003-04-08 Impresse Corporation Method and apparatus for creating adaptive workflows
US7590617B1 (en) * 1999-08-04 2009-09-15 American Management Systems, Incorporated System providing desktop integration of patient information and document management
US7321864B1 (en) * 1999-11-04 2008-01-22 Jpmorgan Chase Bank, N.A. System and method for providing funding approval associated with a project based on a document collection
US20010047326A1 (en) * 2000-03-14 2001-11-29 Broadbent David F. Interface system for a mortgage loan originator compliance engine
US6985886B1 (en) * 2000-03-14 2006-01-10 Everbank Method and apparatus for a mortgage loan management system
EP1266334A4 (de) * 2000-03-22 2005-11-30 Webmethods Inc Verfahren und system zur business-prozess-definition und ausführung im top-down-verfahren
US20020049667A1 (en) * 2000-09-07 2002-04-25 Petro Vantage, Inc. Computer method and apparatus for petroleum trading and logistics
US7555459B2 (en) * 2000-10-02 2009-06-30 International Projects Consultancy Services, Inc. Automated loan processing system and method
US7236939B2 (en) * 2001-03-31 2007-06-26 Hewlett-Packard Development Company, L.P. Peer-to-peer inter-enterprise collaborative process management method and system
US7043714B2 (en) * 2001-06-28 2006-05-09 International Business Machines Corporation Method, system, and program for using objects in data stores during execution of a workflow
US7289966B2 (en) * 2001-08-14 2007-10-30 Norman Ken Ouchi Method and system for adapting the execution of a workflow route
US20030061266A1 (en) * 2001-09-27 2003-03-27 Norman Ken Ouchi Project workflow system
US20030078820A1 (en) * 2001-10-19 2003-04-24 Ouchi Norman Ken Object based workflow route
US20030177046A1 (en) * 2001-12-03 2003-09-18 John Socha-Leialoha Method and system for reusing components
US7451096B2 (en) * 2001-12-28 2008-11-11 Siemens Medical Solution Usa, Inc. System and method for managing healthcare communication
US7103853B1 (en) * 2002-01-09 2006-09-05 International Business Machines Corporation System and method for dynamically presenting actions appropriate to a selected document in a view
US20040025048A1 (en) * 2002-05-20 2004-02-05 Porcari Damian O. Method and system for role-based access control to a collaborative online legal workflow tool
AU2003301602A1 (en) * 2002-10-23 2004-05-13 David Theiler Method and apparatus for managing workflow
US7689443B2 (en) * 2002-12-31 2010-03-30 Employers Reinsurance Corporation Methods and structure for insurance industry workflow processing
US20040230447A1 (en) * 2003-03-14 2004-11-18 Sven Schwerin-Wenzel Collaborative workspaces
CN1826610A (zh) * 2003-05-07 2006-08-30 Sap股份有限公司 包括带协作过程引擎的特设型工作流结构化处理的面向终端用户的工作流方法
US7778899B2 (en) * 2003-05-19 2010-08-17 Serena Software, Inc. Method and system for object-oriented workflow management of multi-dimensional data
CA2528996C (en) * 2003-06-12 2016-10-11 Reuters America Inc. Business process automation
CA2451164C (en) * 2003-09-11 2016-08-30 Teamplate Inc. Customizable components
US8423451B1 (en) * 2003-12-01 2013-04-16 Fannie Mai System and method for processing a loan
US7419469B2 (en) * 2004-06-24 2008-09-02 Siemens Medical Solutions Usa, Inc. Method and system for diagnostigraphic based interactions in diagnostic medical imaging
US7886264B1 (en) * 2004-06-25 2011-02-08 Apple Inc. Automatic conversion for disparate data types
US7971186B1 (en) * 2004-06-25 2011-06-28 Apple Inc. Automatic execution flow ordering
US8229964B2 (en) * 2004-07-07 2012-07-24 Sap Ag Ad hoc workflow
US8219434B2 (en) * 2004-07-19 2012-07-10 Sap Ag Ad-hoc coordination actions in business processes
US20060080142A1 (en) * 2004-10-12 2006-04-13 Judi Hart System for managing patient clinical data
US20060109961A1 (en) * 2004-11-23 2006-05-25 General Electric Company System and method for real-time medical department workflow optimization
US7831978B2 (en) * 2004-12-16 2010-11-09 Sap Ag Review mechanism for controlling the delegation of tasks in a workflow system
US20060195484A1 (en) * 2005-02-25 2006-08-31 General Electric Company System and method for providing a dynamic user interface for workflow in hospitals
US7917555B2 (en) * 2005-03-03 2011-03-29 Microsoft Corporation Creating, storing and viewing process models
US8635094B2 (en) * 2005-06-03 2014-01-21 International Business Machines Corporation System and method for dynamically configuring user interface components of a collaborative space based on mapping rules and user roles
US8429527B1 (en) * 2005-07-12 2013-04-23 Open Text S.A. Complex data merging, such as in a workflow application
JP2007109182A (ja) * 2005-10-17 2007-04-26 Canon Inc ワークフローシステムおよびオブジェクト生成装置
US8185423B2 (en) * 2005-12-22 2012-05-22 Canon Kabushiki Kaisha Just-in time workflow
US20070156487A1 (en) * 2005-12-29 2007-07-05 Microsoft Corporation Object model on workflow
US20070185739A1 (en) * 2006-02-08 2007-08-09 Clinilogix, Inc. Method and system for providing clinical care
US7853464B2 (en) * 2006-04-06 2010-12-14 Dorado Network Systems Corporation Dynamic workflow architectures for loan processing
AU2008248373A1 (en) * 2007-05-08 2008-11-13 Sourcecode Technology Holding, Inc. Methods and apparatus for exposing workflow process definitions as business objects
US8660905B2 (en) * 2007-10-31 2014-02-25 Sap Ag Method and system for validating process models
US20090119334A1 (en) * 2007-11-06 2009-05-07 Michael Ian Ahern Interleaving Ad Hoc and Structured Business Processes
US20090178004A1 (en) * 2008-01-03 2009-07-09 General Electric Company Methods and systems for workflow management in clinical information systems
US8151208B2 (en) * 2008-02-07 2012-04-03 Microsoft Corporation Workflow tracking information preview
US20090228427A1 (en) * 2008-03-06 2009-09-10 Microsoft Corporation Managing document work sets
US20090249293A1 (en) * 2008-03-31 2009-10-01 International Business Machines Corporation Defining Workflow Processing Using a Static Class-Level Network in Object-Oriented Classes
US8689131B2 (en) * 2009-01-21 2014-04-01 Microsoft Corporation Visual creation of computer-based workflows
US8934684B2 (en) * 2009-07-31 2015-01-13 Siemens Aktiengesellschaft Method and system for facilitating an image guided medical procedure
US7941085B2 (en) * 2009-08-20 2011-05-10 7-Sigma, Inc. Fusing core and drive collar assembly
US8781998B2 (en) * 2009-11-09 2014-07-15 King Fahd University Of Petroleum And Minerals Workflow automation system and method
US20110119102A1 (en) * 2009-11-17 2011-05-19 Sunstein Kann Murphy & Timbers LLP Paperless Docketing Workflow System
US9852382B2 (en) * 2010-05-14 2017-12-26 Oracle International Corporation Dynamic human workflow task assignment using business rules
US20120030122A1 (en) * 2010-07-27 2012-02-02 Sap Ag Agile workflow modeling and execution based on document
US8666774B1 (en) * 2010-11-19 2014-03-04 Hospitalists Now, Inc. System and method for gauging performance based on analysis of hospitalist and patient information
US9069930B1 (en) * 2011-03-29 2015-06-30 Emc Corporation Security information and event management system employing security business objects and workflows
US20130138456A1 (en) * 2011-11-24 2013-05-30 General Electric Company System and method for providing stakeholder services
DE102012203975B4 (de) * 2012-03-14 2018-07-26 Siemens Healthcare Gmbh Computer-implementiertes Verfahren und medizintechnische Anlage zum automatischen Starten eines Arbeitsflusses
US8606599B1 (en) * 2013-01-03 2013-12-10 Medidata Solutions, Inc. Apparatus and method for executing tasks
US9817988B2 (en) * 2013-05-22 2017-11-14 Altirnao, Inc. System and method to provide document management on a public document system
US20150120375A1 (en) * 2013-10-28 2015-04-30 Salesforce.Com, Inc. Managing tasks of workflows stored as data objects in a database
US10032133B2 (en) * 2014-01-24 2018-07-24 Adobe Systems Incorporated Automatically identifying authorized signatories from an organization for executing an electronic document
US10515124B1 (en) * 2014-07-31 2019-12-24 Open Text Corporation Placeholder case nodes and child case nodes in a case model

Also Published As

Publication number Publication date
US20170293890A1 (en) 2017-10-12
GB201704861D0 (en) 2017-05-10
WO2016050426A1 (en) 2016-04-07
GB2545142A (en) 2017-06-07
GB201417262D0 (en) 2014-11-12

Similar Documents

Publication Publication Date Title
DE112018004946B4 (de) Kognitive datenanonymisierung
Gonzalez A guide to measuring and interpreting attribute importance
DE60029349T2 (de) Anordnung für die auf komponenten basierte durchführung von aufgaben während der bearbeitung von versicherungsansprüchen
DE60015695T2 (de) System und Verfahren zur Hinterlegung von vertraulichen Daten
DE102012218329B4 (de) Verwalten von Funktionsübernahme-Operationen an einem Cluster von Computern
DE112012004036T5 (de) Definieren des Geltungsbereichs und Verwalten der Rollenentwicklung
DE102007026802A1 (de) Systeme und Verfahren zur Identifizierung von Kandidaten für eine klinische Studie
DE102007026799A1 (de) Systeme und Verfahren zur Verfeinerung der Identifikation von Kandidaten für klinische Studien
WO2005006234A1 (en) Method for online management of medical record forms
Vie et al. The Person-Event Data Environment: leveraging big data for studies of psychological strengths in soldiers
DE202019102730U1 (de) Lernmaschine für intelligente Kommunikation und Analyse
DE112020000545T5 (de) Deep-forest-modell-entwicklung und -training
DE112015004487T5 (de) Kontextuelle Arbeitsablauf-Verwaltung
CA3136132A1 (en) Record reporting system
DE102018132508A1 (de) System und Verfahren zur Vorhersage von Gesundheitsuntersuchungen basierend auf semantischen Beziehungen
DE112017000695T5 (de) Arbeitsablauf-Erstellung anhand natürlicher Sprache
DE102021123842A1 (de) Bewertung einer verringerung eines krankheitsrisikos und behandlungsentscheidung
DE202015003281U1 (de) System zur individualisierten Preisgestaltung für die Gesundheitspflege
Triplett Psychiatry and the meaningful use of electronic health records
Atkinson The multidimensional systemic representation of actor networks: Modelling breast cancer treatment decision-making
DE102023200361A1 (de) Multivariate Ausreißer-Erkennung zum Datenschutz
Weeger et al. Exploring Determinants of Effective Use: The Role of Misfits between a Hospital and itsInformation System.
DE112022003063T5 (de) Data-governance-systeme und -verfahren
DE102004004101A1 (de) Verfahren und System zum Schutz elektronischer Datenobjekte vor unberechtigtem Zugriff
DE112022000886T5 (de) Datenverarbeitungssystem mit manipulation logischer datensatzgruppen

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R081 Change of applicant/patentee

Owner name: BIZAGI GROUP CORP., WASHINGTON, US

Free format text: FORMER OWNER: BIZAGI GROUP, MSIDA, MT