LoginSignup
1
0

More than 3 years have passed since last update.

スクラムを本格的に導入してみた!

Last updated at Posted at 2020-07-23

システムチームが抱えていた問題

  • 手持ち無沙汰なエンジニアがいた

  • 情報共有がバケツリレーで行われていた
    責任者⇔社員⇔非社員
    経営者やシステム利用者⇔部署間調整者⇔システムチーム

  • 個人間でのコミュニケーションが目立つ

  • リリーススピードが上がらない(検証待ちも多かったのだが…)

経営者からの提案

CTOを招き入れる

現場の反応

招くならプロダクトオーナーではないか(技術顧問も同意見)

経営者の判断

人ではなく、仕組みで改善を試みる
以前スクラムを挑戦して断念したが、再挑戦してみたらどうか

以前スクラムに挑戦して断念した理由

  • メンバー全員、スクラムを少し調べた程度で即実践に入ったため、よくわかっていなかった

  • 十数個のストーリーポイントの合意形成を図るのに1か月費やす(各ストーリーポイントが全員一致するまで、ひたすらディスカッション)

経営者とシステムチーム責任者でスクラム「再」勉強

スクラム 仕事が4倍速くなる“世界標準”のチーム戦術

  • システムチーム責任者が内容まとめてチームに共有する
    • 理想論のような印象を受けるも、スクラムの全体像は把握できた
    • ただ、実践してみないと分からない

サブタスクで実践

  • ロール

    • PO:経営者
    • SM:システムチーム責任者
    • システムチーム:4名
  • POとSMでPBLを作成

    • スプレッドシートで管理
    • システムチームはPBL作成に関与しない(この時点では)
    • ストーリーポイントは「価値 - 見積 = 優先」
  • SMとシステムチームでSBLを作成

    • GitHub Projects で管理
    • タスクは時間で見積
    • チーム全員で見積る
    • 要件定義や仕様まとめのみのスプリントもあり(この時点では)

実践してみた結果

  • 要件定義や仕様まとめのみのストーリーポイントが曖昧

  • 終わらないスプリントは延長

  • 1スプリントで1ストーリーのみの対応が多い

  • スプリントレビューの場がない(検証依頼のみ)

  • 振り返り参加人数少ない&時間が短い

更にスクラムの情報収集を行う

スクラム現場ガイド
エッセンシャル スクラム

機能と期日が確約されているプロジェクトでスクラム

  • 良かった点

    • 社員、非社員関係なくオープンでコミュニケーションが取れるようになってきた
    • 期日は死守できた
    • スプリントレビューの場を設けた
  • 良くなかった点

    • 期日を死守することに専念した為、スプリントの終わりでなくリリース後に振り返りをまとめて実施することとなった
    • 仕様の全体像を把握していないチームメンバーが多数存在した
    • 実装時に発覚する既存仕様及びコードの課題が山盛りとなった

「仕様の全体像を把握していない」ことへの取り組み

  • テストファーストの思想を導入する

  • ユニットテストの導入は即時にはできないので、実装前にデシジョンテーブルを作成してパターンを網羅する

スクラムチームでPBL作成の練習

  • 題材は「機能と期日が確約されているプロジェクト」の残課題

  • 良かった点

    • ストーリーへの落とし込みが経験できた
    • 合意形成をとりながらストーリーポイントを決めれた
  • 良くなかった点

    • 司会を決めるのにもたついた
    • 司会が質問してもだんまりがあった
    • 20個以上ある課題を5個しかPBLに転記できなかった

この頃から指針を求める声が強まったので規約を作ってみた

  • 各ロールの役割を自社作業に照らし合わせ明確にする

  • ストーリーポイントは「価値 - 見積 = 優先」とする

  • 見積りは「S、M、Lとフィボナッチ数列」

XS S M L XL XXL
1 2 3 5 8 13
  • 見積りがXXL(13)を超える場合はストーリーを分割する

  • スプリント期間は1週間とする

  • 要件定義や仕様まとめのみのスプリントは実施しない

  • 内部検証できるモノをスプリント内で構築することを確約する

  • SBLのタスク見積りで1人日を超える場合は分割する

  • スプリント期間内にタスクが完了しなかった場合はPBLに戻す

  • デイリースクラムは毎朝15分以内とする

  • スプリントレビューはスプリント終了日に実施する

  • スプリントレトロスペクティブはスプリントレビュー後に実施する

ステークホルダー、PO、SM、チームの役割を明確にしてスクラム

  • ロール

    • ステークホルダー:経営者
    • PO:デザインチーム責任者
    • SM:システムチーム責任者
    • システムチーム:4名
  • 1スプリント目

    • デザインチームが別タスクで動けなかったため、システムチームに待ちが発生
  • 2スプリント目

    • POでマルチタスクが発生して時間がとれない
    • POの他部署調整にて、行って来いのバケツリレー共有が発生
    • 今までの業務仕様がベストかどうかの判断をせずに、「今まで」を貫き通そうとする
    • システムチーム内で作業branchの取り扱いで揉める
    • システムチーム内で仕様に関するメモ書きを残して欲しいと訴える者の出現(メモ書き欄は用意していたが、誰もが積極的に書かなかった)
  • 3スプリント目

    • 同じストーリーでデザイン、システムチームの作業見積りが異なったため、ストーリーの優先に差異が発生
    • 様々な人がコードを好みで書くので異文化が増えた
  • 良かった点

    • PBLの見積り時に参照できる、相対的比較値となる実績が残せた
  • 改善

    • POは他部署調整の際、システムチームの人間を上手に巻き込むことを意識
    • SMは「指示」ではなく「促す」ことを意識
    • スクラム認識合わせの場を設ける(勉強したことの共有)
    • ブランチの構成は「master&develop&feature」とする
    • コード規約を作る
    • 「価値 - 見積 = 優先」ストーリーポイントをやめる
      • 価値はステークホルダーとPO の軸とチームの両軸から が提示する
      • 見積はストーリーで作業が発生する部署がそれぞれ提示する
      • 価値と見積のそれぞれを考慮して「優先」を決める

現状の課題

  • スクラム開発におけるデザイナーの付き合い方
    デザインチーム単独でのスクラムを試みているが、二重スクラムみたいなことになり、
    POの時間が取れない問題が加速するのではという懸念

  • PBLの項目が予定より早く終わった場合の動き方
    サブタスクか次回スプリントで着手予定のストーリーを取るか

  • 大掛かりなDB設計はどのタイミングで行うか
    スプリント0かスプリント中に行うのか

    テーブル設計が出来てないと、運用設計(通常業務、マスタ登録など)も出来ないので、そもそもコーディングにはいるべきではないと考える

    上記のような意見もあり、スプリント0で実施する方向にて検討中

今後の取り組み

  • ドメイン駆動設計の導入
  • ユニットテストの導入
  • スクラムの全社導入
1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0