イ・ジュウソフトウェアプロジェクトにおいて、ソフトウェア・アーキテクトは他の誰よりも大きな影響力を持っていますので、アーキテクトは自らの判断に責任を負わなければなりません。多くの場合、失敗の根本的な原因は、ソフトウェアアーキテクトの判断ミス、あるいは詰めの甘さにあります。アーキテクチャーについて効果的な判断を下せるソフトウェア・アーキテクトになるにはどうすればよいのでしょうか。第1に、アジャイルであろうがなかろうが、自分の判断プロセスが完全には把握できていなければなりません。次の2つの条件が満たされるまで、アーキテクチャー上の決定を下したと言ってはなりません。アーキテクチャーの決定事項が瑣末(さまつ)な内容であることはまずありませんから、決定事項をきちんと文書化する必要があります。決定事項は、実体化し、後からたどれるようにしなければなりません。決定を実施する人や決定によって直接・間接的に影響を受ける人に決定事項を伝える必要があります。コミュニケーションとは、共通理解を生み出すことです。第2に、決定したアーキテクチャーを定期的にレビューしましょう。要件に対して決定がもたらした結果を検証します。アーキテクチャーの中でまだ有効な部分とそうでない部分を見極めます。第3に、アーキテクチャーとして決めたことが実際に行われるようにしなければなりません。多くのソフトウェア・プロジェクトは、設計段階にしかソフトウェア・アーキテクトを関与させません。設計が終わると、彼らは他のプロジェクトに移るか、コンサルタント契約満了になるかです。そのようなことで、アーキテクトが考え抜いて作ったアーキテクチャーを正しく実装させることができるでしょうか。彼らが最後まで参加していなければ、決定されたアーキテクチャーはよい考えとして祭り上げられるだけに留まるでしょう。最後に、決定の一部をドメインのエキスパートに委ねましょう。多くのアーキテクトは、すべての判断を下さなければならないと勘違いしており、自分のことを何でも知っているエキスパートとして位置づけています。実際には、全能の技術者などいません。アーキテクトには、非常に優れている領域、かなりよく知っている領域、単純にそれほど優れていない領域があります。優れたアーキテクトは、自分があまりよく知らないドメインについては、その道のエキスパートに譲るものです。ソフトウェアアーキテクトが知るべき97のこと当サイトはオライリー・ジャパンによる公式なサイトではありません。個々のエッセイは「CC-by-3.0-US」によってライセンスされています。2プロジェクト・マネジャーが知るべき97のこと。