13章チームのアーキテクト力を強める

現代のソフトウェアシステム開発は、とても多くの力を必要とする。コンテナ化、超安価なコンピュータ、オンデマンドクラウドインフラストラクチャといった技術の進歩によって、途方もない力と柔軟性が開発者の手に直接届くようになった。こうした途方もない力と柔軟性を持つ新しい技術に応じて、マイクロサービスやFaaS(Function as a Service)といった新興のアーキテクチャパターンでは、開発者が、自分たちの行った判断が品質特性などのシステム特性にどれくらい大きな影響を及ぼすかを強く意識していることが前提となっている。

現代のソフトウェアシステムにおいて、開発者アーキテクトの違いはほとんどない。これは、現代のソフトウェア開発チームが技術リーダーを必要としないという意味ではない。技術リーダーは現代のソフトウェア開発チームにおいても必要な存在であり、実際にチームの中でアーキテクトの役割を果たしている。しかし、今日のソフトウェアアーキテクト達が皆、自分をアーキテクトだと認識しているわけではない。現代のソフトウェア開発チームは、従来のトップダウン型アーキテクトとは異なる種類のリーダーを必要としている。

現代のソフトウェアアーキテクトは、開発チームに向けて設計するのではなく、開発チームと共に設計を行う。今日のアーキテクトは、コーチであり、メンターであり、技術の第一人者でもある。本書では、本質的なアーキテクチャとデザインの原則について説明するところから始めた。そして、 ...

Get Design It! ―プログラマーのためのアーキテクティング入門 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.