Happy Adapting Agile Software Development

Post on 05-Dec-2014

2,688 views 1 download

description

Presentation at Agile Japan 2010

transcript

変化を受け入れるアジャイルなプロジェクトマネジメントと現場(株)永和システムマネジメント/ オブジェクト倶楽部西村直人 / n-nishimura@esm.co.jp

Agile Japan 2010 2010.04.10

組織、意識改革編

自己紹介★西村直人 id:nawoto★永和システムマネジメント所属★福井が本社、東京に支社にある220名程度SIベンダ★アジャイル手法を軸に変化を抱擁するITソリューションを提供することに力を入れています

★アジャイルコーチ★お客様先でアジャイル手法を導入するお手伝い

★開発リーダー★ Rubyとアジャイル手法での開発に3年以上従事

RubyxAgile

http://ruby.agile.esm.co.jp/

アジャイル導入支援

http://agile.esm.co.jp/scrum/

今日お話する事「変化を受け入れられるプロジェクトマネジメントと現場」を実現するためにアジャイル手法を導入や検討されている企業が増えてきています。

今日お話する事組織改革の第一歩は現場への導入から始まり、そこで得たものはアジャイル手法の導入に不可欠です導入の始め方も重要になります。現場の重要性と始め方の工夫についてお話します。

主な対象層

組織

経営層

マネジメント層

開発者層

アジェンダ1.なぜ現場が重要なのか?2.プロジェクトの選び方3.理解を促進させるには?

現場実際にプロジェクトを進めていくマネジメント層と開発者層

重要な理由1.実践するのは現場2.目的を理解するのは現場3.判断し修正するのも現場

変化

今、そこにある変化★西村の場合★ 2009年

★ Agile Japan 2009 で LT の司会★ 現場を中心にアジャイル手法を実践してました★ 認定スクラムマスター取得

★ 2010年★ Agile Japan 2010 で講演★ お客様の組織にアジャイル手法を導入するお手伝い

経営層のニーズ★ビジネス優先の開発をしたい★コストを削減したい★内製化を進めたい等

経営層のニーズ★ビジネス優先の開発をしたい★コストを削減したい★内製化を進めたい等

Q.アジャイル手法で実現できますか?

今、そこにある変化★経営層からの依頼★アジャイル手法を自社に導入したい!!

★お手伝い★初期教育★実際にプロジェクトに参画しての導入支援

★ コーチ、スクラムマスター、メンター

★組織での横展開の相談

例えば、★MTI様

今、そこにある変化★経営層の判断★アジャイル手法を自社に導入したい!!

★実際に導入するのは現場★マネジメント層★開発者層

★必然的に変化せざる得ない

実は今までも★従来の開発プロセスでも★他社とは細部はかなり異なっているでしょう★時期によっても変化していたでしょう★トップダウンで見直した事もあるでしょう

★現場で実践してきた事★自分達の組織やプロジェクトに合せて適応してきた

現場で実践する事で★なぜ効果があるのか?★自社に最適化するには?★何は変更してはいけないのか?★何は変更してよいのか?

★経営層は判断できない★自分達の答えを持つ

Scrum実際の開発現場の日々の作業に用いる開発手法はプロジェクトやチームに応じて採用する

重要な理由1.実践するのは現場2.目的を理解するのは現場3.判断し修正するのも現場

経営層のニーズ★ビジネス優先の開発をしたい★コストを削減したい★内製化を進めたい等

Q.アジャイル手法で実現できますか?

Answer

YES※効果には個人差がありますので注意して下さい

先人曰くアジャイル手法を正しく実践できるチームは従来のチームよりソフトウェアの早期提供、高い品質、コスト削減を提供することができる。

PMBOK調達

リスク

コミュニケーション

人材 品質

コスト

時間

スコープ

全体管理

日々の作業★進捗管理★どの程度遅れているのか?★遅れはとり戻せる状態なのか?★進捗の障害となっている課題は?

★課題管理★課題の重要度は?★解決可能なのか?★いつまでに解決が必要なのか?

アジャイル手法では★作業の効率化を提供します★時間の短縮★不要な時間を取り除く★作業に集中させる★同時に複数の目的を達成する★課題の早期発見★などなど

とあるリーダー★進捗は週次で報告★資料の作成は3時間程度でできてますよ★メンバーへのヒアリングもいれるともう少し時間が掛ってると思います

★報告する場は週二回あるので情報の更新もしてます

少なくとも毎週5時間くらいの作業

デイリースクラムScrumのプラクティス毎日15分程度、チーム全員が参加して行うスタンドアップミーティング日本では「朝会」として有名

プラクティスアジャイル手法を構成する要素現場で日々実践すべき項目についてを定義している。例えば、バージョン管理ツールの利用や毎週のデモ等も含む

実際の光景

確認する事★昨日やった事★今日やる事★作業を進める上で気になる事★オプション★連絡事項★今週のリリースは守れそうか★マネージャーに手伝ってほしい事は?

目的★進捗確認に要する時間の短縮★コミュニケーションの促進★早期の課題発見★メンバーの状況を確認★方向性や目的の周知

とあるマネージャーリリース直前で進捗は少し遅れてるけど、朝会でメンバーの顔を見ていると安心して任せれたよ。

理解してもらった★情報の信憑性★日次で確認している

★開発チームの作業スピード★作業の進行上に問題が無い事

管理コストの削減

導入前

導入後

進捗管理 その他

あくまでイメージです

他にやる事★課題への迅速な対応★調達★コスト計算★他のプロジェクトも担当する★などなど

プラクティス先人の知恵。

複数の目的を同時に実現する効率的なやり方

理解する★目的と効果を知っていたから、現状を正しく把握できた

★目的を意識して行動する事で、正しく効果を発揮できる

重要な理由1.実践するのは現場2.目的を理解するのは現場3.判断し修正するのも現場

プラクティス★デイリースクラム★スプリントレビュー★スプリント計画ミーティング★スプリントレトロスペクティブ★バーンダウンチャート等

背景

Scrumの理論★透明性★プロセスの様子が、成果を管理する人の目に見える事を保証する必要がある。

★検査★プロセスに受け入れ難い変化を頻繁に検査しておく必要がある

★適応★問題が発生した場合には迅速に対応する必要がある

http://www.scrum.org/scrumguides/

現場でしかできない★必要なプラクティスを選択する★目的と効果、背景を理解する

★プラクティスが導入可能か?★オフショアの場合にデイリースクラムできるの?

★カスタマイズして実現可能か?★かんばんはWebアプリで代替できるか?

重要な理由1.実践するのは現場2.目的を理解するのは現場3.判断し修正するのも現場

アジェンダ1.なぜ現場が重要なのか?2.プロジェクトの選び方3.理解を促進させるには?

すぐに理解できるの?★ある程度の時間は必要です★理解して行動できるまでの時間が必要★開発チームが形になるまで一ヶ月は必要と言ってます

★ それでも本当に習熟したとは言えない

早くする事はできます★適切な環境を用意する★色々な事を学習できる機会が多い★効果的に学習できる体制★正しく評価できる★などなど

プロジェクト

パイロットプロジェクト

アジャイル手法の導入を目的とした試験的なプロジェクト

パイロットプロジェクト

ここで学んだことが後に続く組織的な導入を成功させる要因の一つ

選び方

期間

プロジェクトの規模

組織からの支援

重要度

http://blog.mountaingoatsoftware.com/four-attributes-of-the-ideal-pilot-project

Mike Cohn

選び方★期間★あまり短いと学習機会が少ない★チームがある程度成長した後は続ける必要が無い

★プロジェクトの規模★大規模はコントロールが難しく、個別のケアもしにくい★あまり小さいと実プロジェクトとの乖離が大きい

選び方★組織からの支援★集中できる環境を用意してもらう

★重要度★失敗が会社に深刻な影響を与えるのは避けるべき

★ プロジェクト自体の成功を優先してしまう

★小さいと本気度が足らない

傾向と対策★集中させる★前プロジェクトと兼任させない★評価基準を現場に求めない★外野を決めておく

★情報を公開する★専任の窓口を用意する

★結果を正しく評価する★現場の評価と違う解釈をしない

アジェンダ1.なぜ現場が重要なのか?2.プロジェクトの選び方3.理解を促進させるには?

??最初から上手くいく?

実践できるまで1.やり方を教わる2.目的を教わる3.実行する4.実感する5.実践する

必要な支援★説明責任★課題を見つける★学習を促す

とあるマネージャ曰く★プロジェクト初期で進捗が良くない時

★君はどう考えてるのか?★何か対応策になるプラクティスは?★いつからプラクティスを導入するのか?

私の解答今は新しいプラクティスを導入する予定はありません。すいませんが、もう一週間我慢して下さい。

とあるマネージャ曰く★なぜ何もしないのか!?★大丈夫な理由を教えろ!!

当然の反応★プロジェクトの成功に責務★どういう状況か知る権利がある★必要な対応をする義務がある★失敗は組織での評価にも影響する

併用したプラクティス★かんばん★タスクの見える化を実現★スプリントバックログとして利用

目的★タスクレベルでの作業進捗★作業担当者の明示★作業間連携のロスを減らす★必要な情報の聞き先が分かる

★作業指示の負担軽減★本来、リーダーが指示★サインアップによる代替

★課題分析のインプット等

とあるチーム★かんばんを導入★進捗が見える化された事は理解★リーダーやマネージャーに作業進捗を聞かれない★朝会での報告で周りが安心するのを実感

とあるチーム★サインアップできない★作業指示はリーダーが主体で朝会の後で実施★本来は朝会の15分で済む話★開発作業の時間が減っている

★ 微々たるものかもしれない★ 長期や全社の視点では?

★リーダーはメンバー全員のタスク分担を考える★ 日に何度も発生する

とあるチーム★気付きつつあった★リーダーが開発に参加できていない★関連するタスクは基本的に自分の担当になる★作業の進捗は分かるので、手伝いが必要な所は自明

私が説明した事★進捗の報告に有効な事を理解したところです

★リーダーが開発作業に集中できれば、進捗の遅れは挽回

★サインアップできる事を定着させるべき

私が意識している事★学習機会を奪わない★一度に全ては理解し難い★適切なタイミングで段階的に理解してもらう

必要な支援★説明責任★課題を見つける★学習を促す

気付きにくい事も★複数のタスクが同時に完了する★担当者がサインアップしたタスクは一つだった★同時に上手くやれたので良かった★頻繁に発生していたので、進捗面でも貢献

実は課題です★正確な進捗報告ではない★いつも複数のタスクが同時に完了するのか?★あと何日で終わるの?

★管理者層は不安に感じます★プロジェクトの状況が悪い時ほど正確な情報が必要

原因★タスクが処理を基準に分割★ xxデータを取得★ xxデータのフラグを更新★ xxデータを保存

★設計ができていない★オブジェクト指向設計★本来は一つのメソッドで実現されるべき

必要な支援★説明責任★課題を見つける★学習を促す

とあるチーム★サインアップできない★作業指示はリーダーが主体で朝会の後で実施★本来は朝会の15分で済む話★開発作業の時間が減っている

★ 微々たるものかもしれない★ 長期や全社の視点では?

★リーダーはメンバー全員のタスク分担を考える★ 日に何度も発生する

とあるチーム★気付きつつあった★リーダーが開発に参加できていない★関連するタスクは基本的に自分の担当になる★作業の進捗は分かるので、手伝いが必要な所は自明

私がやった事★あとは促すだけ★昨日やった事に関連するタスクはありますか?★もう終わったのですか? どこか手伝ってあげて下さい★リーダーとちゃんと確認して下さい

★ 人に任せても安心できる事を体験★ かんばんで確認できる事を伝える等

★適当に作業指示を与え、効率を悪くしてみる★ 自分の判断が正しい確証を持ってもらう

★最後に目的を再度伝える

必要な支援★説明責任★課題を見つける★学習を促す

誰がやるべき?★導入時の各層では難しい★ある程度の経験が必要

★本来の仕事★マネジメント層

★ プロジェクトの運営を担当する

★開発者層★ プロジェクトの開発作業を遂行する

スクラムマスターアジャイル手法を指導する専門の役割チームがアジャイル手法への理解と実践ができるように支援する

他にも★アジャイルコーチ★経験の浅いスクラムマスターの相談役★プラクティスの導入方法等を指導

★メンター★習得に時間の掛るプラクティスを伝える

★ ペアプロ、TDD

★開発者層と一緒に開発作業に従事する★ 実践する見本となる

導入の段階に応じて★最初は学習する事が多い★マネジメント層への教育★開発者層への教育★適切な支援があれば、効果的な学習が可能

★成熟してけば★自分たちで学習していける★少しのアドバイスで良い★スクラムマスターは不必要になるのが目的

まとめ

今日お話する事組織改革の第一歩は現場への導入から始まり、そこで得たものはアジャイル手法の導入に不可欠です導入の始め方も重要になります。現場の重要性と始め方の工夫についてお話します。

導入時のポイント★導入の鍵は現場にあります★最初の一歩は現場から始まる★現場が得たものは次に必要になります

★学ぶための環境を用意するのが重要

★パイロットプロジェクト重要

★経験者によるサポートは有効★初めての時は経験者に教えてもらおう

先人曰く★導入の鍵は現場にあります★最初の一歩は現場から始まる★現場が得たものは次に必要になります

★学ぶための環境を用意するのが重要

★パイロットプロジェクト重要

★経験者によるサポートは有効★初めての時は経験者に教えてもらおう

あとがき先人達が導入時に挙げている事の重要性を強く感じています。これからアジャイル手法を導入する人達にもぜひ共有しておきたいと思い、今回の主テーマにさせてもらいました。

以上です。ご清聴ありがとうございました。みなさんのお手伝いをできる日を楽しみにしています。

HappyAdapting