組込みソフトウェア向け 開発プロセスガイドの概説 · 詳細度 → 深く....
TRANSCRIPT
Information-technology Promotion Agency, Japan
SoftwareEngineeringCenter
Software Engineering CenterCopyright © 2007 IPA, All Rights Reserved
組込みソフトウェア向け 開発プロセスガイドの概説
組込み組込みソフトウェア向けソフトウェア向け 開発プロセスガイドの概説開発プロセスガイドの概説
2007年5月
独立行政法人
情報処理推進機構(IPA)
ソフトウェア・エンジニアリング・センター(SEC)
組込み系プロジェクト
研究員
山崎
太郎
SECブースセミナー
~~
最適な開発プロセス構築へ向けて最適な開発プロセス構築へ向けて
~~
Software Engineering Center 2Copyright © 2007 IPA, All Rights Reserved
SECSoftware Engineeringfor Mo・No・Zu・Ku・RiSEC組込み系プロジェクトの活動領域
プロジェクト・マネジメント
スキル・キャリア・教育
開発プロセス、プロセス改善
高品質設計
実装品質
テスト
性能品質向上
利用品質工程個別
全体支援
システム要求分析システム適格性確認テスト
ソフトウェア詳細設計
コーディング
単体テスト
ソフトウェア方式設計
ソフトウェア要求分析
システム方式設計 システム結合
ソフトウェア適格性確認テスト
ソフトウェア結合
製品企画 市場競争力
Software Engineering Center 3Copyright © 2007 IPA, All Rights Reserved
SECSoftware Engineeringfor Mo・No・Zu・Ku・Riソフトウェア開発規模の増大
2001年当時
100万行
500万行
現在
5倍以上
携帯電話プログラム行数
2000年当時
100万行
500万行~1000万行
現在
5~10倍
自動車プログラム行数
Software Engineering Center 4Copyright © 2007 IPA, All Rights Reserved
SECSoftware Engineeringfor Mo・No・Zu・Ku・Ri
0% 10% 20% 30% 40% 50%
不明
6ヶ月未満
6ヶ月~1年未満
1~1.5年未満
1.5~2年未満
2年以上
経済産業省 2004年版 組込みソフトウェア産業実態調査報告書
平均的な組込みソフトウェア開発期間
開発期間の短期化開発期間の短期化開発期間の短期化
Software Engineering Center 5Copyright © 2007 IPA, All Rights Reserved
SECSoftware Engineeringfor Mo・No・Zu・Ku・Ri
設計品質問題による対策費 (人件費、製品改修費、修理費を含む)
0% 5% 10% 15% 20% 25% 30%
100万円未満
100万~500万円未満
500万~1,000万円未満
1,000万~2,000万円未満
2,000万~5,000万円未満
5,000万~1億円未満
1億~2億円未満
2億~5億円未満
5億~10億円未満
10億~50億円未満
経済産業省 2005年版 組込みソフトウェア産業実態調査報告書
設計品質問題の多発設計品質問題の多発設計品質問題の多発
Software Engineering Center 6Copyright © 2007 IPA, All Rights Reserved
SECSoftware Engineeringfor Mo・No・Zu・Ku・Ri開発プロセスとプロダクトの品質
作業1作業1
プロダクトの品質プロダクトの品質
作業3作業3
中間成果物
中間成果物
作業2作業2
中間成果物
中間成果物
開発の過程(=プロセス)作業の品質
Ex. 必要な手順を踏んで開発されていること
最終成果物
Software Engineering Center 7Copyright © 2007 IPA, All Rights Reserved
SECSoftware Engineeringfor Mo・No・Zu・Ku・Ri組込みソフトウェア開発で採用されているプロセス
2005年版
組込みソフトウェア産業実態調査:プロジェクト責任者向け調査
ウォーターフォール方式36.2%
標準的な開発プロセスはない22.7%
プロトタイピングモデル方式8.9%
インクリメンタル方式8.2%
アジャイル方式(XP等)
2.8%
その他の方式3.5%
スパイラル方式(セミスパイラル方式)
18.9%
Software Engineering Center 8Copyright © 2007 IPA, All Rights Reserved
SECSoftware Engineeringfor Mo・No・Zu・Ku・Ri『開発プロセスガイド』
ESPR
ESPR: Embedded
System development Process Reference
ESPR: Embedded
Systemdevelopment Process Reference
Software Engineering Center 9Copyright © 2007 IPA, All Rights Reserved
SECSoftware Engineeringfor Mo・No・Zu・Ku・Ri
組込みソフトウェア開発力強化のために組込みソフトウェアを『効率的』に開発し、かつ『高品質』なものとしていくための標準的な開発作業を整理
次の3編で構成される
『開発プロセスガイド』
ESPRとは
Part1 Part1 解説編解説編
ESPRESPRの目的、位置づけなどを記載の目的、位置づけなどを記載
Part2Part2技術編技術編
ESPRESPRの定義とドキュメント・テンプレート例を記載の定義とドキュメント・テンプレート例を記載
Part3Part3活用編活用編
ESPRESPRの活用例として、開発プロジェクトの工程設計を記載の活用例として、開発プロジェクトの工程設計を記載
Software Engineering Center 10Copyright © 2007 IPA, All Rights Reserved
SECSoftware Engineeringfor Mo・No・Zu・Ku・Ri開発プロセスガイドの特徴
特徴特徴11 ソフトウェア、システムの開発プロセスに関する国際規格をソフトウェア、システムの開発プロセスに関する国際規格を
参考に、より具体的な作業のレベルで開発プロセスを整理。参考に、より具体的な作業のレベルで開発プロセスを整理。
特徴特徴22 組込みソフトウェアの開発において実施すべき作業項目と組込みソフトウェアの開発において実施すべき作業項目と注意すべき事項を整理。注意すべき事項を整理。
特徴特徴33 個々の作業の入出力を明示するとともに、作業内容に個々の作業の入出力を明示するとともに、作業内容についても具体的で理解容易な表現をついても具体的で理解容易な表現を使用使用。。
既存のソフトウェア開発プロセス
既存のソフトウェア既存のソフトウェア開発プロセス開発プロセス
組込みソフトウェア向け 開発プロセスガイド
(ESPR)
組込みソフトウェア向け組込みソフトウェア向け 開発プロセスガイド開発プロセスガイド
((ESPRESPR))
Software Engineering Center 11Copyright © 2007 IPA, All Rights Reserved
SECSoftware Engineeringfor Mo・No・Zu・Ku・Ri国際規格とESPRの関係
カバー範囲
→
広く
詳細度
→
深く
ESPR
国際規格ISO/IEC12207ISO/IEC15288
Ver.2.0
Ver.1.0
組込みソフトウェア開発に最低限必要な作業の集まりとする⇒横方向:プロセスのカバー範囲は国際規格ISO/IEC12207、
15288よりは少ないプロセス
⇒縦方向:詳細度は組込みソフトウェア開発の実作業が見えるレベルの詳細な程度
Software Engineering Center 12Copyright © 2007 IPA, All Rights Reserved
SECSoftware Engineeringfor Mo・No・Zu・Ku・RiESPRのプロセス・カテゴリ
プロセスプロセス ソフトウェア・エンジニアリング・プロセス (SWP)
ソフトウェア・エンジニアリング・プロセス (SWP)
SWP: SoftWare engineering Process
SUP: SUpport Process
SYP: SYstem engineering Process
ソフトウェアとしての要求定義からソフトウェア総合テストまでソフトウェ
アを作る際の直接作業を整理したプロセス
ソフトウェア開発を円滑に進めるために必要となる支援作業や間接作
業を中心に整理したプロセス
組込みソフトウェアが組み込まれて動作する組込みシステムとしてとら
えた場合のシステム要求やシステムと
しての動作検証などの作業を
整理したプロセス
サポート・プロセス(SUP)
サポート・プロセス(SUP)
システム・エンジニアリング・プロセス (SYP)
システム・エンジニアリング・プロセス (SYP)
Software Engineering Center 13Copyright © 2007 IPA, All Rights Reserved
SECSoftware Engineeringfor Mo・No・Zu・Ku・Riプロセスの構造
開発作業を4階層でブレイクダウン開発作業を4階層でブレイクダウン
プロセスプロセス
アクティビティアクティビティ
タスクタスク
サブタスクサブタスク
Software Engineering Center 14Copyright © 2007 IPA, All Rights Reserved
SECSoftware Engineeringfor Mo・No・Zu・Ku・RiESPRのアクティビティ
Software Engineering Center 15Copyright © 2007 IPA, All Rights Reserved
SECSoftware Engineeringfor Mo・No・Zu・Ku・RiV字モデルとの対応
Software Engineering Center 16Copyright © 2007 IPA, All Rights Reserved
SECSoftware Engineeringfor Mo・No・Zu・Ku・RiESPRのタスク例
SWP2 ソフトウェア・アーキテクチャ設計のタスク
SWP2 SWP2 ソフトウェア・アーキテクチャ設計のタスクソフトウェア・アーキテクチャ設計のタスク
Software Engineering Center 17Copyright © 2007 IPA, All Rights Reserved
SECSoftware Engineeringfor Mo・No・Zu・Ku・RiESPRのサブタスク(例)
Software Engineering Center 18Copyright © 2007 IPA, All Rights Reserved
SECSoftware Engineeringfor Mo・No・Zu・Ku・Riサブタスクの解説(SWP)
P38
作業の入出力を明示作業の入出力を明示
Software Engineering Center 19Copyright © 2007 IPA, All Rights Reserved
SECSoftware Engineeringfor Mo・No・Zu・Ku・Riサブタスクの解説(SWP)
P38
組込みソフトウェアの開発において実施すべき作業項目を整理組込みソフトウェアの開発において実施すべき作業項目を整理
Software Engineering Center 20Copyright © 2007 IPA, All Rights Reserved
SECSoftware Engineeringfor Mo・No・Zu・Ku・Riサブタスクの解説(SWP)
P38
作業を実施する際の作業を実施する際の注意すべき事項を整理注意すべき事項を整理
Software Engineering Center 21Copyright © 2007 IPA, All Rights Reserved
SECSoftware Engineeringfor Mo・No・Zu・Ku・Riドキュメント・テンプレート例
P106~109
成果物の成果物のテンプレートとして利用できるテンプレートとして利用できる
Software Engineering Center 22Copyright © 2007 IPA, All Rights Reserved
SECSoftware Engineeringfor Mo・No・Zu・Ku・Ri想定する利用者
個々の開発案件個々の開発案件でで開発プロセスや工程を検討・決定するマネージャやリーダ開発プロセスや工程を検討・決定するマネージャやリーダ
組織や部門の開発プロセスの標準や基本的な考え方を整備し、組織や部門の開発プロセスの標準や基本的な考え方を整備し、その運用を支援するメンバーその運用を支援するメンバー
品質保証など、ソフトウェア開発を間接的に支える品質保証など、ソフトウェア開発を間接的に支える支援グループのメンバー支援グループのメンバー
組込みソフトウェアを開発する組織において、
Software Engineering Center 23Copyright © 2007 IPA, All Rights Reserved
SECSoftware Engineeringfor Mo・No・Zu・Ku・Ri想定する利用方法
ソフトウェアの開発プロセスなどが未整備で、ソフトウェアの開発プロセスなどが未整備で、新規に組織や部門の開発プロセス標準を決める場合新規に組織や部門の開発プロセス標準を決める場合
既に組織や部門の標準的な開発プロセスがあるが、既に組織や部門の標準的な開発プロセスがあるが、実際の作業などとのずれが生じていて見直しが必要な場合実際の作業などとのずれが生じていて見直しが必要な場合
従来の開発プロセスでは対応できないため、従来の開発プロセスでは対応できないため、新たな開発プロセス標準が必要な場合新たな開発プロセス標準が必要な場合
Software Engineering Center 24Copyright © 2007 IPA, All Rights Reserved
SECSoftware Engineeringfor Mo・No・Zu・Ku・Riプロセスガイド(ESPR)の活用
開発プロセス開発プロセス
開発を進める上で必要な作業(アクティビティ)を整理したもの
• どのような作業を行うか• 作業の結果をどのように形にするか• 時間的な順序性は持っていない
工程設計 アクティビティ(、タスク、サブタスク)を
選定し、時間軸上に割り付ける
開発工程開発工程組織/部門や製品ドメインの性質
に合わせて実際の作業を時間 軸を考慮して割り付けたもの
Part2技術編
Part2Part2技術編技術編
Part3活用編
Part3Part3活用編活用編
Software Engineering Center 25Copyright © 2007 IPA, All Rights Reserved
SECSoftware Engineeringfor Mo・No・Zu・Ku・Ri開発工程(例)
Software Engineering Center 26Copyright © 2007 IPA, All Rights Reserved
SECSoftware Engineeringfor Mo・No・Zu・Ku・Riまとめ
開発プロセスガイドを利用することにより得られる効果
組織や部門で必要な作業を効率的に整理し、組織や部門の開発プロ
セスとして整備することができる。
個々の作業の結果整理や成果物の内容を検討することができる(ド
キュメント・テンプレート例)。
組込みソフトウェア開発作業において、特に注意すべき事項などを組
織や部門の開発プロセス検討の際に参考とすることができる。
Software Engineering Center 27Copyright © 2007 IPA, All Rights Reserved
SECSoftware Engineeringfor Mo・No・Zu・Ku・Ri
SECの活動にご協力ください。
「ESxR活用トライアル」参加企業を募集中(締切:5月/21日)
「ESxRワークショップ」開催予定(9月)
http://sec.ipa.go.jp/
ご清聴ありがとうございました。