Design patterns: elements of reusable object-oriented software
Design patterns: elements of reusable object-oriented software
Using role components in implement collaboration-based designs
Proceedings of the 11th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Roles: conceptual abstraction theory and practical language issues
Theory and Practice of Object Systems - Special issue on subjectivity in object-oriented systems
Units: cool modules for HOT languages
PLDI '98 Proceedings of the ACM SIGPLAN 1998 conference on Programming language design and implementation
Role model based framework design and integration
Proceedings of the 13th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
N degrees of separation: multi-dimensional separation of concerns
Proceedings of the 21st international conference on Software engineering
MultiJava: modular open classes and symmetric multiple dispatch for Java
OOPSLA '00 Proceedings of the 15th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
On the representation of roles in object-oriented and conceptual modelling
Data & Knowledge Engineering
Jiazzi: new-age components for old-fasioned Java
OOPSLA '01 Proceedings of the 16th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
ACM Transactions on Software Engineering and Methodology (TOSEM)
CCFinder: a multilinguistic token-based code clone detection system for large scale source code
IEEE Transactions on Software Engineering
Conquering aspects with Caesar
Proceedings of the 2nd international conference on Aspect-oriented software development
Category Classes: Flexible Classification and Evolution in Object-Oriented Databases
CAiSE '94 Proceedings of Advanced Information Systems Engineering
ECOOP '01 Proceedings of the 15th European Conference on Object-Oriented Programming
Modularity in the new millenium: a panel summary
Proceedings of the 25th International Conference on Software Engineering
Object Identifiers and Identity: A Naming Issue
IWOOOS '95 Proceedings of the 4th International Workshop on Object-Orientation in Operating Systems
IEEE Transactions on Software Engineering
A Qualitative Comparison of Three Aspect Mining Techniques
IWPC '05 Proceedings of the 13th International Workshop on Program Comprehension
Classbox/J: controlling the scope of change in Java
OOPSLA '05 Proceedings of the 20th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Modular Software Design with Crosscutting Interfaces
IEEE Software
Conference record of the 33rd ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Traits: A mechanism for fine-grained reuse
ACM Transactions on Programming Languages and Systems (TOPLAS)
The paradoxical success of aspect-oriented programming
Proceedings of the 21st annual ACM SIGPLAN conference on Object-oriented programming systems, languages, and applications
User-changeable visibility: resolving unanticipated name clashes in traits
Proceedings of the 22nd annual ACM SIGPLAN conference on Object-oriented programming systems and applications
A Case Study Implementing Features Using AspectJ
SPLC '07 Proceedings of the 11th International Software Product Line Conference
Stateful traits and their formalization
Computer Languages, Systems and Structures
Objects as Actors Assuming Roles in the Environment
Software Engineering for Multi-Agent Systems V
Adding State and Visibility Control to Traits Using Lexical Nesting
Genoa Proceedings of the 23rd European Conference on ECOOP 2009 --- Object-Oriented Programming
A survey of automated code-level aspect mining techniques
Transactions on aspect-oriented software development IV
Systems evolution and software reuse in object-oriented programming and aspect-oriented programming
TOOLS'11 Proceedings of the 49th international conference on Objects, models, components, patterns
Chai: traits for Java-like languages
ECOOP'05 Proceedings of the 19th European conference on Object-Oriented Programming
Hi-index | 0.00 |
In object oriented languages the problem of crosscutting concerns, due to limitations in the composition mechanisms, is recurrent. In order to reduce this problem we propose to use roles as a way of composing classes that extends the Object Oriented approach and can be used to model crosscutting concerns. To support our approach we developed a role language that extends Java, while being compatible with existing virtual machines. As validation we conducted a case study using three open source systems. We identified crosscutting concerns in the systems and then modeled them using our role approach. Results show that roles are a viable option for modeling crosscutting concerns.