「正しいアジャイル」でなくてもいい

33,157 views
35,480 views

Published on

1 Comment
46 Likes
Statistics
Notes
No Downloads
Views
Total views
33,157
On SlideShare
0
From Embeds
0
Number of Embeds
21,349
Actions
Shares
0
Downloads
92
Comments
1
Likes
46
Embeds 0
No embeds

No notes for slide

「正しいアジャイル」でなくてもいい

  1. 1. 「正しいアジャイル」でなくてもいいAgile Japan2013四国・愛媛サテライト2013/05/2513年5月26日日曜日
  2. 2. 荻野浩史 おぎ    の     ひろ     し認定スクラムマスター認定スクラムプロダクトオーナー13年5月26日日曜日
  3. 3. http://d.hatena.ne.jp/ogin_s57/13年5月26日日曜日
  4. 4. アジャイルプロセス協議会 四国支部13年5月26日日曜日
  5. 5. アジェンダ正しいアジャイル?アジャイル開発事例のご紹介まとめ13年5月26日日曜日
  6. 6. アジェンダ正しいアジャイル?アジャイル開発事例のご紹介まとめ13年5月26日日曜日
  7. 7. 「正しいアジャイル」と聞いてどんなことを思い浮かべますか?13年5月26日日曜日
  8. 8. スプリントが2∼4週間で、最後にふりかえりを実施かんばんで見える化毎日朝会を実施(デイリースクラム)ペアプロテストは全て自動化されていて継続的にCI環境でビルドされる正しいアジャイル?::13年5月26日日曜日
  9. 9. スプリント13年5月26日日曜日
  10. 10. TODO In Progress DONEかんばん13年5月26日日曜日
  11. 11. 朝会(デイリースクラム)1.昨日やったこと2.今日やること3.困っていること毎朝15分13年5月26日日曜日
  12. 12. ペアプロドライバーナビゲーター(なるほど。そういう風に書けばいいんだな。)ココはStrategyパターンで実装して・・・13年5月26日日曜日
  13. 13. テスト自動化とCI環境開発者SCMCI環境コミット コミットを検知してCI環境にてビルド13年5月26日日曜日
  14. 14. スプリントが2∼4週間で、最後にふりかえりを実施かんばんで見える化毎日朝会を実施(デイリースクラム)ペアプロテストは全て自動化されていて継続的にCI環境でビルドされる正しいアジャイル?::問1:これらを実践しないとアジャイルじゃない?13年5月26日日曜日
  15. 15. スプリントが2∼4週間で、最後にふりかえりを実施かんばんで見える化毎日朝会を実施(デイリースクラム)ペアプロテストは全て自動化されていて継続的にCI環境でビルドされる正しいアジャイル?::問2:これらを実践すればうまくいく?13年5月26日日曜日
  16. 16. 後ほどこれらの問いにお答えします。13年5月26日日曜日
  17. 17. アジェンダ正しいアジャイル?アジャイル開発事例のご紹介まとめ13年5月26日日曜日
  18. 18. こんなシステム開発オンラインで大容量ファイルをやり取りするSaaSの開発既存システムのリプレイス期間:6ヶ月13年5月26日日曜日
  19. 19. A BAB------------------------------------A BBBASSL13年5月26日日曜日
  20. 20. こんなチーム人々(合計:6人)プロダクトオーナー(顧客):1人10年戦士:2人5年戦士:3人アジャイル開発経験者:0人13年5月26日日曜日
  21. 21. こんなチームとりあえず「開発∼テスト」を繰り返せばアジャイルって言えるんだよね?13年5月26日日曜日
  22. 22. こんなチームアジャイル偏差値:低とりあえず「開発∼テスト」を繰り返せばアジャイルって言えるんだよね?13年5月26日日曜日
  23. 23. プロジェクトスタ∼ト13年5月26日日曜日
  24. 24. スケジュール先行開発チーム仕様策定チーム開発チーム1ヶ月 2ヶ月 3ヶ月 4ヶ月 5ヶ月 6ヶ月顧客10年戦士5年戦士13年5月26日日曜日
  25. 25. 0∼1ヶ月13年5月26日日曜日
  26. 26. スケジュール先行開発チーム仕様策定チーム開発チーム1ヶ月 2ヶ月 3ヶ月 4ヶ月 5ヶ月 6ヶ月▼プロセス考察メンバーが今まで実践してきた様々な開発手法についてに議論し、どんなプロセスでシステムを構築してゆくのが自分たちにとって一番良いのかをみんなで話し合った顧客10年戦士5年戦士13年5月26日日曜日
  27. 27. とにかくみんなで話し合いを重ねました13年5月26日日曜日
  28. 28. そこで決定した2つのこと13年5月26日日曜日
  29. 29. (1)テストファースト13年5月26日日曜日
  30. 30. 仕様策定チームテスト仕様書SCM開発部隊コミット各々担当の機能を実装&テスト(1)テストファーストテスト仕様書を先に作成し、それを元に開発する顧客10年戦士5年戦士13年5月26日日曜日
  31. 31. (2)先行開発チーム13年5月26日日曜日
  32. 32. 必ずしも解決することが目的ではなくて、早期に取り組む事が目的だった。暗号化(2)先行開発チームベースラインアーキテクチャの策定技術的難易度の高い問題に早期に取り組む顧客10年戦士5年戦士?ウィルススキャン?認証・認可?技術的難易度の高い問題に取り組むベースラインアーキテクチャの策定先行開発チーム13年5月26日日曜日
  33. 33. 1∼3ヶ月13年5月26日日曜日
  34. 34. スケジュール先行開発チーム仕様策定チーム開発チーム1ヶ月 2ヶ月 3ヶ月 4ヶ月 5ヶ月 6ヶ月▼先行開発ベースラインアーキテクチャの策定やコア機能を先行で開発。何度となくハマったが、難易度の高い部分に取り組んだことによって早期に多くことを学習できた。顧客10年戦士5年戦士13年5月26日日曜日
  35. 35. スケジュール先行開発チーム仕様策定チーム開発チーム1ヶ月 2ヶ月 3ヶ月 4ヶ月 5ヶ月 6ヶ月▼既存システム調査既存システム要件/機能を分析し、随時「仕様策定チーム」と連携。テスト仕様書に積極的にフィードバックし、仕様書の精度を上げていった。顧客10年戦士5年戦士13年5月26日日曜日
  36. 36. スケジュール先行開発チーム仕様策定チーム開発チーム1ヶ月 2ヶ月 3ヶ月 4ヶ月 5ヶ月 6ヶ月▼テスト仕様書作成(仕様策定)コア機能に関するテスト仕様書を作成。どの程度の情報量をテスト仕様書に載せれば開発が可能なのか?を推し量る素振り(試行)の意味も含んでいた。顧客10年戦士5年戦士13年5月26日日曜日
  37. 37. 仕様策定チームテスト仕様書の作成(システム仕様の策定)開発部隊「もっと××な情報を仕様書に盛り込んでください」というフィードバックフィードバック顧客10年戦士5年戦士先行開発チーム「既存システムには△△な機能があります」「その場合、既存システムでは○○のように動作します」というフィードバック既存システム13年5月26日日曜日
  38. 38. チームは失敗を繰り返しながら学習し、改善していった➡経験を重ねるということが大事13年5月26日日曜日
  39. 39. 3∼6ヶ月13年5月26日日曜日
  40. 40. スケジュール先行開発チーム仕様策定チーム開発チーム1ヶ月 2ヶ月 3ヶ月 4ヶ月 5ヶ月 6ヶ月▼開発&テスト仕様策定チームの作成したテスト仕様書を元に開発&テストを実施。プロダクトに集中。。。顧客10年戦士5年戦士13年5月26日日曜日
  41. 41. スケジュール先行開発チーム仕様策定チーム開発チーム1ヶ月 2ヶ月 3ヶ月 4ヶ月 5ヶ月 6ヶ月顧客10年戦士5年戦士▼テスト仕様書作成(仕様策定)テスト仕様書を作成する。既存機能を取り込むか否かや新規機能を盛り込むか否かは全てココで管理。以前と同様に、絶えずフィードバックを受けながら仕様書を作成していった。13年5月26日日曜日
  42. 42. こうやってプロジェクトは無事遂行されました13年5月26日日曜日
  43. 43. 常に動くものが手元にあった(動くソフトウェア)誰でもコードを修正出来る状態だった(コードの共同所有)必要性を感じたタイミングですぐに話し合いを始め、必要性を感じたタイミングで資料を作成していた(Just In Time)利害関係者が顧客1人だけだったため、素早く決定/方向転換出来た(オンサイト顧客)チームが能動的にプロジェクト/プロダクトを改善していった(自己組織化)良かったところ13年5月26日日曜日
  44. 44. 朝会がなかったスプリントがなかった(本番リリースは1回だけ)ふりかえりもなかったペアプロはやってないしテスト自動化もCIもなかったイマイチだったところ13年5月26日日曜日
  45. 45. どうもアジャイルの王道は外しているようですが・・・このプロジェクトはうまくいったのでしょうか?13年5月26日日曜日
  46. 46. アジャイルは正しく実践出来なかったかもしれませんがうまくいったと思っています。13年5月26日日曜日
  47. 47. なぜなら価値あるシステムを構築出来たからここだけの話、結構売れてんすよww13年5月26日日曜日
  48. 48. 13年5月26日日曜日
  49. 49. (当時の考え方)「正しい開発プロセスがあれば、開発者はもっとうまくやるだろう」13年5月26日日曜日
  50. 50. (宣言者たちの考え方)「スキルのある優れた開発者がいれば、彼ら自身が学習して開発プロセスを決めれば良いだろう」13年5月26日日曜日
  51. 51. 開発プロセスは自分たちのもの自分たちで進化/深化させるもの13年5月26日日曜日
  52. 52. こんなチーム人々(合計:6人)プロダクトオーナー(顧客):1人10年戦士:2人5年戦士:3人アジャイル開発経験者:0人13年5月26日日曜日
  53. 53. こんなチームアジャイル偏差値:低とりあえず「開発∼テスト」を繰り返せばアジャイルって言えるんだよね?13年5月26日日曜日
  54. 54. みんなアジャイルに対して無知だったから、アジャイルを実践しようとしなかった13年5月26日日曜日
  55. 55. みんなアジャイルに対して無知だったから、アジャイルを目的にしなかった13年5月26日日曜日
  56. 56. プロセスを自分たちで定義して、自分たちに合った形を発掘していった。13年5月26日日曜日
  57. 57. 仕様策定チームテスト仕様書SCM開発部隊コミット各々担当の機能を実装&テスト(1)テストファースト顧客10年戦士5年戦士ATDD・BDDという開発手法13年5月26日日曜日
  58. 58. 必ずしも解決することが目的ではなくて、早期に取り組む事が目的だった。暗号化(2)先行開発チーム顧客10年戦士5年戦士?ウィルススキャン?認証・認可?技術的難易度の高い問題に取り組むベースラインアーキテクチャの策定先行開発チーム早く小さく失敗するというアジャイルの定石13年5月26日日曜日
  59. 59. 仕様策定チームテスト仕様書の作成(システム仕様の策定)開発部隊「もっと××な情報を仕様書に盛り込んでください」というフィードバックフィードバック顧客10年戦士5年戦士先行開発チーム「既存システムには△△な機能があります」「その場合、既存システムでは○○のように動作します」というフィードバック既存システム早く小さく失敗するというアジャイルの定石13年5月26日日曜日
  60. 60. 自分たちに合った形を発掘していった結果、知らず知らずにアジャイルなプロセスになっていました。13年5月26日日曜日
  61. 61. アジャイルに対して無知なことが武器になることがあるんです。13年5月26日日曜日
  62. 62. アジェンダ正しいアジャイル?アジャイル開発事例のご紹介まとめ13年5月26日日曜日
  63. 63. 最後に先ほどの問いに答えましょう。13年5月26日日曜日
  64. 64. スプリントが2∼4週間で、最後にふりかえりを実施かんばんで見える化毎日朝会を実施(デイリースクラム)ペアプロテストは全て自動化されていて継続的にCI環境でビルドされる正しいアジャイル?::問1:これらを実践しないとアジャイルじゃない?13年5月26日日曜日
  65. 65. そんなことどうでもいいと思います。13年5月26日日曜日
  66. 66. えぇぇぇぇぇ∼∼∼自分から振っといてそんなことってあるんすか。。13年5月26日日曜日
  67. 67. アジャイルは目的ではなくて手段です。なのでアジャイルかどうかなんてどうだっていいんです。13年5月26日日曜日
  68. 68. いいシステムを作りたいという想いが根底にあってそれを支えるものとしてアジャイルがあればいい13年5月26日日曜日
  69. 69. わたしはそう思います。13年5月26日日曜日
  70. 70. スプリントが2∼4週間で、最後にふりかえりを実施かんばんで見える化毎日朝会を実施(デイリースクラム)ペアプロテストは全て自動化されていて継続的にCI環境でビルドされる正しいアジャイル?::問2:これらを実践すればうまくいく?13年5月26日日曜日
  71. 71. そんなワケないですよね。13年5月26日日曜日
  72. 72. アジャイルを導入すれば問題が解決するなんてことはありません。13年5月26日日曜日
  73. 73. 問題を解決するのはプロセスではなくて自分たちですから。13年5月26日日曜日
  74. 74. 大事なのはプロセスに従うことやプラクティスを実践することではなく、自分たちで選択すること13年5月26日日曜日
  75. 75. 何が価値を生み、何がムダなのか自分たちで考え抜くこと13年5月26日日曜日
  76. 76. それを実践し、実践した結果から学習し、改善すること13年5月26日日曜日
  77. 77. わたしはそう思います。13年5月26日日曜日
  78. 78. アジェンダ正しいアジャイル?アジャイル開発事例のご紹介まとめちょっと付け足し13年5月26日日曜日
  79. 79. 決してアジャイルを正しく実践しなくてもいいと言っているわけではありませんよ(^^;)13年5月26日日曜日
  80. 80. アジャイルを正しく実践出来ればその効果は絶大です。13年5月26日日曜日
  81. 81. ただし正しく実践するというのはそんなに簡単ではありません。13年5月26日日曜日
  82. 82. その難しさ故に一歩間違えれば実践することが目的となってしまいがちです。13年5月26日日曜日
  83. 83. Don’t Do Agile,Be Agile!!13年5月26日日曜日
  84. 84. アジャイルを目的としないためにはじめから「正しいアジャイル」を目指さなくていいということを言いたくて、こういうお話をさせて頂きました13年5月26日日曜日
  85. 85. ぜひどんどん間違った(?)アジャイルを実践して失敗しながら「正しいアジャイル」を発掘しましょう13年5月26日日曜日
  86. 86. No Agile, No Life!!13年5月26日日曜日
  87. 87. ご清聴ありがとうございました。13年5月26日日曜日

×