143 research outputs found

    Experience with statically-generated proxies for facilitating Java runtime specialisation

    Get PDF
    Issues pertaining to mechanisms which can be used to change the behaviour of Java classes at runtime are discussed. The proxy mechanism is compared to, and contrasted with other standard approaches to this problem. Some of the problems the proxy mechanism is subject to are expanded upon. The question of whether statically-developed proxies are a viable alternative to bytecode rewriting was investigated by means of the JavaCloak system, which uses statically-generated proxies to alter the runtime behaviour of externally-developed code. The issues addressed include ensuring the type safety, dealing with the self problem, object encapsulation, and issues of object identity and equality. Some performance figures are provided which demonstrate the load the JavaCloak proxy mechanism places on the system

    Empowering Collections with Swarm Behavior

    Full text link
    Often, when modelling a system there are properties and operations that are related to a group of objects rather than to a single object. In this paper we extend Java with Swarm Behavior, a new composition operator that associates behavior with a collection of instances. The lookup resolution of swarm behavior is based on the element type of a collection and is thus orthogonal to the collection hierarchy

    Building dynamic WAP applications using UWE

    Get PDF
    The great advance of the communications and the importance gained by the mobile systems have increased the development of WAP (Wireless Application Protocol) applications, nevertheless at the present time do not exist methodologies specifically designed for the WAP applications development process. However, in the last years, several methodologies for the web applications development process have been proposed. One of them is UWE (UML-based Web Engineering) [1]. Although this methodology has specifically been developed for web applications, the similarity between web and WAP systems allows us to propose the use of it, to generate a design stage approach for WAP applications and then to create a specific extension of UWE to build WAP applications. In order to obtain this, we present a new UWE based model called WAP navigational model for the navigational design and presentational design steps, which we can use to design WAP systems improving the WAP applications development process.Eje: I - Workshop de Ingeniería de Software y Base de DatosRed de Universidades con Carreras en Informática (RedUNCI

    Issues of GIS data management

    Get PDF

    Building dynamic WAP applications using UWE

    Get PDF
    The great advance of the communications and the importance gained by the mobile systems have increased the development of WAP (Wireless Application Protocol) applications, nevertheless at the present time do not exist methodologies specifically designed for the WAP applications development process. However, in the last years, several methodologies for the web applications development process have been proposed. One of them is UWE (UML-based Web Engineering) [1]. Although this methodology has specifically been developed for web applications, the similarity between web and WAP systems allows us to propose the use of it, to generate a design stage approach for WAP applications and then to create a specific extension of UWE to build WAP applications. In order to obtain this, we present a new UWE based model called WAP navigational model for the navigational design and presentational design steps, which we can use to design WAP systems improving the WAP applications development process.Eje: I - Workshop de Ingeniería de Software y Base de DatosRed de Universidades con Carreras en Informática (RedUNCI

    Pluggable AOP: Designing Aspect Mechanisms for Third-party Composition

    Full text link
    Studies of Aspect-Oriented Programming (AOP) usually focus on a language in which a specific aspect extension is integrated with a base language. Languages specified in this manner have a fixed, non-extensible AOP functionality. In this paper we consider the more general case of integrating a base language with a set of domain specific third-party aspect extensions for that language. We present a general mixin-based method for implementing aspect extensions in such a way that multiple, independently developed, dynamic aspect extensions can be subject to third-party composition and work collaboratively

    A Systematic Aspect-Oriented Refactoring and Testing Strategy, and its Application to JHotDraw

    Full text link
    Aspect oriented programming aims at achieving better modularization for a system's crosscutting concerns in order to improve its key quality attributes, such as evolvability and reusability. Consequently, the adoption of aspect-oriented techniques in existing (legacy) software systems is of interest to remediate software aging. The refactoring of existing systems to employ aspect-orientation will be considerably eased by a systematic approach that will ensure a safe and consistent migration. In this paper, we propose a refactoring and testing strategy that supports such an approach and consider issues of behavior conservation and (incremental) integration of the aspect-oriented solution with the original system. The strategy is applied to the JHotDraw open source project and illustrated on a group of selected concerns. Finally, we abstract from the case study and present a number of generic refactorings which contribute to an incremental aspect-oriented refactoring process and associate particular types of crosscutting concerns to the model and features of the employed aspect language. The contributions of this paper are both in the area of supporting migration towards aspect-oriented solutions and supporting the development of aspect languages that are better suited for such migrations.Comment: 25 page
    • …
    corecore