オブジェクト指向で作った時点で失敗

メンバ変数の状態の数だけパターンが増えていく
これを仕様で固定せず
オブジェクトの状態数×オブジェクトの状態数
の工数爆発を汎用性による品質の向上とか思ってるキチガイばっかで救いようがない

無限の汎用性とは無限のバグ数を持っていることを悟るべき