SIerにおくる、
アジャイルプロセスの実践
- アジャイル統一プロセス アジャイルプロセス協議会アジャイルプロジェクトマネジメントWG
株式会社アットウェア
牧野隆志

1
Copyright© 2009 atWare,Inc. All rights reserved.
自己紹介
• 牧野隆志(まきのたかし)
– 株式会社アットウェア 代表取締役
http://www.atware.co.jp/

– アジャイルプロセス協議会
アジャイルプロジェクトマネージメントWG

http://www.agileprocess.jp/

– 日本Javaユーザグループ幹事
http://www.java-users.jp/
2
Copyright© 2009 atWare,Inc. All rights reserved.
今日の目的

SIerがよりよいシステムを
構築するための手段として、
実践的なアジャイルプロセ
スを提案

3
Copyright© 2009 atWare,Inc. All rights reserved.
ターゲット
• 中~大規模のSI(システム構築)
コーバーンの尺度
生命
(Life)

重
要
度

L6

L20

L40

L100

重大な経済的損失
(Essential money)

E6

E20

E40

E100

軽微な経済的損失
(Discretionary money)

D6

D20

D40

D100

使い勝手
(Comfort)

C6

C20

C40

C100

1~6

~20

~40

~100

人数
4
Copyright© 2009 atWare,Inc. All rights reserved.
(改めて)なぜアジャイルプロセスか
• 不安定な要求
• ビジネス要求の変化への追随
• ドキュメントだけを工程間、技術者
間のインタフェースにすることのロ
ス

5
Copyright© 2009 atWare,Inc. All rights reserved.
アジャイル宣言
私たちは、
プロセスとツールよりも
個人と対話に、
包括的なドキュメントよりも
動くソフトウェアに、
契約交渉よりも
顧客との協調に、
計画に沿うことよりも
変化に対応することに、
価値をおく
6
Copyright© 2009 atWare,Inc. All rights reserved.
中・大規模開発とアジャイル
• XPでは「中小規模のチーム」(X
P入門初版)、「多くの人が関与す
る場合、プラクティスを増やし、変
える必要がある」(XP入門第二版)
• Scrumでは「チームのメンバは最大7
人」「複数チームで構成」
• FDDでは、比較的大規模にも適用
可能(モデル駆動、設計を重要視)
7
Copyright© 2009 atWare,Inc. All rights reserved.
なぜ大規模に向かないか①
• コミュニケーションとりづらい
– 毎日のスタンドアップミーティングで
全員が発言できない
– チームに分割した場合のチーム間での
コミュニケーション

8
Copyright© 2009 atWare,Inc. All rights reserved.
なぜ大規模に向かないか②
• オンサイトする顧客がビジネス要求
の全てを把握できていない
– ある程度以上の規模では情報システム
部署の担当者がオンサイト
– 現場担当者からのフィードバックを継
続的に受けれない

9
Copyright© 2009 atWare,Inc. All rights reserved.
なぜ大規模に向かないか③
• 核となるアーキテクチャ
– XPの「最良のアーキテクチャ、要件、
設計は、自己組織的なチームから生み
出される」のは、能力の高いプログラ
マがモチベーション高くチームを形成
しているから
– アーキテクチャがインクリメンタルに
変化したら、大規模=多人数に浸透さ
せることが困難
10
Copyright© 2009 atWare,Inc. All rights reserved.
なぜ大規模に向かないか④
• 全体包括的なモデル
– プロジェクト全体(全員)でのコード
共有が難しいため、整合性とれてない
モデルが点在する
– 大規模なリファクタリングはコストが
かかる
– データベースリファクタリング

11
Copyright© 2009 atWare,Inc. All rights reserved.
なぜ大規模に向かないか⑤
• 長期間のプロジェクト
– あまりにも遠い未来のゴールを見失う
– 変化がない、同じことの繰り返し
– モチベーションの維持

12
Copyright© 2009 atWare,Inc. All rights reserved.
なぜ大規模に向かないか⑥
• 日本のSI=多重請負モデル
– 目的(ゴール)の共有
– スキルや経験のばらつきが激しい
– アジャイルに馴染めない人をバスから
降ろすわけにいかない

13
Copyright© 2009 atWare,Inc. All rights reserved.
なぜ大規模に向かないか⑦
• なんだかんだといってもドキュメン
ト
– 規模が大きくなるにつれ、コード共有
どころか全体の仕様を把握することす
ら難しくなる
– 操作マニュアルの元ネタ
– コードが読めない顧客への運用・保守
の移管

14
Copyright© 2009 atWare,Inc. All rights reserved.
なぜ大規模に向かないか⑧
• 体系化されたガイドラインがない
– 標準
– 企業毎の規約
– 未経験なものにチャレンジする勇気

15
Copyright© 2009 atWare,Inc. All rights reserved.
教科書通り実行して成功するのは
• 毎日のスタンドアップミーティング
で全員が発言できる程度の人数の優
秀なプログラマが、常にコミュニ
ケーションをとりながら全体を把握
できる規模

16
Copyright© 2009 atWare,Inc. All rights reserved.
XPのプラクティス
• XPは全てのプラクティスがなんら
か関係を持っていて、全てを実践す
ることで成り立つ
– カスタマイズせず、そのまま適用する
ことを推奨している
– 現実的にはかなり難しい

17
Copyright© 2009 atWare,Inc. All rights reserved.
本格的に適用するには
• プラクティス集ではない、体系化し
たガイドラインが必要
– 経験が無くてもその通りやればある程
度うまくいく
– 必要以上にカスタマイズ(取捨選択)の
幅を持たせない

18
Copyright© 2009 atWare,Inc. All rights reserved.
ベースとなる規約
• 反復型開発として体系化されている
統一プロセス(UP)にアジャイル
マインドとXP、Scrum、FDDなどのプ
ラクティスを注入
アジャイル
プラクティス

マインド

統一プロセス
19
Copyright© 2009 atWare,Inc. All rights reserved.
ライフサイクル
方向
推敲
付け

作成

要件
設計
実装

アジャイルに
要求/設計/実
装/テストを

テスト

20
Copyright© 2009 atWare,Inc. All rights reserved.

移行
方向付けフェーズ
•
•
•
•

ビジョン、ゴール、スコープの合意
技術的リスクの明確化
推敲フェーズの計画
数日~1週間程度

21
Copyright© 2009 atWare,Inc. All rights reserved.
ビジョン、ゴール、スコープの合意
• UPより
• 価値の共有
– 顧客⇔開発者⇔開発者
– アジャイル宣言、原則
– プロジェクト・クレド
• 開発ルームの壁に貼る、開発者に配る

22
Copyright© 2009 atWare,Inc. All rights reserved.
推敲フェーズ
• 実行可能な中核アーキテクチャを実
装し、主要リスクを軽減
– アーキテクチャの早期確立
– 核となる部分とそれ以外の分離
– リスクの高いストーリ
– プロトタイプではない

• 全体包括モデル構築
• 全ての要求を定義しない
• 詳細な計画は立てない
23
Copyright© 2009 atWare,Inc. All rights reserved.
核となる部分とそれ以外の分離
• ソフトウェアプロダクトラインより
• プロダクトライン開発(厳格)とプロ
ダクト生産(アジャイル)
– アーキテクチャの核となるフレーム
ワークやコンポーネントとそれを利用
したビジネスアプリケーションを分離

24
Copyright© 2009 atWare,Inc. All rights reserved.
実装量
方向
付け

推敲

作成

その他のビジ
ネスロジック
核となるF/W、
コンポーネント

25
Copyright© 2009 atWare,Inc. All rights reserved.

移行
チーム編成
• 推敲フェーズのメンバが作成フェーズの各
チームのチーフプログラマに

26
Copyright© 2009 atWare,Inc. All rights reserved.
全体包括モデル構築
• FDD、アジャイルモデリングより
• ドメイン・モデル
– ホワイトボード→電子データに転記
• メンテナンスが容易になる

• 用語集
– Wiki

27
Copyright© 2009 atWare,Inc. All rights reserved.
作成フェーズ
• XPなどのプラクティスを用いて、
要求/設計/実装/テストをイテ
レーティブに、インクリメンタルに
• テーマ

28
Copyright© 2009 atWare,Inc. All rights reserved.
テーマ
• 複数回のイテレーションを束ねたリ
リース
• イテレーション、リリースのテーマ
の明確化
• テーマを達するために適切なイテ
レーション、リリースの長さを決定
– システムとして意味のある状態に保つ

29
Copyright© 2009 atWare,Inc. All rights reserved.
リリース内でのフェーズ
リリース
方向付け

推敲

移行

作成

イテレーション
リリース計
画ゲーム

バッファ
フィードバック
リファクタリング
結合テストコード
デザイン適用
性能テスト

技術リスク
の解消
主ストーリ

30
Copyright© 2009 atWare,Inc. All rights reserved.

ふ
り
か
え
り

リ
リ
ー
ス
コミュニケーション
• 二段階朝会
– 全体:全員参加、チーム代表者のみ発
言(全体周知)
– チーム毎:チーム内の全員が発言

• 情報ボード
– テーマや直近のイベント、周知事項な
ど

• Skype(グループチャット)
31
Copyright© 2009 atWare,Inc. All rights reserved.
オンサイト顧客
• 開発室内に顧客用の席を確保
• Skype(チャット)
– オンサイトでないときのリアルタイム
な情報共有

• 顧客先と開発室との頻繁な行き来
– ホントのユーザと会話しやすい
– 要件定義チーム

32
Copyright© 2009 atWare,Inc. All rights reserved.
要件定義チーム
• 顧客+専任メンバ+開発チーム
– 各開発チームのうち一名が参加
→ 次イテレーションの開発リーダ
要件定義

要件定義
テストシナリオ

実装
設計・テスト

テストシナリオ

実装
設計・テスト

33
Copyright© 2009 atWare,Inc. All rights reserved.

要件定義

実装
設計・テスト
コード所有
• チーム毎に個別所有
– プロジェクト全体での共有はしない

• チーム内で共有

34
Copyright© 2009 atWare,Inc. All rights reserved.
見える化

タスクボード
バーンダウン
35
Copyright© 2009 atWare,Inc. All rights reserved.
タスクボード

優
先
順
位

36
Copyright© 2009 atWare,Inc. All rights reserved.
タスクカード
ユースケースや
区分毎に色分け

付箋が付いてたり・・・

37
Copyright© 2009 atWare,Inc. All rights reserved.
移行フェーズ
• 本番環境相当でのシステムテスト
– 障害テスト、負荷テスト

• 運用テスト、運用訓練
– システム全体のフィードバック

• ドキュメント整備

38
Copyright© 2009 atWare,Inc. All rights reserved.
ドキュメント
• UPではオプションとして大量のド
キュメントを定義
→ 現実的に必要なドキュメントの
みに絞って、必須とする
• 名称、内容は各社固有のもの転用可
能とする
– ただしどの工程で作成すべきか考慮

39
Copyright© 2009 atWare,Inc. All rights reserved.
最後に

守 破 離
師匠の教えを忠実に守り、
師匠の教えに自分のアレンジを加え、
自分オリジナルなやり方を確立する

40
Copyright© 2009 atWare,Inc. All rights reserved.
ご清聴ありがとうございました

makino@atware.co.jp
41
Copyright© 2009 atWare,Inc. All rights reserved.

More Related Content

PDF
アーキテクチャの発掘に見る要求変化の発見 - 要求開発アライアンス2014年2月定例会
PDF
なぜソフトウェアアーキテクトが必要なのか - Devlove 20110423
PDF
アーキテクチャとアジャイルプロジェクトをまともに進めるための両輪について-DevLOVE関西 #DevKan
PDF
XP祭り2014「アジャイルを手放して得られたこと」
PDF
Javaエンジニアのためのアーキテクト講座-JJUG CCC 2014 Fall
PDF
Javaとコミュニティの歩み 2020
PDF
【B-3】 創業122年の企業と顧客価値にコミットした開発を実現する試みと成果について
PDF
Devlove2012 どうしたら良いシステムが作れるのか
アーキテクチャの発掘に見る要求変化の発見 - 要求開発アライアンス2014年2月定例会
なぜソフトウェアアーキテクトが必要なのか - Devlove 20110423
アーキテクチャとアジャイルプロジェクトをまともに進めるための両輪について-DevLOVE関西 #DevKan
XP祭り2014「アジャイルを手放して得られたこと」
Javaエンジニアのためのアーキテクト講座-JJUG CCC 2014 Fall
Javaとコミュニティの歩み 2020
【B-3】 創業122年の企業と顧客価値にコミットした開発を実現する試みと成果について
Devlove2012 どうしたら良いシステムが作れるのか

What's hot (20)

PDF
エンタープライズへのアジャイル開発の導入事例
PDF
夏サミ 2012 [B-2]エンタープライズ開発におけるコラボレーション - JIRAによる顧客と開発チームのつなぎ方
PDF
MicroserviceでのNoOps戦略 - NoOps Meetup Tokyo #2 #NoOpsJP
PDF
デブサミ関西2012[A-2]エンタープライズ開発におけるコラボレーション - JIRAによる顧客と開発チームのつなぎ方
PDF
JavaとOSSとAndroid - JavaAPI訴訟問題を考える
PDF
Agile Japan 2010 「変化を受け入れるアジャイルなプロジェクトマネジメントと現場 <ツール・環境篇>」
PDF
エンタープライズアジャイルでチームが超えるべきこと - エンタープライズアジャイル勉強会 2018年10月セミナー
PDF
Microservicesを実現するために、インフラエンジニアと開発者がすべきこと
PDF
なぜソフトウェアアーキテクトが必要なのか - デブサミ2011
PDF
ITサービス運営におけるアーキテクチャ設計 - 要求開発アライアンス 4月定例会
PDF
DX時代に目指すべき品質向上とテスト - @IT ソフトウェア品質向上セミナー 2019夏
PDF
Visual Studio 2019 / Visual Studio Code + Live Shareではじめるモブ・プログラミング #vs2019
PDF
ウォーターフォールとアジャイルを考える #ita_ws
PDF
エナジャイル設立によせて
PDF
Bitbucketを活用したコードレビュー改善事例
PDF
ユーザー企業における標準化のあり方 : QCon Tokyo 2010
PDF
アジャイル開発を支えるアーキテクチャ設計とは
PDF
マネジメントにおいて知っておくべき、ツールを活用したアジャイル開発の実践事例
PDF
エンタープライズアジャイルと全体最適について ~アーキテクチャ設計とウォーターフォールの必要性~
エンタープライズへのアジャイル開発の導入事例
夏サミ 2012 [B-2]エンタープライズ開発におけるコラボレーション - JIRAによる顧客と開発チームのつなぎ方
MicroserviceでのNoOps戦略 - NoOps Meetup Tokyo #2 #NoOpsJP
デブサミ関西2012[A-2]エンタープライズ開発におけるコラボレーション - JIRAによる顧客と開発チームのつなぎ方
JavaとOSSとAndroid - JavaAPI訴訟問題を考える
Agile Japan 2010 「変化を受け入れるアジャイルなプロジェクトマネジメントと現場 <ツール・環境篇>」
エンタープライズアジャイルでチームが超えるべきこと - エンタープライズアジャイル勉強会 2018年10月セミナー
Microservicesを実現するために、インフラエンジニアと開発者がすべきこと
なぜソフトウェアアーキテクトが必要なのか - デブサミ2011
ITサービス運営におけるアーキテクチャ設計 - 要求開発アライアンス 4月定例会
DX時代に目指すべき品質向上とテスト - @IT ソフトウェア品質向上セミナー 2019夏
Visual Studio 2019 / Visual Studio Code + Live Shareではじめるモブ・プログラミング #vs2019
ウォーターフォールとアジャイルを考える #ita_ws
エナジャイル設立によせて
Bitbucketを活用したコードレビュー改善事例
ユーザー企業における標準化のあり方 : QCon Tokyo 2010
アジャイル開発を支えるアーキテクチャ設計とは
マネジメントにおいて知っておくべき、ツールを活用したアジャイル開発の実践事例
エンタープライズアジャイルと全体最適について ~アーキテクチャ設計とウォーターフォールの必要性~
Ad

Viewers also liked (20)

PDF
現場の見える化で、チーム力を向上させる
PPTX
ITエンジニアのしあわせ考
PDF
Dockerでらくらく開発・運用を体感しよう
PDF
ソフトウェア開発の見える化
PPTX
メトリクスによる「見える化」のススメ: エッセンシャル・リーン
PDF
ソフトウェアレビュー品質向上の7つのポイント ver.3
PDF
LMS on the Cloud
PDF
心はソフトウェアエンジニア、仕事は経営者のすゝめ
PDF
JJUG CCC 2014 Fall LT
PDF
HTTPとサーブレット
PDF
GASろう
PPTX
メトリクスによる「見える化」のススメ:No 見える化、No 改善
PDF
コミュニティによる生産性向上のすすめ
PDF
生産性向上ワーキンググループについて
PDF
AWS LambdaとAPI Gatewayでサーバレスなシステム構築に踏み出してみる
PDF
Seasar conference 2015 sa-compojure
PDF
jus研究会名古屋大会「Redmineでプロジェクトを【見える化】しよう!」
PDF
アプリを生み出す現場でUI/UXデザイナーが意識するべきこと:RoomClip
PDF
大規模スクラムの失敗から学んだこと #AgileJapan2015
PDF
あなたのチームの「いい人」は機能していますか?
現場の見える化で、チーム力を向上させる
ITエンジニアのしあわせ考
Dockerでらくらく開発・運用を体感しよう
ソフトウェア開発の見える化
メトリクスによる「見える化」のススメ: エッセンシャル・リーン
ソフトウェアレビュー品質向上の7つのポイント ver.3
LMS on the Cloud
心はソフトウェアエンジニア、仕事は経営者のすゝめ
JJUG CCC 2014 Fall LT
HTTPとサーブレット
GASろう
メトリクスによる「見える化」のススメ:No 見える化、No 改善
コミュニティによる生産性向上のすすめ
生産性向上ワーキンググループについて
AWS LambdaとAPI Gatewayでサーバレスなシステム構築に踏み出してみる
Seasar conference 2015 sa-compojure
jus研究会名古屋大会「Redmineでプロジェクトを【見える化】しよう!」
アプリを生み出す現場でUI/UXデザイナーが意識するべきこと:RoomClip
大規模スクラムの失敗から学んだこと #AgileJapan2015
あなたのチームの「いい人」は機能していますか?
Ad

Similar to SIerにおくる、アジャイルプロセスの実践 (20)

PDF
アジャイル開発の進め方
PDF
Xpfes2009 Kushida
PDF
うそのアジャイル、まことのアジャイル 公開用
PDF
アジャイル開発の基礎知識 抜粋版
PDF
アジャイルと私
PDF
アジャイル開発&TFS導入
PDF
GCSアジャイル開発を使ったゲームの作り方
PDF
はじめてのアジャイル
PDF
三島teNet第9回ワークショップ アジャイルな開発とは(公開版)
PDF
Agility@Scale(アジャイル開発のスケールアップ)を実現する14のベストプラクティス
PDF
アジャイルマニフェストから見るインセプションデッキ
PDF
2amano leanconf2014
PDF
ソフトウェア開発を加速させるリーン開発の原則 公開用
PDF
Agile Estimating And Planning
PDF
私の熱いアジャイル活動、アジャカツ!始まります フフッヒ
PDF
ビジネスとソフトウェア開発現場の架け橋 〜 なぜアジャイル? #AgileJapanOsaka
PDF
アジャイル開発の現在・過去・未来~今を知り、源流を訪ね、先を見据える~
PDF
2017/4/25 『小規模開発アジャイル導入の気づき』
PDF
アジャイル基礎再考
PDF
enterprise agile lean modeling
アジャイル開発の進め方
Xpfes2009 Kushida
うそのアジャイル、まことのアジャイル 公開用
アジャイル開発の基礎知識 抜粋版
アジャイルと私
アジャイル開発&TFS導入
GCSアジャイル開発を使ったゲームの作り方
はじめてのアジャイル
三島teNet第9回ワークショップ アジャイルな開発とは(公開版)
Agility@Scale(アジャイル開発のスケールアップ)を実現する14のベストプラクティス
アジャイルマニフェストから見るインセプションデッキ
2amano leanconf2014
ソフトウェア開発を加速させるリーン開発の原則 公開用
Agile Estimating And Planning
私の熱いアジャイル活動、アジャカツ!始まります フフッヒ
ビジネスとソフトウェア開発現場の架け橋 〜 なぜアジャイル? #AgileJapanOsaka
アジャイル開発の現在・過去・未来~今を知り、源流を訪ね、先を見据える~
2017/4/25 『小規模開発アジャイル導入の気づき』
アジャイル基礎再考
enterprise agile lean modeling

SIerにおくる、アジャイルプロセスの実践