$30 off During Our Annual Pro Sale. View Details »
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
アジャイルと設計 / Design in Agile Development
Search
岡本卓也
April 18, 2023
Technology
0
66
アジャイルと設計 / Design in Agile Development
2023/04/18
社内発表資料
岡本卓也
April 18, 2023
Tweet
Share
More Decks by 岡本卓也
See All by 岡本卓也
普通のチームがスクラムを会得するたった一つの冴えたやり方 / the best way to scrum
okamototakuyasr2
0
170
AI活用時代のUML再評価/UML collaborate with AI
okamototakuyasr2
0
410
私が好きなUMLダイアグラム / The UML Diagrams I Love.
okamototakuyasr2
0
84
スクラムチームだけどエクセルで要件定義書を書くことにしました / Requirements-Specification-Document-in-Scrum
okamototakuyasr2
2
2.6k
合宿はいいぞ / Training camp is so good.
okamototakuyasr2
0
830
幸運を科学する ~アジャイルチームの成功を再現する方法~ / How to reproduce nice team at ESM webiner.
okamototakuyasr2
0
86
幸運を科学する ~アジャイルチームの成功を再現する方法~
okamototakuyasr2
0
1.9k
なぜアジャイルをやるのですか
okamototakuyasr2
0
220
コミュニティと人の縁〜まずは楽しんで、そしてその先にあるもの〜
okamototakuyasr2
0
530
Other Decks in Technology
See All in Technology
Microsoft Agent 365 についてゆっくりじっくり理解する!
skmkzyk
0
220
Kubernetes Multi-tenancy: Principles and Practices for Large Scale Internal Platforms
hhiroshell
0
120
グレートファイアウォールを自宅に建てよう
ctes091x
0
150
寫了幾年 Code,然後呢?軟體工程師必須重新認識的 DevOps
cheng_wei_chen
1
1.4k
生成AIでテスト設計はどこまでできる? 「テスト粒度」を操るテーラリング術
shota_kusaba
0
710
Karate+Database RiderによるAPI自動テスト導入工数をCline+GitLab MCPを使って2割削減を目指す! / 20251206 Kazuki Takahashi
shift_evolve
PRO
1
720
評価駆動開発で不確実性を制御する - MLflow 3が支えるエージェント開発
databricksjapan
1
130
ガバメントクラウド利用システムのライフサイクルについて
techniczna
0
190
Edge AI Performance on Zephyr Pico vs. Pico 2
iotengineer22
0
140
A Compass of Thought: Guiding the Future of Test Automation ( #jassttokai25 , #jassttokai )
teyamagu
PRO
1
260
Challenging Hardware Contests with Zephyr and Lessons Learned
iotengineer22
0
190
Lessons from Migrating to OpenSearch: Shard Design, Log Ingestion, and UI Decisions
sansantech
PRO
1
120
Featured
See All Featured
Building Applications with DynamoDB
mza
96
6.8k
How to Think Like a Performance Engineer
csswizardry
28
2.4k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.6k
Optimising Largest Contentful Paint
csswizardry
37
3.5k
The Language of Interfaces
destraynor
162
25k
Writing Fast Ruby
sferik
630
62k
Building Adaptive Systems
keathley
44
2.9k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.1k
Speed Design
sergeychernyshev
33
1.4k
Making Projects Easy
brettharned
120
6.5k
Leading Effective Engineering Teams in the AI Era
addyosmani
8
1.3k
Raft: Consensus for Rubyists
vanstee
141
7.2k
Transcript
アジャイルと設計 1 2023年04月18日 株式会社永和システムマネジメント Agile Studio 岡本 卓也
はじめに 1. アジャイル開発でも設計は必要 2. 設計のやり方はどこにも書かれていない 2
設計の目的 1. 記録する 2. 承認する 3. 共有する 3
設計のステップ 1. 調査する 2. 発見する 3. 理解する 4. 共有する
4
設計のステップ 1. 調査する 2. 発見する 3. 理解する 4. 共有する
5 ステップ1 ステップ2
ステップ1:調査と発見 • 調べる • 決める • 一番詳しい人がやる • 他の人はまだ理解できない
6
ここでやめるとこうなる 7 工程 工程 工程 工程 工程を設計書でつなぐ
ステップ2:理解と共有 • 分かったことを書き出す • 他の人に説明する • 見直す • チーム全員が理解している
8
作るもの 1. ユースケース 2. ドメインモデル 3. アーキテクチャ KEEPS しっかり書いて、できればメンテナンスする 9
ユースケース • 主要なケースだけ書く • 場面(ユース)を書く ※機能を書かない • ユーザを意識する 10
ドメインモデル 11 • 利用者の言葉で書く • 開発物の抽象を書く • 書くもの ◦ 仕事する箱
◦ 箱の責務 ◦ 最小限のデータ
アーキテクチャ 12 • 開発者の言葉で書く • 開発物の具象を書く • 書くもの ◦ 利用するサービス
◦ フレームワーク ◦ それらの連携
オススメの順番 13 ユーザーストーリーマッピング(または要件定義書) ユースケース ドメインモデル アーキテクチャ
なぜモデルを使うのか? 14
なぜUMLを使うのか? • 特に強い理由はない • オレオレ記法よりは混乱が少ない ◦ 書くための目的と記法に一定のルールがある ◦ それらの知見は世の中にあるので学習可能
◦ 細かいルールは無視してOK 15
ポイント • 全てを設計しない • 変わりにくい部分にフォーカスする • 作成には時間をかけない • 説明には時間をかける 16
設計の目的 1. 記録する 2. 承認する 3. 共有する 4. 会話を誘発する 17
参考 • 【アジャイル時代のモデリング①】システムの「全体像」の理解共有がなぜ必須なのか • 【アジャイル時代のモデリング②】共通理解を作るための、最もシンプルなモデルセット • アジャイル開発の中の設計 18
おしまい 19