THE FRUGAL ARCHITECT
TL;DR
アーキテクチャの設計決定にはトレードオフが伴います。技術的およびビジネス上のトレードオフを定期的に再評価し、ビジネスニーズに合わせてリソースを投資することが重要です。
はじめに
皆さんは「frugality」という単語をご存じですか?日英辞書を引いてみると、「倹約、質素」という訳が出ていました。しかし、この訳だけでは物足りません。
また、「ストイック」という表現もよく知られていますが、現代の用法は必ずしもその起源であるストア派の思想を完全には反映していません。そのため、本来の意味を深く理解するには、ストア派の教えを学ぶ必要があります。 frugalityというのをより深く知るためにも同じです。今回はfrugalityを主題とした、開発チームの基盤作りに関して語らせていただきたいと思います。
本論
去年12月のAWS 2023 re:Inventで言及されたThe Frugal Architectの一部の内容を共有させていただきます。
まず、下記はアマゾンのLeadership Principleの中、frugalityの部分を抜粋したものです。
Frugality
Accomplish more with less.
(少ないものでより多くを成し遂げる)
なるほど、frugalityには単純にお金に細かいだけではなく、コスパ、タイパの意味も含まれているようですね。
frugalityに関するもう一つの考え方が、アマゾンの開発核心部署から公開されましたので、その内容の一部を共有します。
Architecting is a Series of Trade-offs
Every design decision comes with trade-offs.
It's crucial to regularly re-evaluate technical and business trade-offs, and invest in resources aligned to business needs.
アーキテクチャ設計は一連のトレードオフ
すべての設計の決定にはトレードオフが伴う
技術的およびビジネス上のトレードオフを定期的に再評価し、ビジネスニーズに合わせたリソースへの投資することが大事だ
読んでいただいて当然だと思われるかもしれません。しかし、上述した様々なアプローチを投入することに引き換え、機会費用が払われていることを看過してはいけません。リソース制限がある中、投入対象が増えることはほかの箇所の投入を減らすことを意味します。つまり、予算制約の中、できるだけ多くの項目を優先順位で潰していくのが一番大事なことではないでしょうか。
終わりに
「frugality」の原則は、リソースの効率的な使用と持続可能な開発アプローチへの道を開くために、開発プロセスにおいて欠かせないものです。アーキテクチャ設計のトレードオフを適切に理解し、ビジネスと技術の進歩に応じてこれらを再評価することは、組織の成長と適応性を保つ上で不可欠です。
我々は、皆様が所属する組織でこれらの考えを採用し、今後の戦略に反映させることを推奨します。また、更なる学びのために関連資料を探求することもお勧めします。皆様の取り組みが成功へとつながることを願っています。