Light years beyond Multi-dimensional separation of concerns is a new subfield of software engineering. Overlapping and interacting concerns.
Separation of concerns is a concept that is at the core of software engineering.
Concerns are the primary motivation for organizing and decomposing software into manageable and comprehensible parts. Many kinds of concerns may be relevant to different developers in different roles, or at different stages of the software lifecycle. For example, the prevalent concern in object-oriented programming is the class , which encapsulates data concerns. Feature concerns, like printing, persistence, and display capabilities, are also common, as are concerns like aspects, roles, variants, and configurations. These goals, while laudable, have not yet been achieved in practice.