{"title":"使用Padus实现WS-BPEL的基于历史的方面编织","authors":"Mathieu Braem, Dimitri Gheysels","doi":"10.1109/ECOWS.2007.27","DOIUrl":null,"url":null,"abstract":"Workflow languages provide a natural way to express business processes, and therefore they are preferred over general-purpose programming languages to specify such processes. However, current workflow languages offer no support for separating crosscutting concerns which results in workflows that are hard to maintain and evolve. Recent research introduces aspect-oriented extensions to these languages, but many advanced features of aspect-oriented programming technology are still unavailable for workflow languages. In this paper we present the implementation of one such advanced feature: \"stateful aspects\". We introduce a high-level, logic-based pointcut language to express aspect activation depending on past and current state of the workflow execution. We propose a weaving strategy based on finite state automata in order to transparently weave history tracking code in the workflow. Our approach is implemented as an extension of the Padus AOP language for WS-BPEL.","PeriodicalId":436126,"journal":{"name":"Fifth European Conference on Web Services (ECOWS'07)","volume":"25 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2007-11-26","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"16","resultStr":"{\"title\":\"History-Based Aspect Weaving for WS-BPEL Using Padus\",\"authors\":\"Mathieu Braem, Dimitri Gheysels\",\"doi\":\"10.1109/ECOWS.2007.27\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"Workflow languages provide a natural way to express business processes, and therefore they are preferred over general-purpose programming languages to specify such processes. However, current workflow languages offer no support for separating crosscutting concerns which results in workflows that are hard to maintain and evolve. Recent research introduces aspect-oriented extensions to these languages, but many advanced features of aspect-oriented programming technology are still unavailable for workflow languages. In this paper we present the implementation of one such advanced feature: \\\"stateful aspects\\\". We introduce a high-level, logic-based pointcut language to express aspect activation depending on past and current state of the workflow execution. We propose a weaving strategy based on finite state automata in order to transparently weave history tracking code in the workflow. Our approach is implemented as an extension of the Padus AOP language for WS-BPEL.\",\"PeriodicalId\":436126,\"journal\":{\"name\":\"Fifth European Conference on Web Services (ECOWS'07)\",\"volume\":\"25 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2007-11-26\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"16\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"Fifth European Conference on Web Services (ECOWS'07)\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1109/ECOWS.2007.27\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"Fifth European Conference on Web Services (ECOWS'07)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/ECOWS.2007.27","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
History-Based Aspect Weaving for WS-BPEL Using Padus
Workflow languages provide a natural way to express business processes, and therefore they are preferred over general-purpose programming languages to specify such processes. However, current workflow languages offer no support for separating crosscutting concerns which results in workflows that are hard to maintain and evolve. Recent research introduces aspect-oriented extensions to these languages, but many advanced features of aspect-oriented programming technology are still unavailable for workflow languages. In this paper we present the implementation of one such advanced feature: "stateful aspects". We introduce a high-level, logic-based pointcut language to express aspect activation depending on past and current state of the workflow execution. We propose a weaving strategy based on finite state automata in order to transparently weave history tracking code in the workflow. Our approach is implemented as an extension of the Padus AOP language for WS-BPEL.