Description
Occurs when responsibilities emerge in our system that clearly should be moved to a separate group, but we are unable or unwilling to modify the group to accept these new responsibilities
Context
Derived from: “Incomplete Library Class”
Extending a group (node or collaboration) can generate additional work if the changes to the group involve changes in existing components or structure.
Cause
The developer of the group hasn’t provided the features you need or has refused to implement them.
Solution
Introduce extensions to realize features.
Example
A Node that should be an encompassing resource to model application platforms or Application Collaborations that do not fulfill their responsibilities.
Tags
soa, microservices, business, application, technology, legacy
Related smells
- Incomplete Abstraction (relates)