Glossary · Automation software engineering and architecture
Tight coupling
Also known as: Strong coupling
German: Enge Kopplung
In software and systems design, tight coupling is a high degree of dependency between components, such that a change in one component frequently requires changes in others or they cannot be used or tested separately.
- Software engineering
In one sentence
Tight coupling is strong dependency between components, so changing one often forces changes in others.
Example
The HMI reads and writes PLC variables by absolute memory addresses, so every change in the PLC data layout breaks the HMI.
How it applies
- Engineering: Tight coupling arises from shared global data, direct access to internals, hard-coded addresses and synchronous chains of calls. Defined interfaces and messaging reduce it.
- Maintenance: Tightly coupled systems make Impact analysis difficult, since changes propagate in unexpected ways. See Change propagation.
- Documentation: Tight coupling between documentation and software, such as screenshots of every screen or hard-coded parameter tables, also multiplies update effort. Generating reference data from the source reduces it.
Tight vs. loose coupling
Loose coupling means components interact through stable, minimal interfaces and can change independently. Some tight coupling is acceptable where performance or real-time demands require it, if it is deliberate and documented.