nDiki : スプリント

2016年12月6日 (火)

第7回 エッセンシャル スクラムを読む会

エッセンシャル スクラム: アジャイル開発に関わるすべての人のための完全攻略ガイド

社内で「エッセンシャル スクラム」を読みたい人が集まる勉強会7回目。今日は第7章 見積もりとベロシティ。

プロダクトバックログ見積もり

プロダクトバックログアイテム(PBI)の見積もりプロダクトバックログリファインメント(グルーミング)で行うアクティビティです。この時プロダクトオーナーやスクラムマスターは「実際に見積もる作業」には関わらないのがポイント。

見積もりの最大の目的は、話し合う過程でいろいろな気づきが得られるということだ。

でなるほどと思いました。見積もられたサイズよりも、見積もるという過程を重視しているんですね。

ストーリーポイント

PBI の見積もり単位としてストーリーポイントと理想日を紹介しています。ストリーポイントはあくまで相対値なのでそのチーム内でしか使えない値です。プランニングポーカーのところで

多くのチームでは、1回のスプリントでこなせる最大のサイズを13で表している。

としているので、これが一つの目安でしょうか。それからストーリーポイントはベロシティと対にならないとあまり意味をなさないですね。

理想日の方はいわゆる人日。

ベロシティ

ベロシティで計測するのはあくまでも生産量であり(デリバリーしたもののサイズ)であり、成果(デリバリーしたももの価値)ではない。

ここは当たり前な感じではありますが誤解してはいけないところ。

計測で出てくるベロシティは見積もりの(精度ではなく)正確性によってかなり揺らぎがあると思うのですが、このあたりはチームが学んでいくことで安定していくものなのでしょうか。ベロシティに幅を持たせて表すと良いとありますが、どれぐらいの幅に収まっていくのか興味があります。

それからベロシティが上がるかという話がありました。ストーリーポイントとしては相対値なので上がらないはずですよね。アウトプットの絶対量は増えていくと思いますけれど。

スポンサード リンク
[ 12月6日全て ]

2016年12月13日 (火)

第8回 エッセンシャル スクラムを読む会

エッセンシャル スクラム: アジャイル開発に関わるすべての人のための完全攻略ガイド

社内で「エッセンシャル スクラム」を読みたい人が集まる勉強会8回目。今日は第8章 技術的負債。

スクラムのコアコンセプトの部でわざわざ技術的負債について1章割くというのがふーんという印象でした。ベロシティに大きな影響を与えるので避けて通れないというところでしょうか。あるいはウォーターフォールと違って返済していくチャンスがあるからでしょうか。

技術的負債

技術的負債。当初は

意図的に手抜きをしてすばやく仕上げるという意味

技術的負債を抱えるということは、今後の作業のための時間を担保にした融資を受けるということだ。

からきていて、後々返済する必要が出てくる代わりに先に経済的効果を得ているものを指しています。単純にまずい設計や実装のことまで技術的負債と世間で呼ばれていることがありますが、個人的には違和感を感じています。本書ではナイーブな技術的負債と呼んでいますね。

技術的負債ですが

大切なのは、どんなプロダクトであっても技術的負債からは逃れられないということだ。私はここで、技術的負債をなくすよう努力しましょうなどと言うつもりはない。仮にそんなことができたとしても、負債をゼロにするためには大変なコストがかかるだろう。

ということで必ずしも罪悪感を感じる必要のあるものではないことがわかります。きちんと把握してコントロールしていくことが重要です。

ただ

技術的負債の経済的意味についての適切な認識

については、正直なところなかなか正確に見積もれることがない気がします。技術的負債を生むという選択をした時にそこまで見積もる余裕がない、あるいはあっても先のことなので詳細化しきれない、そういうケースが多いのではないかと。

技術者レベルでの技術的負債の可視化

  • 方法1: 障害管理システムに記録する
  • 方法2: 技術的負債を表すプロダクトバックログアイテムを作る
  • 方法3: 技術的負債バックログを作る

サイズが大きいものは方法2の方が時間をとって返済しやすく、サイズが小さいものは方法3の方が「フィーチャーよりも優先度が低くていつまでも返済されないということがない」ので返済しやすいようです。

技術的負債の返済

  • 作業中に偶発的な技術的負債が見つかれば対応できるところまで対応する。
  • スプリントごとに既知の技術的負債のいくつかを返済対象として対応する。価値をもたらすフィーチャーの開発と関連するものを一緒に進めることで金利の高いものから勧められる。

あたりがポイント。

「技術的負債返済スプリント」だとか「リファクタリングプリント」などといった言葉がチーム内で出てきたら、危険信号だ。

ということで、技術的返済のみに注力するのは価値を提供し続けるというのに反するで望ましくないとありました。

また実際のところ利息がほとんど発生しない技術的負債もあるので、きちんと見極める必要がありますね。

[ 12月13日全て ]

2016年12月14日 (水)

YWTM はやっていないことを書きにくい

1つのチームのスプリントふりかえりに YWTM をやってみているのですが、この手法だとフォーマット的に「やっていないこと」をやはり書きにくいですね。

やったことをふりかえるのにはいいのですが、チームで改善サイクルをまわすには KPT(KPTA) の方がやりやすいかなと感じています。

[ 12月14日全て ]

2016年12月16日 (金)

今日のさえずり: 1週間スプリントのチームは小まめにプロセス改善のトライができるな

2016年12月16日

  • 08:34 きのうはどうも!
  • 10:54 コインゲットしている音がどこかから聞こえてくる。
  • 12:00 1週間スプリントのチームは小まめにプロセス改善のトライができるな。
  • 20:15 iPhone 5c リセット完了。
  • 21:00 9月中旬に眼鏡を変えたの、今まで会社で誰からも声をかけてもらえなかったのでついに自分からアピールすることになった師走の金曜日です。
[ 12月16日全て ]

2016年12月20日 (火)

第9回 エッセンシャル スクラムを読む会

エッセンシャル スクラム: アジャイル開発に関わるすべての人のための完全攻略ガイド

社内で「エッセンシャル スクラム」を読みたい人が集まる勉強会9回目。今日は第9章 プロダクトオーナー。

自分がプロダクトオーナーをしていることもあり発表担当をしました。

受け入れ条件の定義と検証

受け入れ条件が満たされていることを確認することがプロダクトオーナーの主な責任の1つにあげられています。これはスプリントレビューで行うのかなと勘違いしていたのですが、プロダクトオーナーによる受け入れ条件の検証はスプリントレビューまで待たずにスプリント実施のときに行うとあり、ここは学びになりました。スプリントレビューでデモが許されているのは完成した機能だけとのことです。

ただ CSM によるとプロダクトオーナーが忙しくスプリントレビューのタイミングになっているところも多いらしいです。

誰がプロダクトオーナーになるべきか

ネットサービス開発は商用開発にあたるので「顧客の声を代弁する社員(プロダクトマネージャーなど)がなる」に相当しますね。

その他の役割と組み合わせ

プロダクトオーナーとスクラムマスターを兼任するのはよくないという点については、それぞれ違う行動指針で動くものだからと CSM がいっていました。確かに。

プロダクトオーナーとして余裕があれば複数チームを担当するのもありと本書には書かれています。私はいま3チームをみているのですが、スクラムのアクティビティにかかる時間的に3チームが限界ですね。2チームまでが適切な感触です。

プロダクトオーナーチーム

チーフプロダクトオーナーという役割が出てきますが、チーフプロダクトオーナーは直接開発チームを見ないようなのでそれってもはやプロダクトオーナーじゃないんじゃないかと思ったのですがどうなんでしょうか。

プロダクトオーナー? プロダクトマネージャー?

勉強会ではプロダクトオーナーとプロダクトマネージャーの違いについてディスカッション。個人的にはスクラムだとスクラムマスターという存在がいるので、プロダクトオーナーの方が少し楽なんじゃないかと思っています(スクラムではない体制におけるプロダクトマネージャーに比べて)。

勉強会参加者にプロダクトオーナーになりたい人はと聞いたところ、やりたい人・やりたくない人双方いました。 CSM は(決して軽視しているわけではないけれども)「プロダクト」よりも「プロセス」の方が面白いからプロダクトオーナーになりたいとは思わないとのことでした。なるほど。

[ 12月20日全て ]

2017年1月25日 (水)

プロダクトバックログを分割詳細化した時にエピックを「残り」で残す

スクラムプロダクトバックログリファインメントの時に、上位のプロダクトバックログスプリントで完成させられるように分割詳細化していきます。

 |-- P1 (分割詳細化済み)
 |   |-- P1-1
 |   |-- P1-2
 |   `-- P1-3
 |-- P2 (一部分割詳細化済み)
 |   |-- P2-1
 |   |-- P2-2
 |   ...
 `-- P3 (未分割詳細化)

ツリーになるのだけれどどうするのが良いかなあという話になりました。大きな視点だと分割元もわかるようにしておきたいし、途中までしか分割されていないものはまだ残りがあることを忘れないようにしたい。

分割し残りがあるものは「残り」としてフラットにしてしまえばいいんじゃないということになりました。「残りプロダクトバックログアイテム」を作ればフラットなリストにしても漏れないよねと。

 |-- P1-1
 |-- P1-2
 |-- P1-3
 |-- P2-1
 |-- P2-2
 |-- P2-残り
 `-- P3
[ 1月25日全て ]

2017年2月14日 (火)

第15回 エッセンシャル スクラムを読む会

エッセンシャル スクラム: アジャイル開発に関わるすべての人のための完全攻略ガイド

社内で「エッセンシャル スクラム」を読みたい人が集まる勉強会の15回目。今日は第15章 さまざまなプランニング。昨年12月のプロダクトオーナーの章ぶりの発表当番です。

この章ではスクラムを使ったプロダクト開発に関係する以下のプランニングを紹介しています。

  • ストラテジープランニング
  • ポートフォリオプランニング
  • プロダクトプランニング(エンビジョニング)
  • リリースプランニング
  • スプリントプランニング
  • デイリープランニング

勉強会では自分たちの事業でのプロダクトは何か(例えば mixi は1つのプロダクト)を確認し、実際やっていることのどれが各プランニングにあたるのかを確認。スクラムチームメンバから直接体感できるのはプロダクトプランニングまでで、ポートフォリオプランニングはうかがい知れないことが多そうという話になりました。

それから(旧来からの)受託開発の場合は、リリースが固定スコープ・固定日だよねなんて話も。

スクラム開発チームメンバからは「トップダウン型のプランニングの流れの印象だが、スクラムチームの見積もりでわかった計画との差異はどのように上位の計画に反映していくのか?」という疑問もあがりました。

このあたりは続く章で説明があるのかもしれません。

[ 2月14日全て ]

2017年2月15日 (水)

進捗に合わせてスプリントゴールを変更するということ

もうすぐスプリント終了という時期に開発チームから

残りのタスクは開発チーム外の人がやることになりました。もうこれ以上開発チームではこのスプリントではやることがないので、進捗したところまでにスプリントゴールを変えたいです。

という相談が入りました。

開発チームとしてもいろいろ検討した結果なので開発チーム外の人待ちになること自体は受け入れるのですが、スプリントゴールを変更して「これでバーンダウンチャート上 0 になります」というのは違うんじゃないかなと強く感じました。

スプリントゴールは基本変えるべきではありませんが「状況が変わったからゴールを変える」や「予想より難しいのでスコープを調整する」こと自体は問題ないですが「進捗したところまでにゴールを変える」というのは完全に異質だと思うのです。

スプリントゴールは変えずにスプリント終了時に未完成とし、きちんとふりかえるのが良いのではないでしょうか。

[ 2月15日全て ]

2017年2月17日 (金)

Developers Summit 2017 2日目 #devsumi

今年は「人工知能とは」「機械学習とは」を繰り返し聞きました。

10:00~10:45 【17-B-1】 きゅうり農家から保険会社まで、機械学習を「民主化」するTensorFlow

グーグル株式会社 佐藤一憲(@kazunori_279)氏

  • 「テンサーフロー(発音)」
  • ニューラルネットワークでチーターを見つけられるかも?
  • Google 検索: RankBrain

わかりやすくわくわくする発表でした。簡単に出来ちゃうと感じさせるトークでしたが、製品に適用していくには泥臭いトライアンドエラーとリリース後の保守が待っているのだなあというのも想像しながら聞いてました。

ハードウェアの話を聞いていると、もはや超大手の手のひらの上で学習させていくしかないのかなーと感じさせられちゃいます。

11:05~11:50 【17-C-2】 教育、医療、もの書き市場で戦うプロダクトマネージャーの考え方 ~訴求ファーストとこだわり駆動開発とは?~

株式会社ジャストシステム 宮崎哲哉(@miya2tetsu)氏 大島教雄氏 岡美香氏

  • プロジェクトは「訴求ファースト」
  • スマイルゼミ。企画の話。訴求シート。あまり驚きのない内容。
  • JUST DWH。訴求シート。
  • 一太郎。ユーザー調査をしっかりやったという話。

自社製品の訴求セッション。デブサミじゃなくてもという感じではありました。

12:10~12:40 【17-A-L】 ママセキュリティエンジニア奮闘記 ~ 子供と一緒にラズパイで遊んでみた♪ ~

ソニーデジタルネットワークアプリケーションズ株式会社 吉田万里子氏

エンジニアとしての思いと親としての思いを叶えるためにラズパイで遊んでみるという話。子供の成長についていろいろ考えていらっしゃって素敵だなと感じました。

後半にだんだん技術的に具体的な話にきちんともっていく構成も上手いなと。

13:05~13:50 【17-D-3】 リーンスタートアップとスマートなエンジニアリングの葛藤

グロースエクスパートナーズ株式会社 関満徳(@fullvirtue)氏

  • プロダクトマネージャーとプロジェクトマネージャーの分業化。
  • 日本的プロダクトオーナー(幅広い業務範囲)
  • リーンから見た葛藤。リーンのサイクルとスクラムのサイクル。
  • オポチュニティバックログ。
  • Done の定義は最近は「ストーリーテスト」。
  • スプリントに入れないようなタスクのためのかんばんを作る。ToDo/Ready/In Progress/Done/Feedback
  • そのかんばんをどれくらい捌いていくか(FAQ)。→ 経験則で。アジャイルだから学習していく。リリース日を含むスプリントはかんばんの方多め、そうでなければプロダクトバックログの方多めがやりやすい。

準備完了なプロダクトバックログアイテムを準備完了にしていくためのサイクルやタスクをどうするかなと思っていたので参考になるかもしれないなと思いました。複雑になるので今のチームの状態でやるべきかは見極める必要がありそうですけれど。

14:10~14:55 【17-A-4】 C#で簡単にモバイルアプリを作ろう!

日本マイクロソフト株式会社 千代田まどか(@chomado)氏

一つ前のセッションを見終えてからいったらもう満席でした。

15:15~16:00 【17-C-5】 コミュニティとエンジニアの生き方

TickleCode 代表 小林由憲(@yoshiii514)氏 関西Javaエンジニアの会 阪田浩一(@jyukutyo)氏

勉強会コミュニティの始まりと成長。」

勉強会の話。

「Javaコミュニティを作ったら人生変わった」

「運営に関わろう、なければ作ろう」

なりたい人に近づくといいよという話と、貢献しなよという話。

16:20~17:05 【17-B-6】 インテリジェンスで挑むサイバー攻撃の最前線

株式会社インターネットイニシアティブ 穴吹健一氏

  • 今後はリアルタイムモニタリングとインシデント発生時の迅速な対応、リスク管理、ユーザの教育。
  • カラオケでのレコメンド(セキュリティ?)。
  • IIJ の情報分析基盤。Hadoop とか Zeppelin とか。
  • IP(アドレス)のレピュテーション情報の生成。

最後は IIJ のセキュリティビジネスの話に落ち着いて終了。さすが IIJ 的な内容のトークはあまり無かったです。

17:25~18:25 【17-E-7】 すべてのIT屋は全力で反省しろ!『ITは本当に世界をより良くするのか?』発刊記念トーク

株式会社ワークスアプリケーションズ 井上誠一郎氏 株式会社ノーチラス・テクノロジーズ 神林飛志 株式会社セゾン情報システムズ 小野和俊氏

お互いにレスペクト感があるなかでの軽快な対談を楽しみました。

[ 2月17日全て ]

2017年3月7日 (火)

第18回 エッセンシャル スクラムを読む会

エッセンシャル スクラム: アジャイル開発に関わるすべての人のための完全攻略ガイド

社内で「エッセンシャル スクラム」を読みたい人が集まる勉強会の18回目。今日は第18章 リリースプランニング (長期計画)。

今日は7人参加。

タイミング

リリースプランニングは一度限りのものではなく、スプリントごと行うアクティビティだ。

他のプランニング同様リリースプランニングも一度限りのものではないと明言されています。章の後半で説明される進捗の把握をしながら、スプリント毎に見直されていきます。

ポートフォリオプランニングでは「終わることのない作業」、エンビジョニング(プロダクトプランニング)では「一度やってそれで終わりではない」とそれぞれここまでの章で書かれています。全てのレベルにおいて継続が求められます。

ただスプリントプランニングをスプリントごとにやるとすると、どの程度時間を使うことになるのかが気になるところです。1週間スプリントの場合だと、さっと済ませるか何回かに1回にするのかが現実的なところでしょうか。

プロセス

各リリースには、明確に定義されたリリース可能な最小限のフィーチャー(MRF)がなければならない。(中略)顧客視点で、実用最小限の製品となっていることを確かめるのだ。

今の仕事は「フィーチャーごとにリリース」という方針でやっています。1スプリントで完成できるように例えばバックエンドという PBI にして先に完成させデプロイしておくというのをやったりしています。しかしバックエンドだけではここでいう MRF ではないですね。

いまチームではこのデプロイもリリースと呼んでいますが、エッセンシャル スクラム的に考えるとそれはリリースではないと考えた方が良いのかもしれません。

「各スプリントで価値を届ける」ことと「各スプリントでデプロイする」は同義でないと考え直した方が良いようです。

「いくつかのスプリントの成果物をひとまとめにしてリリースする」というプランニングの場合もあるのですから、毎スプリント必ずリリースするということに無理にこだわらなくてもということでしょうか。スプリントが終わった時点で常にリリース可能な状態になっていることが重要ということでしょうか。

リリース制約

気がつくと「スコープを固定」と無意識にしてしまいがち。ステークホルダーに期日を約束していないと、ずるずるとリリースを延期してしまいがち。

「スコープを固定」になる原因は、全体的なスコープがあまりにも大きすぎることであることが多い。

とあり、ここでもできるだけ小さくというのが推奨されています。MRF をいかに小さく定義しておけるかがポイント。18.4 節では「常にMRFを調整し続ける。」と書かれていて、MRF も適宜見直していくべきです。

期日を固定する方式がスクラムの原則にうまく当てはまるということなのでリリースプランニングの際にきちんと意識できるようにしたいです。

スプリントマッピング

主に複数チームで協調してスプリントを進めていくための話。ここは困ることが起きた場合にまた読み返したい部分です。

[ 3月7日全て ]

About Me

Naney Naney (なにい)です。株式会社ミクシィでマネージャー・PO をしています。

nDiki1999年1月に始めたコンピュータ日誌を前身とする NaneyWeb 日記(兼パーソナルナレッジベース)です。ちょっとしたノートは nNote にあります。

follow us in feedly

※内容は個人的見解であり所属組織とは関係ありません。

月別インデックス
Process Time: 0.077137s / load averages: 0.22, 0.34, 0.36
nDiki by WATANABE Yoshimasa (Naney, Google profile)
Powered by DiKicker