$30 off During Our Annual Pro Sale. View Details »

[Agile][Scrum] 転リファ

kata_junn
September 06, 2021

[Agile][Scrum] 転リファ

正式タイトル:異世界に転生したら激レア職業のスクラム Developer だったので手始めに Scrum Fest Osaka 2020 でラーニングしたスキルでリファインメント無双してみた

スクラムフェス三河2020 でお話しした内容です

kata_junn

September 06, 2021
Tweet

More Decks by kata_junn

Other Decks in Technology

Transcript

  1. かたじゅん(片野 潤一) Twitter:@kata_junn Java Struts/Spring/MyBATIS 2005 2014 OutSystems Developer@3人(6か月) Developer

    && TL@約10人(24か月) OutSystems 推進 2019 2020 Scrum on AWS Role:Developer TypeScript Serverless Dynamo, Lambda, S3, SQS, Kinesis, Athena Angular OutSystems OutSystems 推進 認定スクラムマスター(CSM) AWS Certified DevOps Engineer - Professional OutSystems Expert Web Developer (O11) 好き:リアル脱出ゲーム、低温調理、肉、ゴルフ、スパイス、DQW 20%
  2. Priority H L Product Backlog Sprint Backlog Daily Standup Sprint

    1-4 week(s) Iteration Potentially Shippable Product Increment Ready Not Ready
  3. Priority H L Product Backlog Sprint Backlog Daily Standup Sprint

    1-4 week(s) Iteration Potentially Shippable Product Increment Ready Not Ready に変えたり 優先順位付けするのがリファインメント を Not Ready Ready 洗 練
  4. Ready なプロダクトバックログのイメージ(めっちゃぼかした) 要件と価値とざっくり仕様 Dev 内の見積作業結果 DEV ⇔ PO 質問結果 受入条件

    技術的な不安要素もなく見積がなされており 価値と仕様が明確で Developer がすぐにでも開発に着手できる状態
  5. リファインメントを 2 種類用意 リファインメント with PO 通称:PO リファ(木・月 に 1H

    開催) リファインメント in DEV 通称:DEV リファ(金・火 に 1H 開催) PO とのコミュニケーションの機会 価値の共有、仕様協議・決定を実施する 主に確認項目や受入条件への追記・修正が 行われる PO DEV ワイガヤ ワイガヤ DEV 内での実装方法検討の場 共有された価値を実現するための手法を決 定し、見積可能なレベルに落とし込む 主に確認項目への追記・修正や見積結果の 追記が行われる DEV あーでも こーでも DEV
  6. こんな雰囲気で日々 Ready にしてます 木 金 月 火 PO リファ DEV

    リファ PO リファ DEV リファ こういうの 欲しいんす なぜ欲しいの? こういう風に実装すると 楽だけど価値変わっちゃう? PO DEV それならおけ 把握 こういう感じで
  7. こんな雰囲気で日々 Ready にしてます 木 金 月 火 PO リファ DEV

    リファ PO リファ DEV リファ 作業レベル に落とすよ あれ、このケースどうな るんだっけ? あれ、このサービス初めて 使うんじゃ? DEV DEV スパイク 必要やん せやな PO に聞こう 作業レベル に落とすよ こうしてこうかな 見積もるか DEV DEV プランニング ポーカー! じゃー5で ばっちり
  8. こんな雰囲気で日々 Ready にしてます 木 金 月 火 PO リファ DEV

    リファ PO リファ DEV リファ 見積できた? スパイクさせて あと追加の 確認事項もあります PO DEV ふむふむ 見積できた? できました、5です 不明点もないっす PO DEV Ready だ!
  9. こんな雰囲気で日々 Ready にしてます 木 金 月 火 PO リファ DEV

    リファ PO リファ DEV リファ 作業レベル に落とすよ Ready じゃないけ ど見積はできるね イケメン DEV DEV プランニング ポーカー! じゃー3で 確認事項足しといた
  10. 要件と価値とざっくり仕様 Dev 内の見積作業結果 DEV ⇔ PO 質問結果 受入条件 PO リファと

    Dev リファの領域 Dev リファ PO リファ Dev リファ PO リファ Dev リファ
  11. PO リファでは質問攻め このケースは? PO DEV 例えば~~の場合は … くぁwせdr ftg このケースは?

    このケースは? 認識の齟齬が発生しがち 構造化されていない 会話・表現スキルも求められる(オンラインだとなおさら)
  12. PO リファでは質問攻め このケースは? PO DEV 例えば~~の場合は … くぁwせdr ftg このケースは?

    このケースは? 認識の齟齬が発生しがち 構造化されていない 会話・表現スキルも求められる(オンラインだとなおさら) 実例マッピング よさそう
  13. 例を用いることで、共通理解の構築や矛盾点発見を促してくれるプラクティス ※ “日本の開発者・経営者に特に伝えるべき Agile Testing のエッセンス” broccoli さん@Scrum Fest Osaka

    2020 で出会う Scrum Fest Osaka 2020 登壇ブログ:https://nihonbuson.hatenadiary.jp/entry/scrumfestosaka2020 実例マッピング紹介ブログ:https://nihonbuson.hatenadiary.jp/entry/ExampleMapping 元ブログ(画像出典元):https://cucumber.io/blog/bdd/example-mapping-introduction/ 実例マッピング(Example Mapping)
  14. 実例マッピング(Example Mapping) Story Rule Example Question 議論中のストーリー(仕様・機能) ストーリーを構成するルール あるルールに当てはまる例 疑問点・解決できていない何か

    例が多すぎる=ルールが複雑なのでルールの整理や検討、 分割を検討すべき、かもしれない ルールが多すぎる=ストーリーが複雑なのでストーリー の分割を検討すべき、かもしれない 疑問点が多すぎる=学んだり調査すべき内容がまだたく さんある
  15. 実例マッピング(Example Mapping)の様子 PO DEV 取り込んだあるデータを 別々のカラムに分けて 集計に使いたいんです PO 都道府県とそれ以降に分けたいん です

    ふむふむ、こういうストーリー とルールですね データを2つに分解したい カラム1:都道府県 カラム2:それ以降
  16. 実例マッピング(Example Mapping)の様子 PO 都道府県名は空白で良いです カラム1:先頭の都道府県を 抜き出す(なければ空白) カラム2:それ以降 DEV 都道府県が入っていなかったら どう振舞いますか?

    「神奈川県川崎市」 1:神奈川県 2:川崎市 「川崎市」 1:(空白) 2:川崎市 DEV 先頭の都道府県を抜き出す、と いうルールということですね、 変えました。 データを2つに分解したい
  17. 実例マッピング(Example Mapping)の様子 カラム2: カラム1を除いた結果 DEV ルールが肥大化しすぎたので 分けて整理しました 「神奈川県川崎市」 ↓ 川崎市

    「川崎市」 ↓ 川崎市 カラム1: 先頭の都道府県を抜き 出す(なければ空白) 「神奈川県川崎市」 ↓ 神奈川県 「川崎市」 ↓ (空白) DEV カラム1 のルールについて さらに深掘りさせてください データを2つに分解したい
  18. 実例マッピング(Example Mapping)の様子 カラム2: カラム1を除いた結果 「神奈川県川崎市」 ↓ 川崎市 「川崎市」 ↓ 川崎市

    カラム1: 先頭の都道府県を抜き 出す(なければ空白) 「神奈川県川崎市」 ↓ 神奈川県 「川崎市」 ↓ (空白) PO DEV 先頭は必ず都道府県で始まって ますか? あ、そんなことなさそうでした 他の文字列が入っているケースも あります DEV なるほど ではルールを見直しましょう! データを2つに分解したい
  19. 実例マッピング(Example Mapping)の様子 カラム2: カラム1を除いた結果 「神奈川県川崎市」 ↓ 川崎市 「川崎市」 ↓ 川崎市

    カラム1: 文中の都道府県を抜き 出す(なければ空白) 「神奈川県川崎市」 ↓ 神奈川県 「川崎市」 ↓ (空白) DEV 都道府県が文中に入っていたら それを抜き出す、という仕様は いかがでしょう? DEV 例えば、 「xxx 神奈川県川崎市」では カラム1=神奈川県 になります PO はい、それでバッチリです 「 xxx 神奈川県川崎市」 ↓ 神奈川県 データを2つに分解したい
  20. 実例マッピング(Example Mapping)の様子 カラム2: 元々の文字列そのまま 「神奈川県川崎市」 ↓ 神奈川県川崎市 「川崎市」 ↓ 川崎市

    カラム1: 文中の都道府県を抜き 出す(なければ空白) 「神奈川県川崎市」 ↓ 神奈川県 「川崎市」 ↓ (空白) 「 xxx 神奈川県川崎市」 ↓ 神奈川県 DEV あと、カラム2 のルールを見直 しましょう。単純に抜き出すと 意味不明な文字列になります PO では、元々の文字列をそのまま入 れるようにしてください。分析の 価値は損なわれません。 DEV はい。 例も一緒に整理しますね 「 xxx 神奈川県川崎市」 ↓ xxx 神奈川県川崎市 データを2つに分解したい
  21. 実例マッピング(Example Mapping)の様子 カラム2: 元々の文字列そのまま 「神奈川県川崎市」 ↓ 神奈川県川崎市 「川崎市」 ↓ 川崎市

    カラム1: 文中の都道府県を抜き 出す(なければ空白) 「神奈川県川崎市」 ↓ 神奈川県 「川崎市」 ↓ (空白) 「 xxx 神奈川県川崎市」 ↓ 神奈川県 DEV あ、そうだ 元の文字列ってカナできたりし ます? 「 xxx 神奈川県川崎市」 ↓ xxx 神奈川県川崎市 PO …うーん、即答できないので調査 しておきます… カナの文字列来る? データを2つに分解したい
  22. 実例マッピング(Example Mapping)の様子 カラム2: 元々の文字列そのまま 「神奈川県川崎市」 ↓ 神奈川県川崎市 「川崎市」 ↓ 川崎市

    カラム1: 文中の都道府県を抜き 出す(なければ空白) 「神奈川県川崎市」 ↓ 神奈川県 「川崎市」 ↓ (空白) 「 xxx 神奈川県川崎市」 ↓ 神奈川県 DEV PO ありがとうございました! 「 xxx 神奈川県川崎市」 ↓ xxx 神奈川県川崎市 カナの文字列来る? データを2つに分解したい
  23. 実例マッピング(Example Mapping)の様子 カラム2: 元々の文字列そのまま 「神奈川県川崎市」 ↓ 神奈川県川崎市 「川崎市」 ↓ 川崎市

    カラム1: 文中の都道府県を抜き 出す(なければ空白) 「神奈川県川崎市」 ↓ 神奈川県 「川崎市」 ↓ (空白) 「 xxx 神奈川県川崎市」 ↓ 神奈川県 DEV PO ありがとうございました! 「 xxx 神奈川県川崎市」 ↓ xxx 神奈川県川崎市 カナの文字列来る? データを2つに分解したい
  24. データを2つに分解したい 実例マッピング(Example Mapping)の様子 DEV PO この仕様で! 受入条件に使える カラム2: 元々の文字列そのまま 「神奈川県川崎市」

    ↓ 神奈川県川崎市 「川崎市」 ↓ 川崎市 カラム1: 文中の都道府県を抜き 出す(なければ空白) 「神奈川県川崎市」 ↓ 神奈川県 「川崎市」 ↓ (空白) 「 xxx 神奈川県川崎市」 ↓ 神奈川県 「 xxx 神奈川県川崎市」 ↓ xxx 神奈川県川崎市 テストケースに使える カナの文字列来る? これが解決すると READY になる