A Global Hub is a component that has both, a high number of global dependents and is also globally dependent on too many components. In other words, it is both a global butterfly and a global breakable. Thus, it has a high number of both global incoming dependencies as well as global outgoing dependencies. The presence of global hubs results in high maintenance issues in the system.
- Global Hubs break the reusability of modules and make the code difficult to understand and to maintain.
- A Global Hub is directly or indirectly dependent on many other classes.
- A Global Hub object is used by too many other objects.
- Dependencies can be in the form of method calls, member access
andlocal variable access.
- Global Hub has both incoming and outgoing dependencies.
- C2, C3, C5, C7 are incoming dependencies and C4, C1, C21 are outgoing dependencies.