CAP定理のまね
CAP定理(Wikipedia 日本語版)では、
- 分散コンピュータシステムのマシン間の情報複製に関する定理。
- ノード間のデータ複製において、同時に次の3つの保証を提供することはできない
- 1. 一貫性・2. 可用性・3. 分断耐性
という定理が有るそうですが、それのまねをして見ようと思います。
それは、
- 1. インターフェース固定・2. 拡張に対する解放・3. 因果ダイアグラム保持
となると思います。CAP定理より、QCDF(Wikipedia 日本語版)の方が近いかも知れません。それは、
- 1. 品質・2. 価格・3. 納期や入手性・4. 柔軟性
です。
また、CLEAN(ソフトウェア品質 Wikipedia 日本語版)というのも有るそうで、
ですが、コストを度外視していると思います。
何で「因果ダイアグラム保持」出てくるのか?
因果ダイアグラムを保持しないと、いくらでも下請けから絞れるからです。QCDFの
- 2. 価格
に相当すると思います。
- 要求の変更はたとえ開発の後期であっても歓迎します。
変化を味方につけることによって、お客様の競争力を引き上げます。
という特性は、「因果ダイアグラム保持」の否定により成立し、それにより、
- 1. インターフェース固定
- 2. 拡張に対する解放
の両方を満たす事が可能になります。定額で、いくらでも働かせる事が出来るからです。
インターフェース固定と、拡張に対する解放は対立するのか?
すると思います。インターフェースを固定してこそ、
- ずっと使える自動テスト
が書けるので有り、拡張にたいする解放は、それを書く事の否定です。
モダンな考え方の中にも、すくみが内在されていた訳です。
逆に、anyの多用を許容する場面では、ずっと使える自動テストは書けないと思います。
結論
これからも「アジリティの対価」が十分で無い事で、プログラミングが嫌いになる人は存在し続けることでしょう。