Enhancement Of Join Point Designation Diagrams (Jpdds) With Procedural Logic And Timing Constraint For Aspect-Oriented Modeling - Zarrin, Bahram (2010)

(untitled)
Aspect-Oriented Software Development (AOSD) is a technology that helps achieve better Separation of Concern (SOC) by providing mechanisms to localize cross-cutting concerns. Aspect-Oriented Modeling (AOM) is a design technique in AOSD which attempts to separate crosscutting concerns in the earliest steps of software development. Queries on join points are an essential part of AOSD. Join point queries are necessary to identify all relevant points in a program at which aspectual adaptations need to take place. Finding appropriate means to designate such sets of relevant join points is a highly active field of research in AOSD. Join Point Designation Diagrams (JPDDs) are means that visualize join point queries graphically and separately from the adaptation specification. They provide a visual means to constrain the selection of join points based on static and dynamic, structural and behavioral context. Based on the latest researches on JPDDs, it has been lacking of support in procedural logic by JPDDs such as loops, alternative structures, and conditional branching between object interactions in the selection criteria of the join points. It causes some join points could not be modeled by JPDDs when join point specifications get complex in aspect-oriented programs. There is another issue in JPDDs which is lack of supporting timing constraints in the join points. There is no way or notation to visualize any timing constraint in a JPDD. Since time constraint is a major issue in real time systems, this lack of support makes a gap between real time system design and join point diagrams. In order to solve the stated problems, three new extension models are introduced in this research based on UML 2.0. Loop Condition Constraint Model (LCCM) and Alternative Constraint Model (ACM) are presented which aim to support procedural logic and reduce the redundancy of the message flows in JPDDs. Time Constraint Model (TCM) is introduced to fill the gap between real time systems and JPDDs. Some examples are used to evaluate the proposed models. Each example firstly is modeled by JPDDs without the proposed extensions and then is modeled by JPDDs with the proposed extensions. The results of the experiments showed that the proposed extensions are able to support the missing structures and eased the designation of join points. Introducing the proposed extensions in this thesis creates new opportunities in the join point selection research.