On the Need for On-Demand Remodularization

Several modern approaches to separation of concerns support identification and encapsulation of important concerns that could not traditionally be encapsulated. They generally require that the software be written up front with the appropriate modularization. However, as software evolves, the need arises for new concerns, often of new kinds. This position paper motivates the need for on-demand remodularization: the ability to remodularize according to new concerns, non-invasively, and without eliminating encapsulation based on prior concerns. The paper presents a specific example, intended as the basis of a challenge problem, and outlines a solution using Hyper/JTM .

[1]  D. L. Parnas,et al.  On the criteria to be used in decomposing systems into modules , 1972, Software Pioneers.

[2]  A. Fuggetta,et al.  Feature engineering [software development] , 1998, Proceedings Ninth International Workshop on Software Specification and Design.

[3]  Cristina V. Lopes,et al.  Aspect-oriented programming , 1999, ECOOP Workshops.

[4]  Harold Ossher,et al.  Multi-Dimensional Separation of Concerns and the Hyperspace Approach , 2002 .

[5]  Siobhán Clarke,et al.  Subject-oriented design: towards improved alignment of requirements, design, and code , 1999, OOPSLA '99.

[6]  Bashar Nuseibeh,et al.  Expressing the relationships between multiple views in requirements specification , 1993, ICSE '93.

[7]  Harold Ossher,et al.  Subject-oriented programming: a critique of pure objects , 1993, OOPSLA '93.

[8]  Trygve Reenskaug,et al.  System Design by Composing Structures of Interacting Objects , 1992, ECOOP.

[9]  Stanley M. Sutton,et al.  N degrees of separation: multi-dimensional separation of concerns , 1999, Proceedings of the 1999 International Conference on Software Engineering (IEEE Cat. No.99CB37002).