WO2007009884A2 - Verfahren zur dynamischen dienstekonfiguration eines technischen systems - Google Patents

Verfahren zur dynamischen dienstekonfiguration eines technischen systems Download PDF

Info

Publication number
WO2007009884A2
WO2007009884A2 PCT/EP2006/063923 EP2006063923W WO2007009884A2 WO 2007009884 A2 WO2007009884 A2 WO 2007009884A2 EP 2006063923 W EP2006063923 W EP 2006063923W WO 2007009884 A2 WO2007009884 A2 WO 2007009884A2
Authority
WO
WIPO (PCT)
Prior art keywords
services
service
technical system
functional
compatible
Prior art date
Application number
PCT/EP2006/063923
Other languages
English (en)
French (fr)
Other versions
WO2007009884A3 (de
Inventor
Gerald KÄFER
Reiner Schmid
Original Assignee
Siemens Aktiengesellschaft
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 Aktiengesellschaft filed Critical Siemens Aktiengesellschaft
Priority to US11/922,210 priority Critical patent/US20090132688A1/en
Publication of WO2007009884A2 publication Critical patent/WO2007009884A2/de
Publication of WO2007009884A3 publication Critical patent/WO2007009884A3/de

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/2803Home automation networks
    • 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/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/2803Home automation networks
    • H04L12/2807Exchanging configuration information on appliance services in a home automation network
    • H04L12/2809Exchanging configuration information on appliance services in a home automation network indicating that an appliance service is present in a home automation network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/2803Home automation networks
    • H04L12/2807Exchanging configuration information on appliance services in a home automation network
    • H04L12/281Exchanging configuration information on appliance services in a home automation network indicating a format for calling an appliance service function in a home automation network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/51Discovery or management thereof, e.g. service location protocol [SLP] or web services

Definitions

  • the invention relates to a method for dynamic service configuration of a technical system comprising a plurality of services each having one or more interfaces, wherein two services in the technical system are then compatible, if a direct interaction of the one service with the other service via compatible interfaces the services is feasible.
  • the devices provide one or more so-called services, which can perform certain technical tasks.
  • Service is therefore understood here and below to mean a unit of a technical device which is intended to carry out a specific technical task.
  • Such resources are, for example, bandwidths prescribed by the system for data transmission or the computing or storage capacity of information in the system.
  • discovery techniques are known with which a new, in a technical system to integrating device automatically finds the individual services of the technical system, for example via UPnP (Universal Plug and Play) or via Bluetooth.
  • UPnP Universal Plug and Play
  • Bluetooth Wireless Fidelity
  • Functional description languages are also known from the prior art with which the functionalities of individual services in a network of services are described and according to the functionalities suitable functional paths between the services are defined.
  • the services used are predetermined and no services can be integrated dynamically.
  • the object of the invention is therefore to provide a method and corresponding devices with which new services can be integrated dynamically in a technical system.
  • a functional description language is used, it being possible if necessary to use a description language already known from the prior art.
  • the description language which comprises a multiplicity of functional elements
  • the existing services to be integrated in the system and possible interactions between the services are described by one or more functional elements.
  • the functional element represents a functionality of the corresponding service or interaction.
  • a service can also be assigned a plurality of functional elements, provided that the service can take over several functions.
  • an interaction can be assigned a plurality of functional elements, as long as the interaction allows various functions to be accomplished.
  • the functional task description specifies the functional elements corresponding to the start and end services and their interactions.
  • start or end service are to be understood generally and can stand for any technical service to be integrated or already existing in the technical system.
  • the wording "beginning" or "end” is merely intended to express that in the method according to the invention a search is made for an initial-to-end relationship between two technical services.
  • step b) If combinations of start and end service were found in step b), at least part of the initial the services of the combinations perform a search for compatible services in which the initial service searches for services compatible with it and the compatible services in turn search for services compatible with them, thereby creating paths of successive compatible services, one path being the solution path of the interaction task is determined if the initial service of the path and the found compatible end service correspond to a combination of start and end service found in step b). In this way, a variety of possible solution paths for the task are created.
  • step c If solution paths were found in step c), one of the solution paths is selected and the interaction task is performed along the selected solution path.
  • the method according to the invention thus not only finds a solution to the problem by direct interaction between two services, but solutions are also found which solve the problem by interposing several services.
  • a suitable solution path for the problem can then be used according to predetermined criteria, in particular according to the availability of the resources of the individual services.
  • an intermediate step is performed to check whether the combinations of start and end service determined in step b) comprise services compatible with one another. If so, these combinations of compatible services are each defined in advance as a solution path that can be considered in the later selection of appropriate solution paths. Possibly.
  • the selection according to step d) can be performed immediately without having to search for further possible solution paths.
  • the new initial services to be integrated in the technical system determine, with the aid of a search method, the services already present in the technical system. There are in this case known from the prior art search method, such. B. UPnP or Bluetooth.
  • the services present in the technical system and the functional elements assigned to these services are stored in a memory, and the search according to step c) is carried out in the memory.
  • the search for solution paths can be accelerated because it is no longer necessary to search the entire technical system for existing services.
  • the search for solution paths in step c) is carried out until a predetermined number of solution paths have been found or until at least one termination criterion has been met.
  • the termination criterion here is preferably a timeout, d. H. a predetermined maximum time interval set for the search.
  • the timeout can preferably be changed dynamically.
  • messages are sent between the services which contain the initial service of the path and one or more functional elements of the end service specified according to the functional task description.
  • the identity of the service receiving the message is added to a message, provided that this service is not assigned a functional element specified according to the functional task description.
  • the message thus generated is then in turn forwarded to compatible services.
  • the service receiving the message is to be Ascribed to a predefined functional element, this service returns its identity to the initial service. This will make the possible solution paths known to the initial service.
  • predetermined restrictions in particular with regard to the physical resources of the services, are taken into account in the search in step c) and / or in the selection in step d).
  • the restrictions may include global restrictions valid throughout the technical system, which in particular describe desired properties of the interaction task to be performed in the technical system.
  • the restrictions may also include local restrictions valid only in a group of services, which in particular concern the availability of the physical resources in the group of services.
  • the method according to the invention is preferably carried out in a technical system comprising a network of a plurality of technical devices, wherein one or more services of the technical system are included in each device.
  • the initial services to be integrated in the technical system are in a single device to be integrated in the technical system, in particular in a mobile device, such as a mobile device.
  • a mobile device such as a mobile device.
  • a laptop or a PDA includes.
  • the network may include a home and / or building automation system that allows users to log in to the system from the outside and perform operations in the system, such as in the system.
  • B. the Control the heating system or the control of consumer electronics devices to make.
  • the invention also relates to a technical system comprising a plurality of services, the technical system being designed such that the method according to the invention can be carried out in the technical system.
  • the invention further relates to a technical device comprising one or more services for carrying out the method according to the invention, comprising:
  • the technical device may also preferably function as a component already integrated in the technical system with a group of services, the device for this purpose comprising means for processing messages from other devices received during the search for solution paths.
  • the invention further relates to a computer program product with a device stored on a machine-readable carrier. cherten program code for carrying out the method according to the invention, when the program runs on a computer.
  • Figure 1 is a schematic representation of the sequence of an embodiment of the method according to the invention.
  • FIG. 2 shows an example of an application of the method according to the invention in a building automation system
  • Figure 3 shows the schematic structure of a technical device that can be integrated according to the inventive method in a technical system.
  • a new technical device 2 comprising the initial services A1 and A2 is to be integrated in the technical system 1.
  • the technical system 1 in this case represents a network of a plurality of services El, E2, E3, E4, E5, E6 and E7.
  • the technical device 2 has a so-called discovery mechanism with which information about the available services in the technical system 1 are provided.
  • the discovery mechanism may be, for example, a UPnP mechanism or a Bluetooth based mechanism. Such a discovery mechanism is well known in the art, so its detailed description is omitted here.
  • the device 2 initially initializes this discovery mechanism, so that the technical device 2 becomes aware of all the services present in the system 1.
  • the individual services of both the device 2 and the system 1 also have means for checking the compatibility of the interfaces between the different services, for example in the form of an interface matcher component, which is also well known in the art.
  • an interface matcher component which is also well known in the art.
  • the functional scope of each individual service in the device 2 and in the system 1 as well as the possible interactions of the respective service with other services in a functional description language will be described, this description language comprising a plurality of functional elements, each having the functionality of a service or play an interaction.
  • a task is specified, which is reproduced with the aid of the functional elements of the functional description language.
  • the description language here comprises so-called functional nodes, which each stand for a functionality of a service, as well as interaction tokens, which each stand for the functionality of an interaction.
  • a video may be provided on the technical device 2 and the task may be to display this video on a display.
  • the technical device 2 thus comprises the service ⁇ VIDEO>, which is to be connected to a service ⁇ DISPLAY> via an interaction token ⁇ link>.
  • the task to be performed in the technical system is therefore:
  • the unspecified interaction token ⁇ link> is specified in more detail for a clear solution of the task set, which can be done by the task operator himself.
  • the technical device 2 can provide alternative alternatives for more precise definition of the interaction token and possibly also of the functional nodes.
  • the example just mentioned gives a more detailed definition of the unspecified interaction token ⁇ link> only the interaction token ⁇ show>, as the Functional Node ⁇ DISPLAY> can only be used to display videos.
  • the task generator could, for example, formulate the following specific task:
  • This task specifies that viewing a video on a terminal is desired.
  • Another example of a functional description of a task is video playback on an external Bluetooth terminal. Such a task could look like this:
  • Such descriptions are automatically generated in the device 2, wherein the task on which the description is based can be input by an operator of the device 2, for example via a graphical user interface. However, it is also conceivable that such descriptions are automatically generated upon contact of the device 2 with the technical system 1.
  • a first step which services in the technical system 1 fulfill the task according to the functional task description.
  • a so-called interface compatibility check is carried out, in which it is checked to what extent the interfaces of the initial services A1 and A2 are compatible with the interfaces of the end services E1 or E2 or E3, where compatibility means that a direct Interaction between the services without the interposition of other services through the interfaces of the services is possible.
  • a so-called resource tree generation in which first, for each initial service Al and A2, is searched for services compatible with the initial service. For this purpose, a message in the form of a lookup request is sent by the initial service A1 or A2, the message containing the information about the functional nodes sought according to the task being set and various restrictions. These restrictions may be, for example, local restrictions on the availability and functionality of the resources of the services A1 and A2, respectively. For example, the limitation may be that data from an initial service can only be provided in a particular format.
  • the lookup request also contains a list in which initially only the identification of the service sending the message is stored.
  • the compatible service receiving the lookup request verifies that it is assigned a Functional Node in accordance with the task. Is this If not, he adds his own identification to the list in the lookup request and passes the lookup request on to him compatible services in his environment. These services then also check again whether they contain the functional node to be searched according to the set task. Again, if this is not the case, the identifiers of the respective services are added to the lookup request, and the request is forwarded to other services compatible with the respective service. In this way, a so-called resource tree with a plurality of paths in all directions is generated.
  • the search in a respective path is terminated when the service receiving the lookup request contains the functional node searched for according to the task.
  • the search path thus generated is then defined as the solution path of the task set, and the service containing the desired functional node is given a response to the original initial service.
  • a search for compatible services in a path is stopped even if no compatible services can be found for a service. In this case, the search in this path is considered failed.
  • the search for solution paths is also limited in time by a timeout, the timeout being context-sensitive, i. H. it can be influenced or controlled by external signals.
  • the sending of the lookup requests to compatible services is indicated schematically by arrows with squares.
  • the dashed line L8 indicates, by way of example, a connection between the initial service A1 and the service E4, which does not represent a solution path, since the two services are either incompatible with one another or have predetermined restrictions, that are sent with the lookup request are not met.
  • these restrictions are taken into account in the generation of the solution paths, with the generation of the paths being checked by each participating service as to whether it fulfills the resource requirements stipulated by the restrictions. If these requirements can not be met, this path is suppressed during the search, even if the services are classified as compatible with each other. In this way, a preselection of possible solution paths is made already during the generation of the solution paths.
  • Local restrictions are restrictions that are only local, d. H. for a given group of services, for example, only for the services Al and A2 of the technical device 2, are valid.
  • An example of such a local restriction is a maximum bandwidth with which data can be transmitted by a service.
  • global restrictions apply throughout the technical system 1 and the device 2 to be integrated. These restrictions are transmitted by all participants in the technical system and are intended to serve for general conflict resolution. In particular, typical global constraints describe specific desired properties of the task to be performed. Such restrictions may e.g. For example:
  • the task should be carried out as soon as possible; the task should be carried out as energy-saving as possible; - the task should be carried out as cheaply as possible; the task should only be performed with trusted services; the task should only be performed with services that have a certain security standard; - The task should be carried out in such a way that, furthermore, a high availability of the resources of the services is provided.
  • constraints are already taken into account in the search for solution paths, where the restrictions include clear go / no go decisions, after which it is determined in which direction solution paths can branch.
  • constraints preferably taking into account dynamic constraints in the selection, which determine the local state, e.g. B. include the energy supply of a service or the utilization of a service.
  • So-called go / conditional-go decisions are then generated in the services of the solution paths, with the go / conditional-go decisions allowing the propagation of a solution path from one service to another either without limitation or under a condition regarding the local state of the considered one Provide service.
  • One criterion in the selection of the solution path can be z. For example, consider that only solution paths with unique go decisions are considered, and from this, a solution path is selected according to the global constraints.
  • An optimization possibility of the method just described is the use of a so-called Functionality Proxy service.
  • This service covers all functionalities the services of the technical system.
  • the functionality proxy service stores the information of the functional nodes assigned to the services in a local memory.
  • the search for solution paths then takes place on the basis of the information in the local memory. It is therefore possible to dispense with a discovery mechanism of a service to be newly integrated, since the new service is provided with the corresponding information about the functionality proxy service.
  • the optimization option just described is particularly useful in technical networks in the home and / or building automation area, since there are often quasi-stationary states of certain network partners that do not change over a very long time (eg. B. the integration of a flat screen). Newly added device groups can thus access these stationary states directly via the functionality proxy service.
  • PDA Personal Digital Assistant
  • the device 4 is to control the heating system 5 within the home automation system 3, as indicated in Figure 2 by the dashed arrow Pl.
  • the home automation system is in this case physically accessible only via a gateway 6, which is connected via an automation bus 7 with the heating system 5 and a heating control system 8.
  • the task can be described in a functional description language as follows:
  • interaction token ⁇ link> connections to control the heating (interaction token ⁇ control heating>) and connections to display the heating settings (interaction token ⁇ show heating settings>) are taken into account.
  • the heating system 5 can not be used directly for the PDA 4 since no compatible interfaces are present. Use is only possible with the interposition of the heating control system 8, which is compatible with both the heating system 5 and the PDA 4. In this case, the availability of the resources of the heating system 5 and the heating control system 8 were also dynamically taken into account.
  • the logical solution path found thus consists of the arrows P2 and P3 shown in FIG. 2, wherein physically the connection of the devices always takes place with the interposition of the gateway 6.
  • Another example of the application of the method according to the invention is the transmission of maintenance data of a technical device to a video display device in the form of a video stream.
  • Initiator of this task is a device A, which is a maintenance data provider.
  • the task can be formulated in a functional description language as follows: ⁇ Maintenance Data Provider> ⁇ Maintenance Data Display> ⁇ VideoTerminal>.
  • the device A determines, preferably with the interposition of the functionality proxy service described above, possible solution paths. It turns out that a device B can represent the maintenance data, but not directly through the device A, but via the interposition of a maintenance support device, which can visualize the data of devices in the system.
  • the technical resources of the support device in particular the bandwidth, the coding method and the possible image resolution of the device were also taken into account.
  • local restrictions of the device B were also included in the search, in particular the minimum resolution of the device, the visibility (single user, room, group, etc.) and the current availability. These constraints thus refine the functional element ⁇ video terminal> of the functional description of the task.
  • the inventive method has a number of advantages.
  • the automated generation of solution paths taking into account the available resources, enables the automatic dynamic connection of new devices without the need for manual configuration.
  • the necessary configuration effort is limited to the selection of suitable solution paths.
  • Crucial here is that the consideration of local and global constraints in the cooperation between the devices can be a resource-efficient integration of new devices.
  • the method according to the invention thus makes it possible to flexibly use a system for new, unforeseen possibilities of use, since it automatically searches for new opportunities for cooperation, if devices that are not directly compatible with one another are used together. to work. Furthermore, it is possible to respond dynamically to changing conditions in the technical system, for example, the elimination of currently used devices.
  • Figure 3 shows schematically the structure of a technical device for integration into a technical system according to the method according to the invention or for use as an already existing component in the technical system.
  • the connecting lines between the individual components shown in FIG. 3 are merely schematic and exemplary in this case, and other or additional connections between the components may also be present.
  • the device comprises a control service 9 for controlling the dynamic generation of solution paths.
  • UP User Policy
  • context information CI can be taken into account, which relate to restrictions with regard to the environment in which the device is used.
  • FTD Functional Task Description
  • the determination of combinations of start and end service, which solve the task set, as well as the search for suitable solution paths is performed in the device in the resource tree generator 11, which makes the query for compatible services, the search the Required functional nodes according to the task contains.
  • the generator 11 is also in turn connected to a discovery service 12, through which it is first determined which devices are present in the technical system in which the new device wishes to integrate.
  • the discovery service 12 is in this case connected to a corresponding network interface 13, via which the information between the new device and the devices in the technical system.
  • the device of Figure 3 further has a cache 14 in which the solution paths determined by the resource tree generator 11 are stored.
  • the selection of the solution path then takes place via the selection unit 15, which takes into account local restrictions stored in a memory 16 and global restrictions stored in a memory 17 as well as any existing context information CI and user restrictions UP.
  • restrictions with regard to the provided resources of the individual devices are already taken into account in advance. These restrictions are stored in a memory 18 and are supplied to the resource tree generator 11 via the selection unit.
  • the device of FIG. 3 also has a management unit 19, which carries out a so-called lease management, according to which it is determined in which time intervals certain services are made available.
  • the management unit processes lookup requests from other devices and, if necessary, forwards them to the resource tree generator, which then initializes the search for solution paths.
  • the device of Figure 3 further includes a local memory 20, in which the information of the locally available services in the device is stored.

Landscapes

  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Small-Scale Networks (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Stored Programmes (AREA)

Abstract

Die Erfindung betrifft ein Verfahren zur dynamischen Dienstekonfiguration eines technischen Systems, bei dem: a) für eine Interaktionsaufgabe zwischen einem oder mehreren neuen Anfangsdiensten (Al, A2) und einem oder mehreren im technischen System (1) bereits vorhandenen Enddiensten (El, ..., E7) eine funktionale Aufgabenbeschreibung in einer funktionalen Beschreibungssprache eingegeben und/oder erzeugt wird; b) anhand der funktionalen Aufgabenbeschreibung Kombinatio nen aus Anfangs- und Enddienst ermittelt werden, welche die Interaktionsaufgabe lösen; c) für wenigstens einen Teil der Anfangsdienste (Al, A2) der Kombinationen eine Suche nach kompatiblen Diensten durchgeführt wird, bei welcher der Anfangsdienst (Al, A2) nach zu ihm kompatiblen Diensten sucht und die kompatiblen Dienste wiederum nach zu ihnen kompatiblen Diensten suchen, wodurch Pfade von aufeinanderfolgenden kompatiblen Diensten erzeugt werden, wobei ein Pfad als Lösungspfad der Interaktionsaufgabe bestimmt wird, wenn der Anfangsdienst (Al, A2) des Pfades und der gefundene kompatible Enddienst (El, ..., E7) einer in Schritt b) aufgefundenen Kombination aus Anfangs- und Enddienst entspricht; d) einer der Lösungspfade ausgewählt wird und die Interaktionsaufgabe entlang des ausgewählten Lösungspfads durchgeführt wird.

Description

Beschreibung
Verfahren zur dynamischen Dienstekonfiguration eines technischen Systems
Die Erfindung betrifft ein Verfahren zur dynamischen Dienstekonfiguration eines technischen Systems, welches eine Vielzahl von Diensten mit jeweils einer oder mehreren Schnittstellen umfasst, wobei zwei Dienste in dem technischen System dann kompatibel sind, wenn eine direkte Interaktion des einen Dienstes mit dem anderen Dienst über kompatible Schnittstellen der Dienste durchführbar ist.
Heutzutage werden viele technische Lösungen, z. B. im Bereich der Heim- und/oder Gebäude-Automation, nicht durch ein einzelnes technisches Gerät, sondern durch eine Vielzahl von unterschiedlichen technischen Geräten gelöst, welche sehr genau spezifizierte Aufgaben erfüllen. Die Geräte stellen hierbei einen oder mehrere sogenannte Dienste bereit, welche bestimm- te technische Aufgaben ausführen können. Unter Dienst wird deshalb hier und im folgenden eine Einheit eines technischen Geräts verstanden, welches für die Durchführung einer bestimmten technischen Aufgabe vorgesehen ist.
Zur Überwachung und Steuerung von technischen Systemen mit einer Vielzahl von Diensten bzw. zur Nutzung der Funktionen dieser Systeme ist es oft notwendig, dass sich ein externes technisches Gerät mit dem vorhandenen technischen System verbindet. Bei einer derartigen Verbindung müssen insbesondere die Verfügbarkeiten der einzelnen Ressourcen der Geräte im technischen System berücksichtigt werden. Solche Ressourcen sind beispielsweise durch das System vorgegebene Bandbreiten zur Datenübertragung oder die Rechen- bzw. Speicherkapazität von Informationen im System.
Aus dem Stand der Technik sind sogenannte Discovery-Techniken bekannt, mit denen ein neues, in einem technischen System zu integrierendes Gerät automatisiert die einzelnen Dienste des technischen Systems auffindet, beispielsweise über UPnP (= Universal Plug and Play) oder über Bluetooth. Hierbei werden zwar Informationen über die im System vorhandenen Geräte be- reit gestellt, jedoch kann anhand dieser Informationen nicht ermittelt werden, wie eine ressourceneffiziente Nutzung der einzelnen Geräte möglich ist.
Aus dem Stand der Technik sind ferner funktionale Beschrei- bungssprachen bekannt, mit denen die Funktionalitäten einzelner Dienste in einem Netz von Diensten beschrieben werden und gemäß den Funktionalitäten geeignete funktionale Pfade zwischen den Diensten festgelegt werden. Bei den bekannten funktionalen Beschreibungssprachen sind die verwendeten Dienste jedoch vorab festgelegt und es können keine Dienste dynamisch eingebunden werden.
Aufgabe der Erfindung ist es deshalb, ein Verfahren und entsprechende Vorrichtungen zu schaffen, mit denen neue Dienste in einem technischen System dynamisch integriert werden können.
Diese Aufgabe wird durch die unabhängigen Patentansprüche gelöst. Weiterbildungen der Erfindung sind in den abhängigen Ansprüchen definiert.
In dem erfindungsgemäßen Verfahren wird eine funktionale Beschreibungssprache verwendet, wobei ggf. eine bereits aus dem Stand der Technik bekannte Beschreibungssprache eingesetzt werden kann. Mit Hilfe der Beschreibungssprache, welche eine Vielzahl von Funktionselementen umfasst, werden die vorhandenen und im System zu integrierenden Dienste und mögliche Interaktionen zwischen den Diensten durch ein oder mehrere Funktionselemente beschrieben. Das Funktionselement gibt hierbei eine Funktionalität des entsprechenden Dienstes oder der Interaktion wieder. Es können hierbei einem Dienst auch mehrere Funktionselemente zugeordnet sein, sofern der Dienst mehrere Funktionen übernehmen kann. Ebenso können einer Interaktion mehrere Funktionselemente zugeordnet sein, sofern sich mit der Interaktion verschiedene Funktionen bewerkstelligen lassen.
Mit dem erfindungsgemäßen Verfahren werden folgende Schritte durchgeführt :
Schritt a) : Für eine in dem technischen System durchzuführende Interaktionsaufgabe zwischen einem oder mehreren neuen, im technischen System zu integrierenden Anfangsdiensten und einem oder mehreren Enddiensten des technischen Systems wird eine funktionale Aufgabenbeschreibung in der funktionalen Beschreibungs- spräche direkt eingegeben oder über eine Schnittstelle, welche beispielsweise mit einem Benutzer kommuniziert, erzeugt. Durch die funktionale Aufgabenbeschreibung werden den Anfangs- und Enddiensten und deren Interaktionen entsprechende Funktionselemente vorgegeben. Die Begriffe Anfangs- bzw. End- dienst sind allgemein zu verstehen und können für jeden beliebigen, zu integrierenden bzw. bereits vorhandenen technischen Dienst im technischen System stehen. Durch die Wortwahl "Anfang" bzw. "Ende" soll lediglich zum Ausdruck gebracht werden, dass im erfindungsgemäßen Verfahren nach einer An- fang-zu-Ende-Beziehung zwischen zwei technischen Diensten gesucht wird.
Schritt b) :
Anhand der funktionalen Aufgabenbeschreibung und der den Diensten und Interaktionen zugeordneten Funktionselemente werden Kombinationen aus Anfangs- und Enddienst ermittelt, welche die in dem technischen System durchzuführende Interaktionsaufgabe lösen.
Schritt c) :
Falls in Schritt b) Kombinationen aus Anfangs- und Enddienst gefunden wurden, wird für wenigstens einen Teil der Anfangs- dienste der Kombinationen eine Suche nach kompatiblen Diensten durchgeführt, bei welcher der Anfangsdienst nach zu ihm kompatiblen Diensten sucht und die kompatiblen Dienste wiederum nach zu ihnen kompatiblen Diensten suchen, wodurch Pfa- de von aufeinanderfolgenden kompatiblen Diensten erzeugt werden, wobei ein Pfad als Lösungspfad der Interaktionsaufgabe bestimmt wird, wenn der Anfangsdienst des Pfades und der gefundene kompatible Enddienst einer in Schritt b) aufgefundenen Kombination aus Anfangs- und Enddienst entspricht. Auf diese Weise werden eine Vielzahl von möglichen Lösungspfaden für die gestellte Aufgabe erzeugt.
Schritt d) :
Falls im Schritt c) Lösungspfade gefunden wurden, wird einer der Lösungspfade ausgewählt und die Interaktionsaufgabe entlang des ausgewählten Lösungspfades durchgeführt.
Durch das erfindungsgemäße Verfahren wird somit nicht nur eine Lösung des Problems durch direkte Interaktion zwischen zwei Diensten gefunden, sondern es werden auch Lösungen ermittelt, die das Problem durch Zwischenschaltung von mehreren Diensten lösen. Es kann dann nach vorbestimmten Kriterien, insbesondere nach der Verfügbarkeit der Ressourcen der einzelnen Dienste, ein geeigneter Lösungspfad für das Problem verwendet werden.
In einer Variante des erfindungsgemäßen Verfahrens wird vor der Durchführung des Schritts c) in einem Zwischenschritt ü- berprüft, ob die im Schritt b) ermittelten Kombinationen aus Anfangs- und Enddienst miteinander kompatible Dienste umfassen. Sollte dies der Fall sein, werden diese Kombinationen von miteinander kompatiblen Diensten vorab jeweils als ein Lösungspfad definiert, der bei der späteren Auswahl von geeigneten Lösungspfaden berücksichtigt werden kann. Ggf. kann sofort die Auswahl gemäß Schritt d) durchgeführt werden, ohne dass noch nach weiteren möglichen Lösungspfaden gesucht wird. In einer besonders bevorzugten Variante des erfindungsgemäßen Verfahrens ermitteln die neuen, im technischen System zu integrierenden Anfangsdienste mit Hilfe eines Suchverfahrens die bereits im technischen System vorhandenen Dienste. Es werden hierbei aus dem Stand der Technik bekannte Suchverfahren, wie z. B. UPnP oder Bluetooth, verwendet.
Vorzugsweise sind die im technischen System vorhandenen Dienste und die diesen Diensten zugeordneten Funktionselemen- te in einem Speicher hinterlegt, und die Suche gemäß Schritt c) wird in dem Speicher durchgeführt. Hierdurch kann die Suche nach Lösungspfaden beschleunigt werden, da nicht mehr das gesamte technische System nach vorhandenen Diensten durchsucht werden muss.
In einer weiteren Variante des erfindungsgemäßen Verfahrens wird die Suche nach Lösungspfaden in Schritt c) so lange durchgeführt, bis eine vorbestimmte Anzahl von Lösungspfaden gefunden wurde oder bis wenigstens ein Abbruchkriterium er- füllt ist. Hierdurch wird die Komplexität der Suche auf ein vorbestimmtes Maß begrenzt. Das Abbruchkriterium ist hierbei vorzugsweise ein Timeout, d. h. ein vorbestimmtes maximales Zeitintervall, das für die Suche festgelegt ist. Das Timeout kann vorzugsweise dynamisch verändert werden.
Zur Durchführung der in Schritt c) definierten Suche werden in einer Variante des erfindungsgemäßen Verfahrens Nachrichten zwischen den Diensten versendet, welche den Anfangsdienst des Pfades und ein oder mehrere gemäß der funktionalen Aufga- benbeschreibung vorgegebene Funktionselemente des Enddienstes enthalten. Vorzugsweise wird hierbei einer Nachricht die I- dentität des Dienstes, der die Nachricht erhält, hinzugefügt, sofern diesem Dienst nicht ein gemäß der funktionalen Aufgabenbeschreibung vorgegebenes Funktionselement zugeordnet ist. Die so erzeugte Nachricht wird anschließend wiederum an kompatible Dienste weitergeleitet. Sollte jedoch dem Dienst, der die Nachricht erhält, ein gemäß der funktionalen Aufgabenbe- Schreibung vorgegebenes Funktionselement zugeordnet sein, meldet dieser Dienst seine Identität an den Anfangsdienst zurück. Hierdurch werden die möglichen Lösungspfade dem Anfangsdienst bekannt gemacht.
In einer besonders bevorzugten Variante des erfindungsgemäßen Verfahrens werden bei der Suche in Schritt c) und/oder bei der Auswahl in Schritt d) vorgegebene Beschränkungen, insbesondere hinsichtlich der physikalischen Ressourcen der Diens- te, berücksichtigt. Die Beschränkungen können hierbei globale, im gesamten technischen System gültige Beschränkungen umfassen, welche insbesondere erwünschte Eigenschaften der in dem technischen System durchzuführenden Interaktionsaufgabe beschreiben. Die Beschränkungen können jedoch auch lokale, nur in einer Gruppe von Diensten gültige Beschränkungen umfassen, welche insbesondere die Verfügbarkeit der physikalischen Ressourcen in der Gruppe von Diensten betreffen. Durch die Berücksichtigung derartiger Beschränkungen können die Lösungspfade dynamisch unter Berücksichtigung des momentanen Zustands des technischen Systems aufgefunden werden. Auf diese Weise wird automatisiert die Einbindung eines neuen Gerätes in Abhängigkeit von den verfügbaren Ressourcen des technischen Systems ermöglicht.
Das erfindungsgemäße Verfahren wird vorzugsweise in einem technischen System durchgeführt, das ein Netzwerk aus einer Vielzahl von technischen Geräten umfasst, wobei in jedem Gerät ein oder mehrere Dienste des technischen Systems beinhaltet sind. Insbesondere sind hierbei die im technischen System zu integrierenden Anfangsdienste in einem einzelnen, in dem technischen System zu integrierenden Gerät, insbesondere in einem mobilen Gerät, wie z. B. einem Mobilfunkgerät, einem Laptop oder einem PDA, beinhaltet. Das Netzwerk kann beispielsweise ein Heim- und/oder Gebäude-Automations-System um- fassen, welches Benutzern ermöglicht, sich von außen in das System einzuloggen und Vorgänge in dem System, wie z. B. die Steuerung der Heizungsanlage oder die Steuerung von Geräten der Unterhaltungselektronik, vorzunehmen.
Neben dem soeben beschriebenen Verfahren betrifft die Erfin- düng ferner ein technisches System umfassend eine Vielzahl von Diensten, wobei das technische System derart ausgestaltet ist, dass in dem technischen System das erfindungsgemäße Verfahren durchführbar ist.
Die Erfindung betrifft ferner ein technisches Gerät umfassend einen oder mehrere Dienste zur Durchführung des erfindungsgemäßen Verfahrens, mit:
- einem Mittel zur Eingabe und/oder Erzeugung einer funktionalen Aufgabenbeschreibung für eine in dem techni- sehen System durchzuführende Interaktionsaufgabe zwischen im technischen System zu integrierenden Anfangsdiensten des technischen Geräts und einem oder mehreren, im technischen System bereits vorhandenen Enddiensten gemäß Schritt a) des erfindungsgemäßen Verfahrens; - einem Mittel zum Ermitteln von Kombinationen aus Anfangs- und Enddienst, welche die in dem technischen System durchzuführende Interaktionsaufgabe lösen, gemäß Schritt b) des erfindungsgemäßen Verfahrens; einem Mittel zur Initialisierung der Suche von Lösungs- pfaden gemäß Schritt c) des erfindungsgemäßen Verfahrens;
- einem Mittel zur Auswahl von Lösungspfaden gemäß Schritt d) des erfindungsgemäßen Verfahrens .
Das technisches Gerät kann vorzugsweise auch als eine bereits im technischen System integrierte Komponente mit einer Gruppe von Diensten fungieren, wobei das Gerät hierzu Mittel um- fasst, um Nachrichten von anderen Geräten zu verarbeiten, die während der Suche nach Lösungspfaden empfangen werden.
Die Erfindung betrifft darüber hinaus ein Computerprogrammprodukt mit einem auf einem maschinenlesbaren Träger gespei- cherten Programmcode zur Ausführung des erfindungsgemäßen Verfahrens, wenn das Programm auf einem Rechner abläuft.
Ausführungsbeispiele der Erfindung werden nachfolgend detail- liert anhand der beigefügten Figuren beschrieben.
Es zeigen:
Figur 1 eine schematische Darstellung des Ablaufs einer Ausführungsform des erfindungsgemäßen Verfahrens;
Figur 2 ein Beispiel eines Anwendungsfalls des erfindungsgemäßen Verfahrens in einem Gebäude-Automations- System;
Figur 3 den schematischen Aufbau eines technischen Geräts, das gemäß dem erfindungsgemäßen Verfahren in ein technisches System integriert werden kann.
In dem in Figur 1 gezeigten technischen System 1 soll ein neues technisches Gerät 2 umfassend die Anfangsdienste Al und A2 in dem technischen System 1 integriert werden. Das technische System 1 stellt hierbei ein Netzwerk aus einer Vielzahl von Diensten El, E2, E3, E4, E5, E6 und E7 dar. Das techni- sehe Gerät 2 verfügt über einen sogenannten Discovery- Mechanismus, mit dem Informationen über die verfügbaren Dienste im technischen System 1 bereit gestellt werden. Der Discovery-Mechanismus kann beispielsweise ein UPnP- Mechanismus oder ein auf Bluetooth basierender Mechanismus sein. Ein solcher Discovery-Mechanismus ist hinlänglich aus dem Stand der Technik bekannt, so dass auf dessen detaillierte Beschreibung an dieser Stelle verzichtet wird. In der hier beschriebenen Ausführungsform wird zunächst von dem Gerät 2 dieser Discovery-Mechanismus initialisiert, so dass dem tech- nischen Gerät 2 alle in dem System 1 vorhandenen Dienste bekannt werden. Die einzelnen Dienste von sowohl dem Gerät 2 als auch dem System 1 verfügen ferner über Mittel zur Prüfung der Kompatibilität der Schnittstellen zwischen den unterschiedlichen Diensten, beispielsweise in der Form einer Interface-Matcher- Komponente, die ebenfalls hinlänglich aus dem Stand der Technik bekannt ist. Darüber hinaus wird der Funktionsumfang von jedem einzelnen Dienst im Gerät 2 und im System 1 sowie der möglichen Interaktionen des jeweiligen Dienstes mit anderen Diensten in einer funktionalen Beschreibungssprache beschrie- ben, wobei diese Beschreibungssprache eine Vielzahl von Funktionselementen umfasst, die jeweils die Funktionalität eines Dienstes oder einer Interaktion wiedergeben.
Um das neue Gerät 2 in dem technischen System 1 zu integrie- ren, wird zunächst eine Aufgabe vorgegeben, welche mit Hilfe der Funktionselemente der funktionalen Beschreibungssprache wiedergegeben wird. Die Beschreibungssprache umfasst hierbei sogenannte Functional Nodes, welche jeweils für eine Funktionalität eines Dienstes stehen, sowie Interaktionstoken, wel- che jeweils für die Funktionalität einer Interaktion stehen. Beispielsweise kann auf dem technischen Gerät 2 ein Video bereit gestellt sein und die Aufgabe kann darin bestehen, dieses Video auf einem Display anzuzeigen. Das technische Gerät 2 umfasst somit den Dienst <VIDEO>, der mit einem Dienst <DISPLAY> über einen Interaktionstoken <link> verbunden werden soll. Die in dem technischen System durchzuführende Aufgabe lautet deshalb:
<VIDEO> <link> <DISPLAY>
Im Regelfall wird der unspezifizierte Interaktionstoken <link> zur eindeutigen Lösung der gestellten Aufgabe noch näher spezifiziert, was durch den Aufgabensteller selbst erfolgen kann. Alternativ kann das technische Gerät 2 mögliche Al- ternativen zur genaueren Festlegung des Interaktionstokens und ggf. auch der Functional Nodes bereitstellen. In dem soeben genannten Beispiel ergibt sich zur näheren Definition des unspezifizierten Interaktionstokens <link> nur der Inte- raktionstoken <show>, da der Functional Node <DISPLAY> nur zur Anzeige von Videos verwendet werden kann. Würde der Functional Node <DISPLAY> durch den Functional Node <TERMINAL> ersetzt werden, gäbe es für das Interaktionstoken <link> weitere Möglichkeiten, da ein <TERMINAL> auch die Interaktion der Aufzeichnung des Videos in der Form des Interaktionstokens <record> durchführen kann. Der Aufgabensteller könnte in diesem Fall beispielsweise folgende spezifische Aufgabe for- mulieren:
<VIDEO> <link-show> <TERMINAL>
Mit dieser Aufgabe wird festgelegt, dass die Anzeige eines Videos auf einem Terminal erwünscht ist.
Ein weiteres Beispiel einer funktionalen Beschreibung einer Aufgabe ist eine Videowiedergabe auf einem externen Bluetooth-Terminal. Eine solche Aufgabe könnte wie folgt ausse- hen:
<VIDEO-my-video-MPEG> <link-show> <NETWORK-Bluetooth> <TERMINAL-large>
Derartige Beschreibungen werden automatisch in dem Gerät 2 generiert, wobei die der Beschreibung zugrunde liegende Aufgabe beispielsweise über eine graphische Benutzeroberfläche von einem Bediener des Geräts 2 eingegeben werden kann. Es ist jedoch auch denkbar, dass derartige Beschreibungen auto- matisch bei einem Kontakt des Geräts 2 mit dem technischen System 1 erzeugt werden.
Auf der Basis der im Gerät 2 hinterlegten funktionalen Aufgabenbeschreibung wird dann in einem ersten Schritt ermittelt, welche Dienste im technischen System 1 die Aufgabe gemäß der funktionalen Aufgabenbeschreibung erfüllen. In dem in Figur 1 gezeigten Szenario erfüllt die Kombination des Anfangsdiens- tes Al mit jedem Dienst El, E2 und E3 sowie die Kombination des Anfangsdienstes A2 mit jedem Dienst El, E2 und E3 die vorbestimmte Aufgabe. In einem nächsten Schritt wird ein sogenannter Interface-Kompatibilitäts-Check durchgeführt, bei dem überprüft wird, inwieweit die Schnittstellen der Anfangsdienste Al bzw. A2 mit den Schnittstellen der Enddienste El bzw. E2 bzw. E3 kompatibel sind, wobei Kompatibilität bedeutet, dass eine direkte Interaktion zwischen den Diensten ohne Zwischenschaltung weiterer Dienste über die Schnittstellen der Dienste möglich ist. In dem in Figur 1 gezeigten Fall ergibt sich, dass nur der Dienst Al mit dem Dienst El kompatibel ist. Diese Kompatibilität wird durch die Linie Ll zwischen den Diensten Al und El angedeutet. Gegebenenfalls kann das Verfahren nun beendet werden, da zwei kompatible Dienste gefunden wurden, welche die gestellte Aufgabe lösen, so dass die Aufgabe über diese Dienste durchgeführt werden kann.
Wie nachfolgend beschrieben, können jedoch auch noch weitere, sich über mehrere Dienste fortsetzende Pfade zur Lösung der gestellten Aufgabe gesucht werden. Dies wird durch eine sogenannte Resource-Tree-Generation bewerkstelligt, bei der zunächst für jeden Anfangsdienst Al und A2 nach zu dem Anfangsdienst kompatiblen Diensten gesucht wird. Hierzu wird eine Nachricht in der Form eines Lookup-Requests von dem Anfangs- dienst Al bzw. A2 ausgesendet, wobei die Nachricht die Information über die gemäß der gestellten Aufgabe gesuchten Func- tional Nodes und diverse Beschränkungen enthält. Diese Beschränkungen können beispielsweise lokale Beschränkungen hinsichtlich der Verfügbarkeit und Funktionalität der Ressourcen der Dienste Al bzw. A2 sein. Zum Beispiel kann die Beschränkung darin bestehen, dass Daten von einem Anfangsdienst nur in einem bestimmten Format bereit gestellt werden können. Der Lookup-Request enthält ferner eine Liste, in der zunächst nur die Identifikation des Dienstes, der die Nachricht versendet, gespeichert ist. Der kompatible Dienst, der den Lookup- Request empfängt, überprüft, ob ihm ein gemäß der Aufgabenstellung gesuchter Functional Node zugeordnet ist. Ist dies nicht der Fall, fügt er seine eigene Identifikation der Liste im Lookup-Request hinzu und gibt den Lookup-Request an zu ihm kompatible Dienste in seiner Umgebung weiter. Diese Dienste überprüfen dann ebenfalls wieder, ob sie den gemäß der ge- stellten Aufgabe zu suchenden Functional Node enthalten. Wenn dies wiederum nicht der Fall ist, werden dem Lookup-Request wiederum die Identifikationen der jeweiligen Dienste zugefügt, und der Request wird an weitere, zu dem jeweiligen Dienst kompatible Dienste weitergesendet. Auf diese Weise wird ein sogenannter Resource-Tree mit einer Vielzahl von Pfaden in allen Richtungen erzeugt.
Die Suche in einem jeweiligen Pfad wird auf jeden Fall dann beendet, wenn der Dienst, der den Lookup-Request empfängt, den gemäß der gestellten Aufgabe gesuchten Functional Node enthält. Der auf diese Weise erzeugte Suchpfad wird dann als Lösungspfad der gestellten Aufgabe definiert, wobei von dem Dienst, der den gesuchten Functional Node enthält, eine Rückmeldung an den ursprünglichen Anfangsdienst gegeben wird. Ei- ne Suche nach kompatiblen Diensten in einem Pfad wird auch dann beendet, wenn zu einem Dienst keine kompatiblen Dienste gefunden werden können. In diesem Fall gilt die Suche in diesem Pfad als gescheitert. Die Suche nach Lösungspfaden ist ferner zeitlich durch einen Timeout befristet, wobei der Ti- meout kontextsensitiv ist, d. h. er kann durch externe Signale beeinflusst bzw. gesteuert werden.
In Figur 1 ist schematisch durch mit Pfeilen behaftete Quadrate das Versenden der Lookup-Requests an kompatible Dienste angedeutet. Es ergibt sich, dass neben der direkten Verbindung Ll weitere Pfade zur Lösung der gestellten Aufgabe über die Linien L2 und L3 bzw. L2 und L4 sowie über die Linien L5, L6 und L7 existieren. Ferner ist beispielhaft durch die gestrichelte Linie L8 eine Verbindung zwischen dem Anfangs- dienst Al und dem Dienst E4 angedeutet, welche keinen Lösungspfad darstellt, da die beiden Dienste entweder nicht miteinander kompatibel sind oder vorgegebene Beschränkungen, die mit dem Lookup-Request mitgeschickt werden, nicht erfüllt sind. Wie bereits erwähnt wurde, werden diese Beschränkungen bei der Erzeugung der Lösungspfade berücksichtigt, wobei bei der Generierung der Pfade von jedem beteiligten Dienst über- prüft wird, ob er die durch die Beschränkungen vorgegebenen Ressourcen-Anforderungen erfüllt. Sind diese Anforderungen nicht erfüllbar, wird dieser Pfad während der Suche unterdrückt, auch wenn die Dienste als zueinander kompatibel eingestuft sind. Es wird auf diese Weise bereits bei der Erzeu- gung der Lösungspfade eine Vorauswahl von möglichen Lösungspfaden getroffen.
Nach der Erzeugung der Lösungspfade wird schließlich eine Auswahl getroffen, welcher der Lösungspfade zur Durchführung der gestellten Aufgabe verwendet werden soll. Hierbei können lokale Beschränkungen und globale Beschränkungen berücksichtigt werden. Bei lokalen Beschränkungen handelt es sich um Beschränkungen, die nur lokal, d. h. für eine vorgegebene Gruppe von Diensten, beispielsweise nur für die Dienste Al und A2 des technischen Geräts 2, gültig sind. Ein Beispiel einer solchen lokalen Beschränkung ist eine maximale Bandbreite, mit der Daten von einem Dienst übertragen werden können. Demgegenüber gelten globale Beschränkungen in dem gesamten technischen System 1 und dem zu integrierenden Gerät 2. Diese Beschränkungen werden von allen Teilnehmern im technischen System ausgesendet und sollen zur allgemeinen Konfliktlösung dienen. Typische globale Beschränkungen beschreiben insbesondere spezielle erwünschte Eigenschaften der auszuführenden Aufgabe. Solche Beschränkungen können z. B. sein:
die Aufgabe soll so schnell wie möglich ausgeführt werden; die Aufgabe soll so energiesparend wie möglich ausgeführt werden; - die Aufgabe soll so kostengünstig wie möglich ausgeführt werden; die Aufgabe soll nur mit vertrauenswürdigen Diensten ausgeführt werden; die Aufgabe soll nur mit Diensten ausgeführt werden, welche einen bestimmten Sicherheitsstandard aufweisen; - die Aufgabe soll derart ausgeführt werden, dass weiterhin eine hohe Verfügbarkeit der Ressourcen der Dienste bereitgestellt ist.
Gegebenenfalls können auch konkurrierende globale und lokale Beschränkungen vorliegen, wobei die lokalen Beschränkungen durch die globalen Beschränkungen überstimmt werden.
Die Auswahl der Lösungspfade ist in der hier beschriebenen Ausführungsform des Verfahrens somit mehrstufig. In einem ersten Schritt werden Beschränkungen bereits bei der Suche nach Lösungspfaden berücksichtigt, wobei die Beschränkungen klare Go/No go-Entscheidungen beinhalten, wonach festgelegt wird, in welche Richtung sich Lösungspfade verzweigen können. Nach der Bestimmung der Lösungspfade wird dann einer dieser Pfade wiederum durch Beschränkungen ausgewählt, wobei bei der Auswahl vorzugsweise dynamische Beschränkungen berücksichtigt werden, welche den lokalen Zustand, z. B. den Energievorrat eines Dienstes oder die Auslastung eines Dienstes, einbeziehen. Es werden dann sogenannte Go/Conditional-go- Entscheidungen in den Diensten der Lösungspfade erzeugt, wobei die Go/Conditional-go-Entscheidungen die Fortpflanzung eines Lösungspfads von einem Dienst zum nächsten entweder ohne Beschränkung zulassen oder unter eine Bedingung betreffend den lokalen Zustand des betrachteten Dienstes stellen. Ein Kriterium bei der Auswahl des Lösungspfads kann z. B. sein, dass nur Lösungspfade mit eindeutigen Go-Entscheidungen betrachtet werden und hieraus entsprechend der globalen Beschränkungen ein Lösungspfad ausgewählt wird.
Eine Optimierungsmöglichkeit des soeben beschriebenen Verfahrens besteht in der Verwendung eines sogenannten Functionali- ty-Proxy-Dienstes . Diesem Dienst ist die gesamte Funktionali- tät der Dienste des technischen Systems bekannt. Der Functio- nality-Proxy-Dienstln speichert hierzu die Informationen der den Diensten zugeordneten Functional Nodes in einem lokalen Speicher ab. Die Suche nach Lösungspfaden erfolgt dann auf der Basis der Informationen im lokalen Speicher. Es kann somit auf einen Discovery-Mechanismus eines neu zu integrierenden Dienstes verzichtet werden, da dem neuen Dienst die entsprechenden Informationen über den Functionality-Proxy-Dienst bereit gestellt werden. Die soeben beschriebene Optimierungs- möglichkeit kommt insbesondere bei technischen Netzwerken im Haus- und/oder Gebäude-Automations-Bereich in Betracht, da es dort oft quasi-stationäre Zustände von bestimmten Netzwerkpartnern gibt, die sich über sehr lange Zeit hinweg nicht verändern (z. B. die Integration eines Flachbildschirms). Neu hinzukommende Gerätegruppen können somit auf diese stationären Zustände direkt über den Functionality-Proxy-Dienst zugreifen .
Nachfolgend wird in Bezug auf Figur 2 ein spezielles Ausfüh- rungsbeispiel des erfindungsgemäßen Verfahrens im Bereich der Fernsteuerung von technischen Geräten in der Haus- Automations-Technik beschrieben. Gemäß Figur 2 wird folgendes Szenario betrachtet:
- es ist ein Heim-Automations-System 3 mit einer Vielzahl von technischen Geräten vorhanden;
- ein in das Heim-Automations-System zu integrierendes Gerät 4, wie z. B. ein PDA (PDA = Personal Digital Assistant) , soll dynamisch in das System 3 eingebunden werden.
Das Gerät 4 soll das Heizungssystem 5 innerhalb des Heim- Automations-Systems 3 steuern, wie in Figur 2 durch den gestrichelten Pfeil Pl angedeutet ist. Das Heim-Automations- System ist hierbei physikalisch nur über einen Gateway 6 zugänglich, der über einen Automationsbus 7 mit dem Heizungssystem 5 und einem Heizungssteuersystem 8 verbunden ist. Die Aufgabe lässt sich in einer funktionalen Beschreibungssprache wie folgt wiedergeben:
<PDA> <link> <Heizungssytem>
Es wird nun zunächst von dem PDA 4 ein Discovery-Mechanismus initialisiert, um in dem System 3 vorhandene Geräte aufzufinden. Anschließend wird mit Hilfe der funktionalen Beschreibung der Aufgabe nach entsprechenden Lösungen gesucht. Es werden hierbei auch die möglichen Ausprägungen des Interakti- onstokens <link> berücksichtigt. Insbesondere werden Verbindungen zur Steuerung der Heizung (Interaktionstoken <Steuere Heizung>) und Verbindungen zur Anzeige der Heizungseinstellungen (Interaktionstoken <Zeige Heizungseinstellungen>) be- rücksichtigt.
In dem beschriebenen Szenario ergibt sich nach Durchführung des erfindungsgemäßen Verfahrens zur Suche nach Lösungspfaden, dass für den PDA 4 das Heizungssystem 5 nicht direkt nutzbar ist, da keine kompatiblen Schnittstellen vorhanden sind. Eine Nutzung kommt nur unter Zwischenschaltung des Heizungssteuersystems 8 in Betracht, welches sowohl mit dem Heizungssystem 5 als auch mit dem PDA 4 kompatibel ist. Hierbei wurden auch dynamisch die Verfügbarkeit der Ressourcen des Heizungssystems 5 und des Heizungssteuersystems 8 berücksichtigt. Der gefundene logische Lösungspfad besteht somit aus den in Figur 2 gezeigten Pfeilen P2 und P3, wobei physikalisch die Verbindung der Geräte immer unter Zwischenschaltung des Gateways 6 erfolgt.
Ein weiteres Beispiel zur Anwendung des erfindungsgemäßen Verfahrens ist die Übertragung von Wartungsdaten eines technischen Geräts auf ein video-Darstellungsgerät in der Form eines Videostroms. Initiator dieser Aufgabenstellung ist ein Gerät A, das ein Wartungsdaten-Provider ist. Die Aufgabe lässt sich in einer funktionalen Beschreibungssprache wie folgt formulieren: <Wartungsdaten-Provider> <Wartungsdatenanzeige> <Videotermi- nal>.
Das Gerät A ermittelt, vorzugsweise unter Zwischenschaltung des oben beschriebenen Functionality-Proxy-Dienstes, mögliche Lösungspfade. Es ergibt sich, das ein Gerät B die Wartungsdaten darstellen kann, jedoch nicht direkt durch das Gerät A, sondern über die Zwischenschaltung eines Wartungssupportgerä- tes, das die Daten von Geräten im System visualisieren kann. Bei der Suche nach geeigneten Lösungspfaden wurden insbesondere auch die technischen Ressourcen des Supportgerätes, insbesondere die Bandbreite, das Codierverfahren und die mögliche Bildauflösung des Gerätes berücksichtigt. Ferner wurden lokale Beschränkungen des Gerätes B ebenfalls in die Suche mit einbezogen, insbesondere die minimale Auflösung des Gerätes, die Sichtbarkeit (Einzelnutzer, Raum, Gruppe etc.) und die momentane Verfügbarkeit. Diese Beschränkungen verfeinern somit das Funktionselement <Videoterminal> der funktionalen Beschreibung der Aufgabe.
Wie sich aus der vorangegangenen Beschreibung von Ausführungsformen ergibt, weist das erfindungsgemäße Verfahren eine Reihe von Vorteilen auf. Insbesondere ermöglicht es durch die automatisierte, die verfügbaren Ressourcen berücksichtigende Erzeugung von Lösungspfaden die automatische dynamische Anbindung von neuen Geräten, ohne dass eine manuelle Konfiguration durchgeführt werden muss. Der notwendige Konfigurationsaufwand beschränkt sich auf die Auswahl von geeigneten Lö- sungspfaden. Entscheidend ist hierbei, dass durch die Berücksichtigung von lokalen und globalen Beschränkungen bei der Zusammenarbeit zwischen den Geräten eine ressourceneffiziente Einbindung von neuen Geräten erfolgen kann. Durch das erfindungsgemäße Verfahren kann ein System somit flexibel für neue, nicht vorhergesehene Nutzungsmöglichkeiten eingesetzt werden, da automatisiert nach neuen Kooperationsmöglichkeiten gesucht wird, wenn nicht direkt kompatible Geräte zusammenar- beiten sollen. Ferner ist es möglich, dass dynamisch auf sich verändernde Bedingungen im technischen System reagiert wird, beispielsweise auf den Wegfall von aktuell verwendeten Geräten.
Figur 3 zeigt schematisiert den Aufbau eines technischen Geräts zur Einbindung in ein technisches System gemäß dem erfindungsgemäßen Verfahren bzw. zur Verwendung als bereits vorhandene Komponente im technischen System. Die in Figur 3 gezeigten Verbindungslinien zwischen den einzelnen Komponenten sind hierbei lediglich schematisiert und beispielhaft, und es können auch noch andere bzw. zusätzliche Verbindungen zwischen den Komponenten vorliegen.
Das Gerät umfasst einen Steuerdienst 9 zur Steuerung der dynamischen Erzeugung von Lösungspfaden. In den Steuerdienst 9 können durch den Benutzer Beschränkungen UP (UP = User PoIi- cy) eingegeben werden. Ferner können über den Dienst sogenannte Kontext-Informationen CI berücksichtigt werden, welche Beschränkungen im Hinblick auf die Umgebung betreffen, in der das Gerät eingesetzt wird. Darüber hinaus wird die zu lösende Aufgabe in der Form einer funktionalen Aufgabenbeschreibung FTD (FTD = Functional Task Description) einem entsprechenden Interpreter 10 zugeführt.
Die Ermittlung von Kombinationen aus Anfangs- und Enddienst, welche die gestellte Aufgabe lösen, sowie die Suche nach geeigneten Lösungspfaden wird in dem Gerät in dem Resource- Tree-Generator 11 durchgeführt, der die Suchanfrage nach kom- patiblen Diensten stellt, wobei die Suchanfrage die geforderten Functional Nodes entsprechend der Aufgabenstellung enthält. Der Generator 11 ist ferner wiederum mit einem Discovery-Dienst 12 verbunden ist, über den zunächst herausgefunden wird, welche Geräte in dem technischen System vorhanden sind, in das sich das neue Gerät einbinden möchte. Der Discovery- Dienst 12 steht hierbei mit einer entsprechenden Netzwerkschnittstelle 13 in Verbindung, über welche die Informationen zwischen dem neuen Gerät und den Geräten in dem technischen System übertragen werden.
Das Gerät der Figur 3 verfügt ferner über einen Cache 14, in dem die von dem Resource-Tree-Generator 11 ermittelten Lösungspfade gespeichert werden. Die Auswahl des Lösungspfades erfolgt dann über die Auswahleinheit 15, welche lokale, in einem Speicher 16 gespeicherte Beschränkungen und globale, in einem Speicher 17 gespeicherte Beschränkungen sowie ggf. auch vorhandene Kontext-Informationen CI und Benutzer- Beschränkungen UP berücksichtigt. Darüber hinaus werden bei der Suche nach Pfaden in dem Resource-Tree-Generator 11 bereits vorab Beschränkungen im Hinblick auf die bereitgestellten Ressourcen der einzelnen Geräte berücksichtigt. Diese Be- schränkungen sind in einem Speicher 18 gespeichert und werden über die Auswahleinheit dem Resource-Tree-Generator 11 zugeführt.
Das Gerät der Figur 3 verfügt ferner über eine Verwaltungs- einheit 19, welche ein sogenanntes Lease-Management durchführt, gemäß dem festgelegt wird, in welchen Zeitintervallen bestimmte Dienste zur Verfügung gestellt werden. Ferner bearbeitet die Verwaltungseinheit Lookup-Requests von anderen Geräten und leitet diese ggf. zu dem Resource-Tree-Generator weiter, der daraufhin die Suche nach Lösungspfaden initialisiert. Das Gerät der Figur 3 umfasst ferner noch einen Lokalspeicher 20, in dem die Information der lokal im Gerät verfügbaren Dienste abgelegt ist.

Claims

Patentansprüche
1. Verfahren zur dynamischen Dienstekonfiguration eines technischen Systems (1) umfassend eine Vielzahl von Diensten (Al, A2 , El, ..., E7) mit jeweils einer oder mehreren Schnittstellen, wobei zwei Dienste in dem technischen System (1) dann kompatibel sind, wenn eine direkte Interaktion des einen Dienstes mit dem anderen Dienst über kompatible Schnittstellen der Dienste durchführbar ist, und wobei im technischen System vorhandenen und im technischen System zu integrierenden Diensten und möglichen Interaktionen zwischen den Diensten jeweils ein oder mehrere Funktionselemente einer funktionalen Beschreibungssprache zugeordnet sind, wobei jedes Funktionselement eine Funktionalität eines Dienstes oder eine In- teraktion zwischen zwei Diensten repräsentiert, bei dem: a) für eine in dem technischen System durchzuführende Interaktionsaufgabe zwischen einem oder mehreren neuen, im technischen System zu integrierenden Anfangsdiensten (Al, A2 ) und einem oder mehreren, bereits im technischen Sys- tem (1) vorhandenen Enddiensten (El, ..., E7) eine funktionale Aufgabenbeschreibung in der funktionalen Beschreibungssprache eingegeben und/oder erzeugt wird, wobei durch die funktionale Aufgabenbeschreibung den Anfangs- und Enddiensten und deren Interaktionen Funktions- elemente vorgegeben werden; b) anhand der funktionalen Aufgabenbeschreibung und der den Diensten und Interaktionen zugeordneten Funktionselemente Kombinationen aus Anfangs- und Enddienst ermittelt werden, welche die in dem technischen System (1) durchzufüh- rende Interaktionsaufgabe lösen; c) falls in Schritt b) Kombinationen aus Anfangs- und Enddienst gefunden wurden, für wenigstens einen Teil der Anfangsdienste (Al, A2 ) der Kombinationen aus Anfangs- und Enddienst eine Suche nach kompatiblen Diensten durchge- führt wird, bei welcher der Anfangsdienst (Al, A2) nach zu ihm kompatiblen Diensten sucht und die kompatiblen Dienste wiederum nach zu ihnen kompatiblen Diensten su- chen, wodurch Pfade von aufeinanderfolgenden kompatiblen Diensten erzeugt werden, wobei ein Pfad als Lösungspfad der Interaktionsaufgabe bestimmt wird, wenn der Anfangsdienst (Al, A2) des Pfades und der gefundene kompatible Enddienst (El, ..., E7) einer in Schritt b) aufgefundenen
Kombination aus Anfangs- und Enddienst entspricht; d) falls Lösungspfade in Schritt c) gefunden wurden, einer der Lösungspfade ausgewählt wird und die Interaktionsaufgabe entlang des ausgewählten Lösungspfads durchgeführt wird.
2. Verfahren nach Anspruch 1, bei dem vor der Durchführung des Schrittes c) in einem Zwischenschritt überprüft wird, ob die in Schritt b) ermittelten Kombinationen aus Anfangs- und Enddienst miteinander kompatible Dienste umfassen.
3. Verfahren nach Anspruch 2, bei dem im Falle, dass in dem Zwischenschritt eine oder mehrere Kombinationen von miteinander kompatiblen Dienste ermittelt werden, diese Kombinationen jeweils vorab als ein Lösungspfad definiert werden.
4. Verfahren nach Anspruch 3, bei dem im Falle, dass in dem Zwischenschritt eine oder mehrere Kombinationen von miteinander kompatiblen Diensten ermittelt werden, zu Schritt d) ü- bergegangen wird.
5. Verfahren nach einem der vorhergehenden Ansprüche, bei dem die neuen, im technischen System zu integrierenden Anfangsdienste (Al, A2 ) mit Hilfe eines Suchverfahrens die bereits im technischen System vorhandenen Dienste (El,..., E7) ermitteln.
6. Verfahren nach Anspruch 5, bei dem das Suchverfahren ein UPnP-Verfahren (UPnP = Universal Plug and Play) oder ein auf Bluetooth basierendes Suchverfahren ist.
7. Verfahren nach einem der vorhergehenden Ansprüche, bei dem die im technischen System (1) vorhandenen Dienste (El, ..., E7) und die diesen Diensten zugeordneten Funktionselemente in einem Speicher hinterlegt sind und die Suche gemäß Schritt c) in dem Speicher durchgeführt wird.
8. Verfahren nach einem der vorhergehenden Ansprüche, bei dem die Suche in Schritt c) so lange durchgeführt wird, bis eine vorbestimmte Anzahl von Lösungspfaden gefunden wurde und/oder bis wenigstens ein Abbruchkriterium erfüllt ist.
9. Verfahren nach Anspruch 8, bei dem das wenigstens eine Abbruchkriterium ein vorbestimmtes maximales Zeitintervall für die Suche nach Lösungspfaden ist.
10. Verfahren nach Anspruch 9, bei dem das maximale Zeitintervall veränderbar ist.
11. Verfahren nach einem der vorhergehenden Ansprüche, bei dem bei der Suche in Schritt c) Nachrichten zwischen den
Diensten versendet werden, welche den Anfangsdienst (Al, A2) des Pfades und ein oder mehrere gemäß der funktionalen Aufgabenbeschreibung vorgegebene Funktionselemente der Enddienste (El, ..., E7) enthalten.
12. Verfahren nach Anspruch 11, bei dem einer Nachricht die Identität des Dienstes, der die Nachricht erhält, hinzugefügt wird, sofern diesem Dienst nicht ein gemäß der funktionalen Aufgabenbeschreibung vorgegebenes Funktionselement zugeordnet ist, und die Nachricht anschließend an kompatible Dienste weitergeleitet wird.
13. Verfahren nach Anspruch 11 oder 12, bei dem im Falle, dass dem Dienst, der die Nachricht erhält, ein gemäß der funktionalen Aufgabenbeschreibung vorgegebenes Funktionselement zugeordnet ist, dieser Dienst seine Identität an den Anfangsdienst des Pfades rückmeldet.
14. Verfahren nach einem der vorhergehenden Ansprüche, bei dem bei der Suche in Schritt c) und/oder bei der Auswahl in Schritt d) vorgegebene Beschränkungen, insbesondere hinsicht- lieh der physikalischen Ressourcen der Dienste, berücksichtigt werden.
15. Verfahren nach Anspruch 14, bei dem die Beschränkungen globale, im gesamten technischen System (1) gültige Beschrän- kungen umfassen, welche insbesondere erwünschte Eigenschaften der im technischen System (1) durchzuführenden Interaktionsaufgabe beschreiben.
16. Verfahren nach Anspruch 14 oder 15, bei dem die Beschrän- kungen lokale, nur in einer Gruppe von Diensten gültige Beschränkungen umfassen, welche insbesondere die Verfügbarkeit von physikalischen Ressourcen in der Gruppe von Diensten betreffen.
17. Verfahren nach einem der vorhergehenden Ansprüche, bei dem das Verfahren in einem technischen System (1) durchgeführt wird, das ein Netzwerk aus einer Vielzahl von technischen Geräten umfasst, wobei in jedem Gerät ein oder mehrere Dienste des technischen Systems (1) beinhaltet sind.
18. Verfahren nach Anspruch 17, bei dem die im technischen System (1) zu integrierenden Anfangsdienste (Al, A2) in einem einzelnen, in dem technischen System (1) zu integrierenden Gerät (2), vorzugsweise in einem mobilen Gerät, beinhaltet sind.
19. Verfahren nach Anspruch 17 oder 18, bei dem das Netzwerk ein Heim- und/oder Gebäude-Automations-System umfasst.
20. Technisches System umfassend eine Vielzahl von Diensten (Al, A2, El,..., E7), wobei das technische System (1) derart ausgestaltet ist, dass ein Verfahren nach einem der vorhergehenden Ansprüche durchführbar ist.
21. Technisches Gerät, umfassend einen oder mehrere Dienste (Al, A2 , El, ..., E7) zur Durchführung eines Verfahrens nach einem der Ansprüche 1 bis 19, mit:
- einem Mittel (9) zur Eingabe und/oder Erzeugung einer funktionalen Aufgabenbeschreibung für eine in dem technischen System (1) durchzuführende Interaktionsaufgabe zwischen im technischen System (1) zu integrierenden Anfangsdiensten (Al, A2 ) des technischen Geräts und einem oder mehreren, im technischen System (1) bereits vorhandenen Enddiensten (El, ..., E7) gemäß Schritt a) des Anspruchs 1; - einem Mittel (11) zum Ermitteln von Kombinationen aus Anfangs- und Enddienst, welche die in dem technischen System (1) durchzuführende Interaktionsaufgabe lösen, gemäß Schritt b) des Anspruchs 1;
- einem Mittel (11) zur Initialisierung der Suche von Lö- sungspfaden gemäß Schritt c) des Anspruchs 1;
- einem Mittel (15) zur Auswahl von Lösungspfaden gemäß Schritt d) des Anspruchs 1.
22. Technisches Gerät nach Anspruch 21 zur Verwendung als ei- ne Gruppe von im technischen System (1) bereits vorhandenen
Diensten (El,..., E7), umfassend Mittel (19) zur Verarbeitung von Nachrichten gemäß einem der Ansprüche 11 bis 13.
23. Computerprogrammprodukt mit einem auf einem maschinenles- baren Träger gespeicherten Programmcode zur Ausführung des
Verfahrens nach einem der Ansprüche 1 bis 19, wenn das Programm auf einem Rechner abläuft.
PCT/EP2006/063923 2005-07-15 2006-07-05 Verfahren zur dynamischen dienstekonfiguration eines technischen systems WO2007009884A2 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US11/922,210 US20090132688A1 (en) 2005-07-15 2006-07-05 Method For the Dynamic Service Configuration of a Technical System

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE102005033231.5 2005-07-15
DE102005033231A DE102005033231A1 (de) 2005-07-15 2005-07-15 Verfahren zur dynamischen Dienstekonfiguration eines technischen Systems

Publications (2)

Publication Number Publication Date
WO2007009884A2 true WO2007009884A2 (de) 2007-01-25
WO2007009884A3 WO2007009884A3 (de) 2007-04-05

Family

ID=36201976

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2006/063923 WO2007009884A2 (de) 2005-07-15 2006-07-05 Verfahren zur dynamischen dienstekonfiguration eines technischen systems

Country Status (3)

Country Link
US (1) US20090132688A1 (de)
DE (1) DE102005033231A1 (de)
WO (1) WO2007009884A2 (de)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2450471A (en) * 2007-05-18 2008-12-31 Thales Holdings Uk Plc Managing nodes in a distributed system by registering and making available nodal information to nodes.
US8793306B2 (en) * 2008-10-03 2014-07-29 Infosys Limited System, wireless communication device and method for combining compatible services
US8863133B2 (en) * 2011-06-02 2014-10-14 Microsoft Corporation License management in a cluster environment

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6636242B2 (en) * 1999-08-31 2003-10-21 Accenture Llp View configurer in a presentation services patterns environment
AU2003202356A1 (en) * 2002-02-07 2003-09-02 Thinkdynamics Inc. Method and system for managing resources in a data center
CA2383881A1 (en) * 2002-04-29 2003-10-29 Ibm Canada Limited-Ibm Canada Limitee Generic control interface with multi-level status
US7747856B2 (en) * 2002-07-26 2010-06-29 Computer Associates Think, Inc. Session ticket authentication scheme
US7526541B2 (en) * 2003-07-29 2009-04-28 Enterasys Networks, Inc. System and method for dynamic network policy management
US7735089B2 (en) * 2005-03-08 2010-06-08 Oracle International Corporation Method and system for deadlock detection in a distributed environment

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
ARPINAR I B ET AL: "Ontology-driven web services composition platform" E-COMMERCE TECHNOLOGY, 2004. CEC 2004. PROCEEDINGS. IEEE INTERNATIONAL CONFERENCE ON SAN DIEGO, CA, USA 6-9 JULY 2004, PISCATAWAY, NJ, USA,IEEE, 6. Juli 2004 (2004-07-06), Seiten 146-152, XP010714302 ISBN: 0-7695-2098-7 *
CHEUNG W K ET AL: "Towards autonomous service composition in a grid environment" WEB SERVICES, 2004. PROCEEDINGS. IEEE INTERNATIONAL CONFERENCE ON SAN DIEGO, CA, USA 6-9 JULY 2004, PISCATAWAY, NJ, USA,IEEE, 6. Juli 2004 (2004-07-06), Seiten 550-557, XP010709179 ISBN: 0-7695-2167-3 *
JOHN GEKAS ET AL: "Automatic Web Service Composition Based on Graph Network Analysis Metrics" OTM CONFEDERATED INTERNATIONAL CONFERENCES COOPIS, DOA, AND ODBASE 2005, 4. November 2005 (2005-11-04), Seiten 1571-1587, XP019022997 *
RUOYAN ZHANG, I. BUDAK ARPINAR, AND BOANERGES ALEMAN-MEZA: "Automatic Composition of Semantic Web Service" PROCEEDINGS OF THE INTERNATIONAL CONFERENCE ON WEB SERVICES, [Online] 26. Juni 2003 (2003-06-26), Seiten 38-41, XP002408973 ICWS '03 Gefunden im Internet: URL:http://www.cs.uga.edu/%7Ebudak/papers/ composition_short_icws.pdf> [gefunden am 2006-11-20] & ANONYMOUS: "CONFERENCE and WORKSHOP PROCEEDINGS" INTERNET ARTICLE, [Online] 2. April 2005 (2005-04-02), Gefunden im Internet: URL:http://web.archive.org/web/20050402185 539/http://www.cs.uga.edu/~budak/conferenc es.htm> [gefunden am 2006-01-20] *

Also Published As

Publication number Publication date
WO2007009884A3 (de) 2007-04-05
US20090132688A1 (en) 2009-05-21
DE102005033231A1 (de) 2006-05-04

Similar Documents

Publication Publication Date Title
DE69308942T2 (de) Steuerungseinrichtung mit Übermittlung von Steuerungsstrukturdefinitionen
DE60308520T2 (de) Modul zur integration in einem heimnetzwerk
DE60029321T2 (de) Verfahren und vorrichtung zur fernbedienung eines hausnetzwerks von einem externen kommunikationsnetz
EP3522477A1 (de) Verfahren zur daten-kommunikation in einem insbesondere industriellen netzwerk, vorrichtung zur durchführung des verfahrens, computerprogramm sowie computerlesbares medium
EP1430369B1 (de) Dynamischer zugriff auf automatisierungsressourcen
DE602004009746T2 (de) Teilen von Diensten in einem Netz
DE102004018980A1 (de) Verfahren zur Steuerung eines Gerätes in einem Netzwerk verteilter Stationen sowie Netzwerkstation
DE112014004208T5 (de) Integrationsverfahren und -System
EP0977416B1 (de) Verfahren, Endgerät, Knoten, Programmodul und Bedienoberfläche zur Ermittlung von für eine Kommunikationsbeziehung erforderlichen Merkmalen
DE102006041868A1 (de) Verfahren zum Bereitstellen zusammengesetzter Dienste in einem Peer-to-Peer-Netzwerk
WO2007009884A2 (de) Verfahren zur dynamischen dienstekonfiguration eines technischen systems
EP2503760A1 (de) Verfahren zum Einrichten eines Kommunikationsnetzes aus Geräten einer Automatisierungsanlage
EP2950199B1 (de) Druckverfahren, anordnung zur realisierung des druckverfahrens sowie ein entsprechendes computerprogramm und ein entsprechendes computerlesbares speichermedium
EP3539308B1 (de) Verfahren zur datenübertragung in einem fahrzeug-kommunikationsnetzwerk, fahrzeug-kommunikationsnetzwerk, teilnehmer und fahrzeug
EP3560153B1 (de) Verfahren zum betreiben einer datenverarbeitungsanlage, datenverarbeitungsanlage
DE102019208519A1 (de) Verfahren und Vorrichtung zum Anpassen einer Softwareanwendung
DE10040012A1 (de) Ressourcen-Management
DE102016101729B4 (de) IoT-Hardware-Modul, Funktionseinheit für IoT-Anwendungen mit einem solchen IoT-Hardware-Modul sowie System für IoT-Anwendungen mit mehreren solchen Funktionseinheiten
DE112018001433T5 (de) Einheitlicher zentralisierter Netzwerk-Stack
DE102017209493A1 (de) Verfahren und System zur Durchführung eines Setups bei einem industriellen Netzwerk
DE10339051B3 (de) Verfahren zum Zuordnen von über mehrere Subnetze verteilten Clients zu einen Server und Client zur Ankopplung an einen Server
EP4338050A1 (de) Verwaltung von laufzeitcontainern für ein industrielles automatisierungssystem
EP1316865A1 (de) Automatisierungsservicesystem
EP1833192B1 (de) Verfahren zur Übergabe des Zugriffs auf eine serverbasierte Anwendungssitzung an ein Kommunikationsendgerät
DE69930663T2 (de) Verfahren zur programmierung von resourceaktionen in einem heimnetz

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application
WWE Wipo information: entry into national phase

Ref document number: 11922210

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

WWW Wipo information: withdrawn in national office

Country of ref document: DE

122 Ep: pct application non-entry in european phase

Ref document number: 06777597

Country of ref document: EP

Kind code of ref document: A2