Accidental complexity
Accidental complexity is a problem of complexity in
computer programs or its development process (
computer programming), that can be avoided. While some complexities are inherent, others are due to misunderstanding of problems, ineffective planning and unimportance of the project. Many prototypes likely happen to be too complex because programmers use those prototypes to understand the matters they face. It is usually considered one of the
anti-patterns.