Archive for category computer science

Multidimensional Separation of Concerns – Bad Command or File Name

There should really be a sarcasm tag in HTML.

Hyperspaces look to be a hugely advanced method for Multidimensional Separation of Concerns. Unfortunately, separation of concerns is one of the most slippery concepts in computer science. I will certainly remember the day when somebody actually explains what a concern is. And no, vacuous definitions don’t count.

Interestingly, the concept in Dijkstra’s “On the role of scientific thought” makes a lot of sense. The words aspect and concern are used in their natural English meaning, and the whole piece is essentially a call for divide and rule which is essential in all science, to use Ceteris Paribus assumptions. Else, can someone explain Dijkstra’s “It is being one- and multiple-track minded simultaneously.” in a computer science perspective?

Best worded definition so far is this: “So what is a cross-cutting concern? A concern is a particular concept or area of interest. For example, in an ordering system the core concerns could be order processing and manufacturing, while the system concerns could be transaction handling and security management. A cross-cutting concern is a concern that affects several classes or modules, a concern that is not well localized and modularized.”. At least, when a concept is not directly well defined, examples give you something to go by.

Leave a comment