はじめに:公理を疑う
公理
確立され、一般に受け入れられているか、または自明の真実とみなされている言説、命題
数学者は、議論の余地なく真であるとされているもの、すなわち公理に基づいて理論を作る。ソフトウェアアーキテクトもまた、公理の上に理論を構築する。しかし、ソフトウェアの世界は、数学よりもソフトだ。ソフトウェアの世界では、理論のベースとなる公理を含め、基礎的な物事が急速に変化し続けている。
ソフトウェア開発のエコシステムは、動的な平衡状態の中にある。つまり、いかなる時点においても均衡が保たれている一方で、長期的に見ると動的な挙動を示す。ソフトウェア開発エコシステムのこの性質を表す、昨今における格好の例は、コンテナ化の高まりとそれに伴う変化だ。Kubernetes(https://kubernetes.io)のようなツールは、10年前には存在していなかった。それが今では、Kubernetesユーザーに向けたカンファレンスが存在するまでになっている。このようにして、ソフトウェア業界のエコシステムは無秩序に変化していっている。1つの小さな変化が別の小さな変化を引き起こし、それがどんどんと繰り返されるうちに、新しいエコシステムが形成されていく。
アーキテクトには、過去の時代から残されている前提や公理を疑うという重要な責任がある。ソフトウェアアーキテクチャに関する多くの書籍が書かれたのは現代ではないからだ。エンジニアリングプラクティスや運用のエコシステム、ソフトウェア開発プロセスの改善など、私たちを取り囲む動的な平衡状態を作り上げているすべてのものに照らして、基礎的な公理であっても疑っていくことがアーキテクトの仕事だと著者らは考えている。
歴史を注意深く追うことで、ソフトウェアアーキテクチャの分野がどのように発展してきたかを捉えられる。エクストリームプログラミング( ...
Get ソフトウェアアーキテクチャの基礎 ―エンジニアリングに基づく体系的アプローチ now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.