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

Read more

Summary

INTRODUCTION

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

RELATED WORKS
AspectJ-Style AOP
JPI UML CLASS DIAGRAM
CONCLUSIONS

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call

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.