An Agile Way - 「変更しやすい」ことが、よい設計
『アジャイルのように、「変更」を基本(すべての機能追加は変更)とするプロセスでは、変更容易性が
その設計を使うチームの生産性そのものになりますね』
変更が入らないシステム開発/プロジェクトなんて見たことがない(というか、人生そのものが変更
だらけだw)。特に新しいものをゼロから作る場合、頻繁に変更が入ることを前提にする方がいい。
人間が集まって作るものだし、それぞれの人間がそれぞれの立場に従って別な思惑を持ってるし :P
あと再利用を見据えた設計ってすごく難しいことだと思うし、そもそも「見据える」分だけコスト増だよね。
再利用性ってのも少しは意識するけど、自分の場合はそこはあまり囚われないようにして、理解のしやすさや変更のしやすさの方を重視してる。だって開発プロジェクトってメンバーの入れ替わりが結構あるし、そのメンバーのスキルだってバラバラだからね。
この記事では上記のような感覚的な考えじゃなくもっと拡張された理論を展開してて、読んでみて全体的にナルホドナルホド同意モード。勉強になるね :D
理想・完全を追い求めるのって楽しいものだし、目標上限としてある程度のイメージを持っておくのは大事なことだし、更に前向きに考えると「自分の器を広げる」ために完璧に挑んでみるって行動はとても大切だと思う。でも、それをそのまま、制約やしがらみの多い普段の仕事に持ち込もうとすると、とたんに破綻し始めるよね。
自分は「人間だからね」って言葉をよく口にするんだけど、これは物事を考えるときの基本の一つとしてずっと忘れずにいたいと思う。