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
アジャイル開発の中の設計
Search
岡本卓也
June 22, 2022
Technology
0
810
アジャイル開発の中の設計
岡本卓也
June 22, 2022
Tweet
Share
More Decks by 岡本卓也
See All by 岡本卓也
私が好きなUMLダイアグラム / The UML Diagrams I Love.
okamototakuyasr2
0
29
スクラムチームだけどエクセルで要件定義書を書くことにしました / Requirements-Specification-Document-in-Scrum
okamototakuyasr2
1
1.1k
合宿はいいぞ / Training camp is so good.
okamototakuyasr2
0
580
幸運を科学する ~アジャイルチームの成功を再現する方法~ / How to reproduce nice team at ESM webiner.
okamototakuyasr2
0
39
幸運を科学する ~アジャイルチームの成功を再現する方法~
okamototakuyasr2
0
1.3k
アジャイルと設計 / Design in Agile Development
okamototakuyasr2
0
38
なぜアジャイルをやるのですか
okamototakuyasr2
0
140
コミュニティと人の縁〜まずは楽しんで、そしてその先にあるもの〜
okamototakuyasr2
0
430
地方でエンジニアをやる
okamototakuyasr2
0
400
Other Decks in Technology
See All in Technology
スクラム成熟度セルフチェックツールを作って得た学びとその活用法
coincheck_recruit
1
140
Oracle Cloud Infrastructureデータベース・クラウド:各バージョンのサポート期間
oracle4engineer
PRO
28
12k
The Role of Developer Relations in AI Product Success.
giftojabu1
0
120
Terraform CI/CD パイプラインにおける AWS CodeCommit の代替手段
hiyanger
1
240
データプロダクトの定義からはじめる、データコントラクト駆動なデータ基盤
chanyou0311
2
290
スクラムチームを立ち上げる〜チーム開発で得られたもの・得られなかったもの〜
ohnoeight
2
350
BLADE: An Attempt to Automate Penetration Testing Using Autonomous AI Agents
bbrbbq
0
290
OCI Vault 概要
oracle4engineer
PRO
0
9.7k
Can We Measure Developer Productivity?
ewolff
1
150
iOSチームとAndroidチームでブランチ運用が違ったので整理してます
sansantech
PRO
0
130
ドメイン名の終活について - JPAAWG 7th -
mikit
33
20k
[CV勉強会@関東 ECCV2024 読み会] オンラインマッピング x トラッキング MapTracker: Tracking with Strided Memory Fusion for Consistent Vector HD Mapping (Chen+, ECCV24)
abemii
0
220
Featured
See All Featured
The Straight Up "How To Draw Better" Workshop
denniskardys
232
140k
Site-Speed That Sticks
csswizardry
0
22
How to Ace a Technical Interview
jacobian
276
23k
A Modern Web Designer's Workflow
chriscoyier
693
190k
It's Worth the Effort
3n
183
27k
Fantastic passwords and where to find them - at NoRuKo
philnash
50
2.9k
Faster Mobile Websites
deanohume
305
30k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
6
410
Optimising Largest Contentful Paint
csswizardry
33
2.9k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
16
2.1k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
33
1.9k
Stop Working from a Prison Cell
hatefulcrawdad
267
20k
Transcript
© 2022 ESM, Inc. Scrum Fest Osaka 2022 アジャイル開発の中の設計 1
2022年06月18日 株式会社永和システムマネジメント Agile Studio 岡本 卓也
© 2022 ESM, Inc. 「設計」は好きですか? 2
© 2022 ESM, Inc. 今日のゴール 「設計」を好きになってもらいたい 3
© 2022 ESM, Inc. まえおき 4
© 2022 ESM, Inc. 自己紹介 Agile Studioエンジニア 日々是 Agile/Scrum Agileに憧れて転職
元はWFガチ勢 5
© 2022 ESM, Inc. WF時代の仕事(1997~2017) 大企業型ソフト開発 キャリアネットワーク製品開発 エンジニア&マネージャ 6
© 2022 ESM, Inc. アングルをつけて眺めてみる 7 WF Agile コアが見えてくる、かも 設計
© 2022 ESM, Inc. 想定している対象者 • WFからAgileに移行(する|している|した) • Agileネイティブ •
「設計」と聞くと感情が乱れる人 8
© 2022 ESM, Inc. 最近、スプリントレビューで困った事 1. 何を説明すればいいの? 2. どうなってたらOKと言ってもらえる? 3.
そういうのっていつ決めるの? 9 もしかして設計?
© 2022 ESM, Inc. 設計とは何か ソフトウェアのための問題解決と計画の工程である。 ソフトウェアの目的と仕様が決定した後で ソフトウェア開発者が設計をしたり 専門の設計者が開発計画を立てる。
細かいコンポーネントやアルゴリズムの実装だけではなく アーキテクチャ的観点での検討も行われる。 10 ソフトウェア設計
© 2022 ESM, Inc. いつやる? 誰がやる? 何をやる? なぜやる? 11 知りたいこと
© 2022 ESM, Inc. 本編 12
© 2022 ESM, Inc. いつやる? 誰がやる? 何をやる? なぜやる? 13
© 2022 ESM, Inc. スクラムの開発サイクル 14 1.スプリントプランニング 2.デイリースクラム 3.リファインメント
4. スプリントレビュー 5. ふりかえり プロダクトバックログ スプリントバックログ 製品 リリース
© 2022 ESM, Inc. ソフト開発のサイクル(WF脳) 15
© 2022 ESM, Inc. 並べてみる 16
© 2022 ESM, Inc. 私たちの開発でやっていること 17 設計はどこへ行った?
© 2022 ESM, Inc. 設計ってなんだっけ? 18 要求分析 ユーザがやりたいことを整理・発見する 要件定義
ユーザがやりたいことを達成するために、システムがやるべきことを決める 仕様検討 システムがやるべきことを、客観的・具体的・定量的に定義する 設計 システムがやるべきことを、どうやって実現するかを決める
© 2022 ESM, Inc. こうあるべきなのか? 19 1.スプリントプランニング 2.デイリースクラム 3.リファインメント
4. スプリントレビュー 5. ふりかえり プロダクトバックログ スプリントバックログ 製品 リリース 要求分析 仕様検討 設計 要件定義
© 2022 ESM, Inc. スクラムの開発サイクル 20 1.スプリントプランニング 2.デイリースクラム 3.リファインメント
4. スプリントレビュー 5. ふりかえり プロダクトバックログ スプリントバックログ 製品 リリース 仕様検討 設計 コーディング 単体テスト 結合テスト 要求分析 要件定義 受入テスト スプリント忙しすぎ
© 2022 ESM, Inc. スプリント短い問題 21 1週間に複数のタスクを消化 設計をやっている時間がない!
1~2日で設計・実装・テスト
© 2022 ESM, Inc. WFの開発プロセス(設計) 22 工程 工程 工程 工程
工程を設計書でつなぐ
© 2022 ESM, Inc. WF時代の設計 23 44%
© 2022 ESM, Inc. Dr.アジャイルに聞いてみた 24 ずれてるで。
© 2022 ESM, Inc. こうじゃなくて 25 1.スプリントプランニング 2.デイリースクラム 3.リファインメント
4. スプリントレビュー 5. ふりかえり プロダクトバックログ スプリントバックログ 製品 リリース 仕様検討 設計 コーディング 単体テスト 結合テスト 要求分析 要件定義 受入テスト
© 2022 ESM, Inc. こうやで 26 1.スプリントプランニング 2.デイリースクラム 3.リファインメント
4. スプリントレビュー 5. ふりかえり プロダクトバックログ スプリントバックログ 製品 リリース 仕様検討 設計 コーディング 単体テスト 結合テスト 要求分析 要件定義 設計 受入テスト ②Done確認はデイリー ③スプリントレビューは 工程ゲートではない ①設計はここで済ませる ①実際にはこの時間を使う
© 2022 ESM, Inc. あえて対応させてみる 27
© 2022 ESM, Inc. リファインメントでやること 28 私たちの例 未来のPBIをReadyにする これが設計
© 2022 ESM, Inc. スプリントプランニングでやること 29 私たちの例 設計はDEVだけではなく POとも一緒に行う
私たちの例
© 2022 ESM, Inc. いつやる? 誰がやる? 何をやる? なぜやる? 30 •
スプリントが始まる前 • リファインメントの時間 • 詳細は実装しながらもアリ • それぞれの設計工程
© 2022 ESM, Inc. いつやる? 誰がやる? 何をやる? なぜやる? 31 •
コードを書く人 • 顧客やPOも一緒にやる • 工程の担当者
© 2022 ESM, Inc. いつやる? 誰がやる? 何をやる? なぜやる? 32
© 2022 ESM, Inc. WFの開発プロセス(設計) 33 工程 工程 工程 工程
工程を設計書でつなぐ
© 2022 ESM, Inc. WF時代の設計書 34 イメージ きっちり作る、しっかり残す ソースコードとの距離は遠い
© 2022 ESM, Inc. 設計書の目的(WF) 35 次工程への インプット エビデンス 工程の
完了ゲート 理解の 可視化 認識の共有 理解 他人のため 自分のため
© 2022 ESM, Inc. Agile開発の設計 36 状態遷移 処理フロー 要求分析 クラス構成
© 2022 ESM, Inc. 最近の設計 37 考えながら手早く書く 自分(自分たち)向けに書く
コーディングと並行して書く システム構成 アーキテクチャ シーケンス
© 2022 ESM, Inc. 設計書の目的(Agile) 38 次工程への インプット エビデンス 工程の
完了ゲート 理解の 可視化 認識の共有 理解 他人のため 自分のため
© 2022 ESM, Inc. モブ レビュー コード中心の世界 39 自分 メンバ
書く 読む 自分 メンバ 共通理解(コンテキスト) メンバが書けるように メンバが読めるように
© 2022 ESM, Inc. 設計の価値観 40 自分たち 他人 しっかり すばやく
次工程へのイ ンプット エビデンス 工程の完了 ゲート 理解の 可視化 認識の共有 理解
© 2022 ESM, Inc. Agileで大事にする設計の価値 41 自分たち 他人 しっかり すばやく
協調 対話 変化 契約 計画 プロセス
© 2022 ESM, Inc. いつやる? 誰がやる? 何をやる? なぜやる? 42 •
共通理解を持つ • 次工程に必要なものを作る
© 2022 ESM, Inc. 43 WF その工程 Agile いつやる 誰がやる
何をやる なぜやる 開発期間中 工程の担当者 全員 次工程に必要なものを作る 共通理解を持つ キーワード 工程・分業・利他 逐次・共同・利己
© 2022 ESM, Inc. もうひとつ 44
© 2022 ESM, Inc. ソフト開発は一品もの 45 IoT 装置 Slack アプリ
• ラズパイ • 各種センサ • 組み込みシステム • クラウド • データベース • Webサービス
© 2022 ESM, Inc. プロダクト毎に設計は異なる 46 IoT装置 Slack アプリ
ドメイン 組み込み Webサービス 動作環境 スタンドアロン マネージドサービス チームの習熟度 低い 高い 作成したダイアグラム ユースケース図 回路図 状態遷移図 処理フロー シーケンス図 システム構成図 アーキテクチャ構造図 シーケンス図 プロダクトに応じた設計の定義が必要
© 2022 ESM, Inc. 設計の抽象化 47 固有の設計スキル 固有の設計スキル メタな設計スキル
© 2022 ESM, Inc. 更に抽象化 48
© 2022 ESM, Inc. まとめ 49
© 2022 ESM, Inc. Agile開発でも設計は必要 WF開発とは目的が異なる 設計を設計するメタスキル 50
© 2022 ESM, Inc. ありがとうございました 51