hamburger menu
All Coursesall course arrow
adda247
reward-icon
adda247
    arrow
    arrow
    arrow
    Arrange the following in the increasing order of coupling from lowest coupling to highest coupling: A. Common Coupling B. Stamp Coupling C. Cont
    Question

    Arrange the following in the increasing order of coupling from lowest coupling to highest coupling:
    A. Common Coupling
    B. Stamp Coupling
    C. Control Coupling
    D. External Coupling
    E. Content Coupling
    Choose the correct answer from the options given below:

    A.

    E, A, C, B, D

    B.

    D, B, A, E, C

    C.

    B, C, D, A, E

    D.

    C, A, B, D, E

    Correct option is C

    In software engineering, coupling refers to the degree of interdependence between software modules. The lower the coupling, the better the modularity and maintainability of the system.

    The correct answer is (c) B, C, D, A, E because it orders the coupling types from the weakest to the strongest within the given set. Stamp coupling is the least intrusive here—modules share a composite record/struct and typically use only parts of it. Control coupling is stronger since one module steers another’s logic via flags or control parameters. External coupling binds modules to outside formats/devices/interfaces, increasing rigidity beyond mere control flow. Common coupling shares global data, creating broad, hard-to-track dependencies. Content coupling is the strongest (worst), where a module reaches into another’s internals or its code structure.

    Information Booster

    1. Definition Ladder (weak → strong in this list): Stamp (B) → Control (C) → External (D) → Common (A) → Content (E).
    2. Stamp Coupling (B):
      • Type: Share a whole record/struct; callee uses only some fields.
      • Example: Passing Customer when only Customer.id is used.
      • Applications/Uses: Common in APIs where DTOs are passed; acceptable when records are stable.
      • Advantages: Lower logical dependency than control/common/content; clearer interfaces than globals.
      • Disadvantages: Over-passing data can hide what’s truly needed; potential for unintended future use of extra fields.
    3. Control Coupling (C):
      • Type: Caller sends flags/modes that alter callee’s internal flow.
      • Example: processOrder(order, isExpress=true).
      • Applications/Uses: Mode switches, feature toggles.
      • Advantages: Single entry point for multiple behaviors.
      • Disadvantages: Logical entanglement; callee behavior depends on external control knowledge.
    4. External Coupling (D):
      • Type: Dependence on external data formats, protocols, device interfaces, environment variables.
      • Example: Two modules tightly bound to a specific CSV column order or hardware driver spec.
      • Applications/Uses: File I/O, device comms, third-party protocol integrations.
      • Advantages: Standardization through external contracts.
      • Disadvantages: Fragile to external changes; versioning/compatibility burdens.
    5. Common Coupling (A):
      • Type: Multiple modules share the same global data area/state.
      • Example: Global configuration map read/written by many modules.
      • Applications/Uses: Legacy systems, quick prototyping.
      • Advantages: Easy access to shared state.
      • Disadvantages: Hidden side effects, poor testability, tight ripple effects across the system.
    6. Content Coupling (E):
      • Type: One module accesses/modifies another’s internal data or jumps into its code.
      • Example: Directly manipulating another class’s private fields or using offset-based memory pokes.
      • Applications/Uses: Rarely justified; seen in low-level hacks/legacy code.
      • Advantages: None architecturally; only short-term hacks.
      • Disadvantages: Breaks encapsulation; maximal fragility; maintenance nightmare.
    7. Practical Tip (Exam & Projects): Prefer interfaces that pass only needed data (data coupling, not in options). If you must pass a struct, keep it stable and documented (stamp). Avoid control flags when separate functions or strategy patterns can express intent. Treat globals as last resort; never reach into internals.

    Additional Knowledge:
    · Lower coupling is desirable in software design as it increases modularity, testability, and maintainability.
    · High coupling increases complexity, risk of errors and tight dependency, making changes harder to manage.

    Free Tests

    Free
    Must Attempt

    Basics of Education: Pedagogy, Andragogy, and Hutagogy

    languageIcon English
    • pdpQsnIcon10 Questions
    • pdpsheetsIcon20 Marks
    • timerIcon12 Mins
    languageIcon English
    Free
    Must Attempt

    UGC NET Paper 1 Mock Test 1

    languageIcon English
    • pdpQsnIcon50 Questions
    • pdpsheetsIcon100 Marks
    • timerIcon60 Mins
    languageIcon English
    Free
    Must Attempt

    Basics of Education: Pedagogy, Andragogy, and Hutagogy

    languageIcon English
    • pdpQsnIcon10 Questions
    • pdpsheetsIcon20 Marks
    • timerIcon12 Mins
    languageIcon English
    test-prime-package

    Access ‘UGC NET Computer Science’ Mock Tests with

    • 60000+ Mocks and Previous Year Papers
    • Unlimited Re-Attempts
    • Personalised Report Card
    • 500% Refund on Final Selection
    • Largest Community
    students-icon
    354k+ students have already unlocked exclusive benefits with Test Prime!
    Our Plans
    Monthsup-arrow