Abstract
This paper describes and analyzes the main differ-ences and advantages of the Join Point Interfaces (JPI) as an Aspect-Oriented Programming (AOP) approach for the modular software production concerning the standard aspect-oriented pro-gramming methodology for Java (AspectJ) to propose a structural modeling approach looking for modular software solutions. Using a Software Engineering point-of-view, we highlight the relevance of structural and conceptual design for JPI software applications. We model and implement a classic example of AOP using AspectJ and JPI as an application example to review their main difference and highlight the JPI consistency between products (models and code). Our proposal of UML JPI class diagrams allows the definition of oblivious classes which know about their JPI connections, an essential element to adapt and transform tradition like-AspectJ AOP solutions to their JPI version. Thus, for the modular software production and education, JPI seems an ideal software development approach.
Highlights
The methodology of Aspect-Oriented Programming (AOP) [1] allows to encapsulate or modularize the so-called “nonmodularizable cross-concerns” by classical programming methodologies such as object-oriented programming and structured programming
This article describe an exemplify a more precised and detailed structural modeling approach for Join Point Interfaces (JPI) solutions which represent advances to look for a complete JPI software development process
In this proposal of JPI UML class diagrams, a join point interface does not have attributes either methods, that is, a JPI interface represents a method without a signature
Summary
The methodology of Aspect-Oriented Programming (AOP) [1] allows to encapsulate or modularize the so-called “nonmodularizable cross-concerns” by classical programming methodologies such as object-oriented programming and structured programming. Neither the classes nor the methods of this example respect the principle of sole responsibility Such as Kiczales et al [1] pointed out, classic or traditional AOP permits the elimination of cross-concerns in classes of object-oriented software systems modularizing them as aspects. For getting software products with greater modularity, the works of [9] [10] [11] present Join Point Interfaces (JPI) to eliminate implicit dependencies between classes and aspects of classic AOP AspectJ-style. Authentication(..) ; authentication(..); logging(..); modular software, the main objective of this article is to apply JPI concepts on a base example to demonstrate and describe its practical advantages for getting modular aspect-oriented software solutions without implicit dependencies. Conclusions and future research work regarding behavioral modeling ideas using UML sequence diagrams for JPI solutions
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have
More From: International Journal of Advanced Computer Science and Applications
Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.