I’ve been studying “cohesion and couplings” in Software engineering course. The ancient PPT slide the professor gave me defines logical and coincidental cohesion like this.
- A logical cohesion routine is one whose elements contribute to activities of the same general category in which the activities to be executed are selected from outside the routine.
- A coincidental cohesion routine is one whose elements contribute to activities with no meaningful relationship to one another, and the activity to be executed is selected from outside the routine.
PS) I’ve found out that these are from 1988’s book The practical guide to structured systems design, not an ancient PPT slides lol.
So I understand these two. The module has logical cohesion when the operations inside the module are in the logically same category. The module has coincidental cohesion when the operations in the module are non-relevant. These parts are the same kind of explanation about logical/coincidental cohesion I could find on the Internet.
One thing is, I cannot find any references or posts in the Internet where those two types of module cohesion should have some kind of “flag parameter” to choose which operation to execute inside the module, except The practical guide to structured systems design, which found to be the exact book the professor excerpted from.
How should I except this information? Is my professor wrong? Or am I just focusing on meaningless details too much? How do you guys deal with this kind of situations when you think your professor might be wrong or teaching you very outdated information?
atai is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.