Isolating process-level concerns using padus
read more
Citations
An overview of AspectJ
Reasoning on Semantically Annotated Processes
Crosscutting Concern Documentation by Visual Query of Business Processes
Aspect-Oriented Workflow Languages: AO4BPEL and Applications
Aspect-Oriented Software Development in Practice: Tales from AOSD-Europe
References
Aspect-oriented programming
On the criteria to be used in decomposing systems into modules
Business process execution language for web services
Aspect-Oriented Programming
An overview of AspectJ
Related Papers (5)
Frequently Asked Questions (16)
Q2. What future works have the authors mentioned in the paper "Isolating process-level concerns using padus" ?
Introducing the concept of an in advice to add new behavior to existing elements, which extends the expressiveness of the advice language. Their aspect-oriented extension for WS-BPEL is an XML-based language and can be defined using an XML Schema [ 24 ]. But, similar to specifying a WSBPEL process using a graphical notation ( e. g. BPMN [ 25 ] ), a more user-friendly graphical notation for aspects can be defined too. The authors already started on an extension of BPMN that supports the aspect-oriented idea and that can be translated to Padus aspects.
Q3. What are the points where an aspect can be applied?
Points in the program execution where an aspect can be applied (e.g. method invocations in object-oriented programming) are called joinpoints.
Q4. What is the WS-BPEL transformation engine used to transform?
– Transformation: An XML transformation engine (based on XSLT) is used to transform the WS-BPEL document at the joinpoints identified in the previous step.
Q5. What is the popular workflow language?
the most popular workflow language with regard to the composition of web services is the Business Process Execution Language (WS-BPEL) [3].
Q6. What is the purpose of this paper?
In this paper the authors improve the modularization capability of WS-BPEL in order to provide a better separation of concerns [6] in the workflow specification.
Q7. What is the purpose of an advice?
In advices can be used to add behavior inside some activity, like for example add an extra concurrent activity to a flow activity.
Q8. Why is the performance of the advice important?
Because the language is used to describe real-time processes in a telecom service delivery platform, performance is extremely important.
Q9. What is the purpose of the paper?
In this paper, the authors propose an aspect-oriented programming extension for WSBPEL, named Padus, in order to provide a better separation of concerns.
Q10. What are some examples of crosscutting concerns in WS-BPEL?
Examples of such crosscutting concerns are security concerns such as access control and confidentiality [9], debugging concerns such as logging [10] and timing contract validation [11], and business rules such as billing [12].
Q11. What was the only way to compose web services?
the only way to compose web services was by manually writing the necessary glue-code in programming languages such as C and Java.
Q12. What is the advantage of the logic meta-programming approach to AOP?
The logic meta-programming approach to AOP also allows non-expert programmers to define their own high-level, domain-specific aspect languages.
Q13. How can the complexity of the core process be controlled?
Using Padus, the complexity of the core process can be controlled by specifying crosscutting concerns like security and billing in separate aspects.
Q14. What are the dimensions of the language?
The authors describe the language along five dimensions: the joinpoint model (section 2.1), the pointcut and advice languages (sections 2.2 and 2.3), the aspect modules (section 2.4), and the aspect deployment language (section 2.5).
Q15. What can be used to combine the behavior of the core process with the behavior specified in the aspects?
These points can be selected using a logic pointcut language, and the Padus weaver can be used to combine the behavior of the core process with the behavior specified in the aspects.
Q16. What are the main aspects used to represent the two billing schemes?
Three aspects are used to represent these two billing schemes:– A generic billing aspect (see listing 5) is used to define concepts common to both billing schemes: the billing service and message definitions (lines 2–6), the pointcuts representing the start and end of a conference call (lines 7–10), and an advice for invoking the billing service (lines 11–14).