Agile Japan 2017 シン・アジャイル ～アジャイルでつくるミライ～

アジャイル実践7年目のベテランPMが語る 3つの極意～私たちがたどり着いた「深」アジャイル～2017年4月13日（株）アドヴァンスト・ソフト・エンジニアリング
シニアマネージャー

渡会 健 某工業大学機械工学科を卒業後、某財閥系の宇宙分野のソフトウェア開発会社に入社。
 最初の3年は何故か防衛系のハードウェア開発に従事。その後現JAXA（当時はNASDA)のソフトウェア開発に従事する。
 1996年～2000年にかけてJAXAに出向し、発注側の立場でシステム開発に関わる。その時にProject Managementに興味を得る。
 出向から戻ってきた後は受注側としてJAXA向けのシステム開発に従事。この頃にPMP資格を取得した。
 2007年1月、PMP資格を有効に生かすためにProject Managementを専門とするコンサル会社に転職。この頃にAgileに出会う。
 2009年10月にやっぱり現場のモノづくりが恋しくなって現在の株式会社アドヴァンスト・ソフト・エンジニアリングに転職。
 現在所属会社において、Agile開発の実績を積み上げ中。Agile開発の実践者（PMの立場からの）であり実践経験だけは豊富です。
 PMI日本支部アジャイルPM研究会、アジャイルソフトウェア開発技術者検定試験コンソー
シアムに所属2

すべて共著です。
アジャイル検定公式テキスト アジャイルソフトウエア開発技術者
検定試験 レベル1対応（リックテレコム）【第3章 アジャイル開発におけるプロジェクト管理】
・3.6 計画づくり
・3.7 見積もり
・3.8 品質・3.9 ドキュメント

アジャイルの魂 2015（マナスリンク）【第二部 アジャイルの現場から】プラクティス導入実践事例～失敗から学んだ成功への秘訣～
アジャイルの魂 2016 （マナスリンク）【第三部 アジャイルの現場から ～あなたとつくるアジャイル】
ニアショア先とつくるチームビルド～やってみたら「プロセスやツールよりも個人と対話を」でした～
アジャイルの魂 2017（マナスリンク）
本日配布された本書にも寄稿しています。

3社名
設立
資本金
社員数
本社
支店
事業認証

株式会社アドヴァンスト･ソフト･エンジニアリング
1986年8月
9,500万円
113名 ＊札幌本社40名、東京支店73名 2017/4/1現在
札幌市厚別区下野幌テクノパーク1-2-16
東京都中央区銀座1-28-13 ASEビル（1）ソフトウェア受託開発 ＊技術者派遣を含む（2）システム開発、及び導入コンサルティング（3）ソフトウェアパッケージ開発、及び販売
ISO27001 ＊2008年6月取得
Pマーク ＊2013年4月取得
4経営理念「ソフトウェア技術を通じて、社員と家族、そして関係するすべてのお客様の幸せを追求する」
弊社自体の主力開発プロセスはW/F
Agile開発はまだ1～2割程度というのが実態です
Agile開発は2011年から請負開発として実践開始（主にWebシステムが中心）
一括請負開発を中心に、様々な業界・業種を問わず実績を積み重ねる（官庁・医療・ISP・金融・教育・自動車・放送・情報サービス等）
追加開発等も併せて、これまでに数十案件以上の納入実績あり
5

１．アジャイルを正しく理解してもらう極意

２．計画の極意～神話や誤解を解く～～アジャイルこそ計画が大事～

３．チームビルドの極意～チームビルドが成功の要～6

１．アジャイルを正しく理解してもらう極意～神話や誤解を解く～

7

全ての基本、
Agile Manifesto（アジャイルソフトウェア開発宣言）を正しく理解してますか？
8アジャイルソフトウェア開発宣言
私たちは、ソフトウェア開発の実践あるいは実践を手助けをする活動を通じて、よりよい開発方法を見つけだそうとしている。
この活動を通して、私たちは以下の価値に至った。

プロセスやツールよりも個人と対話を、包括的なドキュメントよりも動くソフトウェアを、契約交渉よりも顧客との協調を、計画に従うことよりも変化への対応を、価値とする。すなわち、左記のことがらに価値があることを認めながらも、私たちは右記のことがらにより価値をおく。
Kent Beck
Mike Beedle
Arie van Bennekum
Alistair Cockburn
Ward Cunningham
Martin Fowler

James Grenning
Jim Highsmith
Andrew Hunt
Ron Jeffries
Jon Kern
Brian Marick

Robert C. Martin
Steve Mellor
Ken Schwaber
Jeff Sutherland
Dave Thomas

http://agilemanifesto.org/iso/ja/© 2001, 上記の著者たち
この宣言は、この注意書きも含めた形で全文を含めることを条件に自由にコピーしてよい。

99

10

一番価値の有るのは動くソフトウェアなので、いくら完璧なドキュメントがあっても動かないソフトウェアじゃだめです
よって言ってるだけです。保守や運用に必要なドキュメントはAgileでもきちんと作るべきです。

11

12

計画はAgileでもとても大事です。また、可能な限り守るべきです。
そうしないといつまでも終わりません。
ただ、計画に固執して変化を受けれなくなってはいけませんよと言っているのです。

13

14

Agileを導入しても、多くの場合納期短縮（早く）もできませんし、安くもなりません。何故なら、価値に焦点を当てるのでより価値を生み出すために思考する時間は長くなるし、要員もマルチタレント性を要求されるので単価が高くなりがちです。

• 間違いや失敗に早く気付いて軌道修正できる• 出来たものから早く利用できる• 最終的に優先度の低いものは作らないので安いと感じる• 早く軌道修正することで無駄な作業を最少化でき安いと感じる15

16【大半は開発手法以前の問題】
困っている問題の大半は、Agile／WFどちらであっても発生する、プロジェクトマネジメントの範疇の問題であることが多い。（予算が少ないとか、やることに対して期間が短いとか）【WFが良い場合もある】
AgileとWFは対立ではありません。選択肢です。
むしろ、最初から仕様変更発生しないことが確定している場合や、大規模開発する必要がある場合は、WFの方が効率的です。

1718

Agileでは、期間とリソースをコミットして、それに応じた要求（仕様変更含む）の量で調整していきます。
要求は調整事項なのです。なので、仕様変更しても仕事の量は増えません。一定の仕事の量の範囲で優先度の高いものから対応していき、優先度の低いものは実施しないという調整が重要です。
仕様コミット

期間

リソース

Agile

WF
調整期間

リソース

要求

19

アジャイルをやり続けて思ったこと
20

WFよりも向き・不向きの人がハッキリします。
なのでチームビルドはより大変です。
何でも短いサイクルで実施していくので、スピード感はありますが結構頭も心も疲れます。長時間稼働すれば何とかなる世界ではありません。
まだ、正しく理解していない人が多いので、いちいち周りを説得するのが面倒です。
特にお客さん側の間違ったAgileの理解を解消するのはとても時間がかかるし、根気もいります。
コントロールはWFよりも大変です。
常にチームを注意深く見て自律を即すための微妙なコントロールをきめ細かく行う必要があるので、WBSとにらめっこしかできない管理者では管理しきれません。
21

コミュニケーションをより濃密にとる必要があるため、お客様の時間を確実に奪います。
• 打合せの時間が長くなる• 問合せや電話の頻度が高くなる• 随時フィードバックして頂く必要がある
常に（短時間で）決断をする必要があります。
• プロダクトの方針や、疑問には即断即決していただく必要があります。
• その為、開発するシステムの目的や優先順位を常に決められるべく、社内調整などを先回りして根回していただくなど、調整の負荷が沢山かかります。

22

仕様を満たすのではなく、お客様にとっての価値を第一に考えるのでより臨場感や貢献感を抱きやすく、チームメンバーは積極的に成長します。
お客様も、少しずつ見える形で自分たちのシステムが出来上がっていくので、感情移入がしやすく、積極的になってくれ易いです。
そして、最大の価値を手に入れやすくなります。
いつもみんなで課題に立ち向かうことがしやすいので、チームメンバーは孤独感を感じている暇がありません。

23

•

自分が正しく理解していなければ、相手にも理解してもらえない。

•Agileをやるなら覚悟が必要（自分も、チームも、お客様も）24

２．計画の極意～アジャイルこそ計画が大事～25

アジャイルを適用するプロジェクト（＝変化を積極的に受け入れる）
において、3か月後の未来を正確無比に予測できますか？
26

3か月後
スタート

1か月後

2か月後

ブレ幅はどんどん大きくなる
27

3か月後
スタート

1か月後

2か月後

ブレ幅を最小に抑えることが出来る

よくある
イテレーションの期間（2週間）

精密な計画を立てるのを、予想ができる範囲内にすることで、無駄な計画を立てないで済む
これがイテレーション計画

28

でもそれだけじゃ足りない
約束している期間内でどこまでいけるのかが判らなくなってしまう29

イテレーション１の開始前にどのイテレーションでどのユーザストリーを実施するかを計画する
イテレー
ション１

イテレー
ション２

イテレー
ション３

イテレー
ション４

イテレー
ション５

イテレー
ション６

優先度１のユーザストリー

優先度２のユーザストリー

優先度３のユーザストリー

優先度４のユーザストリー

優先度５のユーザストリー

優先度６のユーザストリー

これにより、イテレーション１開始前時点の予想到達点を一旦見極めます。

30

イテレーション２の開始前に、全体の変化度合いを見極めプロジェクト全体計画を見直す。
イテレー
ション１

イテレー
ション２

イテレー
ション３

イテレー
ション４

イテレー
ション５

イテレー
ション６

優先度１のユーザストリー

優先度２のユーザストリー

優先度２‘（3より優先度が高いユーザストリーを加える）

優先度３のユーザストリー

優先度４のユーザストリー

優先度５のユーザストリー

上記例では、新たな優先度の高い２‘が加わることで、最初は６あったユーザストリーが５までしかできないことがわかります。
31

イテレーション終了ごとに、全体の変化度合いを見極めプロジェクト全体計画を見直すことを繰り返す。
イテレー
ション１

イテレー
ション２

イテレー
ション３

イテレー
ション４

イテレー
ション５

イテレー
ション６

• イテレーションが進むごとに常にその時点での最終ゴールがわかるようにしておくことが重要。
• 最初に洗い出したユーザストーリーを全部やりきることが目的では無い。
• その時々で一番価値の高いもの（優先度の高いもの）を作ることが重要。
32

• イテレーションの初日に、そのイテレーションで実施予定のユーザストー
リーをタスク（半日から1日で終了する単位）に分割する• そのタスクをイテレーション内でチームで完遂することをコミットする• 但し、洗い出したタスクを無条件に完遂する事をコミットする必要はない• 明らかにタスクがはみ出ることが判明した場合は、はみ出るタスクを明確化し、次以降のイテレーションに送る• はみ出たタスクをどこで消化し、プロジェクトの最終到達点をどこにするかは、プロジェクト計画の見直しで調整する

持続可能なペースを計画的に守ることも重要33

•

計画は立てるが常に見直し、計画の完遂ではなく価値実現にこだわる•

計画は厳守だけすれば良いものでは無く、変化を受け入れて前に進むための道具にしか過ぎない34

３．チームビルドの極意～チームビルドが成功の要～35

最初（キックオフ）が肝心
自律的チームを生み出す
5つのマインド3637

実現するのは要求された仕様ではなく、成果物が生み出す価値であるというマインドです。
仕様通り作れば良い訳ではなく、価値を生み出す仕様を一緒に考えましょうというマインドです。
アジャイルのマインドとしても最重要とされている特徴です。

38

39

個人の価値観は異なっていて当たり前です。
その強みを活かしてそれぞれを補い合うことさえできれば、より強いチームができると考えています。
まず自分と違う他者の個性を受け入れるところから、お互いを認め合うマインドです。

40

41

常に個人のみに責任を押し付けないというマインドです。
目標を達成するのはチームであって、個人が担当した範囲だけ目標を達成しても意味がありません。
チームの一員として常に何ができるかを考え、皆がチームのために働き、チームが個人を助けるというマインドです。

42

43

失敗してもそれを糧に次のイテレーションで素早く（Agileに）改善できれば、結果としてチームとして全体効率が上がります。
失敗を恐れてビクビクしながら作業しなくても良いよねという前向きなマインドです。

44

45

アジャイルのスピード感で仕事をすると、かなりの集中力を必要とします。常に考えることが多いので、全力で取り組むと定時内だけでもエネルギーを使い果たしてしまいます。
チーム全体のベストパフォーマンスを維持していくためには、持続可能なペースを守ることが重要になってきます。
タスクが終わらなければ帰るなよ！とは言わないマインドです。

46

マインドを維持する５つの仕組み（プラクティス）を継続して実施し続ける

47

48

イテレーション毎にチームメンバー全員が参加してのスプリント計画立案を行い、そのイテレーション内で実施するタスク全てを議論して洗い出し、中身を詰めていきます。
この段階では誰がどのタスクを担当するかを決めないため、自分が担当するかもしれません。よって、全員が全タスクに関して真剣に議論することになります。
重要なのは上司からの命令ではなく、チームが自分たちでイテレーションの成果を考えコミットするということです。そしてそれはチームの約束になるので、チーム全体で助け合う土壌が育ちます。それを繰り返して定着させていきます。
49

50

イテレーション計画でタスク化したものをカンバンと言われる方法で、全員が見える場所に張り出し、その日の朝に自分がどのチケットをやるかを自発的に決めてもらいます。
自分が取ったタスクは、チケット管理ツール（私たちはRedmineを使うことが多いです）に登録し、実施した内容などはそれぞれのチケットに記載していくことで透明性を確保して情報を全体で共有することができます。イテレーション内にタスクを完遂することはチームとしてコミットしたことなので、苦戦中で止まっているメンバーがいても、放置されることはありません。よって個人が孤立しないような仕掛け出来上がります。これを1日から半日の短いサイクルで繰り返し行っていきます。
51

52

朝ミーティング、夕ミーティングは顔を突き合わせてスタンドアップで行いヘルプ要請があれば、直後に関連のある人たちでショートミーティングを行います。
その利点は問題をメンバー相互に発見できるスパンが短いということです。この利点をチーム自身が自覚すると困ったときにチームに迷惑をかけないために早めにアラームを出すという文化が生まれてきます。いわば落ちこぼれを作り出さないための仕組みですね。
更にこれが進むと、チームにこの技術知識が足りないと感じた人が率先して、チーム内勉強会を開いたりもし始めます。こうなると、放っておいてもチームの技術力、団結力は高まっていくばかりとなります。
53

54

スプリント計画で洗い出したタスクがどれだけ消化できているかを、手書きで壁に張り出しておきます。重要視するのは完了実績の積み上げ線です。これを見ることでチームでコミットしたタスクを完遂するためのペース配分（ベロシティ）をチーム全体が考えるようになります。
これが定着すると、前のスプリントよりももっとベロシティを上げたいという欲求がチーム全体に自然と広がり、私たちの事例ではほとんどのケースで最初の頃スプリントに比べての倍やそれを超えるベロシティを終盤に発揮してくれるようになりました。
ただし、このベロシティは初期のイテレーションでは思ったように上がりません。でも大丈夫。チームがマインドを忘れないように忍耐強く見守り続ければ必ず期待以上のベロシティを上げてくれます。
55

56

イテレーションの終了時に、KPTを用いてメンバー全員が必ず発表する機会を設け、個々人の考え方や感じ方をお互いに直接知ることができる環境を作ります。時にはメンバーの素朴な疑問が大きな改善点の発見につながり、チーム力向上に大きく寄与することも有ります。
改善点を決める時も上司が押しつけで行うのではなく、メンバー全員で決めていきます。
私たちの場合は、もう一つのT（Thanks）を加えています。感謝する方もされる方も日頃では言えない感謝を堂々と伝えることが出来、チームの結束力が高まります。
これを繰り返すことで、チームの問題は徐々に改善され、最適な自律化されたチームの成長を即することができます57

•

最初にチームマインドを生み出し、仕組みでチームマインドを維持する•

コマンダーマネジメントではなく、サーバントマネジメントがチームの自律化を生む58

59

ご清聴ありがとうございました。
この発表で、Agileに今一つ踏み出せない方々の背中を少しでも押すことが出来れば、望外の幸せです。
ご質問・ご用命などございましたら、下記までお願いいたします。

渡会 健（わたらい たけし）
Twitter @ase_watarai
E-mail t-watarai@ase.co.jp
Web www.ase.co.jp

60