アジャイル開発手法取り組み状況
-
Upload
arata-fujimura -
Category
Documents
-
view
1.041 -
download
0
Transcript of アジャイル開発手法取り組み状況
1
2014年1月17日
GMOインターネット株式会社
次世代システム研究室
藤村 新
アジャイル開発手法
取り組み状況
2
目次
1) プロジェクト適用事例
2) 他に取り組んだこと
3) KPT
4) まとめ
3
目次
1) プロジェクト適用事例
2) 他に取り組んだこと
3) KPT
4) まとめ
4
5
Scrum
役割
プロダクトオーナー:1名
スクラムマスター:1名
開発チーム:5名
スプリント
1スプリント:1週間
金曜日開始、木曜日終了
最初は月曜日開始、金曜日終了
6
セレモニー(※理想形) 月 火 水 木 金
デイリースクラム:15分
スプリントレビュー:30分
スプリント計画1部:60分
スプリント計画2部:60分
ふりかえり:60分
7
ツール
PMツール
Redmine
Backlogs
• プロダクトバックログ
• スプリントバックログ
• カンバン
• バーンダウンチャート
9
CIツール
Jenkins
PHPUnit, Selenium + Cloverプラグイン
• テスト実行結果表示
• カバレッジレポート集計
phpcpd + DRYプラグイン
• 重複コードチェック
PHP_CodeSniffer + Checkstyleプラグイン
• コーディング規約チェック
• CakePHP用のコーディング規約を使用
11
CDツール
Chef Solo(Knife solo)
サーバ構成管理
• Vagrant / Openstack で動作確認
• serverspecを使った構成管理テスト
• 基本的に手動設定禁止
Capistrano
Gitと連携してデプロイ
• set :deploy_via, :remote_cache
12
開発ツール
GitLab
リリースフロー
• Merge Requests
A successful Git Branching modelで運用
PhpStorm
Reformat Code
• コーディング規約に、CheckStyleと同様の規約
(CakePHPコーディング規約)を設定
• 2000個 → 4個
13
14
リーン開発?
15
セレモニー 月 火 水 木 金
デイリースクラム:15分
Gゲー社MTG:60分
スプリント計画:30分
ふりかえり:60分
上長報告MTG:30分
16
ツール
PMツール
Redmine
Backlogs
• プロダクトバックログ
• スプリントバックログ
• カンバン
17
目次
1) プロジェクト適用事例
2) 他に取り組んだこと
3) KPT
4) まとめ
18
PMIアジャイルPM研究会立ち上げプロジェクト参画
19
CSPO研修受講
日時:2013年5月20日~21日
場所:株式会社ミクシィ
講師:ジェフ・パットン
20
一言で言うと
プロダクトディスカバリを行なって、
プロダクトバックログを作るまでの話
※スクラム開始前のフェーズ
21
CSM研修受講
日時:2013年6月20日~21日
場所:ビジョンセンター日本橋
講師:江端一将、Sergey
22
一言で言うと
スクラムの基礎を
座学とワークショップを通して学ぶ
23
第1回アジャイルミーティング発表
日時:2013年10月9日
場所:GMO Yours
内容
1. PMIアジャイルPM研究会立ち上げプロジェクトの紹介
2. 次世代システム研究室
3. GMOリサーチ
4. GMO ECラボ
5. ペパボ
6. 交流会
24
アジャイルコーチ
ECプロジェクトでお試し
勉強会、ワークショップ
アジャイルサムライ横浜道場
POStudy
すくすくスクラム
リーン開発の現場
レゴスクラム(メディア社潜入)
25
目次
1) プロジェクト適用事例
2) 他に取り組んだこと
3) KPT
4) まとめ
26
各種ツールの利用
効果は明らか
時間を意識する
朝会で議論しないなど
MTGにタイマー導入
スプリント計画2部の改善
想定される全タスクの洗い出し、時間見積もり
• 自己組織化促進
• バーンダウンチャートの精度向上
Keep
27
自動化
developブランチの更新、テスト通過で、レビュー用
環境へ自動デプロイ
フィードバックのサイクルが早まった
ふりかえり改善
KPTにTODO枠を追加し、次回のスプリントでチャレ
ンジするTryを明確化
Problemに対するアクションが明確になった
Keep(別プロジェクトで改善)
28
役割
スクラムマスター
経験、スキル不足
プロダクトオーナー
本当の意味でのプロダクトオーナーは別にいた
開発チーム
2拠点に分散
• コミュニケーション不足
• 開発環境差異
全てのメンバーがプロジェクト掛け持ち
Problem(EC)
29
バックログ
PBIの洗い出し不足
スプリント中でも優先度が変わる
• スプリント中止
プロダクトバックログリファインメントを行なっ
ていなかった
完了の定義が曖昧
ツール
導入しっぱなし
Jenkinsのエラーに気付けないなど
Problem(EC)
30
カンバン
一プロジェクトだけやっても、見える化にならない
WIPの意味が無い
更新されない…
効果が感じられない
結果を測定できていない
測定できなければカイゼンできない
サイクルタイム(短縮を目指す)
ベロシティ(高い基準での安定を目指す)
Problem(ゲーム)
31
ツール関連の積み残し
Chef Solo + Vagrantを使った開発環境構築
Selenium, serverspecなども導入しただけ
オフショア開発への適用
ベトナムラボセンター
組織パターンの導入
ロールの洗い出し
マインドチェンジ
開発手法に対する意識改革
Try
32
目次
1) プロジェクト適用事例
2) 他に取り組んだこと
3) KPT
4) まとめ
33
先人の知恵を拝借するべき
個々の勘と経験によるカウボーイコーディング脱却
インプットからアウトプットへ
プロセスの理解≠スキル習得
練習しないとうまくならない
プロジェクトの種類に応じて手法を使い分ける
新規開発
スクラム + XP
運用開発
リーン開発 + XP
まとめ
34
おわり