1章イントロダクション
本書を手に取ったということは、あなたはソフトウェアアーキテクチャに興味があるのだろう。あなたは、次のキャリアステップに進みたいと考えている開発者、あるいはソフトウェアアーキテクチャがうまく機能する理由を理解したいと思っているプロジェクトマネージャーかもしれない。または、まだ「ソフトウェアアーキテクト」という肩書きを持ってはいないけれど、アーキテクチャ決定(この用語の定義については後述する)をすでに下している「偶発的なアーキテクト」なのかもしれない。
なぜソフトウェアアーキテクチャの領域に足を踏み入れるのだろう。もしかすると、あなたは多くのプロジェクトで経験を積んでくる中で、システムの大きな部分がどのように組み合わさっているのかや数多くのトレードオフについてより深く理解したいと考えているのではないだろうか。もしそうなら、ソフトウェアアーキテクチャは、次のキャリアステップの明らかな選択肢だろう。
本書は、そんなあなたのための本だ。本書は「ソフトウェアアーキテクト」という非常に多面的な仕事の概要を提供する内容になっている。
ソフトウェアアーキテクトは、ソフトウェアシステムを深く理解し、複雑さを分析し、時には不完全な情報の中で重要なトレードオフの決定を下さなければならない。生成AIが徐々に自分たちから仕事を奪うのではないかと心配しているソフトウェア開発者は少なくない。その中には、ソフトウェア開発よりももっと生成AIによって置き換えることが難しいソフトウェアアーキテクチャの領域に移行することを考えている人もいる。ソフトウェアアーキテクトとは、複雑で変化するコンテキストの中でトレードオフを評価する、AIができないような決定を下す役割だ。
アーキテクチャとは、多くの技芸がそうであるように、コンテキストの中で初めて理解できるものだ。アーキテクトが下す決定の多くは、彼らが身を置いている現実の環境に基づいている。たとえば、20世紀後半では、共有リソースの利用をできる限り効率化することが、アーキテクチャの大きな目標の1つだった。OS、アプリケーションサーバー、データベースサーバーをはじめ、当時のインフラストラクチャはすべてが高価な商用製品だったからだ。 ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access