Towards Creating Context-Aware Dynamically-Adaptable Business Processes Using Complex Event Processing - Archive ouverte HAL Accéder directement au contenu
Thèse Année : 2012

Towards Creating Context-Aware Dynamically-Adaptable Business Processes Using Complex Event Processing

Résumé

As the use of ubiquitous devices continues to grow, we have more and more access to pervasive information around us. This information allows us to know the state of our surroundings, and we make decisions of our everyday life based on that context information. Computer-based business processes are expanding more and more, as the activities they deal with are being automatized. However, when dealing with these processes, there is a lack of integration between the context information and the processes. We can consider a condition in a specific part of the process and make a decision based on the information, but we cannot monitor the information in real-time and adapt the process accordingly, just as we do in normal life. Moreover, the static nature of business processes does not allow them to be dynamically modified, thus leaving them less useful in the new context. If we want to change the behavior of a business process, we need to stop it, modify it and redeploy it entirely, which causes to lose all the current executions and information. To address these issues, in this thesis we present the CEVICHE Framework. We bring forward an approach which allows to represent context-aware business processes where context information is considered as events which are monitored in real-time. For this, we base our work on a technique called Complex Event Processing (CEP). By using an external tool to monitor the context in real-time, we are able to surpass the limit of only accessing the information on specific places of the process. However, knowing this information is not enough, as what we need is to be able to adapt our processes accordingly. With CEVICHE we integrate the information obtained from the context with the capability of adapting business process at run-time. Also, one of the original contributions of the CEVICHE Framework is the definition of a correct adaptation undoing mechanism and its implementation. Undoing an adaptation can easily go wrong and lead to undesired states and unstable processes. Naively considered as a trivial task, this issue has been barely considered when looking at the current dynamic approaches, and in the business process domain, none of the approaches integrates this. So, in CEVICHE we propose a formal model of this mechanism for undoing adaptations. The implementation of the CEVICHE Framework offers flexibility and dynamicity properties to the business processes, using a component-based approach, allowing the modification of their bindings at run-time. Moreover, with CEVICHE we also provide a stability property in terms of CEP. As any new technology, CEP is still evolving and since there is still no standard in the way in which the events are defined, each implementation uses its own language to express them. By defining our own simple language, the Adaptive Business Process Language (ABPL), as a pivot language, CEVICHE facilitates the use of CEP without the drawbacks of early adoption. We use a plug-in approach that allows the events defined in ABPL to be used in virtually any CEP engine. This approach also makes it easier to maintain, as we just need to update the plug-in in case the CEP language evolves, or we decide to use another implementation, instead of updating all the event definitions. Finally, we validated our approach by implementing a nuclear crisis scenario, with a use case which involves many actors, context-information and adaptation conditions.
En plus de l'utilisation des appareils ubiquitaires qui continue à croître, nous avons accès de plus en plus à d'informations dites contextuelles. Ces informations permettent de connaître l'état de notre environnement et nous aident à prendre les décisions de notre vie quotidienne en fonction du contexte dans lequel nous nous positionnons. Les processus métiers informatiques sont de plus en plus en expansion, alors que les activités qu'ils traitent deviennent automatisées. Toutefois, lorsqu'il s'agit de processus métiers dans un domaine particulier, il y a un manque d'intégration avec ces informations contextuelles. Nous pouvons envisager actuellement une situation donnée dans une partie bien définie du processus à un moment donné et prendre une décision basée sur cette information, mais nous ne pouvons pas contrôler ces informations contextuelles en temps réel et adapter le processus en conséquence, comme nous le faisons dans la vie normale. De plus, la nature statique des processus métiers ne leur permet pas d'être modifiés dynamiquement, les rendant ainsi moins utiles dans un nouveau contexte. Si nous voulons changer le comportement d'un processus métier, nous devons le stopper, le modifier et le redéployer entièrement, ce qui fait perdre toutes les exécutions en cours et l'information associée. Pour répondre à ces problèmes, dans cette thèse, nous présentons le cadre logiciel CEVICHE. Nous proposons une approche qui permet de représenter des processus métiers sensibles au contexte où les informations de contexte sont considérées comme des événements contrôlés en temps réel. Pour cela, nous nous basons sur une nouvelle approche appelée Complex Event Processing (CEP). En utilisant un outil externe pour contrôler le contexte en temps réel, nous sommes alors en mesure de dépasser les limites d'accés à l'information uniquement à des endroits bien précis du processus. Cependant, la connaissance de ces événements ne suffit pas. Nous avons, de plus, besoin d'être capable d'adapter nos processus en conséquence à l'exécution. Avec CEVICHE, nous intégrons les informations obtenues à partir du contexte avec la capacité d'adaptation des processus métiers en cours d'exécution. De plus, l'une des originalités du cadre logiciel CEVICHE vient de la définition d'une opération de désadaptation et de sa mise en œuvre. Défaire l'adaptation peut facilement se passer mal et conduire à des états non désirés et rendre les processus instables. Naïvement considérée comme une tâche triviale, cette question a été peu considérée quand on regarde les approches dynamiques actuelles. Nous proposons donc un modèle formel de ce mécanisme dans CEVICHE. La réalisation du cadre logiciel CEVICHE offre des propriétés de flexibilité et de dynamicité aux processus métiers en se basant sur une approche à composants, permettant ainsi la modification des liaisons en cours d'exécution. En outre, avec CEVICHE, nous apportons une propriété de stabilité au niveau du traitement des événements complexes. Comme toute nouvelle approche, le traitement des événements complexes n'est pas normalisé et est en cours d'évolution, chaque outil utilisant son propre langage pour les exprimer. En définissant notre propre langage, Adaptive Business Process Language (ABPL), comme un langage pivot, CEVICHE facilite l'utilisation de CEP sans les inconvénients de l'adoption anticipée de l'approche. Nous utilisons une technique de type plug-in qui permet aux événements définis en ABPL d'être utilisés dans pratiquement n'importe quel moteur CEP. Cette approche rend les règles de traitement des événements plus faciles à maintenir, car nous centralisons la mise à jour au niveau du plug-in lorsque le langage CEP évolue, ou si nous décidons l'utilisation d'un autre outil, au lieu de mettre à jour toutes les définitions d'événements. Finalement, nous avons validé notre approche en mettant en œuvre un scénario de crise nucléaire, avec des cas d'utilisation qui impliquent de nombreux acteurs, des informations de contexte et des conditions d'adaptation.
Fichier principal
Vignette du fichier
hermosillo-thesis.pdf (2.43 Mo) Télécharger le fichier
Loading...

Dates et versions

tel-00709303 , version 1 (18-06-2012)

Identifiants

  • HAL Id : tel-00709303 , version 1

Citer

Gabriel Hermosillo. Towards Creating Context-Aware Dynamically-Adaptable Business Processes Using Complex Event Processing. Software Engineering [cs.SE]. Université des Sciences et Technologie de Lille - Lille I, 2012. English. ⟨NNT : ⟩. ⟨tel-00709303⟩
381 Consultations
534 Téléchargements

Partager

Gmail Facebook X LinkedIn More