【ソフト開発 アンチパターン】Golden Hammer
どんな問題?
- ソフト開発チームがある特定の解決法やベンダー製品に親しみすぎると,
- どんな場面にもお馴染みの手法で解決しようとしてしまう
- 大抵の場合,問題に対してミスマッチな手法である
- 代替手段を探そうとしなくなる
症状と結果
- 多様な製品に対して,同じツールや製品を使ってしまう
- その解決法は悪いパフォーマンス,スケーラビリティ.
- システムアーキテクチャが特定の製品,アプリ,ベンダツールに依存している
- 開発者が業界から孤立する.その結果,代替手段に関する知識と経験の無さを露呈する
- 既存の投資を軽減しようとして,要件が完全には満たされない
- 既存製品が,設計やシステムアーキテクチャを規定する
原因
- 特定のアプローチで何度か成功している
- 技術の経験を積むために大きく投資している
- 業界内の他の企業からの距離が遠い
- 自分の占有商品に対して信頼をおいている
どう解決する?
以下の3つが重要
- 技術移転を可能にするには,ソフトウェアの境界をはっきりさせるべき
- ソフトコンポーネントの可換性を向上させる
- システムから実装の詳細を隠蔽させる
- 管理側の仕事としては,
- 柔軟なシステムとアーキテクチャにするべき
- 初期段階は高価
- 長期的には還元される
- 他の分野・背景をもつ人を雇うべき
- 柔軟なシステムとアーキテクチャにするべき