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
Design It! is good for architect.
Search
Dassimen
August 23, 2020
Technology
0
130
Design It! is good for architect.
Dassimen
August 23, 2020
Tweet
Share
More Decks by Dassimen
See All by Dassimen
Write code with "Test First"
anchorcable
0
25
Trying AWS Aurora Serverless.
anchorcable
0
210
Dialogue for Design
anchorcable
1
300
How to manage a good work environment
anchorcable
0
110
TDD is not slowly.
anchorcable
1
560
3日坊主でも勉強したい
anchorcable
5
5.6k
今だからこそ分かる報連相 / How to do Hou/Ren/Sou!
anchorcable
0
710
TDD supports us all the time.
anchorcable
0
340
I read Tokumaru book on ABD.
anchorcable
1
97
Other Decks in Technology
See All in Technology
データ基盤からデータベースまで?広がるユースケースのDatabricksについて教えるよ!
akuwano
3
160
大量配信システムにおけるSLOの実践:「見えない」信頼性をSLOで可視化
plaidtech
PRO
0
260
[ JAWS-UG千葉支部 x 彩の国埼玉支部 ]ムダ遣い卒業!FinOpsで始めるAWSコスト最適化の第一歩
sh_fk2
2
150
microCMSではじめるAIライティング
himaratsu
0
110
PO初心者が考えた ”POらしさ”
nb_rady
0
220
事例で学ぶ!B2B SaaSにおけるSREの実践例/SRE for B2B SaaS: A Real-World Case Study
bitkey
1
280
第64回コンピュータビジョン勉強会「The PanAf-FGBG Dataset: Understanding the Impact of Backgrounds in Wildlife Behaviour Recognition」
x_ttyszk
0
140
推し書籍📚 / Books and a QA Engineer
ak1210
0
120
ポストコロナ時代の SaaS におけるコスト削減の意義
izzii
1
190
IPA&AWSダブル全冠が明かす、人生を変えた勉強法のすべて
iwamot
PRO
2
220
Rethinking Incident Response: Context-Aware AI in Practice
rrreeeyyy
1
230
Amplify Gen2から知るAWS CDK Toolkit Libraryの使い方/How to use the AWS CDK Toolkit Library as known from Amplify Gen2
fossamagna
0
150
Featured
See All Featured
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
50
5.5k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
48
2.9k
The Cost Of JavaScript in 2023
addyosmani
51
8.5k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
7
740
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
15
1.6k
The Invisible Side of Design
smashingmag
301
51k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.4k
GraphQLとの向き合い方2022年版
quramy
49
14k
How STYLIGHT went responsive
nonsquared
100
5.6k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
2.9k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Adopting Sorbet at Scale
ufuk
77
9.5k
Transcript
”Design It!” のすゝめ Aug 22, 2020 | #WESinVR 案件が始まる時、終わる時に読み直したくなる一冊 脱脂綿
( @anchor_cable )
#WESinVR 2 About Me 脱脂綿 ( @anchor_cable ) 東京都内に住む脱脂綿(=Twitter名)系エンジニア •
株式会社ゆめみ ◦ サーバーサイドエンジニア • 新米ソフトウェアアーキテクト ◦ 1つの案件でメインのアーキテクトを担当 ◦ 別案件ではメンバーの1人として口出し役
3 今日紹介する本 : Design It! #WESinVR タイトル: Design It! プログラマーのためのアーキテクティング入門
著者: Michael Keeling
4 アジェンダ Design It! から学んだこと #WESinVR 本を閉じた後に 誰にこの本を勧めたいのか 1 2
3
誰にこの本を勧めたいのか 1
6 誰にこの本を勧めたいのか アーキテクトを指向するITエンジニア よい設計について知識を身に着けてきたが、 どのように実践の場に活かしていくべきなのか悩んでいる人 現場でアーキテクトとして活躍しているが、 上手くいっていないと感じている人 #WESinVR
7 誰にこの本を勧めたいのか 設計について学ぶ最初の1冊目ではない 抽象度の高い話が続くため、 設計について最初に学ぶにはデザインパターン寄りの本が良い 個人的オススメ↓ • Clean Architecture •
ドメイン駆動設計入門 • 現場で役立つシステム設計の原則 #WESinVR
Design It! から学んだこと 2
9 Design It! から学んだこと アーキテクトがやるべきこと • エンジニアリングの観点から問題を定義する • システムを分割し、要素とチームに責任を割り当てる •
全体に目を向け続け、設計の一貫性を保ち続ける • 品質特性間のトレードオフを決定する • 技術的負債を管理する • チームのアーキテクチャスキルを高める #WESinVR
10 Design It! から学んだこと アーキテクトがやるべきこと 強く印象に残るふたつについて紹介します • 設計判断を可能な限り先延ばしにする • チームがアーキテクチャを設計できるようにする
#WESinVR
11 Design It! から学んだこと 設計判断を可能な限り先延ばしにする 簡単に元に戻せない決定を先延ばしにする事で、変化に対応可能にする また、判断に必要な探求を十分な時間を取って行う #WESinVR ※Design It!
P.82 図6-1参考
12 Design It! から学んだこと いつ設計判断を下せばよいのか? • 判断しないことが進捗を妨げるか? • 判断は後回しにできない問題を解決するか? •
判断はより多くの選択肢や新しい機会を生み出すか? • 判断を遅らせることで、はるかに大きなリスクが発生するか? • 判断の意味を理解し受け入れるか? • 今この判断を下す理由について明確な根拠があるか? • 判断が間違っていた場合に、それを取り消す時間があるか。失敗を許容できる だけのゆとりがあるか? #WESinVR ※Design It! P.96 より抜粋
13 Design It! から学んだこと チームがアーキテクチャを設計できるようにする 設計をする人がリーダーで、メンバーは設計に従うべきか? あまり最近はそんな仕事の進め方を好んでやる人はいない であればアーキテクトひとりが全ての設計判断をやるのではない メンバーも設計判断に積極的に関与していくべき #WESinVR
14 Design It! から学んだこと アーキテクトは考え方 メンバー全員がアーキテクチャを設計できるようになると、メンバーのアーキテク チャ設計に対する共同所有の意識は高いものとなる。ソフトウェアはただのシステ ムから自分たちのシステムになる。 (中略) 所有意識の高まりは幸福感を増し、それはソフトウェア開発プロセス全体への関与
を拡大することに繋がる。そして、共にソフトウェアを設計することで、素晴らし いソフトウェアを出荷する力を何倍にも加速させる。 #WESinVR ※Design It! P.214 より抜粋
15 Design It! から学んだこと 設計判断をメンバーに移譲していく • ペア設計 • 良い設計と悪い設計の例を紹介する •
既存の設計についての説明会を行う 設計判断を行う準備のできているメンバーに徐々に権限を移譲していく アーキテクト側がそのように考えられるようメンバーから働きかけていく 積極的に設計判断に関与していく必要がある #WESinVR
本を閉じた後に 3
17 本を閉じた後に アーキテクトを実践する ある案件でアーキテクトを担当している チームメンバーへの教育を含めて、できる限りのことを実践中 「アーキテクチャに通知表をつける」という章があり、 落ち着いたらこれを参考にアーキテクチャの振り返りを行う予定 #WESinVR
18 本を閉じた後に #WESinVR こんな時に読み直す • 案件が始まる前、終わった後 • ソフトウェアアーキテクトとしての自身の働き方 を振り返りたくなった時
19 まとめ • Design It! はアーキテクチャに興味関心のある人全員にオススメ ◦ アーキテクト志望は必読 • アーキテクトがやるべきこと
◦ 曖昧さを保つ ◦ チームがアーキテクチャを設計できるようにする • 定期的に働き方を見直すために読み返す本 #WESinVR
ご清聴ありがとうございました