Multidimensional Separation of Concerns *

Separation of concerns has been widely recognized to be a major issue in software design. Unfortunately, the definition of what concerns have to be considered of primary importance, and which is the best way to support software development based on those concerns are still missing. This paper presents three examples of separation of concerns and discusses possible solutions. The taken approach is the definition of a conceptual model that underlies the definition of a reference platform to support the development of software. The approach is similar to the one taken be the Aspect-Oriented Programming, even if the projects described in the paper were not directly influenced by it. The current work is toward the definition of language constructs that unify the solutions and provide a start to develop a concern-oriented language.