トレーニングのプレゼンテーション

Similar documents
トレーニングのプレゼンテーション

短納期開発現場への XDDP 導入手法

変更の影響範囲を特定するための 「標準調査プロセス」の提案 2014年ソフトウェア品質管理研究会(30SQiP-A)

メンバーの紹介 日本科学技術連盟ソフトウェア品質管理研究会 2010 年度第 6 分科会 B グループ リーダー関野浩之 アズビル株式会社 ( 発表者 ) 大坪智治 株式会社インテック 外谷地茂 キヤノンITソリューションズ株式会社 メンバーの特徴 開発案件のほとんどが派生開発 ( 組み込み系 :1

USDM Quick Start Guide 2014 年 1 月 第 1.0 版 第 29 年度 (2013 年度 ) SQiP 研究会第 6 分科会 D グループ

テスト設計コンテスト

はじめてのPFD

テスト設計コンテスト

要求仕様管理テンプレート仕様書

HIGIS 3/プレゼンテーション資料/J_GrayA.ppt

スライド 1

目次 ペトリネットの概要 適用事例

自己紹介 粟生木徹 主な業務実績 組込みシステム開発 仕様策定 検証 : コンシューマ電子機器 オンラインエンターテイメント関連アプリケーションなど 業務系システム開発 定義 検証 ( 新規 保守開発 ): 物流管理 販売管理 人事 給与 ASP パッケージなど プロセス改善 国際ソフトウェアプロセ

Microsoft PowerPoint - 配布用資料.ppt

日経ビジネス Center 2


過去問セミナーTM

個人依存開発から組織的開発への移行事例 ~ 要求モデル定義と開発プロセスの形式化 による高生産性 / 高信頼性化 ~ 三菱電機メカトロニクスソフトウエア ( 株 ) 和歌山支所岩橋正実 1

Microsoft PowerPoint - B3-3_差替版.ppt [互換モード]

4.7.4 プロセスのインプットおよびアウトプット (1) プロセスへのインプット情報 インプット情報 作成者 承認者 備 考 1 開発に関するお客様から お客様 - の提示資料 2 開発に関する当社収集資 リーダ - 料 3 プロジェクト計画 完了報 リーダ マネージャ 告書 ( 暫定計画 ) 4

XDDPによる品質と生産性の同時達成

NEXCESS基礎コース01 組込みソフトウェア開発技術の基礎 ソフトウェア開発プロセス編

PowerPoint プレゼンテーション

ExcelでXDDPを成功させるためのノウハウ ~影響箇所の気づき、膨大なシートの検索を効率化し作成作業やレビューを活性化~

クラス図とシーケンス図の整合性確保 マニュアル

はじめに IPA/SEC では ソフトウェア品質説明力を強化すべく様々な観点からの検討を実施してきました その一環として ソフトウェア品質を説明するための手法等について具体的な実施方法 そのための作業量 実施にあたっての課題等を整理し 実際にソフトウェア品質を説明する際の参考とできるようにするために

Microsoft PowerPoint - A3② JaSST_MISRA2004ソースコード品質診断.ppt

SEC セミナー (2012 年 12 月 21 日 ) 定量的品質管理 実践的取組み 定量的品質管理 手法の企業での取り組み事例 1 品質 生産性目標の設定方法 2 現場で定着させるテクニック ~ 品質管理を効果的に実践するには ~ 三菱電機インフォメーションシステムズ株式会社業務プロセス改善推進

プロジェクトマネジメント知識体系ガイド (PMBOK ガイド ) 第 6 版 訂正表 - 第 3 刷り 注 : 次の正誤表は PMBOK ガイド第 6 版 の第 1 刷りと第 2 刷りに関するものです 本 ( または PDF) の印刷部数を確認するには 著作権ページ ( 通知ページおよび目次の前 )

変更要求管理テンプレート仕様書

ソフトウェアテストプロセスに関する一考察 - V ⇒ W ⇒ V3 -

Microsoft PowerPoint - Tsuzuki.ppt

<90528DB88EBF96E2955B2E786C73>

Microsoft PowerPoint - se13-BestPractices.ppt [互換モード]

第 3 回 TERAS 成果報告会 TERAS V3 紹介と今後の展開 Tool Environment for Reliable and Accountable Software 一般社団法人 TERAS 理事開発委員長渡辺政彦 2014 年 3 月 12 日

(Microsoft PowerPoint - \203A\203W\203\203\203C\203\213\212J\224\255_ ppt)

効率の良いテストシナリオ? テストの進め方 テストプロセス テストの設計 より少ないテストケースで より多くのバグを見つける Mercury Interactive Japan KK all rights reserved. 2

構成管理記録テンプレート仕様書

品質 生産性目標の測定量 品質 生産性の測定量は何があるの? 点検のタイミンク 種類 要件定義 設計 製作 試験 全体 見積り 概算 正式 生産性 規模に対する工数実績 (Hr/KL) 規模に対する工期実績 ( 日 /KL) 規模に対する工数実績 (Hr/KL) 規模に対する工期実績 ( 日 /KL

プロジェクトを成功させる見積りモデルの構築と維持・改善 ~CoBRA法による見積りモデル構築とその活用方法について~

変更履歴 バージョン日時作成者 変更者変更箇所と変更理由 RIGHTS R ESER VED. Page 2

ISO 9001:2015 改定セミナー (JIS Q 9001:2015 準拠 ) 第 4.2 版 株式会社 TBC ソリューションズ プログラム 年版改定の概要 年版の6 大重点ポイントと対策 年版と2008 年版の相違 年版への移行の実務

Microsoft Word - ESxR_Trialreport_2007.doc

日本機械学会 生産システム部門研究発表講演会 2015 資料

2

PowerPoint プレゼンテーション

Microsoft PowerPoint - Wmodel( ) - 配布用.pptx

J-SOX 自己点検評価プロセスの構築

Oracle Un お問合せ : Oracle Data Integrator 11g: データ統合設定と管理 期間 ( 標準日数 ):5 コースの概要 Oracle Data Integratorは すべてのデータ統合要件 ( 大量の高パフォーマンス バッチ ローブンの統合プロセスおよ

大規模災害等に備えたバックアップや通信回線の考慮 庁舎内への保存等の構成について示すこと 1.5. 事業継続 事業者もしくは構成企業 製品製造元等の破綻等により サービスの継続が困難となった場合において それぞれのパターン毎に 具体的な対策を示すこと 事業者の破綻時には第三者へサービスの提供を引き継

目次 取組み概要 取組みの背景 取組みの成果物 適用事例の特徴 適用分析の特徴 適用事例の分析結果から見えたこと JISAによる調査結果 どうやって 実践のヒント をみつけるか 書籍発行について紹介 今後に向けて 2

障害管理テンプレート仕様書

Microsoft Word - 【CTG0000-D】ソフトウェア開発技法_ティーチングガイド.doc

RaQuest MindManager

2 概要 市場で不具合が発生にした時 修正箇所は正常に動作するようにしたけど将来のことを考えるとメンテナンス性を向上させたいと考えた リファクタリングを実施して改善しようと考えた レガシーコードなのでどこから手をつけて良いものかわからない メトリクスを使ってリファクタリング対象を自動抽出する仕組みを

Using VectorCAST/C++ with Test Driven Development

ISO 9001:2015 から ISO 9001:2008 の相関表 JIS Q 9001:2015 JIS Q 9001: 適用範囲 1 適用範囲 1.1 一般 4 組織の状況 4 品質マネジメントシステム 4.1 組織及びその状況の理解 4 品質マネジメントシステム 5.6 マネジ

<4D F736F F F696E74202D DD8D8782ED82B98B5A8F7082F B582BD835C F E707074>

Microsoft PowerPoint - se06-UML(UseCase)_2.ppt [互換モード]

オープンソースERPパッケージに対する派生開発手法の提案

13 ソフトウェア工学 Software Engineering ソフトウェアプロセス SOFTWARE PROCESS ソフトウェアプロセスとは ソフトウェアプロセス : ソフトウェアプロダクト ( 製品 ) を作り出すための, 互いに関連する活動 (activity) の集合 ソフトウェアプロセ

2. 目的 1RationalRose を利用する場合にプログラム仕様書としての最低限必要な記述項目を明確にする 2 プログラム仕様書として記載内容に不足がない事をチェックする 3UML の知識があるものであれば 仕様書の内容を理解できること 4Rose にて入力した内容を SoDaWord を利用

ソフトウェア要求分析から詳細設計までシームレスにつなぐ開発手法

<4D F736F F F696E74202D D4C82F08A B582BD A A F2E707074>

説明項目 1. 審査で注目すべき要求事項の変化点 2. 変化点に対応した審査はどうあるべきか 文書化した情報 外部 内部の課題の特定 リスク 機会 関連する利害関係者の特定 プロセスの計画 実施 3. ISO 14001:2015への移行 EMS 適用範囲 リーダーシップ パフォーマンス その他 (

Microsoft PowerPoint - ●SWIM_ _INET掲載用.pptx

オープンソースERPパッケージに対する派生開発手法の提案

CodeRecorderでカバレッジ

どのような便益があり得るか? より重要な ( ハイリスクの ) プロセス及びそれらのアウトプットに焦点が当たる 相互に依存するプロセスについての理解 定義及び統合が改善される プロセス及びマネジメントシステム全体の計画策定 実施 確認及び改善の体系的なマネジメント 資源の有効利用及び説明責任の強化

Microsoft PowerPoint - Personal Software Process (PSP)の実施の定着化

(Microsoft PowerPoint - \220V\213\214\225\266\217\221\224\344\212r\203\\\203t\203g\202o\202o\202s\216\221\227\277ADVIT1-30\224\305.ppt)

業務紹介 ソフトウェア品質コンサルティング業務 URL: ucts/consulting/index.html Process Technology 開発と改善の豊富な経験に基づく実践的なノウハウをご提供いたします コンサルティング実績 Peopl

PowerPoint プレゼンテーション

説明項目 1. 審査で注目すべき要求事項の変化点 2. 変化点に対応した審査はどうあるべきか 文書化した情報 外部 内部の課題の特定 リスク 機会 利害関係者の特定 QMS 適用範囲 3. ISO 9001:2015への移行 リーダーシップ パフォーマンス 組織の知識 その他 ( 考慮する 必要に応

15288解説_D.pptx

ISO9001:2015内部監査チェックリスト

スライド 1

f2-system-requirement-system-composer-mw

目次 1. 背景 2. 改善したいこと 3. 改善策を導き出した経緯 4. 改善策 ( 日本語文チェックツール ) の内容 5. 日本語文チェックツール の実現方法 6. 日本語文チェックツール による変化や効果 7. 日本語文チェックツール の妥当性確認 8. 課題と今後の展望 Copyright

Team Foundation Server 2018 を使用したバージョン管理 補足資料

差分テストのためのイテレーションとテストケース選択 大日本スクリーン製造株式会社ソフトウエア テンナインカンパニー粕渕清孝 Agenda ツールの開発経緯 テスト計画の課題 イテレーションと差分テスト 協調開発のための工夫 まとめ 1

会社概要と私の経歴 1 / 30 会社概要 所在地 : 本社 ( 名古屋市中区 ) 刈谷事業所( 刈谷市 ) 設立 : 売上高 : 40 億 800 万円 (2014 年 3 月期 ) 従業員数 : 235 名 (2014 年 4 月時点 ) 業務内容 : ITSソフト ( ナビ

お客様からの依頼内容とその現状

5. 文書類に関する要求事項はどのように変わりましたか? 文書化された手順に関する特定の記述はなくなりました プロセスの運用を支援するための文書化した情報を維持し これらのプロセスが計画通りに実行されたと確信するために必要な文書化した情報を保持することは 組織の責任です 必要な文書類の程度は 事業の

PGRelief C/C++ 強化ポイント説明書

はじめに : ご提案のポイント

Source Insight

メソッドのまとめ

トレーサビリティとインパクト分析 2011 年 7 月 13 日 海谷治彦 1

【NEM】発表資料(web掲載用).pptx

AUTOSAR OS仕様とTOPPERS/ATK2の使い方

目次 1. はじめに 2. 利用目的別メトリクス一覧表の仕組み 3. 検索機能の使い方 4. 利用シナリオ 5. おわりに Center 1

<4D F736F F D F815B B E96914F92B28DB8955B>

BIM/CIM 活用における 段階モデル確認書 作成マニュアル 試行版 ( 案 ) 平成 31 年 3 月 国土交通省 大臣官房技術調査課

PARTⅢ 検証事例 2. トレーサビリティ管理の自動化に踏み切った理由や経緯 (1) 国際スタンダード認証に関する課題 ISO DO-178B/C IEC などの国際スタンダードでは 開発工程全般にわたって要件が満たされていること ( システムの正しい要件が 正しい方法で

開発・運用時のガイド JDK8への移行に伴う留意点 [UNIX]

スライド 1

2015 TRON Symposium セッション 組込み機器のための機能安全対応 TRON Safe Kernel TRON Safe Kernel の紹介 2015/12/10 株式会社日立超 LSIシステムズ製品ソリューション設計部トロンフォーラム TRON Safe Kernel WG 幹事

Microsoft Word - 倱å‚−æł¸å”�ç¨¿ã…Łã‡¡ã‡¤ã…«_2016-第6勃秂ä¼ı-GrB-ã•„æ´¾çfl�錉玺ㆧㆮ掇éŒfiå−¹ç”⁄敧å−£å„Œã‡™å¤›æł´è¦†æ±‡ã†‰ã‡›æ¤œå⁄ºã†Žã‡‰æŒ¹æ³Łã

宇宙機搭載ソフトウエア開発のアセスメント

Transcription:

XDDP の概要について (Vol.0.1) 2012 年 10 月 18 日佐藤創 Rights Reserved. 1

更新履歴 版数日付内容担当 0.1 2012/10/18 新規作成佐藤創 Rights Reserved. 2

XDDP とは? Rights Reserved. 3

XDDP とは? XDDP(eXtreme Derivative Development Process) 主に組込み系の派生開発の作り込み品質の向上を目的とした 開発プロセス 作り込み品質の向上の結果 テスト工程での欠陥摘出 修正工数の削減 作り込み品質の向上の手段 各種ドキュメントの作成と ドキュメントを基にしたレビューの実施を可能にし 影響箇所の検討漏れ 誤りに気付きやすくする ( 株 ) システムクリエイツ清水吉男氏が開発経験を基に提唱 システム開発からコンサルティングに転じ プロセス改善の経験と実績を通じて定義した開発プロセス 派生開発推進協議会 (AFFORDD) にて成果の活用 および研究会を推進 http://www.xddp.jp/index.shtml Rights Reserved. 4

XDDP とは? 組込みの世界を初め 現在では 派生開発 ( 流用母体に対する変更 追加 削除 移植を行う開発 ) が主流となっている 派生開発は短納期や 自分で書いたソースコードではないなどの 新規開発にはない特徴がある しかし 組織で定義している開発プロセスは新規開発のものがほとんど 新規開発用のプロセスを派生開発に適用すると不都合あり そもそも派生開発用のプロセスが定義されていないこともある その結果 品質の低下 生産性の低下 開発者の慢性的な過負荷などの悪影響がある 品質 生産性を向上させ 技術者が次のプロジェクトにむけた技術習得や学習に時間を割ける組織を目指し 技術者が楽しく仕事に取り組めることを目指す Rights Reserved. 5

XDDP が想定する 派生開発の課題 Rights Reserved. 6

XDDP で想定する 派生開発の課題 現状 一般的に期間が短い 別の担当者が開発したソースコードを読む必要がある ドキュメントが不足しているためソースコード理解が難しい これまでの改修によって 当初の設計思想が崩れている 時間的にも 全体 を理解して取り掛かることが困難 期間が短く 1 人プロジェクトになることがある 変更要求と仕様とのすみわけが曖昧 部分理解 しかできず 影響範囲を漏らす 派生開発独自の課題があるので これらに対応した開発プロセスが必要 XDDP で想定する現状の派生開発プロセスと XDDP で提唱する開発プロセスを比較する Rights Reserved. 7

XDDP で想定する これまでの派生開発のプロセス その 1 最悪パターン 開発プロセスがないパターン 変更前ソースファイル 変更要求書 モジュール情報設計書等 1 要求から変更対象となるソースを修正する 更新後ソースファイル 変更要求を見て 対応するソースを見つけ出し 見つけ次第にどんどん修正をしていく 最終成果物はソースのみ 場合によっては最終成果物として 設計書等も更新する Rights Reserved. 8

XDDP で想定する これまでの派生開発のプロセス その 1 最悪パターン プロセスによる悪影響 開発プロセスがないパターン 適切なテストケースを設定できない ソースの変更理由を第三者が把握できない 変更内容を記載したドキュメントが存在しない ソースの変更箇所を見つけ次第直していく 修正および影響範囲の妥当性を第三者が確認できない 修正が将来の 暗黙の仕様 となり 仕様の競合リスク高い 修正作業の初めよりも 後半のほうがソース理解度が高い 前半の修正の見直しが必要になり工数増加 ソース混乱 Rights Reserved. 9

XDDP で想定する これまでの派生開発のプロセス その 2 新規開発崩しパターン 新規開発崩しパターン 顧客からの変更要求 更新後要求仕様書 更新後設計書 更新後ソースファイル 1 設計上のヒント? 2 コード上のヒント? 3 要求仕様書を更新する 各設計書を更新する ソースコードを更新する 更新前要求仕様書 更新前設計書 変更前ソースファイル ( 出典 : 派生開発 を成功させるプロセス改善の技術と極意, 清水吉男, 技術評論社,2007 年,1.2.20 図 1.9 を参照 ) 既存のドキュメントだけを更新しながら上流から下流へと工程をすすめる 工程間ではレビューをする場合もある Rights Reserved. 10

XDDP で想定する これまでの派生開発のプロセス その 2 新規開発崩し プロセスによる悪影響 新規開発崩しパターン ドキュメントの 文章 の変更 ( 文字を置き換える作業 ) が中心 機能仕様書とソースの対応が不明確で変更箇所を探すのが困難 ドキュメントに表現されていない実装が存在すると手戻りになる 影響箇所を網羅しにくい 不足しているドキュメントを新たに作成せず 更新だけに留める 現在の工程より下流のドキュメント ソースはインプットしない 変更箇所をドキュメントから理解しにくくなる 既存の設計や実装が制約となり 上流工程で検討したことが必ずしもそのまま実現できるとは限らない XDDP には記載されていないが当方が直面した問題 課題 Rights Reserved. 11

XDDP が提案する 課題への対応 Rights Reserved. 12

XDDP 全体のプロセス ( 変更と追加の混合 ) XDDP の主要成果物 変更要求書 変更前ソースファイル スペックアウト資料 変更設計書 5 テストで確認した後で正式文書を更新する ベースの機能仕様書 設計書等 モジュール情報設計書等 1 変更要求を実現する TM 変更要求仕様書 ( 仕様書 ) 3 テストケースを変更する 機能実現に関する関連資料 追加機能要求書 2 追加機能の要求を実現する 追加機能要求書 ( 仕様書 ) 機能追加分のソースファイル 変更後ソースファイル 4 プログラムを結合してテストする テストケース 更新後ソースファイル Rights Reserved. 13 ( 出典 : 派生開発 を成功させるプロセス改善の技術と極意, 清水吉男, 技術評論社,2007 年,2.4 図 2.3を参考に作成 )

1. 変更要求を実現するを詳細化したプロセス 変更前ソースファイル 1.2 変更箇所に対してソース等を調査検討して変更仕様を引き出す スペックアウト資料 変更設計書 1.6 変更設計書に沿ってソースを修正する 変更要求書 その他の資料 1.1 変更要求の変更仕様を抽出する TM 変更要求仕様書 ( 仕様書 ) 1.4 1.5 TM の交点に対して変更設計書を作成する 更新後ソースファイル 変更前ソースファイル 追加機能要求書 ( 仕様書 ) 1.3 追加要求の変更仕様を抽出する スペックアウト資料 変更要求 TM を完了させる モジュール情報設計書等 変更前ソースファイル Rights Reserved. 14 ( 出典 : 派生開発 を成功させるプロセス改善の技術と極意, 清水吉男, 技術評論社,2007 年,2.4.2 図 2.4を参考に作成 )

XDDP で作成する成果物の 3 点セットの概要と期待効果 成果物 3 点セットの概要 成果物名称 カバレッジ 記述内容 レビュー機会 変更要求仕様書 トレーサビリティ マトリクス What (Why) 何を変更するのか? どのような振る舞いを変更するのか? なぜ変更するのか? Where 変更する仕様がどこにあるのか? 変更設計書 How 具体的な変更方法を記述する ( 出典 :AFFORDD 勉強会資料 ( セミナー版 ) 派生開発アプローチ :XDDP の詳細, 派生開発推進協議会,P30 の図を参照 ) 成果物を作成することでレビュー機会を確保する なぜ変更するのか 何を変更するのか どこを変更するのか どのように変更するのか が見えるドキュメント作成を行うことで レビューでの指摘が行いやすくなる Rights Reserved. 15

XDDP で作成する成果物の 3 点セットの概要と期待効果 主要な成果物 3 点セット 成果物名称概要期待効果 変更要求仕様書 (USDM) 変更要求トレーサビリティ マトリクス 変更設計書 要求と仕様を区別し 要求から導き出される仕様を網羅したり 仕様から想定される要求を導き出して 要求を実現するための仕様を洗い出すツール 要求と仕様を階層構造で表現したもの 変更要求 - 変更仕様 - 変更箇所 ( ソースなど ) をつなぎ 要求や仕様がどの変更箇所で実現されるのかを示すツール 縦軸に要求と仕様を記載し 横軸にソースファイルを記載し マトリクスで変更箇所をトレースできるようにしたもの 変更要求トレーサビリティ マトリクスにおいて 変更箇所の 1 つ 1 つに対応して作成される 変更差分の設計書 要求と仕様を明確に区分し 漏れのない仕様の抽出をする 関係者間での合意の形成を促進する 要求 - 仕様 - 変更箇所が 漏れなく落としこまれていることを第三者が判断できる 変更箇所の漏れがあった場合に 第三者がレビュー等で気づきやすくなり 影響箇所の検討漏れを予防できる 具体的な変更内容を事前にレビューすることができる その他の関連成果物 成果物名称概要期待効果 スペックアウト資料 仕様の検討時点で 不明確な機能や動作についてリバースエンジニアリングで仕様をまとめた資料 不明確な動作仕様を明らかにでき 第三者のレビューを可能にする 既存ドキュメントに不足している資料を追加することで今後の保守に役立てる Rights Reserved. 16

XDDP で解決を目指すこと 変更要求を変更仕様にブレイクダウンする ( 変更要求仕様書の作成 ) 変更要求に関連する既存仕様をソース及び各種設計書を参照して調査し 不足ドキュメントをスペックアウト資料として作成 変更要求と変更箇所のトレーサビリティマトリクスを作成する 変更要求と TM の交点に対して変更設計書を作成する ソースの変更は最後にまとめて行う 仕様検討モレを削減する 第三者によるレビューを可能にする 第三者による影響箇所の検討モレを気付きやすくする ソースの修正工程以前に大半の欠陥を摘出できる ( 計画的な品質の作り込みが可能 ) Rights Reserved. 17

XDDP で想定する これまでの派生開発のプロセス その 1 プロセスによる悪影響が解消されるか? 開発プロセスがないパターン ソースの変更理由を第三者が把握できない 変更内容を記載したドキュメントが存在しない ソースの変更箇所を見つけ次第直していく 適切なテストケースを設定できなスペックアウトい /TM/ 変更設計書の作成で第三者もレビューしやすい 修正および影響範囲の妥当性を第三者が確認できない 修正が将来の 暗黙の仕様 となり 仕様の競合リスク高い スペックアウト / 変更設計書のドキュメントを残すので後から追跡可能 修正作業の初めよりも 後半のほうがソース理解度が高い 前半の修正の見直しが必要になり工数増加 ソース混乱 ソースは最後にまとめて修正することで解消 Rights Reserved. 18

XDDP で想定する これまでの派生開発のプロセス その 2 プロセスによる悪影響が解消されるか? 新規開発崩しパターン ドキュメントの 文章 の変更 ( 文字を置き換える作業 ) が中心 機能仕様書とソースの対応が不明確で変更箇所を探すのが困難 不足しているドキュメントを新たに作成せず 更新だけに留める 関連ドキュメントとソースを全部調査してから変更仕様や対処方法を決定するので解消 ドキュメントに表現されていない実装が存在すると手戻りになる 関連するソースも参照するので影響箇所を網羅しやすい 影響箇所を網羅しにくい 不足ドキュメントをスペックアウトするので解消 変更箇所をドキュメントから理解しにくくなる 現在の工程より下流のドキュメント ソースはインプットしない 既存の設計や実装が制約となり 上流工程で検討したことが必ずしもそのまま実現できるとは限らない 関連ドキュメントとソースを全部調査してから変更仕様や対処方法を決定 XDDP には記載されていないが当方が直面した問題 課題 するので解消 Rights Reserved. 19

XDDP で想定する 派生開発の課題 現状 に対応したプロセス 部分理解 しかできず 影響範囲を漏らす 一般的に期間が短い 期間の短さに対応した 差分ベースの開発プロセス 別の担当者が開発したソースコードを読む必要がある ドキュメントが不足しているためソースコード理解が難しい これまでの改修によって 当初の設計思想が崩れている 時間的にも 全体 を理解して取り掛かることが困難 期間が短く 1 人プロジェクトになることがある 変更要求と仕様とのすみわけが曖昧 今回変更必要な仕様をリバースエンジニアリングしながら開発 部分理解 が前提 全体を理解することは不可能 ドキュメント作成 レビュー実施を通じて 1 人プロジェクト状態を解消 USDMで要求と仕様を明確にして漏れのない要求仕様定義 Rights Reserved. 20

XDDP への疑問点 Rights Reserved. 21

XDDP の効果に関する疑問点 疑問点と調査結果 ( 成果物に関連すること ) 疑問点 変更要求 TM で影響箇所のモレをなくす ということだが そもそも XDDP は 部分理解 が前提である 部分理解しかしていない状態で どのように影響範囲を特定するのか? そこの方法論は何? TM は 横軸にファイル名を用いるということだが それではレビューの際に詳細すぎて ソースコードを熟知した人がいないと 気付きが誘発 されない 差分設計書とは具体的にどんなフォーマットを想定している? スペックアウトするときに有効な技法や 記述フォーマットは何か? 調査結果 具体的には変更要求 TM と レビューにて影響箇所のモレを見つける 他の担当者の 気付きを誘発 することが主眼であり 方法論としては存在しない 補足資料として リソース間のつながりを示す資料 機能間の依存関係を示す資料 などがあると より影響範囲を特定しやすい との提言はあるが 具体性および実証成果に欠ける ソースコードで粒度が小さすぎるのであれば 別の機能単位などの有効な基準を用いる 横軸にどのような基準を採用するかは プロジェクト特性に応じて判断が必要 今回の変更箇所が明確に判断でき 変更仕様が実現されていることがわかるものであればなんでもよく 規定はしていない サンプルとしては関数差分仕様書や フローチャートのようなものを想定している 変更前と変更後が明確なのであれば問題なく 特にフォーマットは規定していない 特に規定はしていない プロジェクトに応じて適宜選択が必要である Rights Reserved. 22

XDDP の効果に関する疑問点 疑問点と調査結果 ( プロセスに関連すること ) 疑問点 変更箇所を見つけ次第にソース修正して ドキュメントを残さないという最悪プロセスを想定しているので すでにドキュメントを残しているプロセスに対しては大きな効果はないのでは? 正式ドキュメントへの変更内容の反映は テストが終わってから とあるが では なにをインプットとしてテストケースを抽出するのか?XDDP の主要な成果物はすべて差分なので 影響範囲を含めたテストケースの抽出ができるのか? 規定されているプロセスが大きすぎる 例えば 変更箇所に対してソース等を調査検討して変更仕様を引き出す プロセスで ソースを調査して 要求仕様として抽出するときに どんなことに留意してスペックアウトすると良いのか? ここでの検討 調査漏れがあれば 変更仕様も漏れてしまう レビューにおいて XDDP 成果物のみだと 差分のみが示されており 直接変更した箇所以外の機能や動作について ドキュメントから確認することができない これに気付けるのは TM のみだが 粒度がソースファイル単位であり 気付きを得にくい レビューによって品質を確保することを重視しているプロセスであると考えられるが プロジェクトによっては有識者が不在でレビューアも母体システムについて理解が乏しいケースも想定される そうした場合の品質確保はどのように行われるのか 調査結果 新規開発崩しでの課題解決にはつながる 元々採用しているプロセスによっては 大きな効果を得られない可能性がある どのようにすれば 影響範囲を含めた漏れのないテストケースを抽出できるのかは規定していない 今後の課題である 特に詳細な手順は定めていない 変更要求に関連すると思われるソースやドキュメントを調査して 必要と思われる仕様をスペックアウトしながら 理解した内容を 変更要求仕様書にまとめていく という大枠のみを示している レビューでは TM をベースとして 影響箇所の漏れや誤りについて 気付きを促す ことを主眼としている ソースファイル単位で気づきを得られない場合は 適切な粒度の単位を用いるか 他の補助資料 補助プロセスを適宜加える 有識者が不在のケースについては言及されていない 明確に定めた成果物を作成する時点で 設計者自身が設計誤りに気付きやすくなるため 設計時点での品質の作り込み効果も多少は期待できると想定される Rights Reserved. 23

XDDP で行われている研究活動 研究会のテーマ 障壁の克服方法 上位の要件開発技法と USDM の連携 USDM の入門 ソフトウェア品質要求の定義 XDDP の入門 USDM のリスク管理への応用 XDDP とテストプロセスとの接続 SPLと XDDP の連携 影響箇所の気付き USDM の支援ツール Agile 開発との連携 XDDP の支援ツール ハードの派生開発への適用 PFD の支援ツール 大規模システムへの効果的対応 USDMと形式言語との接合における曖昧表現の克服 ビジネス領域での XDDP の活用 派生開発におけるスペックアウトの仕方 USDM とユースケースの連携 XDDP とモデル駆動開発の融合 まだまだ周辺領域の研究は始まったばかりなので 今後の検討課題は多い Rights Reserved. 24

参考文献 [1] 派生開発 を成功させるプロセス改善の技術と極意, 清水吉男, 技術評論社,2007 年 [2] 改訂第 2 版 [ 入門 + 実践 ] 要求を仕様化する技術 表現する技術 ~ 仕様が書けていますか?, 清水吉男, 技術評論社,2010 年 [3] 派生開発アプローチ :XDDP の詳細 ~ 派生開発にマッチした開発アプローチ AFFORDD 勉強会資料, 派生開発推進協議会,2012 年 [4] 派生開発推進協議会のサイト,http://www.xddp.jp/ Rights Reserved. 25