Subject-oriented programming: a critique of pure objects
OOPSLA '93 Proceedings of the eighth annual conference on Object-oriented programming systems, languages, and applications
Design patterns: elements of reusable object-oriented software
Design patterns: elements of reusable object-oriented software
N degrees of separation: multi-dimensional separation of concerns
Proceedings of the 21st international conference on Software engineering
On the criteria to be used in decomposing systems into modules
Communications of the ACM
System Design by Composing Structures of Interacting Objects
ECOOP '92 Proceedings of the European Conference on Object-Oriented Programming
Partial behavioral reflection: spatial and temporal selection of reification
OOPSLA '03 Proceedings of the 18th annual ACM SIGPLAN conference on Object-oriented programing, systems, languages, and applications
An abstraction for reusable MDD components: model-based generation of model-based code generators
GPCE '08 Proceedings of the 7th international conference on Generative programming and component engineering
Technologies for Evolvable Software Products: The Conflict between Customizations and Evolution
Advances in Software Engineering
Applying test-driven code search to the reuse of auxiliary functionality
Proceedings of the 2009 ACM symposium on Applied Computing
A test-driven approach to code search and its application to the reuse of auxiliary functionality
Information and Software Technology
Hi-index | 0.00 |
Hyper/J supports a new approach to constructing, integrating and evolving software, called multi-dimensional separation of concerns. Developers can decompose and organize code and other artifacts according to multiple, arbitrary criteria (concerns) simultaneously—even after the software has been implemented—and synthesize or integrate the pieces into larger-scale components and systems. Hyper/J facilitates several common development and evolution activities non-invasively, including: adaptation and customization, mix-and-match of features, reconciliation and integration of multiple domain models, reuse, product line management, extraction or replacement of existing parts of software, and on-demand remodularization. Hyper/J works with standard Java software, not requiring special compilers or environments. This demonstration will show it in action in a number of software engineering scenarios at different stages of the software lifecycle.