David Linthicum chats about coupling and cohesion. As I am reading through it, I get feeling that I am looking in on some isolated culture in a remote region of the world where the language is remarkably similar to the language I know, but the meanings are completely different.
His "definitions" of coupling and cohesion both describe coupling. There is a simple way to tell the difference between the two, though. Coupling is a relationship between concepts. Cohesion, on the other hand is a metric reserved for a single concept (or a group of related concepts treated as a whole.) Cohesion is not really about relatedness. Cohesion is also not about completeness.
Cohesion is more about integrity. Dogs bark and Dogs wag their tails. Neither is necessarily related or similar, but if they were to be a part of a model of Dog, that model would be cohesive. Evaluating cohesion is about evaluating the 'Dogness' of the Dog model.
The worst thing, to me, is that he chooses to label service-orientation as coupling and cohesion as "information exchange."
I am sure that he has some actual advise to deliver, but I am lost in semantics.
I believe he is basically saying that sharing information imposes fewer constraints that expecting a service to exhibit a certain behavior, and so the coupling is looser. No arguments there. But really, did it need more than one sentence? And stating that the so-called "cohesive" (i.e. information exchange) systems are independent of each other seems a little generous.
Posted by: Richard Veryard | 2005.04.08 at 07:11 PM
Posted by: carole Kithinji | 2007.09.25 at 03:12 AM