WO2012168524A2 - Método y sistema de coordinación de sistemas software basado en arquitecturas multiparadigma - Google Patents

Método y sistema de coordinación de sistemas software basado en arquitecturas multiparadigma Download PDF

Info

Publication number
WO2012168524A2
WO2012168524A2 PCT/ES2012/070417 ES2012070417W WO2012168524A2 WO 2012168524 A2 WO2012168524 A2 WO 2012168524A2 ES 2012070417 W ES2012070417 W ES 2012070417W WO 2012168524 A2 WO2012168524 A2 WO 2012168524A2
Authority
WO
WIPO (PCT)
Prior art keywords
entity
coordination
event
entities
events
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.)
Ceased
Application number
PCT/ES2012/070417
Other languages
English (en)
French (fr)
Other versions
WO2012168524A3 (es
Inventor
Carlos RODRÍGUEZ DOMÍNGUEZ
José Luis GARRIDO BULLEJOS
María José RODRÍGUEZ FÓRTIZ
Kawtar BENCHAZI AKLAKI
Manuel NOGUERA GARCÍA
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.)
Universidad de Granada
Original Assignee
Universidad de Granada
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 Universidad de Granada filed Critical Universidad de Granada
Publication of WO2012168524A2 publication Critical patent/WO2012168524A2/es
Publication of WO2012168524A3 publication Critical patent/WO2012168524A3/es
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/542Event management; Broadcasting; Multicasting; Notifications

Definitions

  • the present invention refers to a coordination method for software systems based on multiparadigma architectures, which makes use of events with dynamically alterable semantics, and which aims to simplify the coordination between entities software system, facilitating the addition of new entities to coordinate in the system without the need for them to be designed so that they can exchange information in an instant of time or must be synchronized, that is, interrupt their execution flow until another entity has reached a specific point in its own flow.
  • the invention is applicable to entities that present a service-oriented, agent, multi-agent, event-driven architecture, operating system processes, or any combination of the foregoing.
  • existing coordination methods involve blocking in the execution flow of at least one of the entities of the system, since coordination, to date, is resolved through a synchronization operation.
  • the invention provides a new method for software systems based on multi-paradigm architectures, based on events with dynamically alterable semantics, comprising the following phases:
  • a) generate at a specific point of execution where a coordination with at least one source entity associated with a specific type of event is required, a requirement event indicative of the need to receive notifications every time At least one source entity generates the specific type of event to which it is associated.
  • the coordinating entity notifies each of the origin entities of the system the specific types of events that must be notified to said coordinating entity.
  • the coordinating entity receives the notifications of the specific events produced in the different source entities.
  • the coordinating entity transmits, to the destination entity, inferred events and notifications received from the source entities.
  • the method of the invention optionally comprises a phase in which, if the structure of an event is modified in phases d-f, it is passed to phase c).
  • the method of the invention comprises a phase in which when a new event is defined in phases df, it is also passed to phase c). Also, optionally, the method comprises a phase in which, if the destination entity changes needs in the df phases, it goes back to phase c).
  • the notification transmitted from the coordinating entity to the destination entity is constituted by a new notification event resulting from a composition of the information contained in the notification of each origin entity, so that the coordinating entity composes the information that each of the events contains to produce new events of other types than the notifications generated by the origin entities, resulting from the combination of the events it received.
  • a transmission of these events is made to these latter entities.
  • a destination entity may be waiting for a type of event that can only originate due to the composition of the information provided by one or more entities with which it is desired to coordinate. This prevents the execution flow of an entity from advancing until other entities of the system have reached a specific point in the execution flow of each of them. Consequently, coordination between entities of a system is possible.
  • the coordinating entity is responsible for the composition of event information and for receiving and transmitting the new events generated, each source and destination entity only needs to know about the existence of this single coordinating entity. Therefore, the origin and destination entities remain decoupled from each other, which favors obtaining quality properties of a software system, such as maintainability and reusability.
  • an event model in the coordination method allows entities to coordinate origin and destination to maintain the execution of part of their execution flow at all times, even if they are waiting for a particular event to perform an operation specifically, since entities are notified when an event is received asynchronously.
  • the method of the invention allows the coordination to be carried out asynchronously, although obviously it can also be carried out synchronously, and it is avoided that the entities must have an explicit knowledge of the existence of other entities, allowing the possibility of adding new entities to a system without redesigning or restarting the rest of the entities to be executed or already running in the system.
  • the method of coordination of the invention is unique to the software system and common to different types of entities, providing the uniformity and integration required in these systems to enable the various entities to cooperate with each other. This avoids the need to use ad-hoc methods that are conventionally used in entity coordination.
  • the configuration described allows the invention to be applicable in architectural-based software systems for distributed software systems in which entities can be conceptually distinct, allowing the invention to apply to entities with a service-oriented architecture , agent, multi-agent, event driven, operating system processes, or any combination of the above.
  • the method comprises mechanisms for storing the information exchanged between the entities, which contributes to improving the process of analysis, verification and maintenance of a software system. For this it makes use of a knowledge base where meta-information about the information exchanged between entities is stored.
  • synchronous and asynchronous communication and coordination methods can be combined that contribute to meet the coordination requirements in each instant and for each specific software system and that provide greater ease of development of distributed software systems.
  • the invention relates to a software system coordination system based on multi-paradigm architectures in accordance with the method described above.
  • Figure 1. Shows a schematic representation of a software system based on multi iparadigm architectures to which the method of coordination of the invention is applied.
  • Figure 2. Shows the software system of the previous figure in which the source entities are determined by a humidity sensor and a noise sensor, while the destination entity is determined by a temperature sensor.
  • n source entities 1 have been represented, each associated with a specific type of event T 1 -T n respectively, so that through a coordinating entity 2 that is associated with all type of events, that is, it is configured so that it can receive any type of event, the operation of the source entities 1 is coordinated with a destination entity 3, in accordance with the method of the invention.
  • the method of the invention comprises a phase a) in which the destination entity 3 generates, at a specific point of execution in which it is required to perform coordination with at least one of the origin entities 1, requirement event indicative of the need to receive notifications every time one or more of the origin entities 1 generates the type of specific event to which it is associated.
  • phase b) in which the coordinating entity 2 receives the request event, following a phase c) in which it processes and infers events related to the information required in said requirement event received, by means of a set of pre-established rules that semantically associate the types of events with each other.
  • a phase d) follows, in which the coordinating entity 2 notifies each of the origin entities 1 the types of events that must be notified to the coordinating entity; following a phase e) in which the coordinating entity 2 receives the notifications of the specific events T 1 -T n produced in the different origin entities 1, so that the procedure ends according to a phase f) in which the coordinating entity 2 performs various compositions of the information contained in the T 1 -T n events received and inferred, composing new events ⁇ ⁇ - ⁇ ⁇ so that said coordinating entity 2 transmits the inferred events and the notifications received from the origin 1 entities according to the new T ⁇ -T events towards the source entity 3.
  • the coordinating entity 2 when a composition with which a T.-T. event is obtained is obtained, the new event will be notified to the destination entity 3. When it If you receive notification of this event, you can continue with the part of your execution flow that required the coordination method described, to enable the various entities to cooperate with each other.
  • Figure 2 shows a particularization of an embodiment of the previous figure in which the origin entities 1 are constituted by a humidity sensor and a noise sensor Ib, while the destination entity is constituted by a temperature sensor 3.
  • This example requires a coordination in which the temperature sensor 3 can only notify a measurement if measurements have been previously reported by the humidity sensor la and the noise sensor Ib.
  • phase a) of the indicated coordination method given that there is more than one origin unit 1, it must be expressed from the temperature sensor 3, by means of an event of requirement, that automatic reception of those events whose associated information is the result of the composition of the information extracted from the events notified by the noise and humidity sensors Ib is desired.
  • the coordinating entity 3 Upon receipt of the requirement event in the coordinating entity 3, and as described in phase c), the coordinating entity 3 processes and infers that the events required for the combination are those that are notified by the humidity sensor and the noise sensor Ib.
  • the humidity and noise sensors 1 will be notified so that the coordination method is applied by initiating the notification of events generated by said sensors.
  • the coordinating entity 2 After notification of events by the humidity and noise sensors Ib, the coordinating entity 2 composes the information associated with each event, resulting in the construction of a new event semantically associated with both "humidity” and “noise", the which will be notified accordingly, as described in phase d) of the method. Having previously expressed from the temperature sensor 3 the need to automatically receive the new event generated, this sensor will automatically receive the new event resulting from the composition. As a result of the receipt of the notification of one of those events, a notification of an event is made by the temperature sensor 3 including information about the quantified value thereof.
  • phase c) should be returned when in one of the d) af) phases the following circumstances occur: the internal structure of any of the events changes, new events are defined as a consequence, for example, of the incorporation of new entities to the system, and / or the needs of the origin entity 3 change, for example, if the coordination rule imposed is only valid for a limited time or after a predetermined number of events received.
  • the origin 1 and destination 3 entities can be designed as required: agents, services, multi-agent, events, operating system processes, etc.
  • the coordinating entity 2 can also be considered a service as an agent or an event issuer / consumer.
  • the coordinating entity 2 must have, at least, a public interface that allows communication with the rest of entities 1 and 3 to allow the association between an entity 1 and 3 and an event type, the notification of an event to an entity interested destination 3 and, finally, the sending of an event from any source entity 1 to the coordinating entity 2.
  • the coordinating entity 2 must be able to access a knowledge base 4 where you can check the type of each of the events received, so that the composition of information is efficient in time, it is also necessary to consult this knowledge base 4 and only perform the compositions that are collected in it.
  • the knowledge base 4 can be any type of software system that allows storing and retrieving information, properties about this information (meta-information) and the relationships between different kinds of information.
  • a knowledge base may be a relational database, an ontology and its instances, etc.
  • the coordination method can be integrated into a software system responsible for solving the various communication mechanisms between entities of a distributed software system.
  • the invention also relates to a system comprising the means necessary to carry out the described method, presenting the advantages that were indicated in the description section of the invention.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Stored Programmes (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)

Abstract

Método y sistema de coordinación de sistemas software basados en arquitecturas multiparadigma que emplea eventos con semántica alterable dinámicamente, en el que se emplea una entidad coordinadora (2) que coordina el funcionamiento entre una entidad destino (3) y una o más entidades origen (1), comunicando la entidad destino (3) la necesidad de recibir notificaciones de una o más entidades origen (1); y notificando la entidad coordinadora (2) a cada una de las entidades origen (1) que cuando en ella se produzca un evento se lo comuniquen, componiendo la entidad coordinadora (2) un nuevo evento combinación de los recibidos que propaga a la entidad destino (3). Cada entidad (1) y (3) solo requieren conocer la existencia de la entidad coordinadora (2) favoreciendo la coordinación y la incorporación de nuevas entidades.

Description

MÉTODO Y SISTEMA DE COORDINACIÓN DE SISTEMAS SOFTWARE BASADO EN ARQUITECTURAS MULTIPARADIGMA
OBJETO DE LA INVENCIÓN
La presente invención, según se expresa en el enunciado de esta memoria descriptiva, se refiere a un método de coordinación para sistemas software basados en arquitecturas multiparadigma, que hace uso de eventos con semántica alterable dinámicamente, y que tiene por objeto simplificar la coordinación entre entidades de sistema software, facilitando la adición de nuevas entidades a coordinar en el sistema sin necesidad de que éstas sean diseñadas para que puedan intercambiar información en un instante de tiempo o deban sincronizarse, es decir, interrumpir su flujo de ejecución hasta que otra entidad haya alcanzado un punto concreto en su propio flujo.
Es otro objeto de la invención el asegurar un orden de ejecución correcto, cuando dos o más entidades se ejecutan de manera concurrente y, por tanto, proporcionar un estado final del sistema que cumpla con los objetivos con los que las entidades fueron diseñadas originalmente. También es objeto de la invención el mejorar la eficiencia de la coordinación entre entidades gracias a la eliminación de la necesidad de los sondeos de estado desde una entidad a otras mediante el uso de eventos con una semántica formal y alterable dinámicamente. Ello permite informar de los cambios de estados únicamente a aquellas entidades que expresen previamente la necesidad de recibir la información de estado automáticamente cada vez que sea modificada.
La invención es aplicable a entidades que presentan una arquitectura orientada a servicios, agente, multiagente, dirigida por eventos, procesos de sistemas operativos, o cualquier combinación de las anteriores. ANTECEDENTES DE LA INVENCIÓN
El desarrollo de sistemas software distribuidos complejos plantea una gran dificultad en cuanto a la correcta coordinación entre las diferentes entidades que los conforman y que cooperan entre si para alcanzar determinados objetivos, ya que los métodos de coordinación propuestos hasta el momento son rígidos en cuanto a la necesidad de concretar qué entidades van a ser coordinadas. Por tanto, cuando se desea incorporar una nueva entidad al sistema, es necesario volver a desarrollar/modificar gran parte del resto de las entidades para que se cumplan los requisitos de coordinación que se deseen en cada instante o caso particular.
Además, los métodos de coordinación existentes implican el bloqueo en el flujo de ejecución de al menos una de las entidades del sistema, ya que la coordinación, hasta la fecha, se resuelve mediante una operación de sincronización.
Además la introducción de distintos tipos de entidades
(servicios, agentes, emisores de eventos o receptores de eventos, procesos de sistemas operativos, etc.), en un sistema software distribuido agrega una mayor complejidad, ya que dificulta la aplicación de métodos de coordinación bajo un único método común que proporcione la uniformidad y la adecuada integración que se necesita en nuestros sistemas para posibilitar que las diversas entidades cooperen entre sí. La falta de propuestas en este sentido lleva a utilizar y a aplicar soluciones ad-hoc para la coordinación entre entidades, con el inconveniente que ello conlleva .
DESCRIPCIÓN DE LA INVENCIÓN
Para conseguir los objetivos y resolver los inconvenientes anteriormente indicados, la invención proporciona un nuevo método para sistemas software basados en arquitecturas multiparadigma, basado en eventos con semántica alterable dinámicamente, que comprende las siguientes fases:
a) generar en una entidad destino, en un punto concreto de ejecución en el que se requiere realizar una coordinación con al menos una entidad origen asociada a un tipo concreto de evento, un evento de requerimiento indicativo de la necesidad de recibir notificaciones cada vez que al menos una entidad origen genera el tipo de evento concreto al que está asociada.
b) Recibir el evento de requerimiento en una entidad coordinadora, asociada a todo tipo de eventos, para recibir cualquiera de los eventos que se pueden producir en el sistema .
c) Procesar e inferir, en la entidad coordinadora, eventos relacionados con la información requerida en el evento de requerimiento recibido, a partir de reglas previamente establecidas que asocian semánticamente los tipos de eventos entre si.
d) A continuación, la entidad coordinadora notifica a cada una de las entidades origen del sistema los tipos de evento concretos que deben de notificar a dicha entidad coordinadora .
e) Seguidamente, la entidad coordinadora recibe las notificaciones de los eventos concretos producidos en las diferentes entidades origen.
f) Finalmente, la entidad coordinadora transmite, a la entidad destino, los eventos inferidos y las notificaciones recibidas de las entidades origen. El método de la invención, además, comprende opcionalmente una fase en la que, si se modifica la estructura de un evento en las fases d-f, se pasa a la fase c) .
Además, opcionalmente, el método de la invención comprende una fase en la que cuando se define un nuevo evento en las fases d-f, se pasa igualmente a la fase c) . También opcionalmente , el método comprende una fase en la que, si la entidad destino cambia de necesidades en las fases d-f , se pasa nuevamente a la fase c) .
Cuando el evento de requerimiento indica la necesidad de recibir notificaciones coordinadas de más de una entidad origen, la notificación transmitida desde la entidad coordinadora a la entidad destino se constituye por un nuevo evento de notificación resultante de realizar una composición de la información contenida en la notificación de cada entidad origen, de forma que la entidad coordinadora compone la información que contiene cada uno de los eventos para producir nuevos eventos de otros tipos distintos a las notificaciones generadas por las entidades origen, resultantes de la combinación de los eventos que recibió. En el caso de que en esta tarea de composición se obtenga un evento de un tipo determinado al que alguna de las entidades del sistema (entidad destino) expresó su interés previo en recibirlo automáticamente, se realiza una transmisión de estos eventos hacia estas últimas entidades.
En base a la descripción realizada, se deduce fácilmente que una entidad destino puede quedar a la espera de un tipo de evento que sólo puede originarse debido a la composición de la información provista por una o más entidades con las que se desea coordinarse. Gracias a ello se evita que el flujo de ejecución de una entidad avance hasta que otras entidades del sistema hayan llegado a un punto concreto en el flujo de ejecución de cada uno de ellos. En consecuencia, es posible la coordinación entre entidades de un sistema. Además, gracias a que la entidad coordinadora es la encargada de realizar la composición de información de eventos y de recibir y transmitir los nuevos eventos generados, cada entidad origen y destino solo requieren conocer la existencia de esta única entidad coordinadora. Por tanto, las entidades origen y destino permanecen desacopladas entre si, lo cual favorece la obtención de propiedades de calidad de un sistema software, tales como mantenibilidad y reusabilidad . Por último, el uso de un modelo de eventos en el método de coordinación permite que las entidades a coordinar origen y destino puedan mantener la ejecución de parte de su flujo de ejecución en todo momento, incluso si se encuentran a la espera de un evento determinado para realizar una operación concreta, ya que las entidades son notificadas cuando se recibe asincronamente un evento.
En consecuencia, el método de la invención permite que la coordinación se lleve a cabo de manera asincrona, aunque obviamente también puede efectuarse de forma síncrona, y se evita que las entidades deban de tener un conocimiento explícito de la existencia de otras entidades, permitiéndose la posibilidad de agregar nuevas entidades a un sistema sin necesidad de rediseñar ni reiniciar el resto de entidades a ejecutar o ya en ejecución en el sistema.
Por último, cabe señalar que el método de coordinación de la invención es único para el sistema software y común para los distintos tipos de entidades, proporcionando la uniformidad e integración requerida en estos sistemas para posibilitar que las diversas entidades cooperen entre sí. Ello evita la necesidad de utilización de métodos ad-hoc que convencionalmente se usan en la coordinación de entidades .
Por otro lado, cabe señalar que la configuración descrita permite que la invención sea aplicable en sistemas software basados en arquitecturas para sistemas software distribuidos en los que las entidades pueden ser conceptualmente distintas, permitiendo que la invención se aplique a entidades con una arquitectura orientada a servicios, agente, multiagente, dirigida por eventos, procesos de sistemas operativos, o una combinación cualquiera de las anteriores.
En una realización añadida de la invención se prevé que el método comprende mecanismos para almacenar la información intercambiada entre las entidades, lo que contribuye a mejorar el proceso de análisis, verificación y mantenimiento de un sistema software. Para ello hace uso de una base de conocimiento donde se almacena meta-información acerca de la información intercambiada entre las entidades.
Adicionalmente , si el método de la invención es incorporado como parte de un sistema software que se encargue de resolver las tareas de comunicación entre entidades, se pueden combinar métodos de comunicación y coordinación síncronos y asincronos que contribuyan a cumplir con los requisitos de coordinación en cada instante y para cada sistema software concreto y que aporten una mayor facilidad de desarrollo de sistemas software distribuidos .
Finalmente, al realizarse la coordinación mediante una notificación de información de manera asincrona, es posible continuar con parte del flujo de ejecución de las entidades, no introduciendo, por tanto, tantos tiempos de parada en el flujo de ejecución como otros métodos ya existentes de coordinación, que suponen implicar la sincronización entre los flujos de ejecución.
Además la invención se refiere a un sistema de coordinación de sistemas software basado en arquitecturas multiparadigma de acuerdo con el método anteriormente descrito .
Son independientes del objeto de la invención la implementación concreta de las entidades origen y destino a coordinar, de la entidad coordinadora y del sistema software distribuido concreto sobre el que se aplica el método descrito, así como los detalles accesorios que puedan presentarse, siempre y cuando no afecta a sus características esenciales.
A continuación, para facilitar una mejor comprensión de esta memoria descriptiva y formando parte integrante de la misma, se acompañan una serie de figuras en las que con carácter ilustrativo y no limitativo se ha representado el objeto de la invención. BREVE DESCRIPCIÓN DE LAS FIGURAS
Figura 1.— Muestra una representación esquemática de un sistema software basado en arquitecturas mult iparadigma al que se aplica el método de coordinación de la invención.
Figura 2.— Muestra el sistema software de la figura anterior en el que las entidades origen están determinadas por un sensor de humedad y un sensor de ruido, en tanto que la entidad destino está determinada por un sensor de temperatura .
DESCRIPCIÓN DE LA FORMA DE REALIZACIÓN PREFERIDA
A continuación se realiza una descripción de la invención basada en las figuras anteriormente comentadas.
En el ejemplo de realización de la figura 1 se han representado "n" entidades origen 1, cada una de ellas asociada a un tipo concreto de evento T1-Tn respectivamente, de forma que mediante una entidad coordinadora 2 que está asociada a todo tipo de eventos, es decir está configurada de forma que pueda recibir cualquier tipo de evento, se coordina el funcionamiento de las entidades origen 1 con una entidad destino 3, de acuerdo con el método de la invención .
Previamente es necesario definir los eventos T1-Tn con una semántica normal, con un conjunto de información asociada a cada tipo de evento y dotados de una estructura que relacione unos tipos con otros.
Para conseguir la coordinación comentada, el método de la invención comprende una fase a) en la que la entidad destino 3 genera, en un punto concreto de ejecución en el que se requiere realizar una coordinación con al menos una de las entidades origen 1, un evento de requerimiento indicativo de la necesidad de recibir notificaciones cada vez uno o más de las entidades origen 1 genera el tipo de evento concreto al que está asociada.
A continuación sigue una fase b) en la que la entidad coordinadora 2 recibe el evento de requerimiento, siguiendo una fase c) en la que procesa e infiere eventos relacionados con la información requerida en dicho evento de requerimiento recibido, mediante un conjunto de reglas preestablecidas que asocian semánticamente los tipos de eventos entre si. A continuación sigue una fase d) en la que la que la entidad coordinadora 2 notifica a cada una de las entidades origen 1 los tipos de eventos que deben notificar a la entidad coordinadora; siguiendo una fase e) en la que la entidad coordinadora 2 recibe las notificaciones de los eventos T1-Tn concretos producidos en las diferentes entidades origen 1, de forma que el procedimiento finaliza según una fase f) en la que la entidad coordinadora 2 realiza diversas composiciones de la información contenida en los eventos T1-Tn recibidos e inferidos, componiendo nuevos eventos Τ±-Ί\ de forma que dicha entidad coordinadora 2 transmite los eventos inferidos y las notificaciones recibidas de las entidades origen 1 según los nuevos eventos T±-T hacia la entidad origen 3. De esta forma, la entidad coordinadora 2 cuando se encuentre una composición con la que se obtenga un evento T.-T., se notificará el nuevo evento a la entidad destino 3. Cuando ésta reciba la notificación de este evento, podrá continuar con la parte de su flujo de ejecución que requería del método de coordinación descrito, para posibilitar que las diversas entidades cooperen entre sí .
En la figura 2 se muestra una particularización de un ejemplo de realización de la figura anterior en el que las entidades origen 1 están constituidas por un sensor de humedad la y un sensor de ruido Ib, en tanto que la entidad de destino está constituida por un sensor de temperatura 3. En este ejemplo se requiere una coordinación en la que el sensor de temperatura 3 sólo podrá notificar una medición si previamente se han notificado mediciones por parte del sensor de humedad la y del sensor de ruido Ib.
Según la fase a) del método de coordinación señalada, dado que hay más de una unidad origen 1, se deberá expresar desde el sensor de temperatura 3, mediante un evento de requerimiento, que se desea la recepción automática de aquellos eventos cuya información asociada sea el resultado de la composición de la información extraída de los eventos notificados por los sensores de ruido la y de humedad Ib. Tras recibirse el evento de requerimiento en la entidad coordinadora 3, y tal y como se describe en la fase c) , la entidad coordinadora 3 procesa e infiere que los eventos requeridos para la combinación son aquellos que son notificados por el sensor de humedad la y el sensor de ruido Ib. Asimismo, como se explícita en la fase d) se notificará a los sensores de humedad 1 y de ruido la para que se aplique el método de coordinación mediante el inicio de la notificación de eventos generados por dichos sensores .
Tras la notificación de eventos realizada por los sensores de humedad la y ruido Ib, la entidad coordinadora 2 compone la información asociada a cada evento, resultando en la construcción de un nuevo evento asociado semánticamente tanto con "humedad" como con "ruido" , el cual será notificado en consecuencia, tal y como fue descrito en la fase d) del método. Al haber expresado previamente desde el sensor de temperatura 3 la necesidad de recibir automáticamente el nuevo evento generado, este sensor recibirá automáticamente el nuevo evento resultante de la composición. Como consecuencia de la recepción de la notificación de uno de esos eventos, se realiza una notificación de un evento por parte del sensor de temperatura 3 incluyendo información acerca del valor cuantificado de ésta. De esta forma, cada vez que se reciba un nuevo evento asociado semánticamente tanto con "humedad" como con "ruido" , el sensor de temperatura 3 realiza la notificación pertinente y, en consecuencia, se cumple con la coordinación requerida para el sistema: el sensor de temperatura 3 solo podrá notificar una medición si previamente se han notificado mediciones por parte del sensor de humedad la y del sensor de ruido Ib. Por último, cabe señalar que se deberá volver a la fase c) cuando en alguna de las fases d) a f) se dan las siguientes circunstancias: cambia la estructura interna de alguno de los eventos, se definen nuevos eventos como consecuencia, por ejemplo, de la incorporación de nuevas entidades al sistema, y/o cambian las necesidades de la entidad origen 3, por ejemplo, si la regla de coordinación impuesta solo tiene vigencia durante un tiempo limitado o tras un número predeterminado de eventos recibidos.
Las entidades origen 1 y destino 3 pueden ser diseñadas tal y como se requiera: agentes, servicios, multiagente, por eventos, procesos de sistemas operativos, etc. La entidad coordinadora 2 también puede ser considerada un servicio como un agente o un emisor/consumidor de eventos. La entidad coordinadora 2 de debe poseer, al menos, una interface pública que permita la comunicación con el resto de entidades 1 y 3 para permitir la asociación entre una entidad 1 y 3 y un tipo de evento, la notificación de un evento a una entidad destino 3 interesada y, por último, el envío de un evento desde una entidad origen 1 cualquiera hacia la entidad coordinadora 2.
La entidad coordinadora 2 debe poder acceder a una base de conocimiento 4 donde pueda comprobar el tipo de cada uno de los eventos recibidos, para que la composición de información resulte eficiente en el tiempo, es necesario también consultar esta base de conocimiento 4 y solo realizar las composiciones que estén recogidas en ella.
La base de conocimiento 4 puede ser cualquier tipo de sistema software que permita almacenar y recuperar información, propiedades acerca de esta información (meta- información) y las relaciones entre diferentes clases de información. Por ejemplo, una base de conocimiento podrá ser una base de datos relacional, una ontología y sus instancias, etc.
El método de coordinación puede ser integrado en un sistema software encargado de resolver los distintos mecanismos de comunicación entre entidades de un sistema software distribuido.
Además la invención también se refiere a un sistema que comprende los medios necesarios para llevar a cabo el método descrito, presentando las ventajas que fueron indicadas en el apartado descripción de la invención.

Claims

REIVINDICACIONES
1. - MÉTODO Y SISTEMA DE COORDINACIÓN DE SISTEMAS SOFTWARE BASADO EN ARQUITECTURAS MULTIPARADIGMA que emplea eventos con semántica alterable dinámicamente en la coordinación entre entidades de un sistema software; caracterizado por que comprende las siguientes fases:
a) Generar en una entidad destino (3), en un punto concreto de ejecución en el que se requiere realizar una coordinación con al menos una entidad origen (1) asociada a un tipo concreto de evento, un evento de requerimiento indicativo de la necesidad de recibir notificaciones cada vez que la al menos entidad origen (1) genera el tipo de evento concreto al que está asociada.
b) Recibir el evento de requerimiento en una entidad coordinadora (2), asociada a todo tipo de eventos.
c) Procesar e inferir, en la entidad coordinadora (2), eventos relacionados con la información requerida en el evento de requerimiento recibido, a partir de reglas previamente establecidas que asocian semánticamente los tipos de eventos entre si.
d) Notificar la entidad coordinadora (2), a cada una de las entidades origen (1) del sistema los tipos de eventos concretos que deben de notificar a dicha entidad coordinadora (2) .
e) Recibir en la entidad coordinadora (2) las notificaciones de los eventos concretos producidos en las diferentes entidades origen (1) .
f) Transmitir la entidad coordinadora (2) a la entidad destino (3), los eventos inferidos y las notificaciones recibidas de las entidades origen (1) .
2. - MÉTODO Y SISTEMA DE COORDINACIÓN DE SISTEMAS SOFTWARE BASADO EN ARQUITECTURAS MULTIPARADIGMA, según reivindicación 1, caracterizado por que comprende una fase en la que cuando se modifica la estructura de un nuevo evento en las fases d-f, se pasa a la fase c.
3. - MÉTODO Y SISTEMA DE COORDINACIÓN DE SISTEMAS SOFTWARE BASADO EN ARQUITECTURAS MULTIPARADIGMA, según reivindicación 1, caracterizado por que comprende una fase en la que cuando se define un nuevo evento en las fases d- f, se pasa a la fase c.
4. - MÉTODO Y SISTEMA DE COORDINACIÓN DE SISTEMAS SOFTWARE BASADO EN ARQUITECTURAS MULTIPARADIGMA, según reivindicación 1, caracterizado por que comprende una fase en la que cuando la entidad destino (3) cambia de necesidades en las fases d-f, se pasa a la fase c.
5. - MÉTODO Y SISTEMA DE COORDINACIÓN DE SISTEMAS SOFTWARE BASADO EN ARQUITECTURAS MULTIPARADIGMA, según reivindicación 1, caracterizado por que cuando el elemento de requerimiento indica la necesidad de recibir notificaciones coordenadas de más de una entidad origen (1), la notificación transmitida desde la entidad coordinadora (2) a la entidad destino (3) se constituye por un nuevo evento de notificación resultante de realizar una composición de la información contenida en la notificación de cada entidad origen.
6. - MÉTODO Y SISTEMA DE COORDINACIÓN DE SISTEMAS SOFTWARE BASADO EN ARQUITECTURAS MULTIPARADIGMA, según reivindicación 1, caracterizado por que la generación de un evento de requerimiento de la entidad destino se realiza de una forma seleccionada entre síncrona y asincrona.
7. - MÉTODO Y SISTEMA DE COORDINACIÓN DE SISTEMAS SOFTWARE BASADO EN ARQUITECTURAS MULTIPARADIGMA, según reivindicación 1, caracterizado por que comprende almacenar la información intercambiada entre las diferentes entidades (1, 2 y 3) .
8. - MÉTODO Y SISTEMA DE COORDINACIÓN DE SISTEMAS SOFTWARE BASADO EN ARQUITECTURAS MULTIPARADIGMA, según reivindicación 1, caracterizado por que las diferentes entidades (1, 2 y 3) presentan una arquitectura seleccionada entre una arquitectura orientada a servicios, agente, multiagente, dirigida por eventos, procesos de sistemas operativos y una combinación de cualquiera de las anteriores .
9.- SISTEMA DE COORDINACIÓN DE SISTEMAS SOFTWARE BASADOS EN ARQUITECTURAS MULTIPARADIGMA, caracterizado por que comprende medios para implementar el método de las reivindicaciones 1 a 8.
PCT/ES2012/070417 2011-06-07 2012-06-05 Método y sistema de coordinación de sistemas software basado en arquitecturas multiparadigma Ceased WO2012168524A2 (es)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
ES201100672A ES2394826B2 (es) 2011-06-07 2011-06-07 Método y sistema de coordinación de sistemas software basado en arquitecturas multiparadigma
ESP201100672 2011-06-07

Publications (2)

Publication Number Publication Date
WO2012168524A2 true WO2012168524A2 (es) 2012-12-13
WO2012168524A3 WO2012168524A3 (es) 2013-03-28

Family

ID=47296542

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/ES2012/070417 Ceased WO2012168524A2 (es) 2011-06-07 2012-06-05 Método y sistema de coordinación de sistemas software basado en arquitecturas multiparadigma

Country Status (2)

Country Link
ES (1) ES2394826B2 (es)
WO (1) WO2012168524A2 (es)

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060101436A1 (en) * 2004-10-26 2006-05-11 Microsoft Corporation Hosting environment abstraction model for content

Also Published As

Publication number Publication date
WO2012168524A3 (es) 2013-03-28
ES2394826A1 (es) 2013-02-05
ES2394826B2 (es) 2014-08-25

Similar Documents

Publication Publication Date Title
Teunissen GNSS ambiguity resolution with optimally controlled failure-rate
Biondi et al. A blocking bound for nested FIFO spin locks
Harel et al. Relaxing synchronization constraints in behavioral programs
WO2012168524A2 (es) Método y sistema de coordinación de sistemas software basado en arquitecturas multiparadigma
Teunissen On the computation of the best integer equivariant estimator
Colin et al. Towards validating a platoon of cristal vehicles using csp|| b
Cortés et al. Quasi-static scheduling for multiprocessor real-time systems with hard and soft tasks
Margot et al. Space-based and Earth-based Prospects for Measuring the Moment of Inertia of Venus
CN102848996A (zh) 汽车电子控制系统
Beauquier et al. Self-stabilizing synchronization in mobile sensor networks with covering
Freier et al. Time-triggered communication scheduling analysis for real-time multicore systems
Rothacher et al. Combination of GPS and VLBI Troposphere Parameters of the CONT'02 Campaign and Comparison with WVR
Zheng et al. Real-time crustal deformation monitoring using single frequency precise point positioning with fixed ionospheric estimates
Boyer et al. Ocean heat content estimation from in situ observations at the National Centers for Environmental Information: Improvements and Uncertainties
Islam et al. Global Parameter estimation of Interstellar Helium from IBEX-Lo observation using Analytical Solution
Dennis The National Adjustment of 2011: A refinement of the US National Spatial Reference System on passive GNSS control
Pasqua et al. Attribute-based memory updates with priorities for collective adaptive systems
Goes et al. What is the skill of different ocean tracers to reduce uncertainties about model projections of the North Atlantic Meridional Overturning Circulation?
Karatekin et al. Orbital Accelerations Of Galilean Satellites And The Evolution Of The Laplace Resonance.
Shamsaddin Mechanism of management of competitiveness and stability of enterprise structures
Baldwin et al. 360-degree quantum tomography of a qudit
Cooper Younge et al. Rotary echo tests of coherence in Rydberg-atom excitation
Gaiardo Sustainable mobility roadmap
Baunach Advances in Distributed Real-Time Sensor/Actuator Systems Operation-Operating Systems, Communication, and Application Design Concepts
Faure Estimating Trapped Gas Concentrations as Bubbles Within Lake Ice Using Ground-penetrating Radar

Legal Events

Date Code Title Description
NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 12797258

Country of ref document: EP

Kind code of ref document: A2