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
110
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
17
Trying AWS Aurora Serverless.
anchorcable
0
200
Dialogue for Design
anchorcable
1
280
How to manage a good work environment
anchorcable
0
99
TDD is not slowly.
anchorcable
1
510
3日坊主でも勉強したい
anchorcable
5
5.4k
今だからこそ分かる報連相 / How to do Hou/Ren/Sou!
anchorcable
0
640
TDD supports us all the time.
anchorcable
0
290
I read Tokumaru book on ABD.
anchorcable
1
94
Other Decks in Technology
See All in Technology
プロダクトエンジニアが活躍する環境を作りたくて 事業責任者になった話 ~プロダクトエンジニアの行き着く先~
gimupop
1
480
Apple/Google/Amazonの決済システムの違いを踏まえた定期購読課金システムの構築 / abema-billing-system
cyberagentdevelopers
PRO
1
220
日経電子版におけるリアルタイムレコメンドシステム開発の事例紹介/nikkei-realtime-recommender-system
yng87
1
500
話題のGraphRAG、その可能性と課題を理解する
hide212131
4
1.5k
プロダクト成長に対応するプラットフォーム戦略:Authleteによる共通認証基盤の移行事例 / Building an authentication platform using Authlete and AWS
kakehashi
1
150
新卒1年目が向き合う生成AI事業の開発を加速させる技術選定 / ai-web-launcher
cyberagentdevelopers
PRO
7
1.5k
GitHub Universe: Evaluating RAG apps in GitHub Actions
pamelafox
0
170
なんで、私がAWS Heroに!? 〜社外の広い世界に一歩踏み出そう〜
minorun365
PRO
6
1.1k
君は隠しイベントを見つけれるか?
mujyun
0
290
独自ツール開発でスタジオ撮影をDX!「VLS(Virtual LED Studio)」 / dx-studio-vls
cyberagentdevelopers
PRO
1
180
コンテンツを支える 若手ゲームクリエイターの アートディレクションの事例紹介 / cagamefi-game
cyberagentdevelopers
PRO
1
130
AIを駆使したゲーム開発戦略: 新設AI組織の取り組み / sge-ai-strategy
cyberagentdevelopers
PRO
1
130
Featured
See All Featured
Learning to Love Humans: Emotional Interface Design
aarron
272
40k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
664
120k
What's in a price? How to price your products and services
michaelherold
243
12k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
27
1.9k
The World Runs on Bad Software
bkeepers
PRO
65
11k
GraphQLとの向き合い方2022年版
quramy
43
13k
Building Adaptive Systems
keathley
38
2.2k
Navigating Team Friction
lara
183
14k
Build The Right Thing And Hit Your Dates
maggiecrowley
32
2.4k
Automating Front-end Workflow
addyosmani
1365
200k
Agile that works and the tools we love
rasmusluckow
327
21k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
7
150
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
ご清聴ありがとうございました