EP3377971A1 - Verfahren zum betrieb eines computersystems, computerprogramm mit einer implementation des verfahrens und zur ausführung des verfahrens bestimmtes computersystem - Google Patents

Verfahren zum betrieb eines computersystems, computerprogramm mit einer implementation des verfahrens und zur ausführung des verfahrens bestimmtes computersystem

Info

Publication number
EP3377971A1
EP3377971A1 EP16798484.8A EP16798484A EP3377971A1 EP 3377971 A1 EP3377971 A1 EP 3377971A1 EP 16798484 A EP16798484 A EP 16798484A EP 3377971 A1 EP3377971 A1 EP 3377971A1
Authority
EP
European Patent Office
Prior art keywords
application
software
configuration
host application
guest
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.)
Withdrawn
Application number
EP16798484.8A
Other languages
English (en)
French (fr)
Inventor
Achim Bangert
Uwe Frye
Clemens Schmitt
Marco SCHÖRGER
Rahul Sharma
Johannes Weiss
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.)
Siemens AG
Original Assignee
Siemens AG
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 Siemens AG filed Critical Siemens AG
Publication of EP3377971A1 publication Critical patent/EP3377971A1/de
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/547Remote procedure calls [RPC]; Web services

Definitions

  • the invention relates to a method of operating a computer system, in particular a method of operating a computer system for controlling and / or monitoring a technical process, such as a Krafttechnikspro ⁇ zesses, which may be in the computer system may also be a distributed computer system.
  • a technical process such as a Krafttechnikspro ⁇ zesses
  • the invention relates to a computer program with an implementation of the method as well as a computer system intended for executing the method and the computer program.
  • At least one software application functioning as a runtime environment and subsequently correspondingly referred to as a host application runs.
  • at least one software application functioning as a guest in relation to the host application and subsequently correspondingly sometimes referred to as a guest application for a short time runs on the computer system.
  • the or each guest application offers at least one addressable software function, for example an input field for displaying and inputting data, a text field for displaying data and so on. That the host application offers a software function and make these available primarily as addressable ⁇ Soft ware function, means that the software function of using an address or reference from outside
  • Guest application is available.
  • the host application uses in this way and based on a predetermined or predefinable configuration at least one addressable software function of the at least one guest application.
  • the configuration is preferably specified textually by means of a description language with a special syntax, for example XML or the like.
  • the use of the addressable software function is understood to be a call of the software function by the host application or a call of the software function initiated by the host application.
  • a display of a text field for example, which would otherwise be output by the guest application, therefore takes place, for example, within the scope of execution of a respective software function resulting from such a call.
  • a position of the output text field in particular a position and a dimension of the text field, can be specified on a display device or a display unit or within a user interface represented by the host application.
  • a position and / or dimension of an output of a respectively used addressable software function of a guest application can be predetermined by means of the configuration. This specification is correspondingly briefly referred to as the specification of the position of use of the respective software function.
  • the advantage of the solution proposed here is that the user perceives the output of the host application and its user interface and that a software application running down to some extent, ie a guest application, does not appear to the user at all.
  • the host application thus makes it possible to specify, by means of the configuration, access to the respective software application that is running as a guest as well as simultaneous access to several software applications running as a guest. Because the respective access to a guest application or a plurality of
  • this definition of the software object results in a call of the software function associated with the software object. Due to the call of the software function in turn results in an output of the software function on the display unit, namely the driven by the host application display unit.
  • the definition of software objects as part of the configuration allows their use in the form of a computer program that can be executed by the host application and, for example, in the following, for a data exchange between individual guest applications.
  • Guest application run that the at least two Gastappli- cations in the manner outlined above each offer at least one addressable software function that the host ⁇ application based on a configuration each using at least one addressable software function that within the configuration of a position of using the at least two Software functions on a display device or a display unit is specified and that by means of the host application, a data exchange between the at least two software functions or the respective guest applications.
  • the advantage of this embodiment of the method is that the user can not only each comprising at least one soft ⁇ ware function of two otherwise independent host applications simultaneously use by the host application, and any expenditure by the host application to be displayed together, but that a data exchange between the software functions or the respective guest applications, which offer the software functions, takes place.
  • the data exchange takes place automatically by means of the host application, ie without special intervention of the user. Accordingly, the user no longer has to use copy-paste for data exchange between individual software applications, or no longer has to export data from a first software application to a file in order to import it into a second software application.
  • the host application causes the data exchange in the background, as it were, and based on the use of addressable software functions provided by the respective guest application.
  • a further advantage is that guest applications can be jointly operated by means of the host application, which are not originally intended for interaction and consequently also have no "knowledge" of a different guest application.
  • the host application effectively unites guest applications under a common roof subsequently introducing new functions at any time.
  • the host application loads a configuration and uses it until loading another configuration. Loading a new configuration results in the use of another guest application or software function or other guest applications or software features, or other use of one or more guest applications or software features.
  • Each configuration thus results in a custom user interface corresponding to the configuration, and by using an appropriate configuration, a user can select the user interface most suitable for their particular task.
  • the system of host application and at least one guest application is more flexible and customizable at runtime of the computer system and at runtime of the host and guest application or the respective guest application, without the host or guest application would have to be recompiled. The user can use all the tools and functions made available by the or each guest application and recompose them for the optimal task for the respective task.
  • the method or method with one or more of the embodiments outlined above is implemented in software.
  • the invention is thus also a computer program with program code instructions executable by a computer and, on the other hand, a storage medium with such a computer program, ie a computer program product with program code means, and finally also a computer system of the type mentioned above with at least one computer in its memory as means for carrying out the method and its embodiments, such a computer program is loaded or loadable.
  • FIG. 2 shows a representation for illustrating a call of a software function of a guest application by means of a higher-level host application and an assignment of individual display areas of a Ausga ⁇ impressive integrated to each software function so that issues of software function carried out there, and
  • FIG. 4 shows a further illustration to illustrate a configuration used by the host application.
  • FIG. 1 schematically shows in simplified form a distributed computer system 10 of a plurality of computers 12 communicating with one another.
  • the communicative connection can be in the form of a local network, a regional network or else via the Internet.
  • the measures here ⁇ put innovation but does not require distributed Compu ⁇ tersystem 10. Rather generally ranges from a single computer 12. Then this single computer 12 is called
  • Computer system 10 conceived. The following description is continued on the basis of a distributed computer system 10 according to the Dar ⁇ position in FIG 1. This is not to be construed restrictively. Rather, the possibility that a single computer 12 functions as a computer system 10 in the sense of the following description, always read along.
  • the computer system 10 thus functions as a means for controlling and / or monitoring a technical process, not shown in detail in FIG. 1, for example a process for generating energy in a power plant.
  • a software application 14 to Diagnosis of a combustion process in a boiler (Burn ⁇ voltage diagnostics)
  • a software application 16 for monitoring vibrations of a turbine (vibration control)
  • a software application 18 for detecting and monitoring statistics (statistics module) and so to be mentioned further.
  • the approach proposed here provides an additional soft ⁇ ware application that is hierarchically above the or each software application 14 to 18, which requires the user to carry out its specific task.
  • This special software application will accordingly be referred to below as host application 20 and accordingly the or each hierarchically underlying software application 14-18 as a guest application 14-18.
  • the host application 20 is a computer program and represents an implementation of the approach proposed herein. Accordingly, the host application 20 is a computer program representing an implementation of the approach proposed herein.
  • a single software application 14-18 functions as a guest application 14-18.
  • a task-centric access to these host application 14-18 by means of the host application 20 is based on a configuration 22.
  • the configuration 22 is determined, on which software ⁇ function 24, 26, 28 (FIG 2) or on which software functions 24-28 via the host application 20 is accessed, ie which software function 24-28 or which software functions 24-28 uses the host application 20.
  • Hostappli ⁇ cation usable software functions 20 24-28 14-18 a host application can be called from outside the respective Gastappli ⁇ cation 14-18.
  • an address or other reference for example an identifier, which can be used for such an external call is made available in a generally known manner, for example in the context of a so-called Application Programming Interface (API).
  • API Application Programming Interface
  • At least one software object is defined. This is linked as part of the definition of the software object with an addressable software function 24-28 a guest application 14-18.
  • As part of a processing of the configuration 22 by the host application 20 results due to this definition and the link with the software function 24-28 a call of the respective software function 24-28.
  • the host application 20 can call individual software functions 24-28 of a host application 14-18 that is fundamentally independent of the host application 20, and display of screen outputs of the guest application 14-18 takes place on a display unit 30 of the host application 20 in display areas 34, 36, 38 (FIG. 2) whose position or position and dimension or position, dimension and / or appearance (frame, color, etc.) is determined by means of the configuration 22.
  • the screen output of each up ⁇ called software function 24-28 takes place according to their respective functionality.
  • the software function 24-28 outputs statistical data in the form of a table in the case of a separate execution of the guest application 14-18, such an output of the statistical data also takes place when the software application 24-28 is called by means of the host application 20.
  • the at ⁇ display unit of that computer 12 is understood as a display unit 30 of the host application 20, running the host application is executed twentieth
  • FIG. 2 shows the display unit 30 of the computer 12 on which the host application 20 is initially schematically simplified as seen from top to bottom then in the middle the host application 20 and finally at the bottom a guest application 14-18 used by the host application 20 and again software functions 24-28 used therefrom.
  • the call of a software function 24-28 should be illustrated by the host application 20 on the basis of their addressability.
  • Use arrows 32 to illustrate in which display areas 34-38 the screen output of the individual software functions 24-28 takes place.
  • FIG. 2 Schematically simplified representation of Figure 2 makes interpreting ⁇ Lich that can be set by means of the used by the host application 20 configuration 22 where the screen output of a software used by the host application 20 would function is 24-28.
  • the host application 20 creates a sense a new and above all configurable Benut ⁇ zerober Formation for a used host application 14-18.
  • the illustration in FIG. 2 already shows that it is unimportant whether the host application 20 uses exactly one software application 14-18 or several software applications 14-18 and their software functions 24-28.
  • the underlying configuration 22 is, for example, in the form of a file with XML code which the host application 20 evaluates.
  • By adapting the configuration 22 results in a way to customize the resulting user interface. For example, the position and / or dimension of individual display areas 34-38 may be changed. Additionally or alternatively, as part of an adaptation of the configuration of 22 individual display areas can 34-38 omitted or added new ad ⁇ areas 34-38.
  • different configurations 22 ie for example corresponding files, different user interfaces result, so that the user receives a display of a task-oriented user interface suitable for the respective task by using a configuration 22 suitable for his respective task by means of the host application 20.
  • the resulting user interface enables the user to get an indication of exactly what data he or she wants his task is needed.
  • a sequence of displaying the data resulting in accordance with the placement of the display areas 34-38 can ensure that the presentation takes place in a manner which is as clear as possible and / or as quickly as possible ascertainable.
  • the task-centered display / task-centered user interface resulting from the proposed approach is not necessarily static.
  • the configuration 22 is specified in practice, for example in an XML code.
  • the resulting due to the particular configuration 22 user interface is re ⁇ presented at a top level by a method known in the representations with "Work Place" software object.
  • An event is, for example, a mouse click on a screen representation belonging to the software object, for example a mouse click on the screen display of a key.
  • the arrows to and from the software objects there are intended to register individual software objects (in this case "VPH1" and "VPH2”) on the event bus and a linkage of these software objects with other software objects (in this case " VPH3 "and” VPH4 ").
  • this registration and linking results in a representation in a key assigned to the software object "VPH3" when a key is pressed within the user interface of the host application 20 due to the software object "VPH1" Display area 36 and a click on a due to the software object "VPH2" button displayed in a the software object "VPH4" associated display area 38 takes place.
  • the representation taking place in the respective display area 36, 38 is itself determined by the definition of the respectively underlying software object "VPH3" or “VPH4" and can be defined within the scope of a corresponding coding of the configuration 22.
  • Ware objects by a corresponding coding such software is carried out, for example, in individual display regions 36, 38 an output of a means of the host application 20 to call ⁇ cash software function 24-28, as previously explained with reference to the illustration in FIG. 2
  • the example shown in FIG 3 can be continued, of course, arbitrarily based on the principle explained, so that each resulting user interface of the Hostappli ⁇ cation-20 for example comprises a larger number of key representations and by clicking on each of these keys representations a representation of different data can be retrieved, wherein the data displayed in each case from a hierarchically host application 20 child guest application 14-18 come, in particular from a guest application 14-18 from a group with a plurality of guest applications 14-18.
  • the arrows there for the event bus should illustrate, as before, that the respective software objects (here "VPH1" and "VPH2”) and associated therewith Actions are registered on the event bus.
  • VPH1 software objects
  • VPH2 software objects
  • Actions are registered on the event bus.
  • a mouse click on a corresponding representation or a selection of such a representation by means of the mouse or similar so-called events here leads the registration but a signal to the entire user interface representing software object ("Workplace"), which is followed by signals to two software objects (" View B "and” View C ") leads, which represent each individual Ad ⁇ give large effect of these sequential signals such as ⁇ derum that a status of these software objects changes a previously visible software object (..”
  • View B ) is invisible - the software object is as a component of the user interface - and a previously invisible software object (“View C”) becomes visible by being loaded as an additional component or as a component of the user interface that replaces another software object
  • the result is shown in the upper area of
  • a host application 20 is for example a Java application into consideration, which processes as a configuration 22 a file with XML code.
  • the or each guest application 14-18 is also a Java application. More generally, in the approach suggested here, the host application 20 and the or each guest application 14-18 are based on the same technology.
  • the approach proposed here is not limited to task-centered and possibly dynamically variable display of data.
  • an exchange of data between two or more guest applications 14-18 used by the host application 20 is also possible.
  • a transfer of data from a guest application 14-18 to another guest application 14-18 takes place, for example, in the form of an object of a conventional object type or in the form of an object of a specific expression of an object type.
  • an object of the type "string" or several such objects may be considered, in this way texts on the one hand, or natural or real numbers converted into a string, on the other hand
  • a transfer of data in the form of an object of a specific object or data type is possible if both software applications 14-18 involved in the data exchange support the respective object or data type.
  • the disclosure of data from a host application 14-18 to another host application 14-18 or another and to distinguish it from a host application 14 to 18, known as third-party application software ⁇ application-for example using conventional network interface is ⁇ make possible for Example network interfaces known for CORBA, Web Services, OPC, DCOM, etc.
  • the data ⁇ exchange with a third-party application allows any customizable disclosure of any data, namely from the host application 14 to 18 as part of a local programming corresponding predetermined data to a server or a cloud.
  • the computer system 10 runs from at least one functioning as a host application 20 Software Application and at least one acting as a guest application 14-18 Softwareap ⁇ plication, wherein the or each guest application 14-18 offers at least one addressable software function 24-28.
  • the host ⁇ application 20 is used on the basis of a configuration of 22 at least one addressable 24-28 software function of the at least one host application 14-18, wherein specified within the configuration 22 using a position of the at least one software feature 24-28 on a display unit 30 becomes .

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

Die Erfindung ist ein Verfahren zum Betrieb eines Computersystems (10), ein Computerprogramm (20) mit einer Implementation des Verfahrens und ein zur Ausführung des Verfahrens bestimmtes Computersystem (10). Auf dem Computersystem (10) läuft zumindest eine als Hostapplikation (20) fungierende Softwareapplikation (20) und zumindest eine als Gastapplikation (14-18) fungierende Softwareapplikation (14-18) ab, wobei die oder jede Gastapplikation (14-18) zumindest eine adressierbare Softwarefunktion (24-28) anbietet. Die Hostapplikation (20) verwendet auf Basis einer Konfiguration (22) zumindest eine adressierbare Softwarefunktion (24-28) der zumindest einen Gastapplikation (14-18), wobei im Rahmen der Konfiguration (22) eine Position der Verwendung der mindestens einen Softwarefunktion (24-28) auf einer Anzeigeeinheit (30) spezifiziert wird.

Description

Beschreibung
Verfahren zum Betrieb eines Computersystems, Computerprogramm mit einer Implementation des Verfahrens und zur Ausführung des Verfahrens bestimmtes Computersystem
Die Erfindung betrifft ein Verfahren zum Betrieb eines Computersystems, insbesondere ein Verfahren zum Betrieb eines Computersystems zur Steuerung und/oder Überwachung eines technischen Prozesses, wie zum Beispiel eines Kraftwerkspro¬ zesses, wobei es sich bei dem Computersystem auch um ein verteiltes Computersystem handeln kann. Im Weiteren betrifft die Erfindung ein Computerprogramm mit einer Implementation des Verfahrens sowie ein zur Ausführung des Verfahrens sowie des Computerprogramms bestimmtes Computersystem.
Bei heutigen Computersystemen ergibt sich oftmals die Situation, dass ein Benutzer eine Aufgabe erfüllen möchte und zu diesem Zweck mehrere Softwareapplikationen benötigt. Üblicherweise verfügt jede Softwareapplikation über eine eigene Benutzeroberfläche. Der Benutzer muss sich demgemäß an die Bedienphilosophien der jeweiligen Anwendung anpassen sowie Daten von einer Applikation zur nächsten zu übertragen. Für eine solche Übertragung stehen Mechanismen, wie sie unter dem Schlagwort „Copy & Paste" zu- sammengefasst werden, zur Verfügung. Zusätzlich oder alternativ können Möglichkeiten wie ein Export von Daten einer Applikation in eine Datei und ein Import der Inhalte dieser Datei in eine andere Applikation genutzt werden. Unabhängig davon, dass dies mitunter aufwändig und fehleranfällig ist, wird der Benutzer jeweils auch mit dem vollständigen Funktionsumfang der verwendeten Applikationen konfrontiert. Weil Softwareapplikationen üblicherweise sehr viel mehr Funktionen anbieten, als der Benutzer für die Erfüllung seiner jeweiligen Aufgabe tatsächlich benötigt, ist das Auffinden und/oder Auswählen der jeweils benötigten Funktionen oftmals aufwändig, zumindest zeitaufwändig, und zum Beispiel mit meh¬ reren Bedienhandlungen zum Öffnen unterschiedlicher Menüs oder dergleichen verbunden. Dies führt zu einem zusätzlichen und für den Benutzer störenden Zeitaufwand. Insgesamt leidet die Übersicht über die einzelnen Applikationen.
Eine Aufgabe der vorliegenden Erfindung besteht darin, eine Lösung anzugeben, die einen einfachen, aufgabenzentrierten Zugriff auf zumindest eine Softwareapplikation oder eine Mehrzahl von Softwareapplikationen ermöglicht.
Diese Aufgabe wird mittels eines Verfahrens zum Betrieb eines Computersystems der eingangs genannten Art, insbesondere eines verteilten Computersystems, mit den Merkmalen des Anspruchs 1 gelöst. Dabei ist Folgendes vorgesehen: Auf dem Computersystem läuft zumindest eine als AblaufUmgebung fungierende und im Folgenden entsprechend mitunter kurz als Hostapplikation be- zeichnete Softwareapplikation ab. Daneben läuft auf dem Computersystem zumindest eine in Relation zu der Hostapplikation als Gast fungierende und im Folgenden entsprechend mitunter kurz als Gastapplikation bezeichnete Softwareapplikation ab. Die oder jede Gastapplikation bietet zumindest eine adressierbare Softwarefunktion an, zum Beispiel ein Eingabefeld zur Darstellung und Eingabe von Daten, ein Textfeld zur Darstellung von Daten und so weiter. Dass die Gastapplikation eine Softwarefunktion anbietet und diese vor allem als adressierbare Soft¬ warefunktion anbietet, bedeutet, dass die Softwarefunktion unter Verwendung einer Adresse oder Referenz von außerhalb der
Gastapplikation aufrufbar ist. Die Hostapplikation verwendet auf diese Weise und auf Basis einer vorgegebenen oder vorgebbaren Konfiguration zumindest eine adressierbare Softwarefunktion der zumindest einen Gastapplikation. Die Konfiguration wird be- vorzugt textuell mittels einer Beschreibungssprache mit einer speziellen Syntax, zum Beispiel XML oder dergleichen, spezifiziert. Als Verwendung der adressierbaren Softwarefunktion wird dabei ein Aufruf der Softwarefunktion durch die Hostapplikation oder ein durch die Hostapplikation initiierter Aufruf der Softwarefunktion verstanden. Bei einer Ausführung der Hostapplikation erfolgt demnach im Rahmen einer aufgrund eines solchen Aufrufs resultierenden Ausführung einer jeweiligen Softwarefunktion zum Beispiel eine Anzeige eines Textfeldes, wie dies ansonsten von der Gastapplikation ausgegeben würde. Indem die Anzeige des Textfeldes mittels der Hostapplikation erfolgt, nimmt der Benutzer die Ausführung der Gastapplikation gar nicht wahr und erhält die Anzeige innerhalb einer Benutzeroberfläche der Hostapplikation. Im Rahmen der von der Hostapplikation verarbeiteten Konfiguration ist eine Position des ausgegebenen Textfeldes, insbesondere eine Position und eine Dimension des Textfeldes, auf einem Anzeigegerät oder einer Anzeigeeinheit oder innerhalb einer von der Hostapplikation dargestellten Benutzeroberfläche vorgebbar. Allgemein ist mittels der Kon- figuration eine Position und/oder Dimension einer Ausgabe einer jeweils verwendeten adressierbaren Softwarefunktion einer Gastapplikation vorgebbar. Diese Vorgabe wird entsprechend kurz als Vorgabe der Position der Verwendung der jeweiligen Softwarefunktion bezeichnet.
Der Vorteil der hier vorgeschlagenen Lösung besteht darin, dass der Benutzer die Ausgabe der Hostapplikation und dessen Benutzeroberfläche wahrnimmt und dass eine gewissermaßen darunter ablaufende Softwareapplikation, also eine Gastapplikation, für den Benutzer gar nicht in Erscheinung tritt. Die Hostapplikation ermöglicht also einen mittels der Konfiguration spezifizierbaren Zugriff auf die jeweils als Gast ablaufende Softwareapplikation und genauso einen gleichzeitigen Zugriff auf mehrere als Gast ablaufende Softwareapplikationen. Weil sich der jeweilige Zugriff auf eine Gastapplikation oder eine Mehrzahl von
Gastapplikationen mittels der jeweiligen Konfiguration spezifizieren lässt, erscheint als Ausgabe der Hostapplikation entsprechend der Konfiguration schließlich genau das, was zur Erledigung der jeweiligen Aufgabe des Benutzers notwendig ist. Voraussetzung dafür ist selbstverständlich, dass im Rahmen einer vorangehenden Analyse ermittelt wurde, welche Softwarefunk¬ tionen tatsächlich benötigt werden und dass eine entsprechende Konfiguration erstellt wurde. Diese Konzentration der mittels der Hostapplikation erfolgenden Ausgabe auf das, was der Benutzer für seine jeweilige Aufgabe benötigt, wird als aufgabenzen¬ trierte Ausgabe und als aufgabenzentrierter Zugriff auf zu¬ mindest eine Softwareapplikation (Gastapplikation) oder eine Mehrzahl von Softwareapplikationen verstanden. Ferner wird im Rahmen der Konfiguration, also bei der Erstellung der Konfiguration, zumindest ein Softwareobjekt definiert. Im Rahmen der Definition dieses zumindest einen Softwareobjekts wird dieses mit einer adressierbaren Softwarefunktion einer Gastapplikation verknüpft. Im Rahmen einer Verarbeitung der Konfiguration durch die Hostapplikation resultiert aufgrund dieser Definition des Softwareobjekts ein Aufruf der mit dem Softwareobjekt verknüpften Softwarefunktion. Aufgrund des Aufrufs der Softwarefunktion resultiert wiederum eine Ausgabe der Softwarefunktion auf der Anzeigeeinheit, nämlich der von der Hostapplikation angesteuerten Anzeigeeinheit. Die Definition von Softwareobjekten im Rahmen der Konfiguration erlaubt deren Verwendung in Form eines durch die Hostapplikation ausführbaren Computerprogramms und im Weiteren zum Beispiel einen Daten- austausch zwischen einzelnen Gastapplikationen.
Vorteilhafte Ausgestaltungen der Erfindung sind Gegenstand der Unteransprüche. Dabei verwendete Rückbeziehungen weisen auf die weitere Ausbildung des Gegenstandes des Hauptanspruches durch die Merkmale des jeweiligen Unteranspruches hin. Sie sind nicht als ein Verzicht auf die Erzielung eines selbständigen, gegenständlichen Schutzes für die Merkmalskombinationen der rückbezogenen Unteransprüche zu verstehen. Des Weiteren ist im Hinblick auf eine Auslegung der Ansprüche bei einer näheren Konkretisierung eines Merkmals in einem nachgeordneten Anspruch davon auszugehen, dass eine derartige Beschränkung in den jeweils vorangehenden Ansprüchen nicht vorhanden ist. Schließlich ist darauf hinzuweisen, dass das hier angegebene Verfahren auch entsprechend der abhängigen Vorrichtungsansprüche weiterge- bildet sein kann und umgekehrt.
Bei einer Ausführungsform des Verfahrens ist vorgesehen, dass auf dem Computersystem zumindest eine erste und eine zweite
Gastapplikation ablaufen, dass die zumindest zwei Gastappli- kationen in der oben skizzierten Art und Weise jeweils zumindest eine adressierbare Softwarefunktion anbieten, dass die Host¬ applikation auf Basis einer Konfiguration jeweils zumindest eine adressierbare Softwarefunktion verwendet, dass im Rahmen der Konfiguration eine Position der Verwendung der zumindest zwei Softwarefunktionen auf einem Anzeigegerät oder einer Anzeigeeinheit spezifiziert wird und dass mittels der Hostapplikation ein Datenaustausch zwischen den zumindest zwei Softwarefunktionen oder den jeweiligen Gastapplikationen erfolgt.
Der Vorteil dieser Ausgestaltung des Verfahrens besteht darin, dass der Benutzer nicht nur die jeweils zumindest eine Soft¬ warefunktion zweier ansonsten unabhängiger Gastapplikationen gleichzeitig mittels der Hostapplikation nutzen kann und eventuelle Ausgaben mittels der Hostapplikation zusammen angezeigt werden, sondern dass ein Datenaustausch zwischen den Softwarefunktionen oder den jeweiligen Gastapplikationen, welche die Softwarefunktionen anbieten, erfolgt. Der Datenaustausch erfolgt dabei automatisch mittels der Hostapplikation, also ohne speziellen Eingriff des Benutzers. Der Benutzer muss demnach für einen Datenaustausch zwischen einzelnen Softwareapplikationen keine Zwischenablage (copy & paste) mehr verwenden oder keine Daten mehr aus einer ersten Softwareapplikation in eine Datei exportieren, um diese dann in eine zweite Soft- wareapplikation importieren zu können. Die Hostapplikation bewirkt den Datenaustausch gewissermaßen im Hintergrund und auf Basis einer Verwendung dafür von der jeweiligen Gastapplikation zur Verfügung gestellter adressierbarer Softwarefunktionen. Ein weiterer Vorteil besteht darin, dass mittels der Hostapplikation Gastapplikationen gemeinsam betrieben werden können, die originär nicht für ein Zusammenwirken vorgesehen sind und folglich auch keine „Kenntnis" über eine jeweils andere Gastapplikation haben. Die Hostapplikation vereinigt Gastapplikationen gewissermaßen unter einem gemeinsamen Dach und erlaubt auch nach- träglich jederzeit das Einbringen neuer Funktionen.
Bei einer nochmals weiteren Ausführungsform des Verfahrens lädt die Hostapplikation beim Start oder aufgrund einer entsprechenden Benutzeraktion eine Konfiguration und verwendet diese bis zum Laden einer anderen Konfiguration. Durch das Laden einer neuen Konfiguration ergibt sich eine Verwendung einer anderen Gastapplikation oder Softwarefunktion oder anderer Gastapplikationen oder Softwarefunktionen oder eine andere Verwendung einer oder mehrerer Gastapplikationen oder Softwarefunktionen. Jede Konfiguration führt demnach zu einer der Konfiguration entsprechenden eigenen Benutzeroberfläche und durch Verwendung einer jeweils geeigneten Konfiguration kann ein Benutzer die für seine jeweilige Aufgabe am besten passende Benutzeroberfläche auswählen. Durch eine Veränderung der Konfiguration oder durch Verwendung einer anderen Konfiguration ist das System aus Hostapplikation und zumindest einer Gastapplikation flexibler und zur Laufzeit des Computersystems sowie zur Laufzeit der Host- und der Gastapplikation oder der jeweiligen Gastapplikation anpassbar, ohne dass etwa die Host- oder die Gastapplikation neu kompiliert werden müssten. Dabei können vom Benutzer alle von der oder jeder Gastapplikation zur Verfügung gestellten Werkzeuge und Funktionen benutzt und im Hinblick auf einen optimalen Arbeitsfluss für die jeweilige Aufgabe neu zusammengestellt werden.
Das Verfahren oder das Verfahren mit einer oder mehreren der vorstehend skizzierten Ausgestaltungen ist in Software implementiert. Die Erfindung ist damit einerseits auch ein Compu- terprogramm mit durch einen Computer ausführbaren Programmcodeanweisungen und andererseits ein Speichermedium mit einem derartigen Computerprogramm, also ein Computerprogrammprodukt mit Programmcodemitteln, sowie schließlich auch ein Computersystem der eingangs genannten Art mit zumindest einem Computer, in dessen Speicher als Mittel zur Durchführung des Verfahrens und seiner Ausgestaltungen ein solches Computerprogramm geladen oder ladbar ist.
Nachfolgend wird ein Ausführungsbeispiel der Erfindung anhand der Zeichnung näher erläutert. Einander entsprechende Gegenstände oder Elemente sind in allen Figuren mit den gleichen Bezugszeichen versehen.
Es zeigen:
FIG 1 ein verteiltes Computersystem,
FIG 2 eine Darstellung zur Veranschaulichung eines Aufrufs einer Softwarefunktion einer Gastapplikation mittels einer hierarchisch übergeordneten Hostapplikation und eine Zuordnung einzelner Anzeigebereiche einer Ausga¬ beeinheit zu jeweils einer Softwarefunktion, so dass Ausgaben der Softwarefunktion dort erfolgen, sowie
FIG 3 eine Darstellung zur Veranschaulichung einer von der
Hostapplikation verwendeten Konfiguration und FIG 4 eine weitere Darstellung zur Veranschaulichung einer von der Hostapplikation verwendeten Konfiguration.
Die Darstellung in FIG 1 zeigt schematisch vereinfacht ein verteiltes Computersystem 10 einer Mehrzahl untereinander kommunikativ verbundener Computer 12. Die kommunikative Verbindung kann in Form eines lokalen Netzes, eines regionalen Netzes oder auch über das Internet bestehen. Die hier vorge¬ stellte Neuerung erfordert allerdings kein verteiltes Compu¬ tersystem 10. Vielmehr reicht grundsätzlich ein einzelner Computer 12 aus. Dann wird dieser einzelne Computer 12 als
Computersystem 10 aufgefasst. Die nachfolgende Beschreibung wird auf Basis eines verteilten Computersystems 10 gemäß der Dar¬ stellung in FIG 1 fortgesetzt. Dieses ist nicht einschränkend auszulegen. Vielmehr ist die Möglichkeit, dass ein einzelner Computer 12 als Computersystem 10 im Sinne der folgenden Beschreibung fungiert, stets mitzulesen.
Mittels des Computersystems 10 werden zum Beispiel zur Kraft¬ werkssteuerung mehrere Softwareapplikationen 14, 16, 18 mittels einer Verarbeitungseinheit in Form von oder nach Art eines
Mikroprozessors ausgeführt, die zu diesem Zweck in üblicher Art und Weise in einen jeweiligen Speicher geladen sind. Das Computersystem 10 fungiert damit als Mittel zur Steuerung und/oder Überwachung eines in FIG 1 nicht näher dargestellten technischen Prozesses, zum Beispiel eines Prozesses zur Energieerzeugung in einem Kraftwerk.
Als im Rahmen einer Kraftwerkssteuerung verwendete Softwareapplikationen sind beispielhaft eine Softwareapplikation 14 zur Diagnose eines Verbrennungsvorgangs in einem Kessel (Verbren¬ nungsdiagnose) , eine Softwareapplikation 16 zur Überwachung von Vibrationen einer Turbine (Vibrationsüberwachung) , eine Softwareapplikation 18 zur Erfassung und Überwachung statistischer Daten (Statistikmodul) und so weiter zu nennen.
Ein Benutzer, der zur Erfüllung einer konkreten Aufgabe diese Softwareapplikationen 14, 16, 18 benötigt, sieht sich bisher in der Praxis vor das eingangs skizzierte Problem gestellt, dass die von den Softwareapplikationen 14-18 ausgegebenen Daten oftmals nicht gleichzeitig betrachtet werden können, dass ein Zugriff auf einzelne Informationen oder Funktionen einer Softwareapplikation 14-18 tief in einer Menüstruktur der jeweiligen Softwareapplikation 14-18 verborgen ist und/oder dass ein Austausch von Daten zwischen zwei verschiedenen Softwareapplikationen 14-18 nicht ohne Weiteres möglich ist.
Der hier vorgeschlagene Ansatz sieht eine zusätzliche Soft¬ wareapplikation vor, die hierarchisch über der oder jeder Softwareapplikation 14-18 liegt, welche der Benutzer für die Erfüllung seiner jeweiligen Aufgabe benötigt. Diese spezielle Softwareapplikation wird entsprechend im Folgenden mitunter als Hostapplikation 20 bezeichnet und die oder jede hierarchisch darunter liegende Softwareapplikation 14-18 entsprechend als Gastapplikation 14-18. Die Hostapplikation 20 ist ein Computerprogramm und stellt eine Implementation des hier vorgeschlagenen Ansatzes dar. Entsprechend handelt es sich bei der Hostapplikation 20 um ein eine Implementation des hier vorgeschlagenen Ansatzes darstellendes Computerprogramm.
Für die weitere Beschreibung wird zunächst vom einfachsten Fall ausgegangen, nämlich dass eine einzelne Softwareapplikation 14-18 als Gastapplikation 14-18 fungiert. Ein aufgabenzentrierter Zugriff auf diese Gastapplikation 14-18 mittels der Hostapplikation 20 basiert auf einer Konfiguration 22. Mittels der Konfiguration 22 wird festgelegt, auf welche Software¬ funktion 24, 26, 28 (FIG 2) oder auf welche Softwarefunktionen 24-28 mittels der Hostapplikation 20 zugegriffen wird, also welche Softwarefunktion 24-28 oder welche Softwarefunktionen 24-28 die Hostapplikation 20 verwendet. Durch die Hostappli¬ kation 20 verwendbare Softwarefunktionen 24-28 einer Gastapplikation 14-18 sind von außerhalb der jeweiligen Gastappli¬ kation 14-18 aufrufbar. Dafür wird in grundsätzlich an sich bekannter Art und Weise, zum Beispiel im Rahmen eines sogenannten Application Programming Interface (API), eine für einen solchen externen Aufruf verwendbare Adresse oder eine sonstige Referenz, zum Beispiel ein Bezeichner, verfügbar gemacht. Im Rahmen der Konfiguration wird zumindest ein Softwareobjekt definiert. Dieses wird im Rahmen der Definition des Softwareobjekts mit einer adressierbaren Softwarefunktion 24-28 einer Gastapplikation 14-18 verknüpft. Im Rahmen einer Verarbeitung der Konfiguration 22 durch die Hostapplikation 20 resultiert aufgrund dieser Definition und der Verknüpfung mit der Soft- warefunktion 24-28 ein Aufruf der jeweiligen Softwarefunktion 24-28.
Aufgrund dieser Adressierbarkeit kann die Hostapplikation 20 einzelne Softwarefunktionen 24-28 einer von der Hostapplikation 20 grundsätzlich unabhängigen Gastapplikation 14-18 aufrufen und eine Darstellung von Bildschirmausgaben der Gastapplikation 14-18 erfolgt auf einer Anzeigeeinheit 30 der Hostapplikation 20 in Anzeigebereichen 34, 36, 38 (FIG 2), deren Position oder Position und Dimension oder Position, Dimension und/oder Er- scheinungsbild (Rahmen, Farbe, usw.) mittels der Konfiguration 22 festgelegt ist. Die Bildschirmausgabe der jeweils aufge¬ rufenen Softwarefunktion 24-28 erfolgt entsprechend deren jeweiliger Funktionalität. Wenn also die Softwarefunktion 24-28 bei einer separaten Ausführung der Gastapplikation 14-18 Statistikdaten in Form einer Tabelle ausgibt, erfolgt auch bei einem Aufruf dieser Softwarefunktion 24-28 mittels der Hostapplikation 20 eine derartige Ausgabe der Statistikdaten. Als Anzeigeeinheit 30 der Hostapplikation 20 wird dabei die An¬ zeigeeinheit desjenigen Computers 12 verstanden, auf dem die Hostapplikation 20 ausgeführt wird.
Die Darstellung in FIG 2 zeigt insoweit von oben nach unten gesehen zunächst schematisch vereinfacht die Anzeigeeinheit 30 desjenigen Computers 12, auf dem die als Hostapplikation 20 fungierende Softwareapplikation 20 ausgeführt wird, sodann in der Mitte die Hostapplikation 20 und schließlich unten eine von dem Hostapplikation 20 verwendete Gastapplikation 14-18 und wiederum davon verwendete Softwarefunktionen 24-28. Mittels der Pfeile 31 soll der Aufruf einer Softwarefunktion 24-28 durch die Hostapplikation 20 aufgrund von deren Adressierbarkeit veranschaulicht werden. Mittels der Pfeile 32 soll veranschaulicht werden, in welchen Anzeigebereichen 34-38 die Bildschirmausgabe der einzelnen Softwarefunktionen 24-28 erfolgt.
Die schematisch vereinfachte Darstellung in FIG 2 macht deut¬ lich, dass mittels der von der Hostapplikation 20 verwendeten Konfiguration 22 festgelegt werden kann, wo die Bildschirmausgabe einer von der Hostapplikation 20 verwendeten Soft- warefunktion 24-28 erfolgt. Die Hostapplikation 20 schafft damit gewissermaßen eine neue und vor allem konfigurierbare Benut¬ zeroberfläche für eine verwendete Gastapplikation 14-18. Die Darstellung in FIG 2 zeigt bereits, dass es dabei unerheblich ist, ob die Hostapplikation 20 genau eine Softwareapplikation 14-18 oder mehrere Softwareapplikationen 14-18 und deren Softwarefunktionen 24-28 verwendet.
Die zugrunde liegende Konfiguration 22 liegt zum Beispiel in Form einer Datei mit XML-Code vor, welche die Hostapplikation 20 auswertet. Durch eine Anpassung der Konfiguration 22 ergibt sich eine Möglichkeit, die jeweils resultierende Benutzeroberfläche anzupassen. Zum Beispiel kann die Position und/oder die Dimension einzelner Anzeigebereiche 34-38 geändert werden. Zusätzlich oder alternativ können im Rahmen einer Anpassung der Konfiguration 22 einzelne Anzeigebereiche 34-38 entfallen oder neue Anzeige¬ bereiche 34-38 hinzukommen. Durch eine Verwendung jeweils unterschiedlicher Konfigurationen 22, also zum Beispiel entsprechender Dateien, ergeben sich unterschiedliche Benutzeroberflächen, so dass der Benutzer durch Verwendung einer für seine jeweilige Aufgabe geeigneten Konfiguration 22 mittels der Hostapplikation 20 eine Anzeige einer für die jeweilige Aufgabe passenden, aufgabenzentrierten Benutzeroberfläche erhält. Die jeweils resultierende Benutzeroberfläche ermöglicht, dass der Benutzer eine Anzeige genau derjenigen Daten erhält, die er für seine Aufgabe benötigt. Dabei kann durch eine entsprechend der Platzierung der Anzeigebereiche 34-38 resultierende Reihenfolge der Darstellung der Daten dafür Sorge getragen werden, dass die Darstellung in einer möglichst übersichtlichen und/oder mög- liehst schnell erfassbaren Art und Weise erfolgt.
Die gemäß dem vorgeschlagenen Ansatz resultierende aufgabenzentrierte Anzeige/aufgabenzentrierte Benutzeroberfläche ist nicht notwendig statisch. Dazu wird auf die schematisch ver- einfachten Darstellungen in FIG 3 und FIG 4 verwiesen. Beide Darstellungen zeigen im oberen Bereich jeweils eine Benutzeroberfläche auf einer Anzeigeeinheit 30 der Hostapplikation 20 und im unteren Bereich eine Konfiguration 22 der als Hostapplikation 20 fungierenden Softwareapplikation 20. Die Konfiguration 22 ist in der Praxis zum Beispiel in einem XML-Code spezifiziert. Zur graphischen Darstellung der Konfiguration 22 sind anstelle eines solchen oder ähnlichen Codes Funktionsblöcke gezeigt, die jeweils einzelne Softwareobjekte repräsentieren. Die aufgrund der jeweiligen Konfiguration 22 resultierende Benutzerober- fläche wird auf einer obersten Hierarchieebene durch ein in den Darstellungen mit „Workplace" bezeichnetes Softwareobjekt re¬ präsentiert. Innerhalb der Benutzeroberfläche gibt es einen oder mehrere Anzeigebereiche („View A", „View B", usw.) und in jedem Anzeigebereich einen oder mehrere sogenannte Viewpartholder („VPH1", „VPH2", „VPH3" , „VPH4" , usw.). Im Rahmen eines für sich genommen bekannten, sogenannten Observer-Pattern besteht die Möglichkeit, dass sich einzelne im Rahmen der Konfiguration 22 definierte Softwareobjekte an einem sogenannten Event-Bus („EventBus") registrieren. Diese Registrierung erfolgt mittels einer entsprechenden Codierung des jeweiligen Softwareobjekts im Rahmen der Konfiguration 22 und die Registrierung legt eine Aktion fest, die im Falle eines in Bezug auf das jeweilige Softwareobjekt stattfindenden Ereignisses (Event) erfolgen soll. Ein Ereignis ist dabei zum Beispiel ein Mausklick auf eine zu dem Softwareobjekt gehörige Bildschirmdarstellung, zum Beispiel ein Mausklick auf die Bildschirmdarstellung einer Taste . Im in FIG 3 gezeigten Beispiel sollen die Pfeile von und zu den dortigen Softwareobjekten die Registrierung einzelner Softwareobjekte (in diesem Falle „VPH1" und „VPH2") am Event-Bus und eine damit definierte Verknüpfung dieser Softwareobjekte mit anderen Softwareobjekten (in diesem Falle „VPH3" und „VPH4") veranschaulichen. Diese Registrierung und Verknüpfung führt bei einer Ausführung einer eine entsprechende Konfiguration 22 verwendenden Hostapplikation 20 dazu, dass bei einem Klick auf eine aufgrund des Softwareobjekts „VPH1" innerhalb der Be- nutzeroberflache der Hostapplikation 20 dargestellten Taste eine Darstellung in einem dem Softwareobjekt „VPH3" zugeordneten Anzeigebereich 36 und bei einem Klick auf eine aufgrund des Softwareobjekts „VPH2" dargestellten Taste eine Darstellung in einem dem Softwareobjekt „VPH4" zugeordneten Anzeigebereich 38 erfolgt. Die in dem jeweiligen Anzeigebereich 36, 38 erfolgende Darstellung ist dabei selbst durch die Definition des jeweils zugrunde liegenden Softwareobjekts „VPH3" bzw. „VPH4" bestimmt und im Rahmen einer entsprechenden Codierung der Konfiguration 22 festlegbar. Durch eine entsprechende Codierung solcher Soft- wareobjekte erfolgt zum Beispiel in einzelnen Anzeigebereichen 36, 38 eine Ausgabe einer mittels der Hostapplikation 20 aufruf¬ baren Softwarefunktion 24-28, wie dies zuvor anhand der Darstellung in FIG 2 erläutert wurde. Das in FIG 3 gezeigte Beispiel kann auf Basis des erläuterten Prinzips selbstverständlich beliebig fortgeführt werden, so dass eine jeweils resultierende Benutzeroberfläche der Hostappli¬ kation 20 zum Beispiel eine größere Anzahl von Tastendarstellungen umfasst und mit einem Klick auf jede dieser Tas- tendarstellungen eine Darstellung unterschiedlicher Daten abrufbar ist, wobei die jeweils angezeigten Daten aus einer hierarchisch der Hostapplikation 20 untergeordneten Gastapplikation 14-18 stammen, insbesondere aus einer Gastapplikation 14-18 aus einer Gruppe mit einer Mehrzahl von Gastapplikationen 14-18.
Im in FIG 4 gezeigten Beispiel sollen die dortigen Pfeile zum Event-Bus wie zuvor veranschaulichen, dass die jeweiligen Softwareobjekte (hier „VPH1" und „VPH2") und damit verknüpfte Aktionen am Event-Bus registriert sind. Im Falle eines Mausklicks auf eine entsprechende Darstellung oder einer Auswahl einer solchen Darstellung mittels der Maus oder ähnlicher sogenannter Events führt hier die Registrierung aber zu einem Signal an das die gesamte Benutzeroberfläche repräsentierende Softwareobjekt („Workplace" ) , welches zu Folgesignalen an zwei Softwareobjekte („View B" und „View C") führt, welche jeweils einzelne Anzei¬ gebereiche repräsentieren. Diese Folgesignale bewirken wie¬ derum, dass sich ein Status dieser Softwareobjekte ändert. Ein zuvor sichtbares Softwareobjekt („View B") wird unsichtbar - das Softwareobjekt wird als Bestandteil der Benutzeroberfläche entladen - und ein zuvor unsichtbares Softwareobjekt („View C") wird sichtbar, indem es als zusätzlicher Bestandteil oder als ein ein anderes Softwareobjekt ersetzender Bestandteil der Benut- zeroberfläche geladen wird. Das Ergebnis ist im oberen Bereich der Darstellung in FIG 4 gezeigt und führt im gezeigten Beispiel dazu, dass an die Stelle zweier Anzeigebereiche 36, 38 ein vergrößerter Anzeigebereich 36 tritt, in dem zum Beispiel die Darstellung einer zuvor nicht aufgerufenen Softwarefunktion 24-28 einer der als Gastapplikation 14-18 fungierenden Softwareapplikationen 14-18 ausgegeben wird.
Selbstverständlich lässt sich die Komplexität einer mittels des hier vorgeschlagenen Ansatzes resultierenden Benutzeroberfläche grundsätzlich beliebig erhöhen. Die jeweiligen Darstellungsarten und Darstellungsmöglichkeiten sind nur durch den Funktionsumfang der als Hostapplikation 20 fungierenden Softwareapplikation 20 begrenzt. Als Hostapplikation 20 kommt zum Beispiel eine Java-Anwendung in Betracht, die als Konfiguration 22 eine Datei mit XML-Code verarbeitet. Bei einer Java-Anwendung als Hostapplikation 20 handelt es sich bei der oder jeder Gastapplikation 14-18 ebenfalls um eine Java-Anwendung. Allgemeiner ausgedrückt basieren bei dem hier vorgeschlagenen Ansatz die Hostapplikation 20 und die oder jede Gastapplikation 14-18 auf derselben Technologie.
Der hier vorgeschlagene Ansatz ist jedoch nicht auf eine aufgabenzentrierte und gegebenenfalls dynamisch veränderliche Anzeige von Daten beschränkt. Mittels der Hostapplikation 20 und einer zugrunde liegenden Konfiguration 22 ist auch ein Austausch von Daten zwischen zwei oder mehr von der Hostapplikation 20 verwendeten Gastapplikationen 14-18 möglich. Eine Weitergabe von Daten von einer Gastapplikation 14-18 an eine andere Gastapplikation 14-18 erfolgt zum Beispiel in Form eines Objekts eines üblichen Objekttyps oder in Form eines Objekts einer spezifischen Ausprägung eines Objekttyps. Zur Weitergabe von Daten in Form eines Objekts eines üblichen Objekt- oder Datentyps kommen ein Objekt des Typs „string" oder mehrere derartige Objekte in Betracht. Auf diese Weise können einerseits Texte, aber andererseits auch in eine Zeichenfolge (string) umgewandelte natürliche oder reelle Zahlen übermittelt werden. Eine Übertragung von Daten in Form eines Objekts eines spe- zifischen Objekt- oder Datentyps ist dann möglich, wenn beide in dem Datenaustausch involvierte Softwareapplikationen 14-18 den jeweiligen Objekt- oder Datentyp unterstützen.
Zusätzlich oder alternativ ist eine Weitergabe von Daten von einer Gastapplikation 14-18 an eine andere Gastapplikation 14-18 oder an eine weitere und zur Unterscheidung von einer Gastapplikation 14-18 als Fremdapplikation bezeichnete Software¬ applikation zum Beispiel mittels üblicher Netzwerkschnitt¬ stellen möglich, zum Beispiel Netzwerkschnittstellen wie sie für CORBA, Web Services, OPC, DCOM etc. bekannt sind. Der Daten¬ austausch mit einer Fremdapplikation erlaubt die beliebig gestaltbare Weitergabe beliebiger Daten, nämlich von der Gastapplikation 14-18 im Rahmen einer dortigen entsprechenden Programmierung vorgegebener Daten, an einen Server oder eine Cloud.
Obwohl die Erfindung im Detail durch das Ausführungsbeispiel näher illustriert und beschrieben wurde, so ist die Erfindung nicht durch das oder die offenbarten Beispiele eingeschränkt und andere Variationen können vom Fachmann hieraus abgeleitet werden, ohne den Schutzumfang der Erfindung zu verlassen.
Einzelne im Vordergrund stehende Aspekte der hier eingereichten Beschreibung lassen sich damit kurz wie folgt zusammenfassen: Angegeben werden ein Verfahren zum Betrieb eines Computersystems 10, ein Computerprogramm 20 mit einer Implementation des Verfahrens und ein zur Ausführung des Verfahrens bestimmtes Compu¬ tersystem 10. Auf dem Computersystem 10 läuft zumindest eine als Hostapplikation 20 fungierende Softwareapplikation und zumin- dest eine als Gastapplikation 14-18 fungierende Softwareap¬ plikation ab, wobei die oder jede Gastapplikation 14-18 zumindest eine adressierbare Softwarefunktion 24-28 anbietet. Die Host¬ applikation 20 verwendet auf Basis einer Konfiguration 22 zumindest eine adressierbare Softwarefunktion 24-28 der zu- mindest einen Gastapplikation 14-18, wobei im Rahmen der Konfiguration 22 eine Position der Verwendung der mindestens einen Softwarefunktion 24-28 auf einer Anzeigeeinheit 30 spezifiziert wird .
Bezugs zeichenliste
10 Computersystem
12 Computer
14 Softwareapplikation / Gastapplikation
16 Softwareapplikation / Gastapplikation
18 Softwareapplikation / Gastapplikation
20 Softwareapplikation / Hostapplikation / Computer¬ programm
22 Konfiguration
24 Softwarefunktion
26 Softwarefunktion
28 Softwarefunktion
30 Anzeigeeinheit
31, 32 Pfeil
34 Anzeigebereich
36 Anzeigebereich
38 Anzeigebereich

Claims

Patentansprüche
1. Verfahren zum Betrieb eines Computersystems (10), auf dem zumindest eine als Hostapplikation (20) fungierende Soft- wareapplikation und zumindest eine als Gastapplikation (14-18) fungierende Softwareapplikation ablaufen,
wobei die oder jede Gastapplikation (14-18) zumindest eine adressierbare Softwarefunktion (24-28) anbietet,
wobei die Hostapplikation (20) auf Basis einer Konfiguration (22) zumindest eine adressierbare Softwarefunktion (24-28) der zumindest einen Gastapplikation (14-18) verwendet,
wobei im Rahmen der Konfiguration (22) eine Position der Verwendung der mindestens einen Softwarefunktion (24-28) auf einer Anzeigeeinheit (30) spezifiziert wird,
wobei im Rahmen der Konfiguration (22) zumindest ein Softwareobjekt definiert wird,
wobei im Rahmen der Definition des Softwareobjekts dieses mit einer adressierbaren Softwarefunktion (24-28) einer Gastapplikation (14-18) verknüpft wird,
wobei im Rahmen einer Verarbeitung der Konfiguration (22) durch die Hostapplikation (20) ein Aufruf der Softwarefunktion (24-28) resultiert,
wobei aufgrund des Aufrufs der Softwarefunktion (24-28) eine Ausgabe der Softwarefunktion (24-28) auf der Anzeigeeinheit (30) resultiert und
wobei die Anzeigeeinheit (30) eine von der Hostapplikation (20) angesteuerte Anzeigeeinheit (30) ist.
2. Verfahren nach Anspruch 1,
wobei auf dem Computersystem (10) zumindest eine erste und eine zweite jeweils als Gastapplikation (14-18) fungierende Softwareapplikation (20) ablaufen,
wobei die zumindest zwei Gastapplikationen (14-18) jeweils zumindest eine adressierbare Softwarefunktion (24-28) anbieten, wobei die Hostapplikation (20) auf Basis einer Konfiguration
(22) jeweils zumindest eine adressierbare Softwarefunktion (24-28) der zumindest zwei Gastapplikationen (14-18) verwendet, wobei im Rahmen der Konfiguration (22) eine Position der Verwendung der zumindest zwei Softwarefunktionen (24-28) auf einer Anzeigeeinheit (30) spezifiziert wird und
wobei mittels der Hostapplikation (20) ein Datenaustausch zwischen den zumindest zwei Softwarefunktionen (24-28) erfolgt.
3. Verfahren nach Anspruch 1 oder 2,
wobei die Hostapplikation (20) eine Konfiguration (22) lädt und diese bis zum Laden einer anderen Konfiguration (22) verwendet .
4. Computerprogramm (20) mit Programmcodemitteln, um alle
Schritte von jedem beliebigen der Ansprüche 1 bis 3 durchzu¬ führen, wenn das Computerprogramm (20) auf einem Computer (12) ausgeführt wird.
5. Computersystem (10) mit zumindest einem Computer (12) mit einer Verarbeitungseinheit und einem Speicher, in den ein als Hostapplikation (20) fungierendes Computerprogramm (20) nach Anspruch 4 geladen ist, das beim Betrieb des Computers (12) durch die Verarbeitungseinheit ausgeführt wird.
EP16798484.8A 2015-11-20 2016-11-18 Verfahren zum betrieb eines computersystems, computerprogramm mit einer implementation des verfahrens und zur ausführung des verfahrens bestimmtes computersystem Withdrawn EP3377971A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE102015223001.5A DE102015223001A1 (de) 2015-11-20 2015-11-20 Verfahren zum Betrieb eines Computersystems, Computerprogramm mit einer Implementation des Verfahrens und zur Ausführung des Verfahrens bestimmtes Computersystem
PCT/EP2016/078181 WO2017085281A1 (de) 2015-11-20 2016-11-18 Verfahren zum betrieb eines computersystems, computerprogramm mit einer implementation des verfahrens und zur ausführung des verfahrens bestimmtes computersystem

Publications (1)

Publication Number Publication Date
EP3377971A1 true EP3377971A1 (de) 2018-09-26

Family

ID=57354369

Family Applications (1)

Application Number Title Priority Date Filing Date
EP16798484.8A Withdrawn EP3377971A1 (de) 2015-11-20 2016-11-18 Verfahren zum betrieb eines computersystems, computerprogramm mit einer implementation des verfahrens und zur ausführung des verfahrens bestimmtes computersystem

Country Status (5)

Country Link
US (1) US20180373577A1 (de)
EP (1) EP3377971A1 (de)
CN (1) CN108292246A (de)
DE (1) DE102015223001A1 (de)
WO (1) WO2017085281A1 (de)

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5832219A (en) * 1994-02-08 1998-11-03 Object Technology Licensing Corp. Distributed object networking service
US5995752A (en) * 1998-02-03 1999-11-30 International Business Machines Corporation Use of language instructions and functions across multiple processing sub-environments
US7346848B1 (en) * 2000-06-21 2008-03-18 Microsoft Corporation Single window navigation methods and systems
US7543300B2 (en) * 2004-11-16 2009-06-02 International Business Machines Corporation Interface for application components
EP1712989A1 (de) * 2005-04-15 2006-10-18 Perkinelmer Singapore PTE Ltd. Ein Computersystem, eine integrierbare Softwarekomponente und eine Softwareanwendung
US20080263194A1 (en) * 2007-04-17 2008-10-23 International Business Machines Corporation Method and system for optimal binding selection for service oriented architectures
US7809785B2 (en) * 2007-05-28 2010-10-05 Google Inc. System using router in a web browser for inter-domain communication
US9338273B2 (en) * 2009-09-22 2016-05-10 Avaya Inc. Method for telephony client synchronization in telephone virtualization
US20120159383A1 (en) * 2010-12-20 2012-06-21 Microsoft Corporation Customization of an immersive environment
CN102945233B (zh) * 2011-08-15 2016-01-27 联想(北京)有限公司 电子设备及其数据管理方法
US9729673B2 (en) * 2012-06-21 2017-08-08 Calgary Scientific Inc. Method and system for providing synchronized views of multiple applications for display on a remote computing device
KR101961860B1 (ko) * 2012-08-28 2019-03-25 삼성전자주식회사 사용자 단말 장치 및 그 제어 방법
KR20140040379A (ko) * 2012-09-26 2014-04-03 삼성전자주식회사 휴대단말기의 어플리케이션 처리 장치 및 방법
US9223598B1 (en) * 2012-11-26 2015-12-29 Parallels IP Holdings GmbH Displaying guest operating system statistics in host task manager
WO2014085502A1 (en) * 2012-11-29 2014-06-05 Edsense, L.L.C. System and method for displaying multiple applications

Also Published As

Publication number Publication date
WO2017085281A1 (de) 2017-05-26
DE102015223001A1 (de) 2017-05-24
US20180373577A1 (en) 2018-12-27
CN108292246A (zh) 2018-07-17

Similar Documents

Publication Publication Date Title
DE112005001031B4 (de) Grafisches Bildschirmkonfigurationsgerüst für vereinheitlichte Prozesssteuerungssystemoberfläche
DE10051645B4 (de) Prozesssteuersystem und Verfahren zum Kontrollieren eines Prozesses
DE102013207608B4 (de) Instrumentieren von Software-Anwendungen für die Konfiguration derselben
DE10351351B4 (de) Verfahren und System zur dynamischen Generierung von User Interfaces
DE19960050A1 (de) Grafische Benutzerschnittstelle zur Entwicklung von Anwendungsbeispielen unter Verwendung einer Testobjektbibliothek
EP1061422A1 (de) Informationstechnisches System zur Definition, Optimierung und Steuerung von Prozessen
WO2015044374A1 (de) Verfahren und einrichtung zur automatisierten erzeugung und bereitstellung wenigstens einer softwareanwendung
DE102011008941A1 (de) System zur Visualisierung von Statusinformationen von Feldgeräten
DE112011103428T5 (de) Automatisierte Analyse zusammengesetzter Anwendungen
EP2407842B1 (de) Verfahren zur Inbetriebnahme von Maschinen oder Maschinen einer Maschinenserie und Projektierungssystem
EP3572956A1 (de) Erstellung eines interdisziplinären simulationsmodells
DE69121113T2 (de) Verfahren zur bestimmung von benutzerschnittstellen und programmiersystem fur einen rechner mit mehreren benutzerschnittstellen
DE102010011652A1 (de) Applikationsplattform und Verfahren zum Betrieb einer Datenverarbeitungseinrichtung mit einer solchen
EP3295265A1 (de) Bedienmodul für eine maschine in der lebensmittelindustrie
DE10161140A1 (de) System und Verfahren zum Verfolgen und/oder Auswerten des Informationsaustausches
EP3377971A1 (de) Verfahren zum betrieb eines computersystems, computerprogramm mit einer implementation des verfahrens und zur ausführung des verfahrens bestimmtes computersystem
EP1862901A1 (de) Eingabe von Programm-Anweisungen bei imperativen Programmiersprachen
WO2019057559A1 (de) Verfahren und datenverarbeitungsvorrichtung zum computerunterstützten bereitstellen einer in form von computercode vorliegenden information zu einem prozessmodul, sowie computerprogrammprodukt zur durchführung des verfahrens
EP3438774A1 (de) Verfahren zur bereitstellung von funktionen innerhalb eines industriellen automatisierungssystems und automatisierungssystem
DE102009019442A1 (de) Testdatengenerator
EP3355186A1 (de) Erzeugung und ausführung von software-modulen
WO2011051063A2 (de) Verfahren zur konfiguration, der erzeugung und speicherung von ausgabedaten, computersystem, elektromechanisches gerät, betriebssystem und datenträger
EP3764210A1 (de) Darstellen von anzeigebereichen auf einem desktop
EP2012227A1 (de) Programmieroberfläche zum Programmieren von Computern
DE102010025480A1 (de) Verfahren und System zur Steuerung einer Benutzeroberfläche einer Softwareapplikation

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

17P Request for examination filed

Effective date: 20180517

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR

AX Request for extension of the european patent

Extension state: BA ME

DAV Request for validation of the european patent (deleted)
DAX Request for extension of the european patent (deleted)
17Q First examination report despatched

Effective date: 20191220

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE APPLICATION IS DEEMED TO BE WITHDRAWN

18D Application deemed to be withdrawn

Effective date: 20200603