Slide 1

Slide 1 text

締切とはなにか どういう効果があるのか Scrum Fest Mikawa 2023 Kei Ogane 2023/9/16

Slide 2

Slide 2 text

自己紹介 ばやし@bayashimura CSM/CSPO/CAL1 最近ハマっていることは 信長の野望 出陣です

Slide 3

Slide 3 text

今日の話 締切のデメリットを嫌い、スクラムをやる中で 開発では機能毎の動かせない締切を設定せずに やってきました。 しかしみんなにテックブログを書いてもらう際 にやることは「締切を設定すること」でした。 この行動の違いを我ながら疑問に思った

Slide 4

Slide 4 text

ソフトウェア開発における締切 なぜブラッドは、締め切りを「強制」したいのでしょうか?それはガバナ ンスの指標のひとつである「スケジュール差異」のためなのです。 スケジュール差異は、進捗状況を測るためのものとされています。しかし ながら、ソフトウェア・プロダクトの開発は、建設ではありません。ソフ トウェアの作成は、学習が全てなのです。 アジャイルではないアプローチであっても、スケジュール差異は意味をな しません。スケジュール差異は、プロジェクト内部にフィードバックサイ クルがないことや、何も学習しないことを前提としているのです。ソフト ウェアプロダクトの開発には、フィードバックループと学習が必要なので す。 アジャイルにおいて、締め切りを「守ること」「強制すること」は必要ではない https://www.servantworks.co.jp/posts/with-agile-approaches-no-need-to-meet-or-enforce-deadlines/

Slide 5

Slide 5 text

締切があることによるデメリット - オーバーワークで挽回してチーム疲弊しがち - 見えないところの品質を低下させがち - パーキンソンの法則 (仕事の量は、完成のために与えられた時間を すべて満たすまで膨張する)

Slide 6

Slide 6 text

厳しい締切がもたらすもの ソフトウェア見積り 人月の暗黙知を解き明かす スティーブ マコネル (著), 溝口 真理子;田沢 恵 (翻訳), 久手堅 憲之 (読み手) 遅延がプロジェクトをさらに破壊する ひとたびプロジェクトが「遅延」状態 に陥ると、プロジェクトが「予定どお り」に行われている間には携わる必要 のなかった数多くのアクティビティ に、プロジェクトチームは従事せざる を得ない。

Slide 7

Slide 7 text

遅延がもたらすアクティビティ(一部抜粋) - プロジェクトを元の軌道に戻す方法 について話し合うため、 経営上層部と何度も状況について打 ち合わせる。 - いつプロジェクトを完了するか決定 するため、プロジェクトの後半で頻 繁に再見積りを行う。 - スケジュールが迫ってきたために先 に間に合わせで実装した代替策が引 き起こす問題を解決する。 ソフトウェア見積り 人月の暗黙知を解き明かす スティーブ マコネル (著), 溝口 真理子;田沢 恵 (翻訳), 久手堅 憲之 (読み手)

Slide 8

Slide 8 text

締切のない世界を目指して 私は社内のテックブログの編集長を以前やって いました 最初は個人の自主性に任せ、締切を設定せずに 運用していました

Slide 9

Slide 9 text

誇張しすぎた締切がないときに発生していたこと テックブログ執筆お願いします。 締切とかは特に設定しないので 自分のペースでお願いします。 了解です!

Slide 10

Slide 10 text

誇張しすぎた締切がないときに発生していたこと テックブログ執筆お願いします。 締切とかは特に設定しないので 自分のペースでお願いします。 了解です! 一ヶ月後

Slide 11

Slide 11 text

誇張しすぎた締切がないときに発生していたこと そろそろできました? 後回しにしちゃってました! 今から書きます!

Slide 12

Slide 12 text

誇張しすぎた締切がないときに発生していたこと そろそろできました? 後回しにしちゃってました! 今から書きます! 一ヶ月後

Slide 13

Slide 13 text

誇張しすぎた締切がないときに発生していたこと あの... そろそろできました? すみません、今執筆中です! ちょっと待ってください

Slide 14

Slide 14 text

誇張しすぎた締切がないときに発生していたこと あの... そろそろできました? すみません、今執筆中です! ちょっと待ってください 以後この記事が世の中 に出ることはなかった

Slide 15

Slide 15 text

締切を作ることにした 作者を放っておいても 作品は出てこない

Slide 16

Slide 16 text

締切を設けてみた テックブログ執筆お願いします。 締め切り一ヶ月後に設定します。 一週間前に進捗確認しますね 了解です!

Slide 17

Slide 17 text

締切を設けてみた テックブログ執筆お願いします。 締め切り一ヶ月後に設定します。 一週間前に進捗確認しますね 了解です! 締切一週間前

Slide 18

Slide 18 text

誇張しすぎた締切がないときに発生していたこと そろそろできました? 一昨日締切に気が付きまして、 とりあえず今は ここまで完成してます

Slide 19

Slide 19 text

誇張しすぎた締切がないときに発生していたこと そろそろできました? 一昨日締切に気が付きまして、 とりあえず今は ここまで完成してます 締切日

Slide 20

Slide 20 text

誇張しすぎた締切がないときに発生していたこと どうです、できました? なんとか形にはしました!

Slide 21

Slide 21 text

締切がないときに発生していたこと 「あの、そろそろ...でき ました?」 「ちょっとここで躓いてま して...!すぐ書きま す!」 無事世の中に テックブログは リリースされた

Slide 22

Slide 22 text

締切がないときに発生していたこと 「あの、そろそろ...でき ました?」 「ちょっとここで躓いてま して...!すぐ書きま す!」 自分自身がテックブロ グを書くときを 振り返ってみても

Slide 23

Slide 23 text

締切がない場合 開発A 開発B 開発C テックブログ 暇になったらやろう タスクの優先順位

Slide 24

Slide 24 text

開発C 開発D 開発E テックブログ 暇になったらやろう タスクの優先順位 締切がない場合(一ヶ月後)

Slide 25

Slide 25 text

開発C 開発D 開発E テックブログ 暇になったらやろう タスクの優先順位 締切がない作業をやるとき タスクの優先順位の外にいる 作業は放っておきがち

Slide 26

Slide 26 text

締切が存在する時 開発A 開発B 開発C テックブログ 暇になったらやろう タスクの優先順位

Slide 27

Slide 27 text

締切が存在する時(締切前) 開発C 開発D 開発E テックブログ タスクの優先順位 締切が近くなってきた! やらねば! インターセプトッ

Slide 28

Slide 28 text

締切が存在する時(締切前) 開発C 開発D 開発E テックブログ タスクの優先順位 締切が近くなってきた! やらねば! インターセプトッ 締切が近くなると途端に 最優先タスクになる

Slide 29

Slide 29 text

自分の学び 上記は一例だけど締切を設定することで - リソースやマインドシェアを確保できる - 途中はともかく締切が近づいたら最優先にしてもらえる - 締切があることでコミュニケーションが取りやすい という効果を実感

Slide 30

Slide 30 text

締切の効果 締め切りを作れ。それも早いほどいい。 ──時間と質を両立する仕組み クリストファー・コックス (著), 斎藤栄一郎 (翻訳) 集団Aには、提出の締め切りまで5日間 と告げ、集団Bには締め切りを設定しな かった。結果は、一目瞭然。締め切りを 設定した集団Aは、60%の学生がアン ケートを提出して5ドルを手にした。と ころが締め切りのない集団Bでは、提出 率が25%にとどまった。

Slide 31

Slide 31 text

でもうちのチーム スクラムをやっているうちのチームは 締切は設定してないけど どんどこ機能をリリースしていってるし 特に困ってる感じもしないなぁ これは一体何がどう作用してるんだ

Slide 32

Slide 32 text

優先順位 プロダクトバックログは、創発的かつ順 番に並べられた、プロダクトの改善に必 要なものの一覧である。 これは、スクラムチームが行う作業の唯 一の情報源である。 https://scrumguides.org/docs/scrumguide/v2020/2020-Scrum-Guide-Japanese.pdf

Slide 33

Slide 33 text

リソースの確保 スクラムが成功するかどうかは、次の5 つの価値基準を実践できるかどうかにか かっている。確約、集中、公開、尊敬、 勇気。スクラムチームは、ゴールを達成 し、お互いにサポートすることを確約す る。スクラムチームは、ゴールに向けて 可能な限り進捗できるように、スプリン トの作業に集中する。 https://scrumguides.org/docs/scrumguide/v2020/2020-Scrum-Guide-Japanese.pdf

Slide 34

Slide 34 text

状況の確認 スプリントレビューの⾃的は、スプリン トの成果を検査し、今後の適応を決定す ることである。 スクラムチームは、主要なステークホル ダーに作業の結果を提⽰し、プロダクト ゴールに対する進捗について話し合う。 スプリントレビューにおいて、スクラム チームとステークホルダーは、スプリン トで何が達成され、⾃分たちの環境で何 が変化したかについてレビューする。 https://scrumguides.org/docs/scrumguide/v2020/2020-Scrum-Guide-Japanese.pdf

Slide 35

Slide 35 text

スクラムには スクラムには - 唯一つの作業の優先順位 - 確約、集中という価値観 - 定期的なステークホルダーとの進捗の確認 が盛り込まれている。 締切を用いらずとも、優先順位は決まっていて、 リソースも確保され、進捗も確認できてそう

Slide 36

Slide 36 text

テックブログで締切が必要だった理由 スクラムチームでの仕事 テックブログ リソースヨコセッ!

Slide 37

Slide 37 text

テックブログで締切が必要だった理由 スクラムチームでの仕事 テックブログ こう考えると すみませんでした

Slide 38

Slide 38 text

いやでも締切が必要なケースもあるよね 例えば - クリスマス向け機能 - 12/10までにリリースしないと誰も使わない - ◯◯月の法改正対応 - それを過ぎてしまうと法令違反状態になる みたいにビジネスの必然性に基づくタイムリミットも 確かに存在する

Slide 39

Slide 39 text

いやでも締切が必要なケースもあるよね 他にも - 完了期日がわからないと開発の規模感が分からず そもそもビジネスとして その開発に投資できるかどうかわからない などコストやスケジュール感把握のための完了期日が 必要といった話もある

Slide 40

Slide 40 text

締切に求められるもの リソースやマインドシェアの確保以外にも - ビジネス上の動かせないタイムリミットを伝える - 規模感を見積もる みたいな用途で使われてそう

Slide 41

Slide 41 text

ここで用語整理 - 見積もり - ターゲット - コミットメント

Slide 42

Slide 42 text

見積りとは ソフトウェア見積り 人月の暗黙知を解き明かす スティーブ マコネル (著), 溝口 真理子;田沢 恵 (翻訳), 久手堅 憲之 (読み手) 見積りとは、プロジェクトにかかる期間やコスト を予測することだと言ってよい。 (中略) 重要なことは、明示するしないにかかわらず、あ らゆる見積もりには確率が含まれているという事 実である。

Slide 43

Slide 43 text

ターゲットとは ターゲットとは、実現したいビジネス上の目 標を明文化したものだ。次のような例がター ゲットである。 - 5月の展示会でデモができるように、 バージョン2.1を完成させなければなら ない。 - 年末年始の商戦に間に合うように、この リリースを安定させなければならない。 - 法令へのコンプライアンス上、これらの 機能は7月1日までに完成させなければな らない。 ソフトウェア見積り 人月の暗黙知を解き明かす スティーブ マコネル (著), 溝口 真理子;田沢 恵 (翻訳), 久手堅 憲之 (読み手)

Slide 44

Slide 44 text

コミットメントとは ソフトウェア見積り 人月の暗黙知を解き明かす スティーブ マコネル (著), 溝口 真理子;田沢 恵 (翻訳), 久手堅 憲之 (読み手) コミットメントとは、定義された機能を、特 定の品質レベルを確保しながら期日までに納 品するという約束を意味する。 (中略) コミットメントと見積りが同一でなければな らないと考えてはいけない。そもそも同じも のではないのだ。

Slide 45

Slide 45 text

見積り: 期間やコストの(大雑把な)幅のある予測 ターゲット: ビジネス上の目標 コミットメント: ターゲットを達成するための計画に基づいた約束 ソフトウェア見積りの定義

Slide 46

Slide 46 text

そして3つは混同されがち ソフトウェア見積り 人月の暗黙知を解き明かす スティーブ マコネル (著), 溝口 真理子;田沢 恵 (翻訳), 久手堅 憲之 (読み手) 「見積り」、「ターゲット」、「コミットメ ント」はそれぞれ異なるものであると認識し よう。 (中略) 経営層の多くは技術的なバックグラウンドを 持っておらず、見積り、ターゲット、コミッ トメント、計画を明確に区別しない

Slide 47

Slide 47 text

締切が必要なケース必要ないケース ビジネスの必然性に基づくタイムリミット → これはコミットメント(締切)が必要 コスト感把握のための完了期日 → ここで求められているのはコミットメント(締切)ではなく、見積り

Slide 48

Slide 48 text

ただし 多くの機能は早く出せば出すだけありがたい - 特定の日付が来るまで必要ないが日付を過ぎると急速に価値が減衰する機能 - e.g.)年末調整機能を今年の年末調整が始まるまでに出す - 早く出せれば早く出せるだけ良い(時期によらない)機能 - e.g.)顧客がずっと待っていた他システムとの連携機能

Slide 49

Slide 49 text

締切のまとめ - ソフトウェア開発において締切を厳守することは建設的ではない - ソフトウェア開発は未知なものを作る行為であり、学習が全てあるため - 締切を設定された人のリソース、マインドシェアを確保する効果がある - スクラムにおいてはこの効果は必須ではない - ただしビジネス上のターゲットの必然性から発生することもある - 多くの機能はその限りではない - 見積りと混同されがち

Slide 50

Slide 50 text

参考 アジャイルにおいて、締め切りを「守ること」「強制すること」は必要ではない https://www.servantworks.co.jp/posts/with-agile-approaches-no-need-to-meet-or-enforce-deadlines/ ソフトウェア見積もり https://www.amazon.co.jp/dp/B00KR96M6K 締め切りを作れ。それも早いほどいい。 ──時間と質を両立する仕組み https://www.amazon.co.jp/dp/4775942727