Cohesion and Coupling MCQs: 10 Solved Questions on Functional Independence

Practise 10 solved MCQs on cohesion, coupling, functional independence, module dependencies, and the distinctions that make closely matched options easier to separate.

KnowledgeGate Team

Exam prep & CS education

Updated 24 Sep 20267 min read

Functional independence is the design goal behind the familiar rule, high cohesion and low coupling. Questions become difficult when they ask you to distinguish neighbouring cohesion types, recognise a coupling level, or count dependency arrows. Attempt every question before reading its answer, then check why each incorrect option fails.

1. Cohesion, coupling and functional independence in one picture

Cohesion measures how closely the elements inside one module serve one purpose. Coupling measures how strongly separate modules depend on one another. A maintainable design aims for high cohesion inside modules and low coupling between them. The wider Software Engineering for CS teaching exams guide places this idea within the full design syllabus.

Consider a MarksSummary module that receives [42, 58, 71]. It computes sum = 42 + 58 + 71 = 171, then average = 171 / 3 = 57. The chain read marks → compute sum → compute average → display has sequential cohesion because one operation's output feeds the next operation.

Now let MarksSummary pass only average = 57 to DisplayResult. That narrow value transfer is data coupling. If it instead passes {studentId: "S17", marks: [42, 58, 71], sum: 171, average: 57} while DisplayResult reads only average, the modules share an unnecessary composite structure. That is stamp coupling.

Two ladders side by side: cohesion ranked functional down to coincidental, and coupling ranked data up to content.

MCQs reward fast recognition and ranking. Software Design in Software Engineering: Concepts, Coupling, Cohesion and a Worked Architecture develops the wider architecture example and design context.

2. MCQs on the design goal and core definitions

Q1. Do not swap cohesion and coupling

Given below are two statements: one is labelled Assertion A and the other Reason R.
Assertion A: Cohesion is a qualitative indication of the degree to which a module can be written more compactly and is able to complete its function in a timely manner.
Reason R: Cohesion is a qualitative indication of the degree to which a module is connected to other modules and the outside world.
Choose the most appropriate answer.

  • A. Both A and R are correct and R is the correct explanation of A.

  • B. Both A and R are correct but R is NOT the correct explanation of A.

  • C. A is correct but R is not correct.

  • D. A is not correct but R is correct.

Answer: C (the keyed answer to this source question)

The source question keys C. Reason R is false because it describes coupling, not cohesion. For revision, use the durable definition: cohesion measures how closely a module's internal elements serve one purpose; the assertion's compactness and timeliness wording is not the standard definition.

Q2. Identify the desirable combination

A good software design must have

  • A. High module coupling, High module cohesion

  • B. High module coupling, Low module cohesion

  • C. Low module coupling, High module cohesion

  • D. Low module coupling, Low module cohesion

Answer: C

High cohesion keeps each module focused on one coherent responsibility. Low coupling limits the number and strength of dependencies across modules. Together they produce functional independence.

3. MCQs on cohesion types and their ranking

Q3. Same input and output

Modules X and Y operate on the same input and output, then the cohesion is

  • A. Logical cohesion

  • B. Sequential cohesion

  • C. Procedural cohesion

  • D. Communicational cohesion

Answer: D

Communicational cohesion groups operations because they use the same data or contribute to the same output. In sequential cohesion, the result of one step becomes the input to the next, as in the marks example.

Q4. Rank cohesion from best to worst

Arrange these cohesion types from best to worst:
(A) Logical cohesion
(B) Sequential cohesion
(C) Communicational cohesion
(D) Temporal cohesion
(E) Procedural cohesion
Choose the correct sequence.

  • A. A → D → E → C → B

  • B. A → E → D → C → B

  • C. B → E → C → D → A

  • D. B → C → E → D → A

Answer: D

Among these forms, the order is Sequential > Communicational > Procedural > Temporal > Logical. The sequence moves from a strong data-flow relationship towards grouping based merely on execution time or a broad logical category.

Q5. Which forms beat procedural cohesion?

Which cohesion types are better than procedural cohesion?
(A) Functional cohesion
(B) Sequential cohesion
(C) Temporal cohesion
(D) Communicational cohesion
(E) Logical cohesion
Choose the correct combination.

  • A. A and D Only

  • B. A, B and D Only

  • C. C, D and E Only

  • D. A, D and E Only

Answer: B

Functional, sequential and communicational cohesion each provide a stronger organising relationship than a prescribed sequence alone. Temporal and logical cohesion are weaker because timing or a control category is a less focused reason to group responsibilities.

4. MCQs on coupling types and severity

Q6. Separate common, control, stamp and content coupling

Which statements about module coupling are correct?
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 another module's internal working.
Choose the correct combination.

  • A. P and Q only

  • B. P and R only

  • C. Q and R only

  • D. All of P, Q and R

Answer: B

P defines common coupling, and R defines content coupling. Q actually describes stamp coupling. Control coupling occurs when passed information, such as a flag, directs another module's behaviour.

Q7. Recognise stamp coupling from a shared data type

In _____, modules A and B make use of a common data type, but perhaps perform different operations on it.

  • A. Data coupling

  • B. Stamp coupling

  • C. Control coupling

  • D. Content coupling

Answer: B

Stamp coupling appears when modules depend on the shape of a composite record or class. Passing the whole student record when the receiver needs only average = 57 creates exactly this structure-level dependency.

Q8. Order coupling from lowest to highest

Arrange these coupling types from lowest to highest:
(A) Common coupling
(B) Stamp coupling
(C) Control coupling
(D) External coupling
(E) Content coupling
Choose the correct sequence.

  • A. E, A, C, B, D

  • B. D, B, A, E, C

  • C. B, C, D, A, E

  • D. C, A, B, D, E

Answer: C

For the listed types, the increasing order is Stamp < Control < External < Common < Content. Shared global state gives common coupling hidden dependencies, while content coupling is worst because one module reaches into another module's internals.

5. MCQs on dependency metrics

Q9. Count fan-in correctly

FAN IN of a component A is defined as

  • A. Number of components that can call or pass control to component A.

  • B. Number of components that are called by component A.

  • C. Number of components related to component A.

  • D. Number of components dependent on component A.

Answer: A

Draw incoming arrows before counting. If B, C and D call A, then fan-in(A) = 3; if A calls E and F, then fan-out(A) = 2. The precise caller definition avoids the ambiguous word "dependent".

Q10. Convert dependent modules into a fraction

If S₁ is the total number of modules in the program architecture and S₃ is the number whose correct function depends on prior processing, what fraction of modules is not dependent on prior processing?

  • A. 1 + S₃/S₁

  • B. 1 − S₃/S₁

  • C. 1 + S₁/S₃

  • D. 1 − S₁/S₃

Answer: B

The options are normalised fractions, so (S₁ − S₃)/S₁ = 1 − S₃/S₁. With S₁ = 6 and S₃ = 2, the absolute number is 6 − 2 = 4. The requested fraction is 4/6 = 2/3, which matches option B.

Module graph with fan-in(A) = 3 and fan-out(A) = 2, beside six modules where two are prior-dependent, giving 4/6 or 2/3.

6. What these questions reveal about exam traps

Most errors here come from confusing two related labels. Use the deciding test in the final column instead of relying on a half-remembered keyword.

Trap

Distinction

Deciding test

Inside vs between

Cohesion vs coupling

Are you judging relationships within one module or dependencies across modules?

Same data vs data flow

Communicational vs sequential cohesion

Do operations share data, or does one step's output feed the next?

Whole record vs control flag

Stamp vs control coupling

Is the receiver given a composite structure or information that directs behaviour?

Incoming vs outgoing arrows

Fan-in vs fan-out

Do arrows enter the component or leave it?

For every miss, record the reason, not only the correct letter. Label it as a definition swap, ladder-order error, interface-classification error, or direction/count error. Then practise the same distinction in the IBPS SO IT Officer: Software Engineering PK Guide.

7. Short version and the next practice step

Functional independence means that a module does one coherent job and exposes as little dependency as necessary. Redraw both ladders from memory, then reattempt Q4, Q8, Q9 and Q10 after one day. Use NTA-UGC-NET Paper - 2 for the full Software Engineering sequence. For a placement-oriented route, continue with CS Fundamentals for Placements by Sanchit Sir. The best next step is simple: explain every answer aloud before checking the letter.