ソフトウェアアーキテクチャに関する一考 †
要約 †
- 本節では、ソフトウェアアーキテクチャについて通常は触れられない重要な項目について扱う。それが、人とビジネスだ。
依存性を管理するためにサブシステムを設計する
- サブシステムを作る際の重要な基準は開発組織間の依存関係を単純にしておくこと
- アーキテクチャ上の選択は技術的な正当性ではなく、開発グループの依存関係を管理しやすくすることを優先していた
サブシステムは人間のやる気や願望に応じて設計される
- アーキテクチャを構築する際には、アーキテクチャを構築する責任を負ったチームの希望、体験、夢、恐れ、好みについて考慮しなければならない
- 技術主体の判断とビジネス主体の判断は、アーキテクチャの技術的な構造がチームの社会的な構造を形作るにつれて衝突する
偉大なアーキテクチャへの屈服
- 「屈服」とは、アーキテクトや開発チームが、自分たちが正しいと考えるに至った経験や期待を捨て、アーキテクチャを実現する上で問題領域に引きずられてしまうこと
- 自分の判断よりも、顧客とその要求に引きずられてしまうことも意味する
美は見る者の目に宿る
- よいアーキテクチャの定義は人によってさまざまである
- 製品が利益を生んでいれば企業にとってはよいかもしれないが、アーキテクチャが時代遅れだと保守チームにとっては悪夢だ
- アーキテクチャが優れていても別の問題で失敗することもある
担当者のつぶやき †
みんなの突っ込み †