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
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
hiroaki
October 08, 2022
Technology
1
230
how to determine architecture
hiroaki
October 08, 2022
Tweet
Share
More Decks by hiroaki
See All by hiroaki
プロダクト負債に立ち向かう
hiroaki_u
2
1.6k
pdm_vibe_coding_fail.pdf
hiroaki_u
0
170
Communication with Ubiquitous Language
hiroaki_u
0
94
the-concept-of-product-creation-learned-in-startup-science
hiroaki_u
0
170
what-is-container
hiroaki_u
1
93
difference-between-nginx-and-apache
hiroaki_u
0
73
CI_CD_by_Code_Brothers_by_AWS
hiroaki_u
0
48
think of study
hiroaki_u
1
100
CI/CD with CodePipeline and ECS
hiroaki_u
0
130
Other Decks in Technology
See All in Technology
ソフトウェアアーキテクトのための意思決定術: Create Decision Readiness—The Real Skill Behind Architectural Decision
snoozer05
PRO
5
330
AITuberKit+Bedrock AgentCoreで作る 3Dキャラクターエージェント
yokomachi
2
1.6k
What's new in Go 1.26?
ciarana
2
130
バイブコーディングで作ったものを紹介
tatsuya1970
0
180
【2026年版】生成AIによる情報システムへのインパクト
taka_aki
0
170
AWS Bedrock Guardrails / 機密情報の入力・出力をブロックする — Blocking Sensitive Information Input/Output
kazuhitonakayama
2
170
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
15
94k
Java ランタイムからカスタムランタイムに行き着くまで
ririru0325
0
110
フルスタックGoでスコア改ざんを防いだ話
ponyo877
0
520
サイボウズ 開発本部採用ピッチ / Cybozu Engineer Recruit
cybozuinsideout
PRO
10
74k
AI Coding Agentの地殻変動 ~ ai-coding.info の定点観測 ~
kotauchisunsun
0
140
もう怖くないバックグラウンド処理 Background Tasks のすべて - Hakodate.swift #1
kantacky
0
110
Featured
See All Featured
Building AI with AI
inesmontani
PRO
1
740
Ecommerce SEO: The Keys for Success Now & Beyond - #SERPConf2024
aleyda
1
1.8k
Efficient Content Optimization with Google Search Console & Apps Script
katarinadahlin
PRO
1
350
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
Optimising Largest Contentful Paint
csswizardry
37
3.6k
Leo the Paperboy
mayatellez
4
1.5k
Ethics towards AI in product and experience design
skipperchong
2
210
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
0
450
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
54k
We Have a Design System, Now What?
morganepeng
55
8k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.6k
[RailsConf 2023] Rails as a piece of cake
palkan
59
6.3k
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
ご清聴ありがとうございました!