title: Comprehensive Aspectual UML approach to support AspectJ.
abstract: Unified Modeling Language is the most popular and widely used Object-Oriented modelling language in the IT industry. This study focuses on investigating the ability to expand UML to some extent to model crosscutting concerns (Aspects) to support AspectJ. Through a comprehensive literature review, we identify and extensively examine all the available Aspect-Oriented UML modelling approaches and find that the existing Aspect-Oriented Design Modelling approaches using UML cannot be considered to provide a framework for a comprehensive Aspectual UML modelling approach and also that there is a lack of adequate Aspect-Oriented tool support. This study also proposes a set of Aspectual UML semantic rules and attempts to generate AspectJ pseudocode from UML diagrams. The proposed Aspectual UML modelling approach is formally evaluated using a focus group to test six hypotheses regarding performance; a "good design" criteria-based evaluation to assess the quality of the design; and an AspectJ-based evaluation as a reference measurement-based evaluation. The results of the focus group evaluation confirm all the hypotheses put forward regarding the proposed approach. The proposed approach provides a comprehensive set of Aspectual UML structural and behavioral diagrams, which are designed and implemented based on a comprehensive and detailed set of AspectJ programming constructs.
authors.affiliation: Faculty of Computer Science and Information Technology, UKM, 43600 Bangi, Selangor, Malaysia.
authors.forename: Aws
authors.initials: A
authors.lastname: Magableh
authors.affiliation: Faculty of Computer Science and Information Technology, UKM, 43600 Bangi, Selangor, Malaysia.
authors.forename: Zarina
authors.initials: Z
authors.lastname: Shukur
authors.affiliation: Faculty of Computer Science and Information Technology, UKM, 43600 Bangi, Selangor, Malaysia.
authors.forename: Noorazean Mohd
authors.initials: NM
authors.lastname: Ali
mesh_terms: D007802:Language; D008962:Models, Theoretical; D012984:Software; D012985:Software Design