From: On the identification of design problems in stinky code: experiences and tool support
Name | Description |
---|---|
Fat interface | Interface of a design component that offers only a general, ambiguous entry-point that provides non-cohesive services, thereby complicating the clients’ logic. |
Unwanted dependency | Dependency that violates an intended design rule. |
Component overload | Design components that fulfill too many responsibilities. |
Cyclic dependency | Two or more design components that directly or indirectly depend on each other. |
Delegating abstraction | An abstraction that exists only for passing messages from one abstraction to another. |
Scattered concern | Multiple components that are responsible for realizing a crosscutting concern. |
Overused interface | Interface that is overloaded with many clients accessing it, that is, an interface with too many clients. |
Unused abstraction | Design abstraction that is either unreachable or never used in the system. |