Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
how to determine architecture
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
hiroaki
October 08, 2022
Technology
1
220
how to determine architecture
hiroaki
October 08, 2022
Tweet
Share
More Decks by hiroaki
See All by hiroaki
プロダクト負債に立ち向かう
hiroaki_u
2
1.5k
pdm_vibe_coding_fail.pdf
hiroaki_u
0
160
Communication with Ubiquitous Language
hiroaki_u
0
91
the-concept-of-product-creation-learned-in-startup-science
hiroaki_u
0
170
what-is-container
hiroaki_u
1
88
difference-between-nginx-and-apache
hiroaki_u
0
68
CI_CD_by_Code_Brothers_by_AWS
hiroaki_u
0
44
think of study
hiroaki_u
1
95
CI/CD with CodePipeline and ECS
hiroaki_u
0
130
Other Decks in Technology
See All in Technology
Kiro IDEのドキュメントを全部読んだので地味だけどちょっと嬉しい機能を紹介する
khmoryz
0
110
M&A 後の統合をどう進めるか ─ ナレッジワーク × Poetics が実践した組織とシステムの融合
kworkdev
PRO
1
280
最速で価値を出すための プロダクトエンジニアのツッコミ術
kaacun
1
510
新規事業における「一部だけどコア」な AI精度改善の優先順位づけ
zerebom
0
450
CDKで始めるTypeScript開発のススメ
tsukuboshi
1
240
IaaS/SaaS管理における SREの実践 - SRE Kaigi 2026
bbqallstars
4
1.3k
【インシデント入門】サイバー攻撃を受けた現場って何してるの?
shumei_ito
0
1.4k
Amazon ElastiCacheのコスト最適化を考える/Elasticache Cost Optimization
quiver
0
370
レガシー共有バッチ基盤への挑戦 - SREドリブンなリアーキテクチャリングの取り組み
tatsukoni
0
170
会社紹介資料 / Sansan Company Profile
sansan33
PRO
15
400k
AI時代、1年目エンジニアの悩み
jin4
1
140
Amazon Bedrock AgentCore 認証・認可入門
hironobuiga
2
480
Featured
See All Featured
Raft: Consensus for Rubyists
vanstee
141
7.3k
The Art of Programming - Codeland 2020
erikaheidi
57
14k
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
0
130
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
54
GraphQLの誤解/rethinking-graphql
sonatard
74
11k
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
46
How to build an LLM SEO readiness audit: a practical framework
nmsamuel
1
630
A Soul's Torment
seathinner
5
2.2k
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
49
9.8k
WENDY [Excerpt]
tessaabrams
9
36k
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
ご清聴ありがとうございました!