...

SEC - IPA 独立行政法人 情報処理推進機構

by user

on
Category: Documents
2

views

Report

Comments

Transcript

SEC - IPA 独立行政法人 情報処理推進機構
Software
Engineering
Center
かがわ情報化推進協議会設立20周年記念事業
IPAセミナーin高松
~セキュリティとソフトウェアエンジニアリング~
Information-technology Promotion Agency, Japan
アジャイル開発適用のヒント
~ IPA/SECにおける
非ウォーターフォール型開発に関する調査検討結果から ~
於)e-とぴあ・かがわBBスクエア
2012年12月7日
独立行政法人情報処理推進機構(IPA)
技術本部ソフトウェア・エンジニアリング・センター(SEC)
山 下 博 之
Software Engineering Center
1
アジャイル開発に関するIPA/SECの取組み
H21年度
H22年度
H23年度
SEC
Software Engineering
for Mo・No・Zu・Ku・Ri
H24年度
課題抽出
非ウォーターフォール ▲ 非ウォーターフォール ▲非ウォーターフォール ▲ 非ウォーターフォール
報告書型開発WG
型開発研究会 報告書 型開発WG
報告書 型開発WG
課題検討
提案
非ウォーターフォール
型開発に関する調査▲
事例収集(1) 報告書
実証/模擬実験
検証・改善 (契約形態)
大規模開発
事例収集(2) 普及要因
▲
報告書 ▲
報告書
事例収集(3)
▲
報告書
報告書(公開中)
H21年度版 http://sec.ipa.go.jp/reports/20100330a.html
H22年度版 http://sec.ipa.go.jp/reports/20110407.html
H23年度版 http://sec.ipa.go.jp/reports/20120326.html
(事例)
http://www.ipa.go.jp/about/press/20120328.html
(普及要因) http://sec.ipa.go.jp/reports/20120611.html
2012-12-07 IPAセミナーin高松
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
2
SEC
目 次
Software Engineering
for Mo・No・Zu・Ku・Ri
1. アジャイル型開発への注目の背景
2. アジャイル型開発手法
3. アジャイル型開発の活用に向けた課題
4. アジャイル型開発の普及に向けた課題
5. アジャイル型開発の適用領域
6. 適切な開発手法の選択
7. アジャイル開発の今後(まとめに代えて)
2012-12-07 IPAセミナーin高松
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
3
SEC
Software Engineering
for Mo・No・Zu・Ku・Ri
1. アジャイル型開発への注目の背景
2012-12-07 IPAセミナーin高松
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
4
H21年度
SEC
注目の背景:現状のソフトウェア開発を取り巻く課題(1)
Software Engineering
for Mo・No・Zu・Ku・Ri
ビジネス・ニーズへの適切な対応
他社に先駆けた市場投入が必須で、それにより徐々に明確
となるニーズを迅速に反映し改善していくことが必要な分野の
出現
顧客ニーズは最初に全ては把握できず、またビジネス環境の
激しい変化に伴いニーズも変化するが、この状況に迅速な対
応が必要
→早期サービス提供と効果確認、ニーズ変化への俊敏な対
応
2012-12-07 IPAセミナーin高松
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
5
H21年度
SEC
注目の背景:現状のソフトウェア開発を取り巻く課題(2)
Software Engineering
for Mo・No・Zu・Ku・Ri
(純粋な)ウォーターフォール型開発における問題点
初期段階では必ずしも全ての要求内容は確定しない
誤要求や要求の誤解が総合テスト段階で判明すると、多大な
影響
開発途中で要求が変更されると、対応が非常に困難
→要求確定部分からの順次開発開始と、妥当性の早期確認
2012-12-07 IPAセミナーin高松
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
6
H21年度
SEC
注目の背景:現状のソフトウェア開発を取り巻く課題(3)
Software Engineering
for Mo・No・Zu・Ku・Ri
ソフトウェア産業構造(多重下請構造)上の課題
開発者(特に若者)の参画意識・達成感が低い
→開発の過程と各開発者の役割や成果を可視化し、創造的
な開発スタイルを採り入れ、モチベーション向上をはかる
2012-12-07 IPAセミナーin高松
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
7
SEC
Software Engineering
for Mo・No・Zu・Ku・Ri
2. アジャイル型開発手法
2012-12-07 IPAセミナーin高松
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
8
SEC
アジャイル開発の概要
Software Engineering
for Mo・No・Zu・Ku・Ri
顧客の要求にしたがって,優先度の高い機能から順に,
要求・開発・テスト(・リリース)を短い期間で繰り返しながら,
システム全体を構築していく.
反復
原則として,
(イテレーション)
事前に開発の詳細な計画は作らず,
1~4週間という一定の短い周期で要求・開発・テストを繰り返しながら,
動作可能なソフトを作り上げる.
(対比)
スコープ
スコープ
<アジャイル型開発>
2012-12-07 IPAセミナーin高松
時間
時間
反復
要求
開発
テスト
<ウォーターフォール型開発>
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
9
アジャイル型開発の特徴
SEC
Software Engineering
for Mo・No・Zu・Ku・Ri
アジャイル開発は、不確実なビジネス環境の中で変化する
ニーズへの迅速な対応を目的としたソフトウェア開発手法。
この目的を達成するために、アジャイル開発では、
徐々に明確となる顧客ニーズや要件をシステムへ反映し、プロジェクトマ
ネジメント・リスクの早期低減、顧客側と開発側のギャップを解消。
アジャイル開発は、
•「顧客の参画の度合いが強い」
•「動くソフトウェアを成長させながら作る」
•「反復・漸進型である」
•「人と人のコミュニケーション、コラボレーションを重視する」
•「開発前の、要求の固定を前提としない」
という特徴を持つ。
2012-12-07 IPAセミナーin高松
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
10
参考
SEC
非ウォーターフォール型開発の例
Software Engineering
for Mo・No・Zu・Ku・Ri
非ウォーターフォール型開発とは、仕様を開発前に固定し、それを分析、設計、テスト等のフェイズ
を順次踏んでいくという1970年の Winston W. Royce の論文「Managing the Development of
Large Software Systems」でのウォーターフォール型以外の開発モデルの総称である。
非ウォーターフォール型開発の例として、以下のものが挙げられる:
・プロトタイプ (Frederick P.Brooks, Jr.-1975年「人月の神話」)
・スパイラル (Barry w. Boehm-1988 年
「A Spiral Model of Software Development and Enhancement」)
・RAD (James Martin-1991年 「ラピッドアプリケーションデベロップメント」)
・RUP (Philippe Kruchten-2000年「ラショナル統一プロセス入門」)
・アジャイル
Evo (Tom Gilb-1976年「Software Metrics」)
Scrum (Ken Schwaber-1993年「アジャイルソフトウェア開発スクラム」)
DSDM (1995年「DSDM ver1」)
XP (Kent Beck-1996年「XPエクストリーム・プログラミング入門 」)
FDD-Feature-Driven Development
(Peter Coad-1997年「Javaエンタープライズ・コンポーネント」)
Lean Software Development
(Mary Poppendieck, Tom Poppendieck-2002年「リーンソフトウェア開発」)
Crystal Clear (Alistair Cockburn-2004年「アジャイルソフトウェア開発」)
EssUp-Essential UP
(Ivar H.Jacobson-2005年「Rational Software Development Conference」)
Kanban (David Anderson-2010年「Kanban」)
2012-12-07 IPAセミナーin高松
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
11
SEC
アジャイル宣言における4つの価値
Software Engineering
for Mo・No・Zu・Ku・Ri
私たちは,ソフトウェア開発の実践を手助けする活動を通じて,
よりよい開発方法を見つけだそうとしている.
この活動を通して,私たちは以下のことを重視する:
①プロセスやツールよりも,個人と対話を
②包括的なドキュメントよりも,動くソフトウェアを
③契約交渉よりも,顧客との協調を
④計画に従うことよりも,変化への対応を
すなわち,①~④の各文の前者(「よりも」の前の言葉)に価値
があることを認めながらも,私たちは後者(「よりも」の後の言葉)
の事柄により価値をおく.
アジャイル宣言(Agile Manifesto)
アジャイルな開発手法の提唱者17名が集まり,2001年に発表.
http://agilemanifesto.org/iso/ja/manifesto.html
2012-12-07 IPAセミナーin高松
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
12
参考
アジャイル宣言の背後にある12の原則
SEC
Software Engineering
for Mo・No・Zu・Ku・Ri
私たちは以下の原則に従う。
①顧客満足を最優先し、価値のあるソフトウェアを早く継続的に提供する。
②要求の変更はたとえ開発の後期であっても歓迎する。
変化を味方につけることによって、顧客の競争力を引き上げる。
③動くソフトウェアを、2-3週間から2-3ヶ月というできるだけ短い時間間隔でリリースする。
④ビジネス側の人と開発者は、プロジェクトを通して日々一緒に働く。
⑤意欲に満ちた人々を集めてプロジェクトを構成する。
環境と支援を与え仕事が無事終わるまで彼らを信頼する。
⑥情報を伝える最も効率的で効果的な方法は、フェイス・トゥ・フェイスで話をすることである。
⑦動くソフトウェアこそが進捗の最も重要な尺度である。
⑧アジャイル・プロセスは持続可能な開発を促進する。
一定のペースを継続的に維持できるようにしなければならない。
⑨技術的卓越性と優れた設計に対する不断の注意が機敏さを高める。
⑩シンプルさ(ムダなく作れる量を最大限にすること)が本質である。
⑪最良のアーキテクチャ・要求・設計は、自己組織的なチームから生み出される。
⑫チームがもっと効率を高めることができるかを定期的に振り返り、それに基づいて自分たち
のやり方を最適に調整する。
2012-12-07 IPAセミナーin高松
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
13
SEC
Software Engineering
for Mo・No・Zu・Ku・Ri
アジャイル開発のプロセス・モデル
(H21年度調査結果に基づく)
2012-12-07 IPAセミナーin高松
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
14
SEC
調査事例から導かれた開発プロセス・モデル(1)
Software Engineering
for Mo・No・Zu・Ku・Ri
モデル1
システム運用
第n反復
第2リリース
第1反復
・・・
テスト
開発
要求
第1リリース
第1反復
・・・
テスト
開発
要求
第n反復
・・・
テスト
開発
要求
第1反復
・・・
テスト
開発
要求
・・・
テスト
開発
要求
テスト
開発
要求
企画
第n反復
第mリリース
• n=1のケースもあり。
考え方
シンプルな基本形
2012-12-07 IPAセミナーin高松
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
15
SEC
調査事例から導かれた開発プロセス・モデル(2)
モデル2
システム運用
テスト
開発
要求
第n反復
・・・
テスト
開発
要求
第1反復
・・・
テスト
開発
要求
要求・アーキテ
クチャ設計
・基盤開発
テスト
開発
要求
企画
Software Engineering
for Mo・No・Zu・Ku・Ri
・・・
第n反復
第1反復
第1リリース
第mリリース
• 比較的大規模システム/新規開発で全体のシステム構造が不明確なケースなど
考え方
拡張形.基盤・共通部といくつかの機能部とから構
成されるソフトウェア(右図)において,最初にまず,
基盤・共通部の開発を終えた後,機能部群につい
て,アジャイル開発を行う.基盤・共通部が確固とし
ていないと,追加・変更時の機能部への影響が大き
くなりすぎることを避ける.アジャイル開発では,基
盤・共通部の変更は,原則として行わない.
2012-12-07 IPAセミナーin高松
Copyright © 2009-2012 IPA, All Rights Reserved.
機
能
1
機
能
2
機
能
3
機
能 …
4
基盤・共通部
Software Engineering Center
16
調査事例から導かれた開発プロセス・モデル(3)
SEC
Software Engineering
for Mo・No・Zu・Ku・Ri
モデル3
システム運用
・・・・・・
第1反復
第1リリース
・・・
テスト
開発
要求
第n反復
リリース前
テスト
テスト
開発
要求
第1反復
・・・
テスト
開発
要求
テスト
開発
要求
企画
リリース前
テスト
第n反復
第mリリース
・ アジャイル開発では反復ごとにリリースできる品質までテストを行うことが原則だが、
各リリース工程前に行う重点的なテストを実施することがある。
・ リリースは複数回繰り返される
考え方
顧客やビジネスの特徴から,特に高い品質が求められたり,品質がクリ
ティカルであったりする場合に,リリース前に品質確保のための特別のア
クションを実施する.
2012-12-07 IPAセミナーin高松
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
17
SEC
Software Engineering
for Mo・No・Zu・Ku・Ri
開発手法の比較
2012-12-07 IPAセミナーin高松
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
18
アジャイル開発のモデル - プロセスの対応 <標準>
ソフトウェアライフサイクル
プロセス(SLCP)
開発
開発
テスト
Software Engineering
for Mo・No・Zu・Ku・Ri
<実際>
要求
要求
SEC
テスト
ウォーターフォール型
大きなプロセスを
順に実施し,
それを1回で終了
(部品)
アジャイル型
注) 図形のサイズは意
味を持たない(時間,
規模を表さない).
小さなプロセスを
行き来しつつ実施し,
それを何回も反復
注) 図形のサイズは意味を持つ.
2012-12-07 IPAセミナーin高松
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
19
アジャイル開発の利点:迅速なリリース・要求変化対応 SEC
Software Engineering
for Mo・No・Zu・Ku・Ri
可視性
イテレーション毎に
動作させて確認
顧客と
開発者の
距離
技術リスク
動作するものを
ベースに徐々に
機能を追加
リリース
優先機能から早期にリリース可能
アジャイル
イテレーション
ウォーターフォール
時間
変更容易性
確定できた要件が
あれば開発可能
<出典>
永和システムマネジメント:新しい契約形態での受託開発実践記,SECセミナー資料,2011-10-04.
2012-12-07 IPAセミナーin高松
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
20
ウォーターフォール型とアジャイル型との手法の違い
ウォーターフォール型
(開発が)
失敗しないための手法
文化が
異なる
SEC
Software Engineering
for Mo・No・Zu・Ku・Ri
アジャイル開発
(ビジネスが)
成功するための手法
「プロセス」重視
「人」重視
“計画”駆動型
(顧客)“価値”駆動型
作るものも使用する技術も明確
計画時には,ビジネス上,システム上の
課題が未解決,
開始後も変更の可能性大
例) ビルや橋の建設
最初から綿密な計画を立て
計画に従って着実に進める.
少し試して,その結果に基づいて
次のステップを進める.
ケースバイケースで使い分け
2012-12-07 IPAセミナーin高松
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
21
SEC
開発プロジェクトのパラメータ間の関係
Software Engineering
for Mo・No・Zu・Ku・Ri
参考
QCDの優先順位
スコープ(要求)の
サイズが品質に影響 Q:品質
S:スコープ
固定
固定 (R:要求)
固定
C:コスト
D:納期
計画
駆動
価値
価値
駆動
優先度の低い機能は
実装しても結局は使われない
→無駄な実装はしない
実装範囲
見積り→実際には変動
C:コスト
S:スコープ
(R:要求)
D:納期
機能N
:
機能M
:
Copyright © 2009-2012 IPA, All Rights Reserved.
機能
2012-12-07 IPAセミナーin高松
機能
品質を維持
しようとすると
コストと納期に影響
Q:品質
機能
優先順に従って変動
1 2 3
要求(優先順)
Software Engineering Center
22
参考
システム機能の利用度(要求の劣化)
SEC
Software Engineering
for Mo・No・Zu・Ku・Ri
システムの機能の利用度
いつも使う
7%
よく使う
13%
たまに使う
16%
全く使われない
45%
ほとんど使われな
い
19%
<出典> Standish group study report in 2000 chaos report
(平鍋健児氏のプレゼン資料掲載)
2012-12-07 IPAセミナーin高松
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
23
参考
SEC
システム開発におけるQCDの優先順位
Software Engineering
for Mo・No・Zu・Ku・Ri
システム企画工程におけるQCDの優先順位
 品質 : 29%
 コスト: 24%
 納期 : 47%
調査で収集した801プロジェクトのうち,
「QCDのうちのどれかを優先した」という
回答(313プロジェクト)の内訳
<出典> ソフトウェアメトリックス調査2012,一般社団法人 日本情報システム・ユーザー協会(JUAS).
そうした事業環境の中,いわゆる「QCD」のうち,特に納期を
重視してものづくりを進めている.品質の確保は当たり前.開
発・製造期間を短縮して製品の投入スピードをいかに速くでき
るかが,世界を相手に競争優位を築くカギになる.
<出典> CIOの哲学:三菱重工業 児玉敏雄氏,日経コンピュータ,2012.10.25.
2012-12-07 IPAセミナーin高松
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
24
SEC
Software Engineering
for Mo・No・Zu・Ku・Ri
3. アジャイル型開発の活用に向けた課題
2012-12-07 IPAセミナーin高松
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
25
SEC
アジャイル型開発に関わる重点課題
Software Engineering
for Mo・No・Zu・Ku・Ri
日本のソフトウェア競争力を高める
生き生きと働ける環境を作る
領域
目指すべき 日本におけるソフトウェア開発の在り方 見定め
ゴール
(日本にふさわしい)契約のあり方
契約
事例収集(1)に
より抽出された
重点課題
2012-12-07 IPAセミナーin高松
人材
ユーザ・ベンダ経営層の意識
管理手法や技術面の整備
ツールによる支援
人材の育成と適正配置
普及
適用領域と適用事例の調査
欧米の競争力(普及要因)の調査
価値評価
環境整備
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
26
SEC
Software Engineering
for Mo・No・Zu・Ku・Ri
ユーザ経営層の意識
2012-12-07 IPAセミナーin高松
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
27
参考
SEC
アジャイル型開発手法の導入理由 (海外)
40%
39% 37%
35%
29%
30%
26%
25%
1.Time-to-Marketの加速
2.変化する優先順位管理のため
23%
18%
20%
15%
16% 15%
14%
11%
10%
10% 9%
5%
5%
分散チーム管理
エンジニアリング
の導入/向上
保守性/拡張性
向上
チームの
やる気改善
コスト削減
開発プロセスの
簡易化
リスク削減
プロジェクトの
見える化
ソフトウェア品質
の向上
と
ITビジネスの
融合改善
生産性向上
変化する優先順位
管理のため
の
Time-to-Market
加速
0%
Software Engineering
for Mo・No・Zu・Ku・Ri
(VersionOne社 アジャイル開発の現状調査第6回2011より)
2012-12-07 IPAセミナーin高松
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
28
顧客・経営層は開発への一層の関与が必要
SEC
Software Engineering
for Mo・No・Zu・Ku・Ri
顧客(ユーザ)経営層
ビジネス環境が激しく変化する現状において,ITシステムに関し,従来
のように情報システム部門に任せきりでは適切に対応できない.開発
形態(*)にも深く関与する必要がある.
(*) アジャイル開発の採用,クラウドコンピューティングの利用,など
<経営層の責任>
・情報システムに関する理解の増進
・迅速かつ適切な意思決定
・関係部門との経営上の綿密な調整
ベンダ経営層
俊敏な開発の実績を武器に受注を狙う海外勢等に対抗するためには,
自ら俊敏な開発を実施できる体制作りに取り組むと共に,その結果を
顧客に売り込む必要がある.
2012-12-07 IPAセミナーin高松
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
29
顧客・経営層が開発上で考慮すべき点
SEC
Software Engineering
for Mo・No・Zu・Ku・Ri
 顧客・経営層は、アジャイル開発の採用を決断した時点で、顧客がチー
ムの一員として参画し、タイムリーな意思決定を行ったり、品質や進捗状
況の把握等に関し、主体的に開発に関わらざるを得ないということに十
分な理解と覚悟を持つ。
 「最初に全ての要件を決めないでもよく、途中で適宜明確にしていけば
よい」という安易な心構えで開始すると、途中で破たんすることが多い。
 アジャイル開発の特徴に応じた「見える化」項目を用いて開発プロジェク
トとの円滑なコミュニケーションを図り、アジャイル開発採用の本来の目
的が損なわれないように努める。
 ユーザ/ベンダ間の信頼感の醸成が、円滑に進めるために重要。
2012-12-07 IPAセミナーin高松
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
30
SEC
Software Engineering
for Mo・No・Zu・Ku・Ri
ベンダ経営層の意識
2012-12-07 IPAセミナーin高松
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
31
ベンダ経営層はアジャイル開発の体制作りが必要
SEC
Software Engineering
for Mo・No・Zu・Ku・Ri
顧客(ユーザ)経営層
ビジネス環境が激しく変化する現状において,ITシステムに関し,従来
のように情報システム部門に任せきりでは適切に対応できない.開発
形態(*)にも深く関与する必要がある.
(*) アジャイル開発の採用,クラウドコンピューティングの利用,など
<経営層の責任>
・情報システムに関する理解の増進
・迅速かつ適切な意思決定
・関係部門との経営上の綿密な調整
ベンダ経営層
俊敏な開発の実績を武器に受注を狙う海外勢等に対抗するためには,
自ら俊敏な開発を実施できる体制作りに取り組むと共に,その結果を
顧客に売り込む必要がある.
2012-12-07 IPAセミナーin高松
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
32
SEC
Software Engineering
for Mo・No・Zu・Ku・Ri
人材の育成と適正配置
2012-12-07 IPAセミナーin高松
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
33
SEC
アジャイル開発プロセスの流れ:スクラムの例
Software Engineering
for Mo・No・Zu・Ku・Ri
タスクボード
ToDo
Doing
Done
<出典> 株式会社豆蔵 堀江弘志:「初めての取組み事例に見るアジャイル導入の勘所」 ,
JASA主催/IPA共催セミナー,2011-11-18.http://sec.ipa.go.jp/events/2011/20111116.html
2012-12-07 IPAセミナーin高松
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
34
ユーザ側・ベンダ側に求められるスキル
SEC
Software Engineering
for Mo・No・Zu・Ku・Ri
アジャイル開発におけるユーザ側に求められること:
(全ての機能の仕様を洗い出す能力よりも)コアとなる機能を見定め
,優先度を図りながら開発プロジェクトの運営を指揮していく能力
明確な仕様を決めなくても良いとはいうものの,定期的なサイクル
で実物を見てフィードバックのポイントを増やすことにより,実際のシ
ステムを目で確認しながら,積み上げるように仕様を決定していく
アジャイル開発のベンダ開発者にとって重要なスキル:
① プロジェクトのアウトプットに関わる判断ではなく,アジャイル開発の
進め方を踏襲させるためのファシリテーションスキル
② 反復活動の中で,実際に動くものを作りながら,小規模に,かつト
ータルにプロジェクトのアウトプットを積み重ねていくスキル
③ 設計,コーディング,テストを一貫して実施出来るスキル
2012-12-07 IPAセミナーin高松
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
35
SEC
人材の育成の考え方
Software Engineering
for Mo・No・Zu・Ku・Ri
<アジャイル開発の実際>
一つのプロジェクトで全てのプラクティスを使う訳ではない
各プラクティスに厳格な規範はない
様々な方法論・数あるプラクティスから,プロジェクトや組織に
適したものを取捨選択し,カスタマイズすることが必要
(平時) 一通りのプラクティスを理解する
(プロジェクト参画時) 使用するプラクティスの習得
↓
全てを完全に身につけるより,価値に従って行動する
習慣を確実に身につけることが重要
2012-12-07 IPAセミナーin高松
Copyright © 2009-2012 IPA, All Rights Reserved.
価値
原則
手法
Software Engineering Center
36
参考
SEC
調査事例:活用されているプラクティス
反復型計画
チーム全体が一つに
頻繁なふりかえり
計画ゲーム
日次のスタンドアップミーティング
(朝会)
継続的インテグレーション
ペアプログラミング
バーンダウンチャート
リファクタリング
テスト駆動開発
コードの共同所有
かんばん
自動化された回帰テスト
ニコニコカレンダー
顧客プロキシ
タスクカード
ポストイット
タイムボックス
頻繁なリリース
コーディング規約
ストーリーカード
単体テストの自動化
スクラムのスプリント
スプリントバックログ
0
2012-12-07 IPAセミナーin高松
Software Engineering
for Mo・No・Zu・Ku・Ri
21
52.4%
11
47.6%
47.6%
10
10
42.9%
9
8
38.1%
8
38.1%
6
28.6%
23.8%
5
4
19%
4
19%
4
19%
3
14.3%
3
14.3%
3
14.3%
3
14.3%
3
14.3%
2
9.5%
2
9.5%
2
9.5%
2
2
9.5%
2
9.5%
件数
9.5%
2
100%
71.4%
15
※1事例は活用プラクティス不明
4
6
8
10
12
Copyright © 2009-2012 IPA, All Rights Reserved.
14
16
18
20
22
Software Engineering Center
37
人材の配置(プロジェクト対応)の考え方
SEC
Software Engineering
for Mo・No・Zu・Ku・Ri
自社用のシステム開発から,アジャイル開発OJT
初めの頃の実プロジェクトでは,コンサルタント(アジャイル・コ
ーチ等)の支援を得る
個人プラクティスは個人で,チーム・プラクティスを組織で
とはいっても,
アジャイル開発に向いている技術者と,
ウォーターフォール型開発に向いている技術者と,
人材の見極めと適切な配置が必要
「個人の生き残りの条件は、変わり続けること、学び続けること」
会社が変わらなければいけない時は,個人も変わる必要に迫られている
--- 竹内健(中央大学理工学部 教授),Tech-On 2012/08/27
2012-12-07 IPAセミナーin高松
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
38
参考
SEC
モチベーション…科学的実証の結果
Software Engineering
for Mo・No・Zu・Ku・Ri
報酬のインセンティブは,視野を狭め,心を集中させることから,単純な
仕事では効果があるが,そうでない創造的な仕事では逆効果.
成果を高めるのは,内的な動機付けに基づくアプローチ.
すなわち,重要だからやる,好きだからやる,面白いからやる,何か重要
なことの一部を担っているからやる,というもの. (ある程度
の)裁量
仕事において重要な要素は次の3つ:
• 自主性…自分の人生の方向は自分で決めたい
スキルアップ
になる
• 成長 …何か大切なことについて上達したい
• 目的 …私たち自身よりも大きな何かのためにやりたい 顧客の"価値"
を高める
<出典> Dan Pink on the surprising science of motivation
ダニエル・ピンク 「やる気に関する驚きの科学」
モチベーションと報酬の関係性を,科学的証拠に基づいて丁寧に説明.
http://www.ted.com/talks/lang/ja/dan_pink_on_motivation.html
2012-12-07 IPAセミナーin高松
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
39
SEC
Software Engineering
for Mo・No・Zu・Ku・Ri
4. アジャイル型開発の普及に向けた課題
時間の関係でスキップします.
2012-12-07 IPAセミナーin高松
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
40
SEC
Software Engineering
for Mo・No・Zu・Ku・Ri
海外における普及要因の調査
http://sec.ipa.go.jp/reports/20120611.html
2012-12-07 IPAセミナーin高松
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
41
SEC
海外におけるアジャイル開発の普及要因調査
Software Engineering
for Mo・No・Zu・Ku・Ri
欧米の競争力になっているアジャイル開発の普及要因を調査し,
日本における普及や定着を促進する施策のヒントとする.
各調査対象国における普及要因を明らかにするため,次の3項目を調査
調査範囲
普及要因
駆動要因
土壌
調査項目
① ソフトウェア開発
プロジェクトの比較
(例:プロジェクト種別,
ユーザの関与等)
調査対象国
米国
英国
中国
② IT人材の状況
駆動要因
ビジネス的背景,産業構造等
土壌
人材,社会的環境等
2012-12-07 IPAセミナーin高松
(例:IT技術者の就労状況や
人材の流動性等)
ブラジル
デンマーク
③ IT人材育成
(教育カリキュラム)の比較
Copyright © 2009-2012 IPA, All Rights Reserved.
日本
Software Engineering Center
42
海外普及要因調査
SEC
Scrum Master等の推移から見るアジャイル開発の普及状況
Software Engineering
for Mo・No・Zu・Ku・Ri
 アジャイル型開発方法論で最も有名なスクラムに関する資格者が、2005年以降急増
 米国の取得者が群を抜いて多く、ついで英国が多い。日本は極めて少ない(試験は英語)
Scrum Master等の人数の経年変化
2003
344
2004
907
2005
2,647
1
6
2
346
14
921
26
2,673
単位(人)
2006
6,841
83
38
6,962
2007
12,857
503
116
13,476
2008
22,514
1,891
264
24,669
各国の現在のScrum Master等人数 (2012年3月)
米国
CSM
CSPO
CSP
TOTAL
英国
67,000
8,000
1,100
76,100
中国
11,800
1,800
0
13,600
3,800
400
30
4,230
2012-12-07 IPAセミナーin高松
2010
34,601
5,325
534
40,460
単位(人)
デンマーク
ブラジル
日本
3,700
4,600
750
900
30
60
4,480
5,560
Scrum Master等人数の経年変化
2009
26,886
3,514
366
30,766
350
120
6
476
TOTAL
91,250
11,970
1,226
104,446
2011 TOTAL
43,028 150,630
8,629 19,945
501
1,862
52,158 172,437
略称説明
CSM
CSPO
CSP
TOTAL
2002
5
出典:
Scrum Allianceによる協力
CSM (Certified Scrum Master)
チーム全体の支援者
CSPO(Certified Scrum Product Owner)
製品の責任者
CSP(Certified Scrum Professional)
スクラムの実践者
各国の現在のScrum Master等人数 (2012年3月)
Copyright © 2009-2012 IPA, All Rights Reserved.
単位(人)
Software Engineering Center
43
海外普及要因調査
ソフトウェア開発プロジェクトの比較 【特徴的データ】
SEC
Software Engineering
for Mo・No・Zu・Ku・Ri
米国では、ソフトウェアに対する投資は「自社開発(内製)」「市販パッケージソフトの利用」が約2/3を
占めている(下図「米国民間部門における ソフトウェア投資」参照)
さらに、他国に比べて多くのIT技術者がユーザ企業に所属している(下図「IT技術者の所属先」参照)
米国のプロジェクトの形態の特徴は、37%が内製していること
米国民間部門における
ソフトウェア投資
IT技術者の所属先
3,500,000
単位(Billions of dollars)
ユーザ企業
3,000,000
単位(人)
ITサービス企業
2,362,300
2,500,000
96.3
73.4
554,069
2,000,000
365,416
1,500,000
88.2
出典:「Bureau of Economic Analysis
http://www.bea.gov/national/xls/soft-invest.xls」
2012-12-07 IPAセミナーin高松
0
1,446,809
104,732
771,426
124,170
450,000 19,961
49,669
128,000
0
49,024
100,000
150,000
941,410
500,000
254,721
0
N/A
Prepackaged : パッケージソフトを購入
Custom
: 外部発注作業
Own account : 自社開発ソフト
1,452,000
1,000,000
N/A
Prepackaged
Custom
Own account
出典: 「グローバル化を支えるIT人材確保・育成施策に関する調査」概要
報告書 2011年 3月 (IPA)
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
44
海外普及要因調査
SEC
ソフトウェア開発プロジェクトの比較 【特徴的インタビュー】
Software Engineering
for Mo・No・Zu・Ku・Ri
 ブラジルの状況
 ブラジルではアジャイル型開発が普及している
 実践した結果、顧客のビジネスの成功率が高いことが普及要因
 北米からのアジャイル受託開発が伸びている
 理由は北米とブラジルは時差が少なく、
リアルタイムコミュニケーションが可能であること
ブラジルでは、アジャイルは圧倒的(massive)。私たちの80%の顧客がアジャイルを取り入れてお
り、そのうち半分がアジャイルを「メインの開発手法」としている。普及要因は、やってみて実際の
成功率。従来のウォーターフォールよりもビジネスが成功しやすい。それから、これは推測だが、ブ
ラジル人は強い管理が苦手。ソフトな管理手法の方がマッチしている。また、これは経済が急速に
発展していることとも関係すると思う。急速な成長には柔軟な手法が合う。また、ブラジルは北米
と時差がなく、このことは、北米からのソフトウェア開発のアウトソーシングを受ける受託開発では
大きな要因。アジャイルは顧客との高レベルなコミュニケーションが必要。質問があったときに顧客
に電話等で不明点を明らかにできることは、非常に重要。我々の会社は中国にも支社があるが、
中国では米国から受託できない。このように、顧客と開発チームはアジャイルでは、時差が少ない
ことが要求される。
(出典: Bruno Guicardi氏 インタビュー)
2012-12-07 IPAセミナーin高松
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
45
海外普及要因調査
SEC
IT人材の状況 【特徴的なデータ】
Software Engineering
for Mo・No・Zu・Ku・Ri
米国では恒常的にIT関連職の給与が高く、人気も高い
中国、ブラジルでは、 IT関連職の人材が不足しているため、IT関連職の給与が高く、人気が高い
 米国、中国、ブラジルでは、IT関連職が人気であるため、優秀な人材が集まる
 米国ではIT関連職が人気の職業
システムズ・エンジニア
 2009年:
看護師
Systems Engineer が1位
 2010年:
Software Architectが1位
ランク
給与中央値
医師助手
大学教授
ITプロジェクト
マネージャー
ソフトウェア開発者
最高給与
システムズ・エンニアとは、日本のSEのニュアンスとは
異なる。ソフトウェアを含むシステム全体の構造を検
討・定義する役割を持つ職種をさす(出典:CNN
Money をもとに編集)
弁護士
ソフトウェア
プロダクト
マネージャー
<出典>
Focus, Best Jobs in America: http://kelsocartography.com/blog/?p=3585
CNN Money: http://money.cnn.com/magazines/moneymag/bestjobs/2010/index.html
2012-12-07 IPAセミナーin高松
Copyright
© IPA,
2009-2012
IPA,Reserved.
All Rights Reserved.
Copyright
© 2012
All Rights
Software Engineering Center
46
SEC
Software Engineering
for Mo・No・Zu・Ku・Ri
日本におけるアジャイル型開発にふさわしい
契約モデルの提案
http://sec.ipa.go.jp/reports/20120326.html
2012-12-07 IPAセミナーin高松
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
47
参考
SEC
調査事例:契約形態の集計(H21年度)
Software Engineering
for Mo・No・Zu・Ku・Ri
契約の種類
件数
比率
請負契約
6
33.3%
請負契約(月毎)
1
5.6%
請負契約+準委任契約
1
5.6%
準委任契約
7
38.9%
労働者派遣契約
1
5.6%
不明
2
11.1%
合計
18
(社内開発:契約無し)
(4)
100
%
ー
⇒海外では、直接雇用やTime&Materialの準委任型契約が中心だが、
日本では、アジャイル型開発とはなじみにくい請負契約の割合も高い。
2012-12-07 IPAセミナーin高松
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
48
WF型開発と比較したアジャイル開発の特徴
SEC
Software Engineering
for Mo・No・Zu・Ku・Ri
 ユーザとベンダの緊密な協力体制が必須
- 相手方の問合せへの迅速な応答
- 担当作業の迅速な実施
- ユーザ/ベンダ間の責任分担が不明確になりがち
 ユーザ要求の詳細が契約時点では未確定
- 何を作るか決まっていない(成果物未定)
- 性能・品質等が不明確
- 工数見積りが困難(コスト未定)
 開発途中でのユーザ要求の変化を柔軟に受け入れる必要
- 決定した事項も変更されることがある
契約
2012-12-07 IPAセミナーin高松
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
49
SEC
アジャイル開発と契約の対立
Software Engineering
for Mo・No・Zu・Ku・Ri
契約
合意内容を固定して、当事者を法的に拘束する
アジャイル開発
変化に対応すべく、合意内容の変更を柔軟に認め、
当事者をなるべく拘束しない
⇒アジャイル開発にはふさわしい契約とは?
契約
2012-12-07 IPAセミナーin高松
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
50
システム開発において主に使われる契約類型
SEC
Software Engineering
for Mo・No・Zu・Ku・Ri
請負契約(民法632条~642条)
一方が仕事を完成させることを請負い、その相手方が完成した
仕事に対して報酬を支払うことを約束する契約。
⇒契約時点で、ベンダが完成すべき仕事の内容を明確にしてお
く必要。
準委任契約(民法643条~656条)
事務処理を目的とする契約であり、仕事の完成を目的としない。
ベンダは、善良な管理者の注意をもって、委任された事務を処理
する義務(善良管理者注意義務)を負う。
⇒ベンダに完成義務がなく、ユーザにとって不安。
契約
2012-12-07 IPAセミナーin高松
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
51
SEC
アジャイル開発には、どんな契約がふさわしいのか?
Software Engineering
for Mo・No・Zu・Ku・Ri
 開発内容が決まっていない段階で、開発プロジェクト全体に
つき、一つの請負契約を結ぶのは適切ではない(何をいくら
で完成させるか不明)。
 他方、開発プロジェクト全体を準委任契約にすることは、ベ
ンダが完成義務を負わない点で、ユーザ側に不安がある(た
とえ成果物が完成しなくても、ユーザは対価を支払う必要) 。
 また、アジャイル開発の特徴であるユーザとベンダの協働関
係を、契約に取り入れる必要がある。
注) ユーザ側での労働者派遣契約に基づく開発チーム構成
には,契約上の問題は特にない.
(内製傾向の高まりに伴い増加?)
契約
2012-12-07 IPAセミナーin高松
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
52
契約問題PTで検討された契約モデル案
SEC
Software Engineering
for Mo・No・Zu・Ku・Ri
 基本/個別契約モデル:
プロジェクト全体に共通する事項につき、基本契約を締結し、
小さな機能単位ごとに、開発対象と費用がある程度確定し
たタイミングで個別契約(請負/準委任)を順次締結する。
 組合モデル:
ユーザとベンダが共同でジョイント・ベンチャーとしての組合を
組成し、協力してシステム開発(収益性のあるもの)を企画・
実施する(開発された成果から得られた収益は、ベンダと
ユーザに分配される)。
契約
2012-12-07 IPAセミナーin高松
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
53
SEC
基本/個別契約モデルの概要
Software Engineering
for Mo・No・Zu・Ku・Ri
システム運用
第1リリース
第n反復
第1反復
第2リリース
・・・
テスト
開発
要求
第1反復
テスト
開発
要求
第n反復
・・・
テスト
開発
要求
テスト
開発
要求
第1反復
・・・
テスト
開発
要求
テスト
開発
要求
企画
第n反復
第mリリース
• n=1のケースもあり。
基本契約
基本契約
個別契約
個別契約
個別契約
個別契約
個別契約
個別契約
-例契約
2012-12-07 IPAセミナーin高松
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
54
SEC
Software Engineering
for Mo・No・Zu・Ku・Ri
5. アジャイル型開発の適用領域
[注]
•適用領域も変化する
•領域のコンテキストに応じ,適切な開発手法を
2012-12-07 IPAセミナーin高松
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
55
アジャイル開発の適用領域・試行領域
SEC
Software Engineering
for Mo・No・Zu・Ku・Ri
アジャイル開発は、
•「顧客の参画の度合いが強い」
•「動くソフトウェアを成長させながら作る」
•「反復・漸進型である」
•「人と人のコミュニケーション、コラボレーションを重視する」
•「開発前の、要求の固定を前提としない」
という特徴を持つ。
全てのソフトウェア開発に、これらの特徴を有するアジャイル開発
手法を適用できる、あるいはすべきだ、という立場ではない。
ビジネスや市場、その他の開発の“コンテキスト”によって、ウォー
ターフォール型の開発が適している場面もあれば、アジャイル型の
開発が適している場面もある。
2012-12-07 IPAセミナーin高松
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
56
SEC
アジャイル開発の適用領域
Software Engineering
for Mo・No・Zu・Ku・Ri
アジャイル開発が得意とし、現在、その適用により効果を挙げて
いる領域:
①ビジネス要求が変化する領域
・要求の変化が激しく,あらかじめ要求が固定できない領域。
②リスクの高い領域
・不確実な市場を対象としたビジネス領域(市場リスク)
・技術的な難易度が高い開発領域(技術リスク)
③市場競争領域
・他社に先駆けた製品・サービス市場投入が命題であり,TTM(Time to
Market)の短縮が優先となる領域(Webのサービス,パッケージ開発,
新製品開発).
2012-12-07 IPAセミナーin高松
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
57
SEC
アジャイル開発の試行領域
Software Engineering
for Mo・No・Zu・Ku・Ri
アジャイル開発による経験が十分には蓄積されておらず、現在、
チャレンジと創意工夫が求められている領域:
①大規模開発
・開発者10人程度を超えると、システム分割、チーム分割が必要。その分
割方法、及び、分割されたチーム間のコミュニケーションが課題。
②分散拠点(オフショア含む)開発
・開発拠点が分散し、さらに時差によって分断される場合のコミュニケーショ
ン手法、また、それをサポートするツールが必要。
③組織(会社)間をまたぐ開発チームによる開発
・共通のビジネスゴールを持ったチームを組むことが難しい。
④組込みシステム開発
・リリース後のソフトウェア修正が極めて困難であり、採用には工夫要。
2012-12-07 IPAセミナーin高松
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
58
参考
SEC
H21年度調査事例一覧(1/2)
No.
1
2
3
4
5
6
7
8
9
10
11
Software Engineering
for Mo・No・Zu・Ku・Ri
事例概要
小売業における業務システム開発事例
ソーシャルネットワーキングサービス(SNS)システム開発事例
サプライチェーンマネジメントシステム開発事例
研修運営システム開発事例
開発案件管理Webアプリケーション開発事例
製造業向けプロトタイプシステム開発事例
携帯ソーシャルゲーム開発事例
携帯端末向けブログシステム開発事例
パッケージソフトウェア開発事例
共通認証システム開発事例
プロジェクト管理システム開発事例
2012-12-07 IPAセミナーin高松
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
59
参考
SEC
H21年度調査事例一覧(2/2)
No.
12
13
14
15
16
17
18
19
20
21
22
Software Engineering
for Mo・No・Zu・Ku・Ri
事例概要
アプリケーションプラットフォーム開発事例
教務Webシステム開発事例
教育機関向け統合業務パッケージ開発事例
検索エンジン開発事例
システム管理ミドルウェア開発事例
株式取引のためのWebアプリケーション開発事例
プラント監視制御用計算機システム開発事例
生産管理システム開発事例
Webメディア開発事例
アジャイル型開発の支援環境開発事例
業界共通電子データ交換基盤構築事例
2012-12-07 IPAセミナーin高松
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
60
参考
SEC
事例:アジャイル型開発プロジェクトの規模
Software Engineering
for Mo・No・Zu・Ku・Ri
チームの人数 (人)
12
10
8
6
4
2
2
4
6
8
10 12 14 16 18 20 22 24
開発期間 (月)
⇒チームの人数は8割が10人以下
⇒開発期間は2~4ヶ月が45%、1年超が35%
2012-12-07 IPAセミナーin高松
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
61
SEC
Software Engineering
for Mo・No・Zu・Ku・Ri
中・大規模開発事例の調査
http://sec.ipa.go.jp/reports/20120328.html
2012-12-07 IPAセミナーin高松
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
62
SEC
中・大規模開発事例の調査:事例一覧
No.
規 部分
模 適用
採用手法
Software Engineering
for Mo・No・Zu・Ku・Ri
対象システム種別
契約
1 大
独自
B2Cサービス (SNS)
無(自社内)
2 大
Scrum
B2Cサービス (ソーシャルゲーム)
無(自社内)
ゲームソフト
受託(未公開)
3 大 ○ Scrum
4 大 ○ Scrum+独自 基幹システム
受託(準委任)
5 中
Scrum
B2Cサービス (会員サービス)
無(自社内)
6 中
Scrum+XP
B2Cサービス (医療・健康)
無(自社内)+オフショア*
7 中
Scrum+XP
B2Cサービス (エンタテインメント) 無(自社内)+オフショア*
8 中
XP
B2Cサービス (会員サービス)
受託(請負)
B2Cサービス (ECサイト)
受託(請負)
B2Cサービス (会員サービス)
受託(準委任)
9 中 ○ XP
10 中 ○ XP
中規模:30~100名,大規模:100名以上
独自:特に手法を決めず自ら定義,Scrum+XP:両手法を組み合わせて実践
2012-12-07 IPAセミナーin高松
Copyright © 2009-2012 IPA, All Rights Reserved.
*:準委任
Software Engineering Center
63
SEC
適用にあたっての主な工夫(1/3) (一覧)
Software Engineering
for Mo・No・Zu・Ku・Ri
小規模開発と同様だが
特に注意して実施する工夫
中・大規模開発特有の工夫
組織体制
 チーム間ローテーション
品質
 第三者テスト
コミュニケーション
 完全透明性
コミュニケーション
段階的朝会
チーム跨ぎのふりかえり
部分適用
必要な部分のみ適用
疎結合なチーム
工程の見える化
展開
パイロット導入
認定研修・コンサルタントの利用
展開
漸進的な人数増加
漸進的な展開
社内勉強会
分散拠点開発
同一拠点から分散へ
TV会議
アーキテクチャ
 組織の共通基盤アーキテク
チャの利用
 アーキテクチャについての教育
小規模開発とは逆の
アプローチをとる工夫
アーキテクチャ
 最初のアーキテクチャ構築
 アーキテクチャ専門チーム
 運用保守チーム
品質
 テスト・フェーズ
システム分割/インテグレーション
 同じリズム
2012-12-07 IPAセミナーin高松
Copyright © 2009-2012 IPA, All Rights Reserved.
分散拠点開発
 チケットシステム
 リアルタイムチャット
アーキテクチャ
アーキテクチャの改善
システム分割/インテグレーション
疎結合で分割
早期からのインテグレーション
継続的インテグレーション
品質
重視するビジネス価値
ビジネス価値の変化
タイムボックス優先の品質
自動単体テスト
Software Engineering Center
64
適用にあたっての主な工夫(2/3)
SEC
Software Engineering
for Mo・No・Zu・Ku・Ri
工夫例(1/2)
チーム間ローテーション
チーム間の知識伝播促進のため,メンバのローテーションを行う.一時的に
速度は落ちるが,各チームの知識を効率よく伝播でき多能工化が高まる.
段階的朝会
複数チーム間は朝会を段階的に実施.チーム→全体(→チーム).
漸進的な展開
一度にすべてのチームに広げるのではなく,まずは導入障壁の低いところ,
最も必要なところから順次導入し,少しずつ展開.ふりかえりで,次はどこ
に広げていけばいいかを考える.
コミュニケーション・ツールの活用
TV会議システム,雑記帳システム(SNS,Blog等)
2012-12-07 IPAセミナーin高松
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
65
SEC
適用にあたっての主な工夫(3/3)
Software Engineering
for Mo・No・Zu・Ku・Ri
工夫例(2/2)
アーキテクチャの重視
プロジェクト前半にアーキテクチャを構築する事例が多く,アーキテクチャ専
門チームを編成して構築.
構築されたアーキテクチャを組織の共通基盤とし,再利用できるようにして
いる事例あり.
疎結合な機能分割
疎結合な機能でサブシステム分割を行う.
7割のチームがCI(継続的インテグレーション)を実施.
テスト専用フェーズ
プロジェクト後半で専用のテストフェーズを実施.プログラム開発の反復を
停止する事例と,テストのみの反復期間を設ける事例あり.
2012-12-07 IPAセミナーin高松
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
66
浮かび上がった問題点
SEC
Software Engineering
for Mo・No・Zu・Ku・Ri
主な問題点
全体計画の把握困難
要求の変化や開発状況に応じて着手する順番や範囲を決めるため,
プロジェクト開始時にプロジェクト全体の把握が困難な事例あり.
ビジネス企画側にボトルネック発生
スクラム導入の結果,ビジネス企画者の決定待ち等のボトルネック
が発生した事例が多い.中には開発者の信頼をなくした事例もあり.
反復リズムとの不適合状態の発生
セキュリティ監査や外部テスト業者,発注者の外部組織や関連組織
との関係において,反復リズムと適合せずに問題が発生している事
例あり.
2012-12-07 IPAセミナーin高松
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
67
SEC
Software Engineering
for Mo・No・Zu・Ku・Ri
6. 適切な開発手法の選択
2012-12-07 IPAセミナーin高松
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
68
適切なシステム/ソフトウェア開発手法の選択
計画性・確実性・安定性
SEC
Software Engineering
for Mo・No・Zu・Ku・Ri
変化への適応性・迅速性
ウォーターフォール型
アジャイル型
(非ウォーターフォール型)
開発組織の
環境条件
開発対象の性質
・ビジネス上の段階
・システムの深刻度
・要件の固まり具合、変化の度合い
・開発対象の成熟度
- 新規開発、改造、再構築、保守
・アーキテクチャの成熟度
・規模の大小
2012-12-07 IPAセミナーin高松
・手法に対する組織の経験、成熟度
・手法に対するメンバの慣れ、成熟度
・組織の制度、統制
・組織の地理的分散
・組織の風土
- 新しい試みに対する挑戦の空気
- 経営/マネジメント層の理解と支援
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
69
SEC
開発(構築)手法の選択
Software Engineering
for Mo・No・Zu・Ku・Ri
環境の変化に対する俊敏な開発(構築)が求められる場合
俊敏な開発(構築)手法
少しずつ作って,確かめながら
a. 非ウォーターフォール型開発(アジャイル開発)
作らないで,使う
b. クラウドコンピューティング
パラメータを変更するだけ
c. 自動コード生成/ビジネスルールマネジメントシステム(BRMS)
1つのシステム全体を単一の手法で開発(構築)する
異なる手法で開発した
ことが適切ではない(かもしれない)
部品の組合せ?
2012-12-07 IPAセミナーin高松
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
70
SEC
対象の性質に応じたマネジメントの考え方
Software Engineering
for Mo・No・Zu・Ku・Ri
ビルや橋の建設
作るものも使用する技術も明確
(
要件の)
合意
カオス状態
ネット上でのコンテンツ検索・販売
サイトの開発
計画時には,ビジネス上,システム上の課
題が未解決,開始後も変更の可能性大
・ コンテンツの品揃え,値付け
・ 割引き,特典等の顧客サービス
・ 検索機能・ユーザインタフェース
・ 顧客管理データの内容,等々
(経験等に基づく)判断の確からしさ
最初から綿密な計画を立てるより,
少し試して,その結果に基づいて
次のステップを進める.
<出典>
日本マイクロソフト株式会社,TFSUG監訳:「アジャイル・ソフトウェアエンジニアリング」 日経BP社,2012年.
The Stacey Matrix: http://www.gp-training.net/training/communication_skills/consultation/equipoise/complexity/stacey.htm
2012-12-07 IPAセミナーin高松
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
71
SEC
開発対象の性質:境界線の変化傾向
計画性・確実性・安定性
Software Engineering
for Mo・No・Zu・Ku・Ri
変化への適応性・迅速性
ウォーターフォール型
アジャイル型
(非ウォーターフォール型)
変化
今後の境界線
開発対象の性質
2012-12-07 IPAセミナーin高松
従来の境界線
ハイブリッド型
の採用も増加
傾向
・ビジネス上の段階
・システムの深刻度
・要件の固まり具合、変化の度合い
・開発対象の成熟度
- 新規開発、改造、再構築、保守
・アーキテクチャの成熟度
・規模の大小
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
72
参考
楽天における工夫例
SEC
Software Engineering
for Mo・No・Zu・Ku・Ri
日本で仕事をし始めて最も驚いたのは,全ての部分を完全なものにして
からリリースすることです.極めて細かいテストケースを多数作って,完璧に
実施していきます.それにより得られる品質の高さは,日本の開発において
最も素晴らしい点の一つです.米国では,ある程度のところまでいったらリ
リースして,不具合が生じたら修正していきます.一時的にうまくいかない
場面が生じますが,全体として開発が早く進みます.
日本と米国のいいとこ取りをして,高品質はそのままに開発速度を高める
ことを目指しました.そのために,品質保証(QA)部門が手作業で行ってい
たQAテストの自動化に取り組みました.
<出典>
特集1:ここがヘンだよ 日本のシステム開発 - 日本と米国のいいとこ取り,
日経SYSTEMS,2012年8月号,no.232,7月26日発行.
2012-12-07 IPAセミナーin高松
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
73
参考
アジャイル開発への転換
Agile transformation
SEC
Software Engineering
for Mo・No・Zu・Ku・Ri
http://www.ibm.com/smarterplanet/us/en/business_analytics/article/agiledevelopment.html
For many organizations, teams and individuals, the transformation to an agile
development process is challenging. That’s because it requires a cultural change.
多くの組織,チーム,
個人にとって,アジャ
イル開発プロセスへ
の転換は“挑戦的”
である.それは,ある
種の文化的変革を
必要とするからだ.
「アジャイルは,プロセスではなく文化である.」
Michael Sahota: “An Agile Adoption and Transformation Survival Guide: Working with Organizational Culture,” 2012.
2012-12-07 IPAセミナーin高松
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
74
SEC
Software Engineering
for Mo・No・Zu・Ku・Ri
7. アジャイル開発の今後
(まとめに代えて)
2012-12-07 IPAセミナーin高松
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
75
現在
ソフトウェア開発における特徴的な方向性の動向
SEC
Software Engineering
for Mo・No・Zu・Ku・Ri
・比較的長期間,そのまま運用
・障害発生時の社会的影響大
・一般利用者の厳しい反応
高信頼
重要インフラ等ITシステム
共通基盤系
ビジネス戦略ITシステム
短納期
(変化俊敏対応)
(高速開発)
業務支援ITシステム
サービス系
・先を見通しにくい
・激しい環境変化
・競争優位の確保
それぞれに対応した
適切なアーキテクチャと,構築・運用体制及び手法
2012-12-07 IPAセミナーin高松
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
76
現在
ユーザ企業におけるITの位置づけの変化[の必要性]
Software Engineering
for Mo・No・Zu・Ku・Ri
(コスト・時間をかけて)
信頼性重視で構築
情報システム部門任せ
市場の監視
SEC
IT投資判断
IT予算執行
業務部門主導
ユーザ企業は,
このように変化しないと,
競争優位を維持しつつ
持続することはできない.
俊敏な開発(構築)手法
a. 非ウォーターフォール型開発(アジャイル開発)
b. クラウドコンピューティング
c. 自動コード生成/ビジネスルールマネジメントシステム(BRMS)
2012-12-07 IPAセミナーin高松
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
77
現在
最近の傾向:注目度がより高まってきている背景
SEC
Software Engineering
for Mo・No・Zu・Ku・Ri
1. ビジネスの俊敏さへの対応要求の増大
2. グローバル化の拡大
3. ウォーターフォール型開発に適合しにくいケースの増大
会社に足りないとされるのが経営のスピード感。「まずは七分でよし。利用
者のお叱りを受けながら100%に磨き上げていく」(加藤薫・NTTドコモ社長)
2012.7.21 朝日新聞朝刊
従来:100%にしてから世に出す
現在:エンドユーザとの共同作業により,よいものにしていく(β版文化)
2012.7.23 総務省・谷脇康彦氏講演
2012-12-07 IPAセミナーin高松
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
78
SEC
俊敏な開発がビジネスに影響を与える事例
Software Engineering
for Mo・No・Zu・Ku・Ri
携帯電話の「学割サービス」(2010年春)における各社の状況
ポイント
・業務を現場に展開するスピード(スピード開発)
・プロジェクトの粒度に対する考え方
⇒柔軟性
• システム・アーキテクチャ
• 開発体制
2010年1月
21
A社
22
23
24
25
26
27
2010年2月
28
29
30
31
1
2
3
4
サービス発表
B社
C社
5
6
7
8
9
サービス開始
対抗サービス発表
サービス開始
対抗サービス発表 サービス開始
<出典>
古川昌幸:「Gen-Y」世代が主力ユーザーとなる時のIT,知的資産創造,2011年3月号,野村総研,pp. 32-45.
http://www.nri.co.jp/opinion/chitekishisan/2011/pdf/cs20110305.pdf
谷川史郎(野村総研):岐路に立つ情報システム部門,ソフトウェア開発環境展特別講演SD-S,2012年5月11日.
2012-12-07 IPAセミナーin高松
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
79
環境変化に即応できるための経営の「柔軟性」
予測性:可変要素が将来変化をする予兆を事前にとらえること
拡張性:既存のリソース(人,モノ,カネ,情報等)に将来の可変要素を想
定した余裕を持たせておくこと
迅速性:起きた変化/起こすべき変化に対して,すぐに対応できること
適用性:これまでと違った環境、シチュエーションに,うまく対応できること
2012-12-07 IPAセミナーin高松
SEC
Software Engineering
for Mo・No・Zu・Ku・Ri
<出典>
平成22年度経済産業省委託調査:「IT 経営普及
促進に向けた調査研究」報告書,社団法人日本情
報システム・ユーザー協会,平成23年2月,p.76.
http://www.meti.go.jp/meti_lib/report/2011fy/
0022948.pdf
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
80
SEC
システム開発ベンダにも求められる「柔軟性」
人材のクラウド
企画
要求
設計
Software Engineering
for Mo・No・Zu・Ku・Ri
製造
試験
運用
親会社
多様性
子会社
孫会社
孫会社
協力会社
連携会社
子会社
孫会社
協力会社
(子会社)
ウォーターフォール型
アジャイル型
(非ウォーターフォール型)
2012-12-07 IPAセミナーin高松
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
81
参考
SEC
Software Engineering
for Mo・No・Zu・Ku・Ri
企業
内 容
NTTデータ
若手リーダー対象の研修開始.3年間で計1,000人の人材を育成する計画.
NEC
大規模案件に適用できる技術者を2012年度に約30人育成する計画.
「品質会計」と組み合わせたアジャイル開発ガイドを作成.
日立製作所 大規模案件に適用するための枠組みや実際の手順等をまとめたガイドライ
ンを策定.
富士通
開発現場で蓄積したノウハウを適用するための開発標準を策定.
日本IBM
12年度から顧客に向けアジャイル開発手法に基づくシステム開発の提案を
強化.同手法を取り込んだ自社の開発標準を活用.
人材育成 開発標準
大手IT企業のアジャイル開発に関する取組み
ねらい
主に大手顧客を対象に,「新規ビジネスを支えるシステムを早期に立ち
上げたい」といったニーズに対応
アジャイル手法をウォーターフォール型開発手法と併用することにより,
「仕様変更でプロジェクトが遅延しやすい」といった弱点をカバー
出典:大手IT企業が「アジャイル開発」を強化,日経コンピュータ,2012年5月24日号.
2012-12-07 IPAセミナーin高松
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
82
ご質問・意見の宛先
SEC
Software Engineering
for Mo・No・Zu・Ku・Ri
●ご質問、ご意見は、SECホームページからお願い致します。
2012-12-07 IPAセミナーin高松
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
83
SEC
Software Engineering
for Mo・No・Zu・Ku・Ri
ご清聴,ありがとう
ございました
IPA/SECホームページ:
http://sec.ipa.go.jp/index.html
2012-12-07 IPAセミナーin高松
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
84
SEC
Software Engineering
for Mo・No・Zu・Ku・Ri
参考. 各種調査データ等(追加分)
2012-12-07 IPAセミナーin高松
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
85
SEC
ITシステムへの依存と,システム環境の変化
安全 ←
高信頼化
↙
変化の俊敏な反映
←
安心
<依存>の拡大傾向
時間的:常時化
量的:広範囲化
質的:クリティカル域
環境
国民生活
変化
社会経済活動
依存
Software Engineering
for Mo・No・Zu・Ku・Ri
•
•
•
•
•
•
(要求の変化)
ITサービス
ITシステム 反映
情報技術
価値観
ライフスタイル
法制度
社会情勢
ビジネストレンド
…
変化
•
•
•
•
<変化>の拡大傾向
時間的:頻繁に
量的:広範囲な影響
質的:複雑化
技術動向
新技術
コスト
…
⇒このような傾向を考慮した,ITシステムの開発・運用
2012-12-07 IPAセミナーin高松
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
86
参考
リスクを軽減するアジャイル手法(1/2)
SEC
Software Engineering
for Mo・No・Zu・Ku・Ri
出典:
CHAOS MANIFESTO 2011
プロジェクトの結果(成功/失敗)に関する調査例
当初QCD目標通り完了
プロジェクト途中でキャンセル
目標QCDの全ては満たせず
• Successful: delivered on time, on budget, with required features and functions
• Challenged : late, over budget, and/or with less than the required features and
functions
• Failed: cancelled prior to completion or delivered and never used
2012-12-07 IPAセミナーin高松
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
87
参考
SEC
リスクを軽減するアジャイル手法(2/2)
Software Engineering
for Mo・No・Zu・Ku・Ri
開発手法によるプロジェクト成功/失敗の比較
アジャイル手法をうまく使い,リスクを軽減している
2012-12-07 IPAセミナーin高松
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
88
参考
ハイブリッド型の適用が進む(1/2)
SEC
Software Engineering
for Mo・No・Zu・Ku・Ri
・スクラム系が多い
・カスタム・ハイブリッド
も伸びている
Source: VERSIONONE: State of Agile Survey 2011
2012-12-07 IPAセミナーin高松
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
89
参考
SEC
ハイブリッド型の適用が進む(2/2)
Software Engineering
for Mo・No・Zu・Ku・Ri
28 percent of 450 software professionals
said they use a hybrid approach.
Another 12 percent use lean software development,
which includes agile processes.
Source: 2011 Agile ALM and Testing Survey,
SearchSoftwareQuality.com
Of 4,770 respondents from 91 countries,
90 percent said they use some form of agile.
Only 27 percent of respondents solely use one type of agile,
while 35 percent mix agile with waterfall,
and 39 percent mix agile with Scrum.
Source: Analysis.Net and VersionOne
2012-12-07 IPAセミナーin高松
Source: PM NETWORK,
January 2012, Vol. 26, No. 1
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
90
参考
対象に応じてアジャイル手法を(部分)適用
SEC
Software Engineering
for Mo・No・Zu・Ku・Ri
プロジェクト管理に
アジャイルのプラクティスを使う程度
The use of agile as an approach to
managing projects has been increasing
dramatically over the last several years.
Gartner predicts that by the end of 2012,
agile development methods will be used
on 80% of all software development
projects.
選択的に
広範囲に
http://www.pmi.org/en/Certification/New-PMIAgile-Certification.aspx
無し
Source: PM NETWORK,
September 2011, Vol. 25, No. 9
2012-12-07 IPAセミナーin高松
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
91
参考
アジャイル型開発手法の導入拡大の障壁 (海外)
50%
45%
52%
40%
40%
39%
34%
35%
SEC
Software Engineering
for Mo・No・Zu・Ku・Ri
1.組織文化の変化能力
2.アジャイル経験者不足
3.変化への一般的な抵抗
30%
30%
27%
26%
25%
20%
14%
15%
14%
10%
5%
予算の制約
移行までに
許される時間
顧客の協力
規模拡大への
対応の自信
プロジェクトの
複雑さ 規
・模
マネジメントの
支援
変化への
一般的な抵抗
アジャイル
経験者不足
組織文化の
変化能力
0%
(VersionOne社 アジャイル開発の現状調査第6回2011より)
2012-12-07 IPAセミナーin高松
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
92
参考
SEC
アジャイル型開発プロジェクトの失敗理由 (海外)
Software Engineering
for Mo・No・Zu・Ku・Ri
25%
1.(分からない)
2.手法への不慣れ
3.組織変化への不理解
20%
13%
15%
11%
11%
9%
10%
8%
6%
6%
ビジネスと開発
の相互不信
文化的な移行の
欠如
7%
5%
初めてのために
プロジェクト未完
従来型開発採用
への外部圧力
企業哲学又は
文化との相性
組織変化に
対する不理解
2012-12-07 IPAセミナーin高松
手法への不慣れ
失:敗なし)
16%
分からない
(
0%
(VersionOne社 アジャイル開発の現状調査第6回2011より)
Copyright © 2009-2012 IPA, All Rights Reserved.
Software Engineering Center
93
Fly UP