40
Information-technology Promotion Agency, Japan Software Engineering Center Software Engineering Center Copyright © 2010 IPA, All Rights Reserved 「非ウォーターフォール型開発の現状と課題」 2010年6月17日 独立行政法人 情報処理推進機構(IPA) ソフトウェア・エンジニアリング・センター 研究員 伊久美 功一

「非ウォーターフォール型開発の現状と課題」SEC Software Engineering for Mo・No・Zu・Ku・Ri Copyright© 2010IPA,AllRightsReserved Software Engineering Center

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: 「非ウォーターフォール型開発の現状と課題」SEC Software Engineering for Mo・No・Zu・Ku・Ri Copyright© 2010IPA,AllRightsReserved Software Engineering Center

Information-technology Promotion Agency, Japan

SoftwareEngineeringCenter

Software Engineering CenterCopyright © 2010 IPA, All Rights Reserved

「非ウォーターフォール型開発の現状と課題」

2010年6月17日

独立行政法人 情報処理推進機構(IPA)

ソフトウェア・エンジニアリング・センター

研究員 伊久美 功一

Page 2: 「非ウォーターフォール型開発の現状と課題」SEC Software Engineering for Mo・No・Zu・Ku・Ri Copyright© 2010IPA,AllRightsReserved Software Engineering Center

SECSoftware Engineeringfor Mo・No・Zu・Ku・Ri

2Software Engineering CenterCopyright © 2010 IPA, All Rights Reserved

使われている開発モデル

反復型2.8%

その他1.2%

N=2230

ウォーターフォール96.0%

Page 3: 「非ウォーターフォール型開発の現状と課題」SEC Software Engineering for Mo・No・Zu・Ku・Ri Copyright© 2010IPA,AllRightsReserved Software Engineering Center

SECSoftware Engineeringfor Mo・No・Zu・Ku・Ri

3Software Engineering CenterCopyright © 2010 IPA, All Rights Reserved

プロジェクト全体の工数の実績値 (人月)

0

200

400

600

800

1,000

1,200

1,400

1,600

50

100

150

200

250

300

350~

400

450

500

550

600

650

700 700超

件数

実績工数 (人月)

N=2298(58.5%)

(15.0%)

Page 4: 「非ウォーターフォール型開発の現状と課題」SEC Software Engineering for Mo・No・Zu・Ku・Ri Copyright© 2010IPA,AllRightsReserved Software Engineering Center

SECSoftware Engineeringfor Mo・No・Zu・Ku・Ri

4Software Engineering CenterCopyright © 2010 IPA, All Rights Reserved

ウォーターフォール・モデル

要件定義

設計

コーディング

テスト

運用

・前工程を誤りなく完了させて、次の工程へ進む。・要件と計画を初めに決める。

Page 5: 「非ウォーターフォール型開発の現状と課題」SEC Software Engineering for Mo・No・Zu・Ku・Ri Copyright© 2010IPA,AllRightsReserved Software Engineering Center

SECSoftware Engineeringfor Mo・No・Zu・Ku・Ri

5Software Engineering CenterCopyright © 2010 IPA, All Rights Reserved

ウォーターフォール・モデルへの疑念

・要件の誤りが最後のテストまで解らない・工程の完了判断=次の工程へ進む判断 が難しい

要件定義

機能設計

モジュール設計

コーディング

総合テスト

機能テスト

結合テスト

単体テスト

チェック

チェック

チェック

Page 6: 「非ウォーターフォール型開発の現状と課題」SEC Software Engineering for Mo・No・Zu・Ku・Ri Copyright© 2010IPA,AllRightsReserved Software Engineering Center

SECSoftware Engineeringfor Mo・No・Zu・Ku・Ri

6Software Engineering CenterCopyright © 2010 IPA, All Rights Reserved

ウォーターフォール・モデルへの疑念

要件が事前に全ては決まらない

要件の誤りが最後のテストまで解らない

工程の完了判断=次の工程へ進む判断が難しい

時間が掛かり過ぎて変化への対応が遅れる

運用へのしわ寄せが大きい

Page 7: 「非ウォーターフォール型開発の現状と課題」SEC Software Engineering for Mo・No・Zu・Ku・Ri Copyright© 2010IPA,AllRightsReserved Software Engineering Center

SECSoftware Engineeringfor Mo・No・Zu・Ku・Ri

7Software Engineering CenterCopyright © 2010 IPA, All Rights Reserved

問題はどこで起こるか?

ソフトウェア

実 装企画/要件定義

運 用

要求仕様

企画・要件定義 実装 運用

問題の原因

エンドユーザ(業務)

Page 8: 「非ウォーターフォール型開発の現状と課題」SEC Software Engineering for Mo・No・Zu・Ku・Ri Copyright© 2010IPA,AllRightsReserved Software Engineering Center

SECSoftware Engineeringfor Mo・No・Zu・Ku・Ri

8Software Engineering CenterCopyright © 2010 IPA, All Rights Reserved

アジャイル型開発モデル

ソフトウェア

実 装企画/要件定義

運 用

要求仕様

エンドユーザ(業務)

要求

時間

分析設計実装テスト

要求

時間

(平鍋健児氏講演資料より)ウォーターフォール型 アジャイル型

Page 9: 「非ウォーターフォール型開発の現状と課題」SEC Software Engineering for Mo・No・Zu・Ku・Ri Copyright© 2010IPA,AllRightsReserved Software Engineering Center

SECSoftware Engineeringfor Mo・No・Zu・Ku・Ri

9Software Engineering CenterCopyright © 2010 IPA, All Rights Reserved

アジャイル型開発手法の例

・スクラム

・エクストリーム・プログラミング(XP)

・クリスタル クリア

・フィーチャー駆動開発(FDD)

・適応型開発プロセス

・変化への迅速な対応・反復(Iteration)と漸進(Incremental)

✓ 反復型計画✓ リリース計画✓ デイリースタンダップ✓ 継続インテグレーション✓ 共通の部屋✓ テスト駆動型開発✓ バーンダウンチャート✓ ペアプログラミング✓ ・・・✓ ・・・・・・・

アジャイル型手法 プラクティス

Page 10: 「非ウォーターフォール型開発の現状と課題」SEC Software Engineering for Mo・No・Zu・Ku・Ri Copyright© 2010IPA,AllRightsReserved Software Engineering Center

SECSoftware Engineeringfor Mo・No・Zu・Ku・Ri

10Software Engineering CenterCopyright © 2010 IPA, All Rights Reserved

非ウォーターフォール型開発に関する調査を実施

目的:アジャイル型開発を中心とする非ウォーターフォール型開発の適用状況を明らかにし、適用する上での課題を整理する

実施内容:17社、22事例を対象に開発対象の特性および開発方法、適用プラクティス、契約形態、等について事例調査を行った

調査期間:2009.11~2010.3

Page 11: 「非ウォーターフォール型開発の現状と課題」SEC Software Engineering for Mo・No・Zu・Ku・Ri Copyright© 2010IPA,AllRightsReserved Software Engineering Center

SECSoftware Engineeringfor Mo・No・Zu・Ku・Ri

11Software Engineering CenterCopyright © 2010 IPA, All Rights Reserved

事例調査一覧

事例 事例概要

1 小売業における業務システム開発事例 事例調査結果(1)

2 ソーシャルネットワーキングサービス(SNS)システム開発事例

3 サプライチェーンマネジメントシステム開発事例

4 研修運営システム開発事例

5 開発案件管理Webアプリケーション開発事例

6 製造業向けプロトタイプシステム開発事例

7 携帯ソーシャルゲーム開発事例 事例調査結果(2)8 携帯端末向けブログシステム開発事例

9 パッケージソフトウェア開発事例

10 共通認証システム開発事例

11 プロジェクト管理システム開発事例

12 アプリケーションプラットフォーム開発事例

13 教務Webシステム開発事例

14 教育機関向け統合業務パッケージ開発事例

15 検索エンジン開発事例

16 システム管理ミドルウェア開発事例

17 株式取引のためのWebアプリケーション開発事例 事例調査結果(3)18 プラント監視制御用計算機システム開発事例

19 生産管理システム開発事例

20 Webメディア開発事例

21 アジャイル型開発の支援環境開発事例

22 業界共通電子データ交換基盤構築事例 事例調査結果(4)

Page 12: 「非ウォーターフォール型開発の現状と課題」SEC Software Engineering for Mo・No・Zu・Ku・Ri Copyright© 2010IPA,AllRightsReserved Software Engineering Center

SECSoftware Engineeringfor Mo・No・Zu・Ku・Ri

12Software Engineering CenterCopyright © 2010 IPA, All Rights Reserved

事例調査結果(1)

小売業における業務システム開発事例小売業を営む顧客のマーチャンダイジングシステム開発を出発点に、これまでに260メニュー、80万ステップの開発

項目 内容

優先したIT戦略 開発当初の目的は、既存システムの完全リプレイス

ライフサイクルモデル ユーザヒアリング→ データ設計およびサンプルプログラム開発→ 構築(イテレーション期間)

チーム編成 ベテラン開発者1名+新人5名顧客側にも同数程度のプロジェクトメンバを配置

プロジェクト期間 6ヶ月

プロジェクト初期における要件の確定度合い

外部仕様レベルでの基本要件は固まっていた要求の確認は、ユーザとの会話と実際に動作するプログラムで行う

契約形態 請負契約ではなく、顧客の開発業務を支援する形態

Page 13: 「非ウォーターフォール型開発の現状と課題」SEC Software Engineering for Mo・No・Zu・Ku・Ri Copyright© 2010IPA,AllRightsReserved Software Engineering Center

SECSoftware Engineeringfor Mo・No・Zu・Ku・Ri

13Software Engineering CenterCopyright © 2010 IPA, All Rights Reserved

軸 実績値 度数

チームにおける「平均レベル以下の、経験は少ないが勤勉な開発者」の割合

80% 5

チームにおける「プロジェクトをマネジメントできる人」の割合

20% 2

Time-to-marketの時間的制約の厳しさ 1週間で開発し、1週間で手直ししてリリース 5

組織文化 自由、闊達な風土 5

システムの重要度の高さ システムの不具合が顧客のお客様へも及ぶ可能性 2

要求された稼働率の高さ 店舗営業時間中(6時~22時)は常時稼働 4

プロジェクト期間の短さ 6ヶ月 2

プロジェクト初期における要件確定度合いの低さ

外部仕様レベルでの基本要件が固まっていた要求の確認は、ユーザとの会話と実際に動作するプログラムで行う

2.5

ビジネスの新規性の豊かさ 特に新規性はない 1.25

採用技術の新規性の豊かさ独自の開発手法にこだわった開発であるが、その基礎となっている技術は非常に一般的

3.75

開発人数の多さ 6人 2

事例調査結果(1)

小売業における業務システム開発事例

Page 14: 「非ウォーターフォール型開発の現状と課題」SEC Software Engineering for Mo・No・Zu・Ku・Ri Copyright© 2010IPA,AllRightsReserved Software Engineering Center

SECSoftware Engineeringfor Mo・No・Zu・Ku・Ri

14Software Engineering CenterCopyright © 2010 IPA, All Rights Reserved

レーダーチャート

事例調査結果(1)

小売業における業務システム開発事例

0

1

2

3

4

5

チームにおける、「平均レベル以

下の、経験は少ないが、勤勉な開発者」の割合

チームにおける、「非ウォータフォールまたはウォータフォール型開発のプロジェクトをマネジメ

ントできる人」の割合

time-to-marketの時間的制約の

厳しさ

組織文化

アプリケーションシステムの重要

度の高さ

要求された稼働率の高さプロジェクト期間の短さ

プロジェクト初期における要件

の確定度合いの低さ

新規性(ビジネス)の豊かさ

新規性(技術)の豊かさ

開発人数の多さ

Page 15: 「非ウォーターフォール型開発の現状と課題」SEC Software Engineering for Mo・No・Zu・Ku・Ri Copyright© 2010IPA,AllRightsReserved Software Engineering Center

SECSoftware Engineeringfor Mo・No・Zu・Ku・Ri

15Software Engineering CenterCopyright © 2010 IPA, All Rights Reserved

事例調査結果(2)

携帯ソーシャルゲーム開発事例 これまで多くのWebサービスをアジャイル型の開発手法によって開発して

きた企業によるもの

項目 内容

優先したIT戦略 スピード、要求の変化への対応、利用率を優先

ライフサイクルモデル α版開発(1.5ヶ月) →α版改修(0.5ヶ月)→β版開発~クローズドβ公開(0.5ヶ月)→ β版改修~全展開(0.5ヶ月)イテレーション期間:1~2週間サービスイン後もDay~Week単位で改版継続

チーム編成 企画1名、エンジニア1名後半、業務系開発にベンダ1名追加

プロジェクト期間 3ヶ月~継続中

プロジェクト初期における要件の確定度合い

0ベースからの検討を要した

契約形態 社内開発であるため、契約関係はない。

Page 16: 「非ウォーターフォール型開発の現状と課題」SEC Software Engineering for Mo・No・Zu・Ku・Ri Copyright© 2010IPA,AllRightsReserved Software Engineering Center

SECSoftware Engineeringfor Mo・No・Zu・Ku・Ri

16Software Engineering CenterCopyright © 2010 IPA, All Rights Reserved

プロジェクト初期における

要件の確定度合いの低さ

アプリケーションシステムの

重要度の高さ

Time-to-marketの時間的制約

の厳しさ新規性

(ビジネス)の豊かさ

新規性(技術)の豊かさ

プロジェクト期間の短さ

要求された稼働率の高さ

事例調査結果(2)

軸 実績値 度数

チームにおける「平均レベル以下の、経験は少ないが勤勉な開発者」の割合

0% 1

チームにおける「プロジェクトをマネジメントできる人」の割合

100%ただし、多くの手法をマスターしたエンジニアではない

5

Time-to-marketの時間的制約の厳しさ

随時 5

組織文化 100% 5

システムの重要度の高さ 2 2

要求された稼働率の高さ 99.50% 5

プロジェクト期間の短さ 3ヶ月~継続中 3

プロジェクト初期における要件確定度合いの低さ

0ベース 5

ビジネスの新規性の豊かさ 社内では新規 2.5

採用技術の新規性の豊かさ

Flash生成エンジンの一部以外既存

1.25

開発人数の多さ 2人 1

携帯ソーシャルゲーム開発事例

Page 17: 「非ウォーターフォール型開発の現状と課題」SEC Software Engineering for Mo・No・Zu・Ku・Ri Copyright© 2010IPA,AllRightsReserved Software Engineering Center

SECSoftware Engineeringfor Mo・No・Zu・Ku・Ri

17Software Engineering CenterCopyright © 2010 IPA, All Rights Reserved

事例調査結果(3)

株取引のためのWebアプリケーション開発事例 セルと称する小集団枠組によって開発

項目 内容

優先したIT戦略 投資回収を早めるため早期ビジネス化システム利用者の反応を見ながら構築情報システム部門の負荷軽減、数年間は利用品質要求は保守性を最優先・使いやすさと応答の即応性

ライフサイクルモデル セル開発、収益性の高い機能から開発イテレーションは2週間

チーム編成 小集団(セル)の枠組み顧客と2週間に1回、受け入れ検収を実施

プロジェクト期間 23ヶ月

プロジェクト初期における要件の確定度合い

非常に低い

契約形態 請負。対象となるシステムのスコープや品質基準とイテレーション回数と各イテレーションで平行稼動させるセル数を基準

Page 18: 「非ウォーターフォール型開発の現状と課題」SEC Software Engineering for Mo・No・Zu・Ku・Ri Copyright© 2010IPA,AllRightsReserved Software Engineering Center

SECSoftware Engineeringfor Mo・No・Zu・Ku・Ri

18Software Engineering CenterCopyright © 2010 IPA, All Rights Reserved

事例調査結果(3)

株取引のためのWebアプリケーション開発事例

プロジェクト初期における

要件の確定度合いの低さ

軸 実績値 度数

チームにおける「平均レベル以下の、経験は少ないが勤勉な開発者」の割合

0%1

チームにおける「プロジェクトをマネジメントできる人」の割合

100%5

Time-to-marketの時間的制約の厳しさ

リクエストオーダ2週間分を取り上げ、開発、拡張、または改変構築。成果物を2週間ごとに納品し、検収

4

組織文化 「2週間ごとに、リクエストオーダを処理・納品」が組織的に浸透。保守が容易になるような構築が浸透。

1

システムの重要度の高さ 現在はレベル2(一部利用者の被害)将来はレベル3(:社会的混乱が大きい) 2

要求された稼働率の高さ 営業日の営業時間内では、100%の稼働率が求められる。

5

プロジェクト期間の短さ 23か月 1

プロジェクト初期における要件確定度合いの低さ

非常に低い5

ビジネスの新規性の豊かさ 新企画のビジネス 5

採用技術の新規性の豊かさ 特になし 1.25

開発人数の多さ 3~5人 1

Page 19: 「非ウォーターフォール型開発の現状と課題」SEC Software Engineering for Mo・No・Zu・Ku・Ri Copyright© 2010IPA,AllRightsReserved Software Engineering Center

SECSoftware Engineeringfor Mo・No・Zu・Ku・Ri

19Software Engineering CenterCopyright © 2010 IPA, All Rights Reserved

事例調査結果(4)

業界共通電子データ交換基盤構築事例 要件提供者が多数存在するため、システム構成をモジュール化し、

要件の固まったモジュールから順に開発

項目 内容

優先したIT戦略 業界標準、共通画面・共通操作が可能、企業間システム連携、基本機能は無償、中小企業用の標準システムの構築短期開発を可能にするためのシステムのモジュール構造化ハード・ソフトの省資源化(グリーンIT化)(最終的にはSaaS化)

ライフサイクルモデル 初期プロトタイプの開発後、ユーザレビュー・機能拡張を継続EDI基盤のコアの部分をはじめに固め、サブを順次追加2週間単位のイテレーション

チーム編成 15名(リーダ:1名、仕様担当:5名、設計担当3名、開発担当:6名)

プロジェクト期間 初期プロトタイプの開発に3ヶ月

プロジェクト初期における要件の確定度合い

多業種にわたるシステムであるため、開発当初は仕様が全く分からない、かつ固められない状態

契約形態 準委任契約

Page 20: 「非ウォーターフォール型開発の現状と課題」SEC Software Engineering for Mo・No・Zu・Ku・Ri Copyright© 2010IPA,AllRightsReserved Software Engineering Center

SECSoftware Engineeringfor Mo・No・Zu・Ku・Ri

20Software Engineering CenterCopyright © 2010 IPA, All Rights Reserved

業界共通電子データ交換基盤構築事例軸 実績値 度数

チームにおける「平均レベル以下の、経験は少ないが勤勉な開発者」の割合

100%(アジャイル経験者はナシ) 5

チームにおける「プロジェクトをマネジメントできる人」の割合

0%(アジャイル経験者はナシ) 1

Time-to-marketの時間的制約の厳しさ

5ヵ月 1

組織文化 不明 0

システムの重要度の高さ

不具合の影響が複数社に及ぶ 2.5

要求された稼働率の高さ

1日最大24回の納入に対応 5

プロジェクト期間の短さ 11ヶ月(システム全体での開発期間) 1

プロジェクト初期における要件確定度合いの低さ

開発当初は仕様が全く分からない、かつ固められない状態であった。

5

ビジネスの新規性の豊かさ

全く新規の取組み 5

採用技術の新規性の豊かさ

アジャイル型の開発は初めての経験であった。

1.25

開発人数の多さ15名(リーダ:1名、仕様担当:5名、設計担当3名、開発担当:6名)

3

事例調査結果(4)

Page 21: 「非ウォーターフォール型開発の現状と課題」SEC Software Engineering for Mo・No・Zu・Ku・Ri Copyright© 2010IPA,AllRightsReserved Software Engineering Center

SECSoftware Engineeringfor Mo・No・Zu・Ku・Ri

21Software Engineering CenterCopyright © 2010 IPA, All Rights Reserved

3軸を用いてプロジェクト特性を分類

不確実性市場の不確実性、技術の不確実性、プロジェクトの期間、

依存関係/スコープの柔軟性

複雑性チームの大きさ、ミッションクリティカル性、チームの場所、

チームの能力、ドメイン知識のギャップ、依存関係

高速適応性リリース密度(リリース回数/プロジェクト期間[月])、CI環境の商用フレームワークからの独立度、ソフトウェア実装フレームワークの複雑度

事例特性の分類

Page 22: 「非ウォーターフォール型開発の現状と課題」SEC Software Engineering for Mo・No・Zu・Ku・Ri Copyright© 2010IPA,AllRightsReserved Software Engineering Center

SECSoftware Engineeringfor Mo・No・Zu・Ku・Ri

22Software Engineering CenterCopyright © 2010 IPA, All Rights ReservedCopyright © 2010 IPA, All Rights Reserved

高速適応性

不確実性複雑性

分類結果 第1象限第2象限

第4象限第3象限

第1象限第2象限

第4象限第3象限複雑性が高い

不確実性が高い

事例特性の分類結果 企業内知識共有支援・企画支援、等

パッケージなどプロダクト開発

基幹系システム

複雑性が高い

ネット販売、ネット取引、等

不確実性が高い

Page 23: 「非ウォーターフォール型開発の現状と課題」SEC Software Engineering for Mo・No・Zu・Ku・Ri Copyright© 2010IPA,AllRightsReserved Software Engineering Center

SECSoftware Engineeringfor Mo・No・Zu・Ku・Ri

23Software Engineering CenterCopyright © 2010 IPA, All Rights Reserved

イテレーション

全ての事例で

イテレーションを実施

最短:1W

中央値:2W

平均:2.4W

最長:8W

事例 イテレーション期間[週間]

1 12 23 24 45 26 1-47 1-28 19 110 811 112 213 不明14 不明15 1-216 417 218 不明19 420 121 422 2

Page 24: 「非ウォーターフォール型開発の現状と課題」SEC Software Engineering for Mo・No・Zu・Ku・Ri Copyright© 2010IPA,AllRightsReserved Software Engineering Center

SECSoftware Engineeringfor Mo・No・Zu・Ku・Ri

24Software Engineering CenterCopyright © 2010 IPA, All Rights Reserved

契約の種類 件数 比率

請負契約 6 33.3%

請負契約(月毎) 1 5.6%

請負契約+準委任契約 1 5.6%

準委任契約 7 38.9%

労働者派遣契約 1 5.6%

不明 2 11.1%

合計 18 100%

(社内開発:契約無し) (4) ー

契約形態

Page 25: 「非ウォーターフォール型開発の現状と課題」SEC Software Engineering for Mo・No・Zu・Ku・Ri Copyright© 2010IPA,AllRightsReserved Software Engineering Center

SECSoftware Engineeringfor Mo・No・Zu・Ku・Ri

25Software Engineering CenterCopyright © 2010 IPA, All Rights Reserved

(参考)契約の種類

契約の種類 内容

請負契約ベンダ企業側が成果物の完成を請負い、ユーザ企業側が成果物に対する報酬の支払いを約束する契約形態

準委任契約業務を委託する契約であり、ベンダ企業側の責任は、業務を実施することにあり、成果物に対する完成責任を負わない

労働者派遣契約

派遣元の社員を派遣先の指揮命令で働かせることができる契約通常は、派遣先が就労場所になる派遣先と労働者とは、指揮命令関係こそあるけれども、雇用関係はない

Page 26: 「非ウォーターフォール型開発の現状と課題」SEC Software Engineering for Mo・No・Zu・Ku・Ri Copyright© 2010IPA,AllRightsReserved Software Engineering Center

SECSoftware Engineeringfor Mo・No・Zu・Ku・Ri

26Software Engineering CenterCopyright © 2010 IPA, All Rights Reserved

顧客参画の実態

週に1~2回のコミットが求められていることが多い

事例

顧客側に2週間に一回、必ず受け入れ検収を実施

2週間に1〜 3度、オーナが来社しオンサイト顧客を実施

週次で開発マネージャを含めて計画ゲームを行い、次回のリリース計画を作成した

週に1回、プロジェクトの進捗状況を開発プロジェクトマネージャが発注元の開発マネージャへ報告

発注者と開発者は毎週2回の打合せで週次イテレーション開発

プロジェクト目標のシェアのみ

開発者全員が現地に常駐

顧客参画

Page 27: 「非ウォーターフォール型開発の現状と課題」SEC Software Engineering for Mo・No・Zu・Ku・Ri Copyright© 2010IPA,AllRightsReserved Software Engineering Center

SECSoftware Engineeringfor Mo・No・Zu・Ku・Ri

27Software Engineering CenterCopyright © 2010 IPA, All Rights Reserved

件数

14121086420 16 18 20 22

頻繁なふりかえり

計画ゲーム

ディリー・スタンドアップミーティング(朝会)

継続的インテグレーション

ペアプログラミング

バーンダウンチャート

リファクタリング

テスト駆動開発

コードの共同所有

かんばん

自動化された回帰テスト

ニコニコカレンダー

顧客プロキシ

タスクカード

ポストイット

タイムボックス

頻繁なリリース

コーディング規約

ストーリーカード

単体テストの自動化

スクラムのスプリント

スプリントバックログ

チーム全体が一つに 71.4%

52.4%

47.6%

42.9%

38.1%

28.6%

23.8%

19%

14.3%

15

11

10

10

9

8

8

6

5

4

4

4

3

3

3

3

3

2

2

2

2

2

2

9.5%

9.5%

9.5%

9.5%

9.5%

9.5%

14.3%

14.3%

14.3%

14.3%

19%

19%

38.1%

47.6%

反復型計画

100%

21

活用されているプラクティス

Page 28: 「非ウォーターフォール型開発の現状と課題」SEC Software Engineering for Mo・No・Zu・Ku・Ri Copyright© 2010IPA,AllRightsReserved Software Engineering Center

SECSoftware Engineeringfor Mo・No・Zu・Ku・Ri

28Software Engineering CenterCopyright © 2010 IPA, All Rights Reserved

チームの人数(人)

2

4

6

8

10

12

2 4 6 8 10 12 14 16 18 20 22 24

プロジェクト規模

開発期間(月) (4年、100数十人の例あり)

Page 29: 「非ウォーターフォール型開発の現状と課題」SEC Software Engineering for Mo・No・Zu・Ku・Ri Copyright© 2010IPA,AllRightsReserved Software Engineering Center

SECSoftware Engineeringfor Mo・No・Zu・Ku・Ri

29Software Engineering CenterCopyright © 2010 IPA, All Rights Reserved

事例調査のまとめ(1)

開発チーム 約6割が10名以下。他は10数名が多い

開発期間 2か月~4か月が45%。1年を超えるものは35%

内部開発が多い自社内で利用するソフトを内製

販売するためのパッケージの開発

受託開発の例では、既存システムの更改および新規案件がある

大手SI業者でも、トライアルが行われ、社内標準への取込みが始められている

アジャイルのプラクティスを選択し、モディファイして用いている

22事例から言えること

Page 30: 「非ウォーターフォール型開発の現状と課題」SEC Software Engineering for Mo・No・Zu・Ku・Ri Copyright© 2010IPA,AllRightsReserved Software Engineering Center

SECSoftware Engineeringfor Mo・No・Zu・Ku・Ri

30Software Engineering CenterCopyright © 2010 IPA, All Rights Reserved

事例調査のまとめ(2)

変化への対応、市場への迅速な投入の効果市場の声を聞きながら改善

要件の確定度合いが低い

要件が変化する

生産性の改善分は、品質や保守性の向上へ

従来型開発(ウォーターフォール型)との使い分け

大規模なシステムへの適用は見当たらない

Page 31: 「非ウォーターフォール型開発の現状と課題」SEC Software Engineering for Mo・No・Zu・Ku・Ri Copyright© 2010IPA,AllRightsReserved Software Engineering Center

SECSoftware Engineeringfor Mo・No・Zu・Ku・Ri

31Software Engineering CenterCopyright © 2010 IPA, All Rights Reserved

アジャイル手法適用のポイント

適切な開発手法の選択-開発対象の特徴や開発組織の置かれた環境などを加味しながら適切な開発手法を選択する

プラクティスの活用-それぞれのプロジェクト・組織(企業)で、自らの開発に合った方法を、プラクティスを選択あるいは参考にして利用する

開発手法に対する正しい理解の促進-プラクティスの意図やプラクティスが提唱されている背景についても理解を深める

Page 32: 「非ウォーターフォール型開発の現状と課題」SEC Software Engineering for Mo・No・Zu・Ku・Ri Copyright© 2010IPA,AllRightsReserved Software Engineering Center

SECSoftware Engineeringfor Mo・No・Zu・Ku・Ri

32Software Engineering CenterCopyright © 2010 IPA, All Rights Reserved

アジャイル手法の導入・普及に向けて

外注における課題- 契約問題

アジャイル手法の理解促進- ユーザ部門と開発部門- 発注顧客と開発受託会社- 経営層、マネージメント層、開発担当など- 組織の風土

管理手法や技術面での環境整備- 品質評価、進捗管理、プロセス定義、定量化技術- 社内標準、社内検査- 開発ツールなど開発環境の整備

Page 33: 「非ウォーターフォール型開発の現状と課題」SEC Software Engineering for Mo・No・Zu・Ku・Ri Copyright© 2010IPA,AllRightsReserved Software Engineering Center

SECSoftware Engineeringfor Mo・No・Zu・Ku・Ri

33Software Engineering CenterCopyright © 2010 IPA, All Rights Reserved

外注における課題

✓ 外注の場合に現在最も一般的に使われている請負契約は、

「当事者の一方が、ある仕事を完成することを約し、相手方

がその仕事の結果に対して報酬を支払うことを約することに

よって、効力を生じる」 契約

✓ 一方、アジャイル手法は、変化への対応を重視するため

仕様を最初に固定しない。ユーザとのコミュニケーションによって、

状況に応じて仕様を決めていく

✓ 契約時点で、成果物が不明確なため、「仕事の完成」が客観的に判断できない。このため、請負契約はなじまない

Page 34: 「非ウォーターフォール型開発の現状と課題」SEC Software Engineering for Mo・No・Zu・Ku・Ri Copyright© 2010IPA,AllRightsReserved Software Engineering Center

SECSoftware Engineeringfor Mo・No・Zu・Ku・Ri

34Software Engineering CenterCopyright © 2010 IPA, All Rights Reserved

契約上の課題

要件が未確定であること

成果物が不明確であること

性能と品質等が不明確であること

工期が不明確であること

開発工数の見積もりが困難であること

ユーザ/ベンダ間の責任分担が不明確であること

契約形態における指示系統との兼ね合いでコミュニケーションに制約が生じること

Page 35: 「非ウォーターフォール型開発の現状と課題」SEC Software Engineering for Mo・No・Zu・Ku・Ri Copyright© 2010IPA,AllRightsReserved Software Engineering Center

SECSoftware Engineeringfor Mo・No・Zu・Ku・Ri

35Software Engineering CenterCopyright © 2010 IPA, All Rights Reserved

アジャイル手法の理解促進(1)

◆ ユーザ部門と開発部門◆ 発注顧客と開発受託会社◆ 経営層、マネージメント層、開発担当など◆ 組織の風土

✓ アジャイル手法は、ユーザ・顧客との協調に価値を置くプロセスであるため、顧客の参画が必須

✓ 顧客マネージメント層の理解と必要なリソースの割当など具体的な行動が成功のための条件

Page 36: 「非ウォーターフォール型開発の現状と課題」SEC Software Engineering for Mo・No・Zu・Ku・Ri Copyright© 2010IPA,AllRightsReserved Software Engineering Center

SECSoftware Engineeringfor Mo・No・Zu・Ku・Ri

36Software Engineering CenterCopyright © 2010 IPA, All Rights Reserved

アジャイル手法の理解促進(2)

◆ 顧客が参画すべき作業の例

✓ 繰返し毎のリリース計画の作成要件の優先

順位の決定

✓ リリース毎の受け入れ検収の実施

✓ 計画ゲーム・振り返りへの参加

✓ 定期進捗報告への参加

✓ 問題に対する迅速な判断・決定 など

Page 37: 「非ウォーターフォール型開発の現状と課題」SEC Software Engineering for Mo・No・Zu・Ku・Ri Copyright© 2010IPA,AllRightsReserved Software Engineering Center

SECSoftware Engineeringfor Mo・No・Zu・Ku・Ri

37Software Engineering CenterCopyright © 2010 IPA, All Rights Reserved

管理手法や技術面での環境整備

◆ 品質評価、進捗管理、プロセス定義、定量化技術

◆ 社内標準、社内検査

◆ 開発ツールなど開発環境の整備

✓ 設計、品質、検証などに不安があり、重要なシステムへの適用には疑問が残る

✓ これまでのアジャイル手法はプラクティスの集まり、今後はエンジニアリングまで高める必要がある

Page 38: 「非ウォーターフォール型開発の現状と課題」SEC Software Engineering for Mo・No・Zu・Ku・Ri Copyright© 2010IPA,AllRightsReserved Software Engineering Center

SECSoftware Engineeringfor Mo・No・Zu・Ku・Ri

38Software Engineering CenterCopyright © 2010 IPA, All Rights Reserved

むすび

日本のソフトウェア競争力を高める生き生きと働ける環境を作る

契約のあり方、調達、制度設計契約

日本のソフトウェアの作り方

経営層やユーザ企業への理解促進価値評価

コンサルタント等の役割の整備人財育成

普及

欧米の競争力(ビジネスドライバ、産業構造など)の調査

調査

重点課題

目指すべきゴール

管理手法や技術面の整備環境整備

領域見定め

非ウォーターフォール型開発における課題と目指すべきゴール案

Page 39: 「非ウォーターフォール型開発の現状と課題」SEC Software Engineering for Mo・No・Zu・Ku・Ri Copyright© 2010IPA,AllRightsReserved Software Engineering Center

SECSoftware Engineeringfor Mo・No・Zu・Ku・Ri

39Software Engineering CenterCopyright © 2010 IPA, All Rights Reserved

研究会委員の構成

氏名 所属

松本 吉弘 座長 財団法人・京都高度技術研究所 顧問

稲村 直穂子 委員 株式会社ディー・エヌ・エー システム統括本部本部長

大槻 繁 委員 株式会社一 副社長

合田 治彦 委員 富士通株式会社 システム生産技術本部長代理

田澤 久 委員 楽天株式会社 開発部開発生産性強化グループ グループマネージャー

羽生田 栄一 委員 株式会社豆蔵 取締役

平鍋 健児 委員株式会社永和システムマネジメント 副社長、株式会社チェンジビジョン 代表取締役

広瀬 敏久 委員 日本電気株式会社 主席技術主幹

前川 徹 委員 サイバー大学 IT総合学部 教授

馬嶋 宏 委員 株式会社日立製作所 ソフトウェア事業部企画本部統括部長

松島 桂樹 委員 武蔵大学 経済学部 教授

南 悦郎 委員 新日鉄ソリューションズ株式会社 技術本部システム研究開発センター所長

Page 40: 「非ウォーターフォール型開発の現状と課題」SEC Software Engineering for Mo・No・Zu・Ku・Ri Copyright© 2010IPA,AllRightsReserved Software Engineering Center

SECSoftware Engineeringfor Mo・No・Zu・Ku・Ri

40Software Engineering CenterCopyright © 2010 IPA, All Rights Reserved

ご清聴ありがとうございました

URL:http://sec.ipa.go.jp/reports/20100330a.html