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
120
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
18
Trying AWS Aurora Serverless.
anchorcable
0
200
Dialogue for Design
anchorcable
1
290
How to manage a good work environment
anchorcable
0
100
TDD is not slowly.
anchorcable
1
520
3日坊主でも勉強したい
anchorcable
5
5.5k
今だからこそ分かる報連相 / How to do Hou/Ren/Sou!
anchorcable
0
650
TDD supports us all the time.
anchorcable
0
310
I read Tokumaru book on ABD.
anchorcable
1
96
Other Decks in Technology
See All in Technology
0→1事業こそPMは営業すべし / pmconf #落選お披露目 / PM should do sales in zero to one
roki_n_
PRO
1
1.5k
Goで実践するBFP
hiroyaterui
1
120
デジタルアイデンティティ技術 認可・ID連携・認証 応用 / 20250114-OIDF-J-EduWG-TechSWG
oidfj
2
690
Evolving Architecture
rainerhahnekamp
3
260
東京Ruby会議12 Ruby と Rust と私 / Tokyo RubyKaigi 12 Ruby, Rust and me
eagletmt
3
880
実践! ソフトウェアエンジニアリングの価値の計測 ── Effort、Output、Outcome、Impact
nomuson
0
2.1k
.NET AspireでAzure Functionsやクラウドリソースを統合する
tsubakimoto_s
0
190
2024年活動報告会(人材育成推進WG・ビジネスサブWG) / 20250114-OIDF-J-EduWG-BizSWG
oidfj
0
240
JuliaTokaiとJuliaLangJaの紹介 for NGK2025S
antimon2
1
120
データ基盤におけるIaCの重要性とその運用
mtpooh
4
540
Building Scalable Backend Services with Firebase
wisdommatt
0
110
月間60万ユーザーを抱える 個人開発サービス「Walica」の 技術スタック変遷
miyachin
1
140
Featured
See All Featured
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
28
4.5k
Building Flexible Design Systems
yeseniaperezcruz
328
38k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
30
2.1k
GraphQLとの向き合い方2022年版
quramy
44
13k
Mobile First: as difficult as doing things right
swwweet
222
9k
Fantastic passwords and where to find them - at NoRuKo
philnash
50
2.9k
Fontdeck: Realign not Redesign
paulrobertlloyd
82
5.3k
Fashionably flexible responsive web design (full day workshop)
malarkey
406
66k
RailsConf 2023
tenderlove
29
970
Docker and Python
trallard
43
3.2k
Agile that works and the tools we love
rasmusluckow
328
21k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
19
2.3k
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
ご清聴ありがとうございました