Lock in $30 Savings on PRO—Offer Ends Soon! ⏳
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
how to determine architecture
Search
hiroaki
PRO
October 08, 2022
Technology
1
200
how to determine architecture
hiroaki
PRO
October 08, 2022
Tweet
Share
More Decks by hiroaki
See All by hiroaki
プロダクト負債に立ち向かう
hiroaki_u
PRO
2
1.3k
pdm_vibe_coding_fail.pdf
hiroaki_u
PRO
0
140
Communication with Ubiquitous Language
hiroaki_u
PRO
0
89
the-concept-of-product-creation-learned-in-startup-science
hiroaki_u
PRO
0
160
what-is-container
hiroaki_u
PRO
1
84
difference-between-nginx-and-apache
hiroaki_u
PRO
0
62
CI_CD_by_Code_Brothers_by_AWS
hiroaki_u
PRO
0
42
think of study
hiroaki_u
PRO
1
91
CI/CD with CodePipeline and ECS
hiroaki_u
PRO
0
120
Other Decks in Technology
See All in Technology
Challenging Hardware Contests with Zephyr and Lessons Learned
iotengineer22
0
220
Python 3.14 Overview
lycorptech_jp
PRO
1
120
AI駆動開発における設計思想 認知負荷を下げるフロントエンドアーキテクチャ/ 20251211 Teppei Hanai
shift_evolve
PRO
2
390
MLflowダイエット大作戦
lycorptech_jp
PRO
1
130
Oracle Cloud Infrastructure IaaS 新機能アップデート 2025/09 - 2025/11
oracle4engineer
PRO
0
140
AI-DLCを現場にインストールしてみた:プロトタイプ開発で分かったこと・やめたこと
recruitengineers
PRO
2
140
ログ管理の新たな可能性?CloudWatchの新機能をご紹介
ikumi_ono
1
770
IAMユーザーゼロの運用は果たして可能なのか
yama3133
1
360
Debugging Edge AI on Zephyr and Lessons Learned
iotengineer22
0
210
【AWS re:Invent 2025速報】AIビルダー向けアップデートをまとめて解説!
minorun365
4
520
Power of Kiro : あなたの㌔はパワステ搭載ですか?
r3_yamauchi
PRO
0
150
mairuでつくるクレデンシャルレス開発環境 / Credential-less development environment using Mailru
mirakui
5
510
Featured
See All Featured
VelocityConf: Rendering Performance Case Studies
addyosmani
333
24k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.3k
How To Stay Up To Date on Web Technology
chriscoyier
791
250k
Scaling GitHub
holman
464
140k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
2.7k
Testing 201, or: Great Expectations
jmmastey
46
7.8k
KATA
mclloyd
PRO
33
15k
The Illustrated Children's Guide to Kubernetes
chrisshort
51
51k
Fireside Chat
paigeccino
41
3.7k
Designing Experiences People Love
moore
143
24k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
37
2.6k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.1k
Transcript
アーキテクチャって どうやって決めれば良いの?? hiroaki
Who am I ? 上田 裕耀(28) Backend, Infra, DevOps 2018/04〜
食品メーカーの研究所 2021/03〜 Webエンジニア 経歴 神奈川→埼玉→群馬→神奈川 趣味 サウナ & 筋トレ
そもそもアーキテクチャとは??
(と思っています) アプリケーションの課題を 解決するための構造
アプリケーションの課題は色々ある コスト スケーラビリティ 保守改修性 パフォーマンス セキュリティ 可用性
何かを優先すると他のレベルが下がってしまう。 トレードオフの構造
アプリケーションの構造も色々 モノリス 分散システム 同期 非同期 内部のレイヤー構造 or or
結局、アーキテクチャって どうやって決めれば良いの??
ビジネスの要求に柔軟に対応できるような アーキテクチャを目指す 使う技術に依存しない構造 仕様の変更しやすい構造 アプリケーション課題に合わせた構造
引用:『ソフトウェアアーキテクチャの基礎』P.250 図17-1』 アプリケーション課題に合わせた構造 例:マイクロサービス
引用:『ソフトウェアアーキテクチャの基礎』P.263 図17-9』 ⭕ 拡張性、保守改修性 etc. ❌ DBの一貫性、コスト etc. アプリケーション課題に合わせた構造
使う技術に依存しない構造 アプリケーション
使う技術に依存しない構造 例:オニオンアーキテクチャ
SOLID原則やデザインパターンあたりが効果的 仕様の変更しやすい構造 S O L I D 単一責任の原則 オープン・クローズドの原則 リスコフの置換原則
インターフェース分離の原則 依存性逆転の原則
常にアプリケーションの課題を考え続けて、 betterな選択をしていく。 各サービス内では、独立性を高めた 保守改修性の高い設計を目指す。
Reference
ご清聴ありがとうございました!