UGC NET 2018 :
Software coupling involves dependencies among pieces of software called modules. Which of the following are correct statements with respect to module coupling?
P: Common coupling occurs when two modules share the same global data.
Q: Control coupling occurs when modules share a composite data structure and use only parts of it.
R: Content coupling occurs when one module modifies or relies on the internal working of another module.
Choose the correct answer from the code given below: Code:
(a) Q and R only
(b) P and R only
(c) All of P, Q and R
(d) P and Q only
Coupling is the degree of interdependence between software modules.
Types of coupling:
Content coupling :
One module uses the code of another module.
Common coupling :
Several modules have access to the same global data.
External coupling :
Two modules share an externally imposed data format, communication protocol, or device interface.
Control coupling :
One module controlling the flow of another, by passing it information on what to do.
Stamp coupling (data-structured coupling) :
Modules share a composite data structure and use only parts of it.
Data coupling :
Modules share data.
Subclass coupling :
Describes the relationship between a child and its parent. The child is connected to its parent, but the parent is not connected to the child.
Temporal coupling :
It is when two actions are bundled together into one module just because they happen to occur at the same time.
Dynamic coupling :
The goal of this type of coupling is to provide a run-time evaluation of a software system.
Semantic coupling :
This kind of coupling considers the conceptual similarities between software entities.
Logical coupling :
Logical coupling (or evolutionary coupling or change coupling) exploits the release history of a software system to find change patterns among modules or classes.