全体最適とアーキテクチャ

河合さんの記事を読んでちょっと考えた。

http://www.atmarkit.co.jp/farc/rensai/column/world05/world05a.html

(システムの)アーキテクチャとは技術の問題ではない。業務要件、運用要件、開発要件(っていう言葉はいま考えたんだけど、あるかしら?)、プロジェクトしての要件(コスト、期間、リソース、品質、その他)を実現するように技術をうまく選定して組み合わせることである。アーキテクチャを作るには、全体的な視野が必要になる。

そう考えると、うちの会社で言っている「PM」というのはやっぱり非常にあいまいで担当範囲が異常に広くとても標準化できるようなものではないことがわかる。少なくとも、プロジェクトのマネジメント、業務要件、アーキテクト、などなどを中途半端にまとめて「PMの仕事」としている。PMもアーキテクトも(それからたぶん営業とかも)、それぞれに全体的な視野、というか、全体を見るようにしなくてはならない。ただし、それぞれに観点または価値観が違っている。(PMはすべての観点を持てるといいとは思う。)

全体的な視野を持ってアーキテクチャを作る、それ自体はいいんだけど、アーキテクチャはまた広い範囲に影響があるので、複数のステークホルダと関わる場面が出てくる。アーキテクチャの全体的なバランスを維持するためには、ステークホルダに泣いてもらう(たとえば汎用機を切り捨てるとか)ことも起きるはずである。そのような調整や折衝をアーキテクトという担当者がするべきかどうかは別として、アーキテクチャを作るという仕事の中にはそうした問題もついてまわるのではないか。