アーキテクトの審美眼

アーキテクトの審美眼 (DBMagazine SELECTION)

アーキテクトの審美眼 (DBMagazine SELECTION)

 アーキテクチャ設計、システム開発において、アーキテクトはなぜ必要なのか?そんな事を思っているなら本書を読んでみるといいかも、と思い読んでみました。うーん難しい。。。
 13章に以下の事が書かれています。

 本書で、ソフトウェア開発の複雑さには次の4つがあります。

  1. 問題領域自体の複雑さ(例えば、航空機の飛行制御に関連する知識の複雑さ)
  2. 実現すべきソフトウェアの規模、スケーラビリティの要求による複雑さ
  3. 予算、納期、組織、要求定義などビジネス的側面の解決のための複雑さ
  4. 開発言語、開発環境、プラットフォーム技術などソフトウェアが人工的に生み出した複雑さ

 ソフトウェア開発は、なぜ複雑で難しいんでしょうか?毎度考えますが、自分には、最適解が見つかりません。そもそも、アーキテクテャには、答えがないことを前提で取り組まないと行けないと最近は思います。
 システムのアーキテクチャは、完全な解はおそらくなく、制約付きの最適解を求められます。突き詰めると、プラットフォームや、ハードウェアの構成うんぬんは、クラウド化が進んだ方が皆が幸せになれるのか?なんて考えてみたりも最近します。