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
740
アジャイル開発の中の設計
岡本卓也
June 22, 2022
Tweet
Share
More Decks by 岡本卓也
See All by 岡本卓也
スクラムチームだけどエクセルで要件定義書を書くことにしました / Requirements-Specification-Document-in-Scrum
okamototakuyasr2
0
570
合宿はいいぞ / Training camp is so good.
okamototakuyasr2
0
460
幸運を科学する ~アジャイルチームの成功を再現する方法~ / How to reproduce nice team at ESM webiner.
okamototakuyasr2
0
36
幸運を科学する ~アジャイルチームの成功を再現する方法~
okamototakuyasr2
0
1.1k
アジャイルと設計 / Design in Agile Development
okamototakuyasr2
0
32
なぜアジャイルをやるのですか
okamototakuyasr2
0
110
コミュニティと人の縁〜まずは楽しんで、そしてその先にあるもの〜
okamototakuyasr2
0
390
地方でエンジニアをやる
okamototakuyasr2
0
370
年長者の視点 ~ Another side of ふりかえり ~
okamototakuyasr2
0
10
Other Decks in Technology
See All in Technology
目標設定は好きですか? アジャイルとともに目標と向き合い続ける方法 / Do you like target Management?
kakehashi
10
3k
AIアシスタントの活用で品質の向上と開発ワークフローのスピードアップ
nagix
1
200
LINE WORKSへ簡単通知!Incoming Webhookアプリの紹介
mmclsntr
0
110
20240725 LLMによるDXのビジョンと、今何からやるべきか @Azure OpenAI Service Dev Day
nrryuya
3
1.2k
データ分析を支える技術 生成AI再入門
ishikawa_satoru
0
380
運用改善、不都合な真実 / 20240722-ssmjp-kaizen
opelab
17
8k
CEL(Common Expression Language)で書いた条件にマッチしたIAM Policyを見つける / iam-policy-finder
fujiwara3
0
710
What is DRE? - Road to SRE NEXT@広島
chanyou0311
3
630
開発生産性をむしろ向上させる セキュリティパートナーの作り方 / Dev Productivity Con 2024
flatt_security
0
360
Github Actions 로 Android 팀의 효율성 극대화
hadonghyun
0
160
AutomatedLabを使って内部ペンテストを勉強しよう! -やられ社内ネットワークの自動構築-
n_etupirka
1
610
DevIO2024_レガシー運用からの脱却 -クラウド活用の実践事例とベストプラクティス-
jun2882
0
210
Featured
See All Featured
What's in a price? How to price your products and services
michaelherold
239
11k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
78
15k
Side Projects
sachag
451
42k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
502
140k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
189
16k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
277
13k
How to Think Like a Performance Engineer
csswizardry
4
590
Fashionably flexible responsive web design (full day workshop)
malarkey
399
65k
Building a Modern Day E-commerce SEO Strategy
aleyda
25
6.7k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
29
2.5k
GraphQLとの向き合い方2022年版
quramy
36
13k
Pencils Down: Stop Designing & Start Developing
hursman
118
11k
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