■ [開発][プログラミング]割れた窓
ソフトウェアの無秩序さは加速度的に増大する。そのため、質の悪い設計を行わない、または修正することが出来ない理由を明記するなど最初の無秩序を作らないことが重要である。
「割れた窓理論」
http://police.pref.fukuoka.jp/gaihan/page3.html
不具合やまずい設計、無秩序なデータ管理などを放置してそれがある閾値を超えてしまうと、その弊害はプロジェクト全体に広がって作業効率が大幅に落ちたり、場合によってはプロジェクトの進行と継続に多大な影響を与えることもある。
割れた窓を放置してその結果スラム街のようになってしまったシステムに秩序を取り戻すには、システム全体の整理を行って不要な部分は切り捨て、重複している部分や整理されていない箇所を再構築し、どうしようもない汚い部分はラップして覆い隠す、などの対処で無秩序を減らし、整理された部分がある閾値を超えて創発的に広がっていくような状態に持っていかなくてはならない。
システムのチェックを強化し、エラーログなどを吐くようにして問題発生時の原因究明の手間を減らしたり、メモリやCPUの利用状況を簡単に取得できるようにしてリソースの管理を徹底する、ワークフローを整理して人為的ミスを減らせるように、など秩序を回復するための手間は惜しんではならない。せめて自分の手の届く範囲から少しづつでも、綺麗な状態をとりもどせるようにしていきたいと思う。