Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Evolutionary Architecture
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
uzzu
May 16, 2016
Technology
410
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Evolutionary Architecture
uzzu
May 16, 2016
More Decks by uzzu
See All by uzzu
あなたは 何をして 何をもたらすのか? / reskilling-at-tokyo-2026
uzzu
0
45
Context Receiversに思いを馳せる / Context Receivers
uzzu
0
800
StoreKitのこれまでとこれから / StoreKit 2 from 1
uzzu
5
22k
Autofill Framework
uzzu
0
160
アプリ内課金の最新事情 クライアントサイド編 / In-app Purchase in Cookpad 2019
uzzu
3
4.7k
Billing Client 2.0 acknowledgement
uzzu
0
17k
Promoting IAP対応から学ぶ外部アプリ内課金実装 / Promoting IAP and others
uzzu
2
1.6k
ブログ作り直した / My blog @ Othlo Tech
uzzu
0
230
新規アプリ開発を支えるユーザ・決済基盤
uzzu
2
3k
Other Decks in Technology
See All in Technology
Vibe-to-Spec開発_実践ガイド
happysamurai294
0
110
AWSセキュリティで活用するAI機能
cmusudakeisuke
1
350
Don't write the architecture only in the prompt.
neohsu
0
190
あなたのDartコードは丸見えかもしれない ~reFlutterで暴くFlutterアプリの中身と多層防御~
zozotech
PRO
0
570
ドメインエキスパートは いかにして AI を使って プロダクト開発をするか
tatsuyashiraishi
1
220
1週間、Opus封印でお願いします
kintotechdev
0
350
なぜAI時代に技術記事を書くのか?どう書くのか? 〜bunの場合〜
kworkdev
PRO
0
160
Autonomous AI Lakehouse - Live AI Hubから始めるセキュアなAIデータ活用 -
oracle4engineer
PRO
2
160
視野はAIに、視座は人に / ai-for-breadth-humans-for-perspective
nkzn
0
190
AI AgentによるEmbedded SREの取り組み
tgidgd
1
120
kintoneで在庫管理システムを作るときの要件定義・設計ポイント
kai0707
0
120
「社外イベント=意識高い」の壁を壊せ!元々無関心だった僕らが部内で社外イベントを民主化して15人を連れ出すまで
say_no_w
0
160
Featured
See All Featured
Code Reviewing Like a Champion
maltzj
529
40k
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.9k
Java REST API Framework Comparison - PWX 2021
mraible
34
9.8k
How GitHub (no longer) Works
holman
316
150k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4.2k
AI Search: Where Are We & What Can We Do About It?
aleyda
0
8.1k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
23k
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
540
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
540
Designing for Performance
lara
612
70k
We Analyzed 250 Million AI Search Results: Here's What I Found
joshbly
2
2.1k
Dominate Local Search Results - an insider guide to GBP, reviews, and Local SEO
greggifford
PRO
0
380
Transcript
Evolutionary Architecture @uzzu
Evolutionary Architecture(進化的アーキテクチャ)は まだ定義が固まっているものではありません。 このスライドは私個⼈の⾒解です。
Evolutionary Architectureって何?
https://www.thoughtworks.com/radar/techniques/evolutionary-architecture
https://www.thoughtworks.com/radar/techniques/evolutionary-architecture
“An evolutionary architecture supports continual and incremental change as a
first principle along multiple dimentions.” 第⼀原則として、複数の次元で継続的かつ漸進的な変更を⽀援する
複数の次元で継続的かつ漸進的な変更...?
Traditional Architecture 要求(次元) 変更
Traditional Architecture 要求(次元) 変更
Traditional Architecture 要求(次元) 変更
Traditional Architecture 要求(次元) 変更
Traditional Architecture 要求(次元) 変更
Traditional Architecture 要求(次元) 変更
Traditional Architecture 要求(次元) 変更
要求(次元) 変更 Traditional Architecture
Big ball of mud architecture
Traditional Architecture 要求(次元) 変更
Evolutionary Architecture 要求(次元) 変更
Evolutionary Architecture Pain-Driven 要求(次元) 変更
Evolutionary Architecture Last Responsible Moment 要求(次元) 変更
Evolutionary Architecture Pain-Driven Last Responsible Moment 要求(次元) 変更
複数の次元で継続的かつ漸進的な変更を⽀援する 要求(次元) 変更
Charstaristics Modularity and Coupling Organized Around Buisiness Capabilities Experimentation (Possible
to Hypothesis-Driven Development)
Charstaristics Modularity and Coupling Organized Around Buisiness Capabilities Experimentation (Possible
to Hypothesis-Driven Development)
Charstaristics Modularity and Coupling Organized Around Buisiness Capabilities Experimentation (Possible
to Hypothesis-Driven Development)
Charstaristics Modularity and Coupling Organized Around Buisiness Capabilities Experimentation (Possible
to Hypothesis-Driven Development)
そもそも、なぜ⼿軽に差し替える必要があるかといえば、以下の様な 理由があります。 • 依存している基盤実装(レガシーコード、3rd-party製のライブラ リ)に問題が発覚した時に、利⽤者に影響なく別の基盤実装に差し 替えられるようにする為 • パッと基盤実装を捨てる事ができるのはライブラリ開発者の 精神的負荷を⼤きく軽減します
そもそも、なぜ⼿軽に差し替える必要があるかといえば、以下の様な 理由があります。 • 新しい技術や導⼊したい技術を積極的に導⼊・検証できるように する為 • 利⽤者のスピード感に追いつく必要があります。依存ライブ ラリが⾜を引きずってはいけません
・ Fitness Functions (Ignore) ・ Pain-Driven ・ Last Responsible Moment
Evolutionary Architecture Pain-Driven Last Responsible Moment 要求(次元) 変更
? Fitness Functions (Ignore) ✔ Pain-Driven ✔ Last Responsible Moment
Summary
・Evolutionary Architectureは、第⼀原則として、複数の次元で継 続的かつ漸進的な変更を⽀援する ・第⼀原則から概観できる設計⼿法の特徴は... Fitness Functions ※今回は説明しませんでした Pain-Driven (痛みを⽣みそうなものから) Last
Responsible Moment (最終責任時点の前までに決定) ・Evolutionary Architectureの特徴は... Modularity and Coupling (モジュール化とコンポーネント分離) Organized Around Business Capabilities (ビジネス能⼒に沿った組織化) Experimentation (ビジネスに「実験」の⼒を与える)
https://www.thoughtworks.com/insights/blog/microservices-evolutionary-architecture
https://www.thoughtworks.com/radar/techniques/evolutionary-architecture
https://www.infoq.com/jp/news/2016/04/evolutionary-architectures
https://www.thoughtworks.com/books/building-evolutionary-architectures
End Evolutionary Architecture