A method based on business process execution language for Web services(BPEL4WS) is proposed to develop telecommunication services in new telecommunication environment, which can be used to cope with the difficulties a...
详细信息
A method based on business process execution language for Web services(BPEL4WS) is proposed to develop telecommunication services in new telecommunication environment, which can be used to cope with the difficulties and long-time spending in creating telecommunication services. Firstly, the shortcomings of using BPEL4WS to create telecommunication services are pointed out and then the method of AOP is used to solve the problem of the modularity and dynamic extendibility of BPEL4WS. Secondly, the system architecture and implementation are presented. At last, the results of the experiment prove that the method is feasible.
Programs are increasingly organized around features, which are encapsulated using aspects and other linguistic mechanisms. Despite their growing popularity amongst developers, there is a dearth of techniques for compu...
详细信息
Programs are increasingly organized around features, which are encapsulated using aspects and other linguistic mechanisms. Despite their growing popularity amongst developers, there is a dearth of techniques for computer-aided verification of programs that employ these mechanisms. We present the theoretical underpinnings for applying model checking to programs (expressed as state machines) written using these mechanisms. The analysis is incremental, examining only components that change rather than verifying the entire system every time one part of it changes. Our technique assumes that the set of pointcut designators is known statically, but the actual advice can vary. It handles both static and dynamic pointcut designators. We present the algorithm, prove it sound, and address several subtleties that arise, including cascading advice application and problems of circular reasoning.
This paper concerns the problem of enhancing enterprise applications with a modular mechanism for enforcing privacy policies on personal *** propose to use aspect-oriented programming and address the involved issues f...
详细信息
This paper concerns the problem of enhancing enterprise applications with a modular mechanism for enforcing privacy policies on personal *** propose to use aspect-oriented programming and address the involved issues from the perspective of extending fine-grained access control with privacy *** aspect framework for enforcing access control in Struts-based Web applications is extended with fine-grained privacy protection mechanisms that make the aspects privacy *** proposed mechanisms are loosely coupled with the underlying *** is thus easy to adapt them and employ them to migrate existing applications.
The term aspect-oriented programming (AOP) has come to describe the set of programming mechanisms developed specifically to express crosscutting concerns. Since crosscutting concerns cannot be properly modularized wit...
详细信息
The term aspect-oriented programming (AOP) has come to describe the set of programming mechanisms developed specifically to express crosscutting concerns. Since crosscutting concerns cannot be properly modularized within object-orientedprogramming, they are expressed as aspects and are composed, or woven, with traditionally encapsulated functionality referred to as components. Many AOP models exist, but their implementations are typically coupled with a single language. To allow weaving of existing components with aspects written in the language of choice, AOP requires a language-independent tool. This paper presents ***, a load-time weaver that allows aspects and components to be written in a variety of languages and freely intermixed. *** relies on XML to specify aspect bindings and standardized Common Language Infrastructure to avoid coupling aspects or components with a particular language. By demonstrating language-independence, *** provides a migration path to the AOP paradigm by preserving existing developer knowledge, tools, and software components. The tool's capabilities are demonstrated with logging aspects written in and applied to Visual Basic and C# components.
As programs continue to increase in size, it has become increasingly difficult to separate concerns into well localized modules, which leads to code tangling - crosscutting code spread throughout several modules. Thus...
详细信息
As programs continue to increase in size, it has become increasingly difficult to separate concerns into well localized modules, which leads to code tangling - crosscutting code spread throughout several modules. Thus, aspect-oriented programming (AOP) offers a solution to creating modules with little or no crosscutting concerns. AOP presents the notion of aspects, and demonstrates how crosscutting concerns can be taken out of modules and placed in a centralized location. In this paper, a taxonomy of aspect-oriented programming, as well as a basic overview and introduction of AOP, will be presented in order to assist future researchers in getting started on additional research on the topic. To form the taxonomy, over four-hundred research articles were organized into fifteen different primary categories coupled with sub-categories, which show where some of the past research has been focused. In addition, trends of the research were evaluated and paths for future exploration are suggested.
The term aspect-oriented programming (AOP) has come to describe the set of programming mechanisms developed specifically to express crosscutting concerns. Since crosscutting concerns cannot be properly modularized wit...
详细信息
ISBN:
(纸本)9781581137125
The term aspect-oriented programming (AOP) has come to describe the set of programming mechanisms developed specifically to express crosscutting concerns. Since crosscutting concerns cannot be properly modularized within object-orientedprogramming, they are expressed as aspects and are composed, or woven, with traditionally encapsulated functionality referred to as *** AOP models exist, but their implementations are typically coupled with a single language. To allow weaving of existing components with aspects written in the language of choice, AOP requires a language-independent tool.
This paper describes MiniMAO(1), a core aspect-oriented language. Unlike previous aspect-oriented calculi and core languages, MiniMAO(1) allows around advice to change the target object of an advised operation before ...
详细信息
This paper describes MiniMAO(1), a core aspect-oriented language. Unlike previous aspect-oriented calculi and core languages, MiniMAO(1) allows around advice to change the target object of an advised operation before proceeding. MiniMAO(1) accurately models the ways aspectJ allows changing the target object, e.g., at call join points. Practical uses for changing the target object using advice include proxies and other wrapper objects. MiniMAO(1) was designed to serve as a core language for studying modular specification and verification in the aspect-oriented paradigm. To this end MiniMAO(1) center dot has an imperative, reference-based semantics, center dot models the control-flow effects of changing target object bindings with advice, and center dot has a safe static type system. The first two features make MiniMAO(1) suitable for the study of aspect-oriented mechanisms, such as those found in aspectJ. These features are important for studying the interaction of aspect-oriented language features with modular specification and verification. A statically type-safe language is also important for such research. aspectJ does not have a safe static type system. To achieve static type safety MiniMAO(1) uses a slightly different form of proceed and advice binding than in aspectJ. These changes are sufficient for static type safety, but we do not claim that they are necessary;a less restrictive type system might suffice. This paper gives an operational semantics, type system, and proof of soundness for MiniMAO(1). (c) 2006 Elsevier B.V. All rights reserved.
This paper proposes a principled methodology for the realization of distribution transparencies. The proposed methodology is placed within the general context of Model-Driven Architecture (MDA) development. Specifical...
详细信息
This paper proposes a principled methodology for the realization of distribution transparencies. The proposed methodology is placed within the general context of Model-Driven Architecture (MDA) development. Specifically, it consists of a UML-based representation for the specification of platform independent models of a system. Moreover, it comprises an automated aspect-oriented method for the refinement of platform independent models into platform specific ones (i.e. models describing the realization of the system's distribution transparency requirements, based on a standard middleware platform like CORBA, J2EE, COM +, etc.). Finally, the proposed methodology includes an aspect-oriented method for the generation of platform specific code from platform specific models. (C) 2005 Elsevier B.V. All rights reserved.
We study the incorporation of generic types in aspect languages. Since advice acts like method update, such a study has to accommodate the subtleties of the interaction of classes, polymorphism and aspects. Indeed, si...
详细信息
We study the incorporation of generic types in aspect languages. Since advice acts like method update, such a study has to accommodate the subtleties of the interaction of classes, polymorphism and aspects. Indeed, simple examples demonstrate that current aspect compiling techniques do not avoid runtime type errors. We explore type systems with polymorphism for two models of parametric polymorphism: the type erasure semantics of Generic Java, and the type carrying semantics of designs such as genetic C#. Our main contribution is the design and exploration of a source-level type system for a parametric OO language with aspects. We prove progress and preservation properties. We believe our work is the first source-level typing scheme for an aspect-based extension of a parametric object-oriented language. (c) 2006 Elsevier B.V. All rights reserved.
Software composition for timely and affordable software development and evolution is one of the oldest pursuits of software engineering. In current software composition techniques, Component- Based Software Developmen...
详细信息
Software composition for timely and affordable software development and evolution is one of the oldest pursuits of software engineering. In current software composition techniques, Component- Based Software Development (CBSD) and aspect-oriented Software Development (AOSD) have attracted academic and industrial attention. Blackbox composition used in CBSD provides simple and safe modularization for its strong information hiding, which is, however, the main obstacle for a black box composite to evolve later. This implies that an application developed through black box composition cannot take advantage of aspect-oriented programming (AOP) used in AOSD. On the contrary, AOP enhances maintainability and comprehensibility by modularizing concerns crosscutting multiple components but lacks the support for the hierarchical and external composition of aspects themselves and compromises the important software engineering principles such as encapsulation, which is almost perfectly supported in black box composition. The role and role model have been recognized to have many similarities with CBSD and AOP but have significant differences with those composition techniques as well. Although each composition paradigm has its own advantages and disadvantages, there is no substantial support to realize the synergy of these composition paradigms;the black box composition, AOP, and role model. In this paper, a new composition technique based on representational abstraction of the relationship between component instances is introduced. The model supports the simple, elegant, and dynamic composition of components with its declarative form and provides the hooks through which an aspect can evolve and a parallel developed aspect can be merged at the instance level.
暂无评论