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
770
アジャイル開発の中の設計
岡本卓也
June 22, 2022
Tweet
Share
More Decks by 岡本卓也
See All by 岡本卓也
私が好きなUMLダイアグラム / The UML Diagrams I Love.
okamototakuyasr2
0
14
スクラムチームだけどエクセルで要件定義書を書くことにしました / Requirements-Specification-Document-in-Scrum
okamototakuyasr2
1
830
合宿はいいぞ / Training camp is so good.
okamototakuyasr2
0
500
幸運を科学する ~アジャイルチームの成功を再現する方法~ / How to reproduce nice team at ESM webiner.
okamototakuyasr2
0
39
幸運を科学する ~アジャイルチームの成功を再現する方法~
okamototakuyasr2
0
1.2k
アジャイルと設計 / Design in Agile Development
okamototakuyasr2
0
36
なぜアジャイルをやるのですか
okamototakuyasr2
0
130
コミュニティと人の縁〜まずは楽しんで、そしてその先にあるもの〜
okamototakuyasr2
0
410
地方でエンジニアをやる
okamototakuyasr2
0
380
Other Decks in Technology
See All in Technology
Oracle Database 23ai 新機能 #3 Oracle Globally Distributed Database(GDD)
oracle4engineer
PRO
1
160
分野に潜むツールの紹介
pojiro
1
340
2024年版 運用者たちのLLM
nwiizo
3
390
AWSを始めた頃に陥りがちなポイントをまとめてみた
oshanqq
1
2.9k
データウェアハウス製品のSnowflakeでPythonが動くって知ってました?
foursue
1
160
Eventual Detection Engineering
ken5scal
0
930
疎通2024
sadnessojisan
5
830
脆弱星に導かれて
nishimunea
1
1.6k
Dive Deep in Cloud Run: Automatic Base Image update
aoto
PRO
0
900
ことばをそろえる / Bridging the Terminology Gap
amaotone
5
1k
AWS SAW を広めたい @四国クラウドお遍路
kazzpapa3
0
170
LLMに日本語テキストを学習させる意義
ksaito
13
3.6k
Featured
See All Featured
Web development in the modern age
philhawksworth
204
10k
A Modern Web Designer's Workflow
chriscoyier
690
190k
What's new in Ruby 2.0
geeforr
340
31k
The Power of CSS Pseudo Elements
geoffreycrofte
71
5.2k
Speed Design
sergeychernyshev
18
400
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
42
2k
Robots, Beer and Maslow
schacon
PRO
157
8.1k
How To Stay Up To Date on Web Technology
chriscoyier
785
250k
Teambox: Starting and Learning
jrom
131
8.7k
GraphQLの誤解/rethinking-graphql
sonatard
65
9.7k
What the flash - Photography Introduction
edds
67
11k
The Brand Is Dead. Long Live the Brand.
mthomps
53
37k
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