アーキテクチャの採用理由を説明できるか?

atmarkitで「アーキテクチャの採用理由を説明できるか?」という記事を見かけました。
http://www.atmarkit.co.jp/farc/rensai/28it02/28it02.html

この記事にはもっともらしいことが書いてあります。しかし「ITアーキテクトが説明責任を全うすべきだ」という結論は弱すぎる。べき論と展開するだけでは何の解決にもつながりません。この記事を読んで「初めてこんなこと考えました、すばらしい」と言う開発者が存在するでしょうか。皆べき論としては理解しているのです。皆が理解した上でできていないということが問題なのです。そこで、問題をもう少し掘り下げてみようと思います。

基本的に、批判する側の問題とITアーキテクト側の問題、そしてそれらの問題を助長する構造的な問題があると考えられます。

批判する側の問題

あるソフトウェア開発プロジェクトにおいてITアーキテクトが新技術を採用した際に、「ITアーキテクトは顧客のことなど省みず、自分の興味のために新技術を利用した」という批判が起こることがあります。

私は、このような批判が批判のまま終わってしまっているのは、批判する側の責任であり、彼は批判するべきではないとおもいます。理由は明確です。批判することにより職場環境を悪くし、ITアーキテクトにとっても理由なき中傷にに他ならないからです。

では、このような批判をしてはいけないのかというとそんなことはなく、積極的に批判すべきです。問題は、批判だけで終わらないことです。ITアーキテクトに対して十分な説明を求め、双方納得するひつようがあります。ITアーキテクトが十分な説明をできない場合は、新技術を乱用した可能性が高いでしょう。

ITアーキテクト側の問題

ITアーキテクト側に説明する能力がない」、「意図的に技術を乱用しているために答えようがない」、「批判が正しいことを理解しているがプライドが高いために認めることができない」というようなことが考えられます。

私が過去にいた職場の一つは、PMが技術的方向性を決定し、新技術を乱用していました。それを疑問に思う開発者が説明を求めても「いや〜。いいと思うんだけどなぁ」、もしくはPM風を吹かせて反論は認めん的な口調で「これで行きます」としか言いませんでした。開発者のレベルが低いために、説明しても開発者が理解しきれない場合もありえますが、「いや〜。いいと思うんだけどなぁ」とか「これで行きます」は論外です。

構造上の問題

構造上の問題は、ITアーキテクトが説明責任をまっとうできない場合のセーフティーネットがないことです。ITアーキテクトアーキテクチャ作成の作業者であり責任者であることが原因です。この問題は、アーキテクチャ構築作業はITアーキテクトが行い、全責任はPMやQA等別の人間(組織ではなく個人)が負うことにより解決可能だと思われます。

疑問を感じたら、ITアーキテクトに説明を求め、回答が得られなければその責任者(PMやQA)に回答を求めます。その両社がまともに回答できなければ、後は神に祈りましょう。しかし、実際このような環境においては、高慢なITアーキテクトは開発者に説明を迫られても、自分の方が全てにおいて上だと思っているため相手にしないかもしれませんが、責任者がPMやQAであればムゲにできないはずです。