1
短 納 期 開 発 現 場 へ の XDDP 導入手法
T h e me t h o d o f in t r o d u c in g X D D P
t o th e q u i c k d e l iv e r y d e v e l o p me n t
主 査 : 清 水 吉 男 ( 株 式 会 社 シ ス テ ム ク リ エ イ ツ ) 副 主 査 : 飯 泉 紀 子 ( 株 式 会 社 日 立 ハ イ テ ク ノ ロ ジ ー ズ ) ア ド バ イ ザ ー : 足 立 久 美 ( 株 式 会 社 デ ン ソ ー ) 研 究 員 ( リ ー ダ ー ) : 森 哲 史 ( 三 菱 プ レ シ ジ ョ ン 株 式 会 社 ) 研 究 員 : 南 迫 祐 樹 ( 富 士 ゼ ロ ッ ク ス ア ド バ ン ス ト テ ク ノ ロ ジ ー 株 式 会 社)研 究 概 要
研 究 概 要
研 究 概 要
研 究 概 要
短 納 期 開 発 現 場 で は , 工 期 の 短 さ が 原 因 で 変 更 設 計 や 影 響 範 囲 の 特 定 を 十 分 に 実 施 で き な い こ と が 多 い . そ の 結 果 , 不 具 合 が 発 生 し , さ ら に 工 期 を 圧 迫 し て い る . こ の 状 況 を 打 開 す る 方 法 と し て X D D P ( e X t r e m e D e r i v a t i v e D e v e l o p m e n t P r o c e s s ) が 提 唱 さ れ て い る が , 現 場 で は X D D P の 教 育 に か か る 時 間 や X D D P 導 入 に よ る 作 業 時 間 の 増 加 が 心 理 的 な 障 壁 と な り , 導 入 に 踏 み 切 れ な い . そ こ で 我 々 は , 現 場 の 既 存 成 果 物 か ら X D D P の 成 果 物 サ ン プ ル を 作 成 で き る 手 法 「R E X - P 」 を 考 案 し , こ の サ ン プ ル を 使 っ た 説 明 に よ っ て , 教 育 時 間 に 対 す る 不 安 の 解 消 を 図 っ た . ま た , 現 場 の 作 業 を X D D P の 作 業 に 置 き 換 え た 際 の 時 間 の 減 少 効 果 を 数 値 で 示 す こ と の で き る 「 な が ら 作 業 置 換 表 」 を 考 案 し , 作 業 時 間 の 増 加 に 対 す る 不 安 の 解 消 を 図 っ た . 今 回 考 案 し た 手 法 に よ っ て , 現 場 に 馴 染 み の あ る 事 例 の サ ン プ ル を 使 っ て X D D P を 説 明 で き る よ う に な り , 導 入 に よ る メ リ ッ ト を 数 値 で 具 体 的 に 示 せ る よ う に な っ た . そ の 結 果 , 短 納 期 開 発 現 場 の 心 理 的 障 壁 を 解 消 で き ,X D D P を 試 行 導 入 す る こ と に 成 功 し た .A b s t r a c t
A t t h e q u i c k d e l i v e r y d e v e l o p m e n t , c h a n g e d e s i g n a n d s p e c i f i c o f e f f e c t r a n g e c o u l d n ’ t b e o f t e n e x e c u t e d s u f f i c i e n t l y f o r s h o r t c o n s t r u c t i o n p e r i o d . A s a r e s u l t , c o n s t r u c t i o n s c h e d u l e w a s c o m p r e s s e d b y d e f e c t s o c c u r . A s t h e w a y t o o v e r c o m e t h i s s i t u a t i o n , X D D P ( e X t r e m e D e r i v a t i v e D e v e l o p m e n t P r o c e s s ) h a s b e e n p r o p o s e d , b u t t h e y c o u l d n ’ t t r y t o i n t r o d u c e i t b e c a u s e t i m e t h a t t a k e s f o r e d u c a t i o n o f X D D P a n d i n c r e a s e o f w o r k i n g t i m e f o r i n t r o d u c t i o n o f X D D P i s p s y c h o l o g i c a l b a r r i e r . T h e r e f o r e , w e d e v i s e d " R E X - P " m e t h o d t h a t c a n c r e a t e s a m p l e o f a r t i f a c t s o f X D D P b a s e d o n e x i s t i n g a r t i f a c t s a t t h e d e v e l o p m e n t a n d t r i e d t o e l i m i n a t e c o n c e r n s o f e d u c a t i o n t i m e b y d e s c r i p t i o n s u s i n g s a m p l e . I n a d d i t i o n , w e t r i e d t o e l i m i n a t e c o n c e r n s o f i n c r e a s e o f w o r k i n g t i m e b y d e v i s i n g " N a g a r a W o r k R e p l a c e m e n t T a b l e " c a n s h o w n n u m e r i c a l l y t h a t t i m e i s r e d u c e d w h e n r e p l a c i n g w o r k a t t h e d e v e l o p m e n t t o w o r k o f X D D P . B y d e v i s i n g t h i s m e t h o d , w e c a n n o w e x p l a i n X D D P b y u s i n g s a m p l e o f c a s e s t h a t i s f a m i l i a r t o t h e d e v e l o p m e n t a n d i l l u s t r a t e n u m e r i c a l l y b e n e f i t f o r i n t r o d u c t i o n . A s a r e s u l t , w e c a n e l i m i n a t e p s y c h o l o g i c a l b a r r i e r a t t h e d e v e l o p m e n t a n d i n t r o d u c e X D D P t o t h e q u i c k d e l i v e r y d e v e l o p m e n t . 第 6 分 科 会 B グ ル ー プ2 1 . 1 .1 . 1 . 研 究 動 機研 究 動 機 研 究 動 機研 究 動 機 1 . 1 . 1 . 1 .1 . 1 . 1 . 1 . 短 納 期 開 発 の短 納 期 開 発 の短 納 期 開 発 の短 納 期 開 発 の 実 態実 態実 態 実 態 我 々 の 派 生 開 発 の 現 場 は , 開 発 期 間 0 . 5 ~ 1 . 0 [ 月 ] , 開 発 要 員 1 ~ 2 [ 人 ] , 開 発 規 模 1 . 5 ~5 . 0 [ k S L O C ] の 短 納 期 開 発 で あ る . 短 納 期 開 発 現 場 で は 工 期 の 短 さ が 原 因 で 変 更 設 計 , 及 び 変 更 に よ る 影 響 範 囲 の 特 定 が 十 分 に 行 わ れ な い ま ま 実 装 が 進 め ら れ る 場 合 が 多 い . そ の た め 表 1 に 示 す よ う な 「 変 更 ミ ス 」 や 「 変 更 漏 れ 」 の 不 具 合 が 発 生 し , こ れ が 工 期 を 圧 迫 す る と い う 負 の ス パ イ ラ ル 状 態 に 陥 っ て い る . 表 表 表 表 1 . 代 表 的 な 不 具 合 事 例代 表 的 な 不 具 合 事 例代 表 的 な 不 具 合 事 例 ( 組 込 系 の 派 生 開 発代 表 的 な 不 具 合 事 例 組 込 系 の 派 生 開 発組 込 系 の 派 生 開 発組 込 系 の 派 生 開 発 ) 不 具 合 不 具 合不 具 合 不 具 合 の 種 類 の 種 類の 種 類 の 種 類 不 具 合 事 例 不 具 合 事 例 不 具 合 事 例 不 具 合 事 例 研 究 員 研 究 員 研 究 員 研 究 員 A 研 究 員研 究 員研 究 員研 究 員 B 変 更 ミ ス 誤 っ て 配 列 の 領 域 外 に ア ク セ ス す る 処 理 を 埋 め 込 ん だ た め , 障 害 が 発 生 し た . 状 態 の 取 得 方 法 , 及 び 処 理 対 象 の バ ッ フ ァ サ イ ズ を 誤 り , 障 害 が 発 生 し た . 変 更 漏 れ 明 日 の 天 気 予 報 を 複 数 の 箇 所 に 表 示 す る シ ス テ ム が あ り , 表 示 内 容 を 文 字 か ら 絵 文 字 に 変 更 し た 所 , 一 部 の プ ロ グ ラ ム で 変 更 漏 れ が 発 生 し , 一 部 の 表 示 が 文 字 の ま ま と な っ た . パ ス ワ ー ド 8 回 の 失 敗 で 全 デ ー タ を 消 去す る 体 重 計 が あ り , 新 た な デ ー タ が 追加 さ れ た と き の 変 更 漏 れ に よ っ て , パ ス ワ ー ド 8 回 失 敗 し て も , そ の デ ー タだ け 消 去 さ れ ず に 残 っ て し ま っ た . 1 . 2 . 1 . 2 .1 . 2 . 1 . 2 . X D D PX D D PX D D PX D D P 導 入 の 効 果 と 導 入 に 対 す る 障 壁導 入 の 効 果 と 導 入 に 対 す る 障 壁導 入 の 効 果 と 導 入 に 対 す る 障 壁 導 入 の 効 果 と 導 入 に 対 す る 障 壁 我 々 は こ の よ う な 状 況 を 打 開 す る た め ,X D D P ( e X t r e m e D e r i v a t i v e D e v e l o p m e n t P r o c e s s ) の 導 入 を 検 討 し た . X D D P は , 派 生 開 発 で 発 生 し や す い 問 題 ( 「 部 分 理 解 の 罠」 , 「 変 更 漏 れ 」 な ど) を 解 決 す る た め に 開 発 さ れ た 派 生 開 発 専 用 の プ ロ セ ス で あ る . そ こ で , 我 々 の 現 場 で 発 生 し た 代 表 的 な 不 具 合 事 例 の 中 で X D D P に よ っ て 対 応 が 可 能 な 不 具 合 の 割 合 を ,X D D P 3 点 セ ッ ト の 仕 組 み と 7 つ の 設 計 原 理 の 関 係[ 1 ]を 用 い て 調 査 し た . そ の 結 果 , 不 具 合 事 例 の 約 7 8 % が X D D P に よ っ て 対 応 で き る 問 題 で あ る こ と が 判 明 し た .( 図 1 ) X D D P は , 実 装 を 行 う 前 に 3 点 セ ッ ト (「 変 更 要 求 仕 様 書 」 , 「 ト レ ー サ ビ リ テ ィ マト リ ク ス( T M ) 」 , 「 変 更 設 計 書 」 ) と 呼 ばれ る 成 果 物 の 作 成 と レ ビ ュ ー を 行 う こ と で , 「 変 更 ミ ス 」 や 「 変 更 漏 れ 」 に 気 づ く た め の 仕 組み を 持 つ . こ の 仕 組 み に よ る 実 装 前 の 十 分 な 品 質 確 保 に よ り 手 戻 り 作 業 を 減 ら す こ と が で き れ ば , 不 具 合 の 削 減 や 生 産 性 の 向 上 が 期 待 で き る . そ の た め 我 々 は , 不 具 合 の 発 生 に よ っ て 工 期 を 圧 迫 し て い る 現 場 の 状 況 を ,X D D P の 導 入 に よ っ て 改 善 で き る と 考 え た . し か し , 開 発 の 工 期 が 短 く , 日 頃 か ら 納 期 に 追 わ れ て い る 現 場 で は , 新 た な 手 法 を 導 入 す る た め の 心 理 的 障 壁 は 高 く ,X D D P を 導 入 す る こ と は 非 常 に 困 難 で あ っ た . 図 図 図 図 1 . 不 具 合 事 例 の不 具 合 事 例 の不 具 合 事 例 の 調 査不 具 合 事 例 の調 査調 査調 査 結 果結 果結 果結 果
3 2 . 現 状 分 析現 状 分 析現 状 分 析現 状 分 析 2 . 1 . 2 . 1 .2 . 1 . 2 . 1 . 現 場 で の 心 理 的 障 壁現 場 で の 心 理 的 障 壁現 場 で の 心 理 的 障 壁現 場 で の 心 理 的 障 壁 我 々 は X D D P の 導 入 に つ い て , 現 場 で ど の よ う な 障 壁 が 発 生 す る か を 調 べ る た め , 事 前に 現 場 へ の 意 識 調 査 ア ン ケ ー ト を 実 施 し た . 意 識 調 査 ア ン ケ ー ト の 結 果 か ら 最 も 顕 著 で あ っ た 意 見 を 抜 粋 す る と , 以 下 の 3 点 に な る . ( 意 識 調 査 ア ン ケ ー ト の 内 容 と 結 果 は , 付 録 1 と 付 録 2 を 参 照 ) ( 1 )世間 で 本 当 に 効 果 が 出 て い る か , 疑 問 に 思 う . ( 2 )効 果 は 得 ら れ る か も し れ な い が , そ れ 以 上 に 作 業 時 間 が 増 え る . ( 3 )十 分 な 教 育 な し に 方 法 論 だ け 導 入 し て も 効 果 が 上 が ら な い . 上 記 3 点 の 意 見 か ら , 短 納 期 開 発 現 場 で は X D D P の 導 入 に 対 す る 障 壁 と し て 心 理 的 障 壁 が 中 心 と な っ て い る こ と が 判 明 し た . そ こ で 我 々 は 上 記 3 点 の 意 見 が 現 場 の ど の よ う な 心 理 状 態 か ら 発 生 す る か を 考 察 し た . ( 1 ) の 意 見 に つ い て は , X D D P の 現 場 に 対 す る 効 果 が 分 か ら な い と い う 心 理 状 態 か ら 生 じた 不 安 ( 「 効 果 に 対 す る 不 安 」 ) で あ る と 考 え た . こ の 心 理 状 態 は , 何 ら か の 改 善 を 行 い た い と は 考 え て い る が , 適 切 な 改 善 策 が 思 い 浮 か ば な い 現 場 で 発 生 し や す い も の と 思 わ れ る . ( 2 ) の 意 見 に つ い て は , X D D P の 効 果 を 期 待 し て い る が 「 作 業 時 間 の 増 加 に 対 す る 不 安 」 が 強 く て 導 入 に 踏 み 切 れ な い と い う 心 理 状 態 か ら 発 生 し て い る と 考 え た . こ の 心 理 状 態 は 「 作 業 時 間 が 増 え な け れ ば 導 入 す る が , 作 業 時 間 が 増 え る か ら 導 入 で き な い 」 と も 解 釈で き , 時 間 の 増 加 に 不 安 を 持 つ 現 場 で 発 生 し や す い も の と 思 わ れ る . ( 3 ) の 意 見 に つ い て は , 「 十 分 な 教 育 が あ れ ば 効 果 は 上 が る が , 十 分 な 教 育 が な け れ ば 効 果 は 上 が ら な い 」 と い う 考 え か ら 発 生 し た も の で あ る . し か も , 時 間 の 増 加 に 不 安 を 持 つ現 場 で は 十 分 な 教 育 を 受 け る た め の 時 間 が な い ( 「 教 育 時 間 に 対 す る 不 安 」 ) . 以 上の 考 察 か ら , 我 々 の 現 場 で は , 「 効 果 に 対 す る 不 安 」 , 「 作 業 時 間 の 増 加 に 対 す る 不 安 」 及 び 「 教 育 時 間 に 対 す る 不 安 」 の 3 つ が 心 理 的 障 壁 と な っ て , X D D P の 導 入 に 踏 み 切 れ な い と 結 論 づ け た . 2 . 2 . 2 . 2 .2 . 2 . 2 . 2 . 先 行 技 術先 行 技 術先 行 技 術先 行 技 術 X D D P の 導 入 に 対 す る 現 場 の 心 理 的 障 壁 を 扱 っ た 先 行 研 究[ 2 ]で は ,X D D P の 心 理 的 障 壁 を 「X D D P へ の 不 信 」 , 「 最 初 の 1 歩 へ の 不 安 」 及 び 「 変 化 へ の 抵 抗 」 に 分 類 し て お り , 実 在 の プ ロ ジ ェ ク ト に 対 す る X D D P の シ ミ ュ レ ー シ ョ ン を 実 行 す る こ と で 「 X D D P の 効 果 に 対 す る 疑 念 」 を 解 消 す る 方 法 を 挙 げ て い る . こ の 方 法 は 我 々 の 現 場 で 発 生 し た 「 効 果 に 対 す る 不 安 」 を 解 消 す る 方 法 と し て 有 効 で あ る . し か し , 「 作 業 時 間 の 増 加 に 対 す る 不 安 」 , 「 教 育 時 間 に 対 す る 不 安 」 を 解 消 す る 方 法 は 提 示 さ れ て い な い . ま た 別 の 先 行 研 究[ 1 ]で は ,X D D P を 部 分 的 に 導 入 す る 方 法 を 挙 げ て い る が , こ の 方 法 は S L C P - J C F 2 0 0 7 ( S o f t w a r e L i f e C y c l e P r o c e s s - J a p a n C o m m o n F r a m e 2 0 0 7 ) な どに よ っ て , 各 工 程 で の 規 律 が 確 保 さ れ た 組 織 に の み 容 認 さ れ た 方 法 で あ る . 従 っ て , そ れ 以 外 の 組 織 に お い て は ,X D D P の 部 分 的 な 導 入 に よ る 十 分 な 効 果 は 期 待 で き な い[ 3 ]. そ の た め 我 々 は , 現 場 の 「 作 業 時 間 の 増 加 に 対 す る 不 安 」 と 「 教 育 時 間 に 対 す る 不 安 」 を 解 消 し ,X D D P を 全 面 的 に 導 入 す る 方 法 を 考 案 す る 必 要 が あ っ た .
4 3 . 解 決 策解 決 策解 決 策解 決 策 短 納 期 開 発 現 場 に X D D P を 導 入 す る た め に は , 現 場 作 業 者 の 「 作 業 時 間 の 増 加 に 対 す る 不 安 」 と 「 教 育 時 間 に 対 す る 不 安 」 を 解 消 す る 必 要 が あ る . そ こ で 我 々 は , 以 下 の 施 策 を 試 み た . ( 1 )「 教 育 時 間 に 対 す る 不 安 」 を 解 消 す る た め に 現 場 の デ ー タ を 使 っ て 3 点 セ ッ ト の サ ン プ ル を 作 成 す る 手 法 「R E X - P 」1を 考 案 し , こ の サ ン プ ル を 使 っ た 説 明 会 を 実 施 す る . ( 2 )「 作 業 時 間 増 加 に 対 す る 不 安 」 を 解 消 す る た め , 「 な が ら 作 業 置 換 表 」 を 作 成 し , 調 査 や 確 認 の た め の 作 業 時 間 が 減 少 す る 仕 組 み を 説 明 す る . 3 . 1 . 3 . 1 .3 . 1 . 3 . 1 . サ ン プ ル 作 成サ ン プ ル 作 成サ ン プ ル 作 成サ ン プ ル 作 成 手 法 「手 法 「手 法 「手 法 「 R E XR E XR E X -R E X- P--PPP 」 を 使 っ た」 を 使 っ た」 を 使 っ た」 を 使 っ た 現 場 サ ン プ ル現 場 サ ン プ ル現 場 サ ン プ ル現 場 サ ン プ ル の 作 成の 作 成の 作 成 の 作 成 X D D P を 現 場 に 導 入 す る 際 , 多 く の 組 織 で は , 導 入 推 進 者2が 一 般 的 な X D D P の 事 例 を 現 場 作 業 者 に 紹 介 し , そ れ を 参 考 に し て 現 場 作 業 者 が X D D P に 取 り 組 む , と い う 方 式 を 採 っ て い る . こ の 場 合 , 現 場 作 業 者 に は , 次 の よ う な 「 教 育 時 間 に 対 す る 不 安 」 が 生 じ る . ( 1 )一 般 的 な 事 例 だ け で は , 自 分 達 の 作 業 を 具 体 的 に 想 像 で き な い . ( 2 )不 明 点 を 導 入 推 進 者 に 質 問 し た 時 , 導 入 推 進 者 も 文 献 情 報 し か 知 ら な い た め , 適 切 な 回 答 を 得 ら れ な い . 「 教 育 時 間 に 対 す る 不 安 」 を 解 消 す る た め に は , 導 入 推 進 者 自 身 が X D D P を 実 践 し , 現 場 の デ ー タ を 使 っ た X D D P 成 果 物 の サ ン プ ル ( 以 下 「 サ ン プ ル 」 ) を 作 成 す る の が 効 果 的 で あ る . し か し , 導 入 推 進 者 が サ ン プ ル を 作 成 す る た め に は , 事 前 に 対 象 プ ロ ジ ェ ク ト の 知 識 を 習 得 す る 必 要 が あ り , 非 常 に 大 き な 手 間 が 掛 か る . ま た , 導 入 推 進 者 の 努 力 に よ っ て 対 象 プ ロ ジ ェ ク ト の 知 識 を 習 得 す る こ と が で き た と し て も , プ ロ ジ ェ ク ト に よ っ て は , 要 求 仕 様 書 の 内 容 と ソ フ ト ウ ェ ア コ ー ド の 変 更 内 容 と の 対 応 付 け が で き な い た め に , サ ン プ ル 作 成 が 困 難 に な る 場 合 も あ る . そ こ で 我 々 は , 既 存 プ ロ ジ ェ ク ト の 成 果 物 で あ る ソ フ ト ウ ェ ア コ ー ド 情 報 を 元 に , 定 型 化し た 作 業 に よ り サ ン プ ル 作 成 を 行 う 手 法 「R E X - P 」 及 び 「 R E X - P 」 で 使 用 す る 様 式 「 変 更 内 容 一 覧 表 」( 付 録 3 参 照 ) を 考 案 し た . 「 R E X - P 」 で は , 既 存 の ソ フ ト ウ ェ ア コ ー ド 情 報 を 利 用 し て , サ ン プ ル を 作 成 す る . こ の 時 「 変 更 内 容 一 覧 表 」 に は , ソ フ ト ウ ェ ア コ ー ド の 差 分 情 報 ( 変 更 前 と 変 更 後 ) と 要 求 仕 様 書 等 の 文 書 情 報 と の 対 応 付 け に 必 要 な 情報 が 書 き 込 ま れ る . こ れ に よ り , 対 象 プ ロ ジ ェ ク ト の 知 識 を 習 得 で き な い 場 合 や , 要 求 仕 様 書の 内 容 と ソ フ ト ウ ェ ア コ ー ド の 変 更 内 容 と の 対 応 付 け が で き な い 場 合 で も , 導 入 推 進 者 に よ る サ ン プ ル 作 成 が 可 能 に な る . 「R E X - P 」 に よ る サ ン プ ル 作 成 手 順 を 図 2 に 示 す . ま た サ ン プ ル 作 成 作 業 の 例 を 付 録 4 及 び 図 3 に 示 す . 「R E X - P 」 を 用 い る こ と に よ っ て 導 入 推 進 者 は , 現 場 デ ー タ を 使 っ た サ ン プ ル 作 成 が 可 能に な る . 現 場 作 業 者 は , 現 場 デ ー タ を 使 っ た サ ン プ ル を 参 照 す る こ と で 自 分 達 の 作 業 を 具 体 的 に 想 像 で き る . そ の 結 果 , 現 場 作 業 者 の 「 教 育 時 間 に 対 す る 不 安 」 が 解 消 す る . 1 「 R E X - P 」 : リ バ ー ス エ ン ジ ニ ア リ ン グ X D D P を 略 し て 命 名 し た . 2 こ こ で 言 う 導 入 推 進 者 に は , 導 入 推 進 者 か ら 依 頼 を 受 け た 外 部 講 師 等 を 含 ん で い る .
5 太い枠線部の作業:定型化された作業 点線部分:作成途中の成果物 調査対象 過去の要 求仕様書 S/Wコードの 差分情報 ①要求項目 を記入する ③変更モジュール, 変更関数,変更内容 を記入する ②全モジュー ル名を記入する ④仕様番 号を付ける 変更要求 仕様書 ⑤仕様内容を 定義する ⑦TMの該当箇所 に○を記入する 変更要求 仕様書 TM 変更 設計書 サンプル 変更内容一覧表 TM 変更内容 一覧表 ⑧変更設計書 を作成する S/Wコード (変更前, 変更後) 変更内容 一覧表 ⑥要求と仕 様の対応付 けを行う No 内容 ① 要求項目を記入する 過去の要求仕様書等より要求項目を抽出し,変更要求仕様書の要求欄に記入する. ② 全モジュール名を記入す る ソフトウェアコード(変更前,変更後)から全モジュール名を抽出し,TMのモジュール名を 記入する. ③ 変更モジュール,変更関 数,変更内容を記入する diff等で調査したソフトウェアコードの差分情報に基づき,「変更内容一覧表」の変更モ ジュール,変更関数,変更内容(変更前,変更後)を記入する. この時,「変更内容一覧表」の変更内容欄に変数名や定数名を直接記入しておくと,続く 作業で変更内容間の関係を見つけやすい. ④ 仕様番号を付ける ③で記入した変更内容間の関係を調べる.この時,つながりのある複数の変更内容(例え ば同じ変数,定数を使っている等)が見つかった場合,「変更内容一覧表」の仕様番号欄 に共通の仕様番号(例えば"仕様1","仕様2"等)を記入する.他とのつながりが見つからな かった変更内容については,それぞれ固有の仕様番号を付ける.このようにして「変更内 容一覧表」の仕様番号欄を全て埋める. ⑤ 仕様内容を定義する ④で付けた仕様番号を変更要求仕様書の仕様番号欄に番号順に記入する.次にそれぞれの 仕様番号について「変更内容一覧表」の内容を元に仕様内容を定義し,変更要求仕様書に 記入する.仕様内容は日本語で動詞とする. 変更要求仕様書の中で要求と仕様との対応付けを行う.①で記入済みの要求と対応付けが 可能な仕様については,対応する要求項目にぶら下げる形で仕様を移動する.もし仕様に 対応する要求項目が存在しない場合は,変更要求仕様書に新しい要求項目を追加する. 変更要求仕様書の仕様番号を要求項目に対応づける形で定義し直す.この時「変更一覧 表」の仕様番号も同様に定義し直す. ⑦ TMの該当場所に○を記入 する 「変更内容一覧表」のモジュール名と仕様番号に基づき,TMの該当個所に○を記入する. ⑧ 変更設計書を作成する 「変更内容一覧表」の変更内容に基づき,変更設計書を作成する. ⑥ 要求と仕様の対応付けを 行う 図 図図 図 2 . 「「「「 R E XR E XR E X -R E X--- PPPP 」 に よ る サ ン プ ル 作 成 手 順」 に よ る サ ン プ ル 作 成 手 順」 に よ る サ ン プ ル 作 成 手 順」 に よ る サ ン プ ル 作 成 手 順 調査対象(仮想の民間航空機シミュレータの派生開発を想定した) 調査対象(仮想の民間航空機シミュレータの派生開発を想定した)調査対象(仮想の民間航空機シミュレータの派生開発を想定した) 調査対象(仮想の民間航空機シミュレータの派生開発を想定した) 変更要求仕様書 変更要求仕様書 変更要求仕様書 変更要求仕様書 変更要求仕様書(作成途中) 変更要求仕様書(作成途中) 変更要求仕様書(作成途中) 変更要求仕様書(作成途中) 変更一覧表 変更一覧表変更一覧表 変更一覧表 変更内容 変更内容 変更内容 変更内容 変更後 変更後 変更後 変更後 空港の種類を示す#define文の34番目に IWAKUNIを追加する 仕様1 空港の最大数示す#define MAX_AIRPORT_NUM=34 仕様2 岩国空港のビットマップ呼び出しを茨城空港の下 に追加する。 // 航空路データを呼び出す switch(airport) case HANEDA:setbitmap(xxxx);break; case NARITA:setbitmap(xxxx);break; ---(中略)--- case IBARAKI:setbitmap(xxxx);break; case IWAKUNI:setbitmap(xxxx);break; default:break; 仕様1 仕様番号 仕様番号仕様番号 仕様番号 変更内容 変更内容 変更内容 変更内容 変更前 変更前変更前 変更前 変更後変更後変更後変更後 airport.h 関数外 空港の種類を示す#define文はHANEDA(1)から IBARAKI(33)まで計33種類である 空港の種類を示す#define文の34番目に IWAKUNIを追加する 仕様1 関数外 空港の最大数示す#define MAX_AIRPORT_NUM=33 空港の最大数示す#define MAX_AIRPORT_NUM=34 仕様2 draw_map.c drwa_map() 教官卓で前回と異なる空港が選択された時、 setbitmap関数を使って空港周辺エリアの航空路 を示すビットマップデータを読み込んでいる。 // 航空路データを呼び出す switch(airport) case HANEDA:setbitmap(xxxx);break; case NARITA:setbitmap(xxxx);break; ---(中略)--- case IBARAKI:setbitmap(xxxx);break; 岩国空港のビットマップ呼び出しを茨城空港の下 に追加する。 // 航空路データを呼び出す switch(airport) case HANEDA:setbitmap(xxxx);break; case NARITA:setbitmap(xxxx);break; ---(中略)--- case IBARAKI:setbitmap(xxxx);break; case IWAKUNI:setbitmap(xxxx);break; 仕様1 変更 変更変更 変更 モジュール モジュール モジュール モジュール 変更関数変更関数変更関数変更関数 仕様番号仕様番号仕様番号仕様番号 既存の要求定義書から得られた要求事項 例:「岩国空港を追加する 」 変更前の S/Wコード 1式 変更後の S/Wコード 1式 要求1 理由 説明 要 求 岩国空港を追加する 要求1 理由 説明 仕様1-1 仕様1-2 仕様1-3 仕 様 選択可能な空港に岩国空港を追加する 岩国空港から航空機が発着できるよう にする 岩国空港選択時、マップ表示画面に岩 国空港を中心とする航空路線を表示す る 要 求 岩国空港を追加する ①要求項目を記入する ①要求項目を記入する ①要求項目を記入する ①要求項目を記入する ③変更モジュール,変更関数, ③変更モジュール,変更関数, ③変更モジュール,変更関数, ③変更モジュール,変更関数, 変更内容を記入する 変更内容を記入する 変更内容を記入する 変更内容を記入する ④仕様番号を付ける ④仕様番号を付ける ④仕様番号を付ける ④仕様番号を付ける ⑤仕様内容を定義する ⑤仕様内容を定義する⑤仕様内容を定義する ⑤仕様内容を定義する ⑥要求と仕様の対応付け ⑥要求と仕様の対応付け⑥要求と仕様の対応付け ⑥要求と仕様の対応付け を行う を行うを行う を行う この段階で全ての要求項目を 抽出できない可能性があるが, ここでは文書から引き出せる要 求項目を抽出するに留め,次 の作業へ進む 変更内容を日本語で表現するの が難しい場合,S/Wコードの変更 内容を「ちょっとだけ読み変え」し て,変更内容欄に書きこむ 理由,説明は空欄ま までも可 この段階で要求項目の漏 れを補う 図 図 図 図 3 . 「「「 R E X「R E XR E X -R E X-- P-P 」 に よ る サ ン プ ル 作 成 作 業 の 例PP」 に よ る サ ン プ ル 作 成 作 業 の 例」 に よ る サ ン プ ル 作 成 作 業 の 例 (」 に よ る サ ン プ ル 作 成 作 業 の 例(( 一 部(一 部一 部一 部 ))))
6 3 . 2 . 3 . 2 .3 . 2 . 3 . 2 . 「 な が ら「 な が ら「 な が ら「 な が ら 作作作 業作業 置 換 表業業置 換 表置 換 表置 換 表 」 に よ る」 に よ る」 に よ る」 に よ る 作 業 時 間 減 少 の 説 明作 業 時 間 減 少 の 説 明作 業 時 間 減 少 の 説 明作 業 時 間 減 少 の 説 明 次に 我 々 は 「 作 業 時 間 の 増 加 に 対 す る 不 安 」 を 解 消 す る た め の 施 策 を 検 討し た . ま ず 我 々 は 現 場 作 業 者 が な ぜ 「 作 業 時 間 の 増 加 に 対 す る 不 安 」 を 感 じ る の か を 分 析 し た . X D D P を 導 入 す る と , 3 点 セ ッ ト と 呼 ば れ る 成 果 物 を 作 成 す る 必 要 が あ る . そ の た め 現 場 作 業 者 に と っ て は ,X D D P の 3 点 セ ッ ト 作 成 作 業 は , 新 た に 追 加 さ れ る 作 業 と 位 置 付 け ら れ る . 一 方 , 先 行 研 究 に よ れ ば ,X D D P は 従 来 の 派 生 開 発 に お け る 作 業 の 順 番 を 効 率 的 に 進 め ら れ る よ う に 変 え た も の で あ る .3 点 セ ッ ト の 作 成 に つ い て も , 従 来 の 作 業 に 追 加 し て 実 施 す る も の で は な く , 従 来 の 作 業 を 置 き 換 え る も の , と し て い る[ 3 ]. 現 場 作 業 者 の 思 考 と X D D P の 仕 組 み の 違 い を 図 4 に 示 す . 我 々 は , 現 場 作 業 者 に X D D P の 仕 組 み を 理 解 さ せ る こ と で , 現 場 作 業 者 の 不 安 を 解 消 で き る と 考 え た . 先行 研 究 に よ れ ば , 従 来 の 派 生 開 発 で は 実 装 作 業3の 中 で 「 な が ら 作 業 」4が 多 く 含 ま れ て お り , こ れ が 実 装 作 業 の 生 産 性 を 悪 化 さ せ て い る[ 3 ]. し か し , 短 納 期 開 発 現 場 で は 「 な が ら 作 業 」 が 現 場 作 業 者 に と っ て 必 然 の 作 業 と な っ て い る た め , 現 場 作 業 者 は 「 な が ら 作 業 」 に よ る 生 産 性 の 悪 化 を 認 識 で き な い . そ こ で 我 々 は , 以 下 の 手 順 で 「 な が ら 作 業 」 の 実 態 調 査 を 行 い ,X D D P 導 入 に よ る 作 業 時 間 減 少 の 予 測 を 定 量 的 な 形 で 現 場 に 示 し た . ( 1 )「 な が ら 作 業 」 に 関 す る ア ン ケ ー ト を 使 っ て 現 場 に お け る 「 な が ら 作 業 」 の 実 態 を 調 査 し た . 「 な が ら 作 業 」 に 関 す る ア ン ケ ー ト の 内 容 を 付 録 5 に 示 す . ( 2 )X D D P を 導 入 し た 場 合 「 な が ら 作 業 」 が ど の よ う に X D D P 作 業 に 置 き 換 え ら れ , 作 業 時 間 が ど の よ う に 変 化 す る か を 説 明 す る た め の 様 式 「 な が ら 作 業 置 換 表 」 を 作 成 し た . ( 3 )「 な が ら 作 業 置 換 表 」 に( 1 ) の ア ン ケ ー ト 結 果 を 入 力 し た . ( 4 )X D D P を 導 入 し た 場 合 , 現 状 の 「 な が ら 作 業 」 が ど の よ う に X D D P 作 業 に 置 き 換 え ら れ , 作 業 時 間 が ど の よ う に 変 化 す る か を 「 な が ら 作 業 置 換 表 」 で 説 明 し た . 「 な が ら 作 業 置 換 表 」 に よ る 説 明 の 手 順 を 図 5 に 示 す . ま た 「 な が ら 作 業 置 換 表 」 を 付 録 6 に 示 す . 「 な が ら 作 業 置 換 表 」 を 用 い る こ と に よ っ て 導 入 推 進 者 は ,X D D P 導 入 に よ る 作 業 時 間 減 少 の 予 測 を 定 量 的 な 形 で 現 場 に 示 す こ と が で き る . 現 場 作 業 者 は ,X D D P 導 入 に よ る 作 業 時 間 減 少 を 理 解 で き る . そ の 結 果 , 現 場 作 業 者 の 「 作 業 時 間 の 増 加 に 対 す る 不 安 が 」 が 解 消 す る . 3 ソ フ ト ウ ェ ア コ ー ド 作 成 工 程 で 行 わ れ る 作 業 を こ こ で は 「 実 装 作 業 」 と 呼 ぶ 4 「 な が ら 作 業 」 : こ こ で は 実 装 作 業 の 中 で 行 わ れ る ソ フ ト ウ ェ ア コ ー ド 作 成 以 外 の 作 業 , 例 え ば 仕 様 の 確 認 , 影 響 個 所 の 検 討 等 を 指 す . 図 図 図 図 4 . 現 場 作 業 者 の 思 考 と現 場 作 業 者 の 思 考 と現 場 作 業 者 の 思 考 と現 場 作 業 者 の 思 考 と X D D P の 仕 組 み の 違 いの 仕 組 み の 違 いの 仕 組 み の 違 い の 仕 組 み の 違 い 現場作業者の思考 現場作業者の思考現場作業者の思考 現場作業者の思考 XDDPの仕組みXDDPの仕組みXDDPの仕組みXDDPの仕組み 1.XDDP未導入の作業量(現状) 1.XDDP未導入の作業量 2.XDDP導入時の作業量(予想) 2.XDDP導入時の作業量 XDDPに関する作業 現在の作業 現在の作業 現在の作業 現在の作業 現在の作業現在の作業現在の作業現在の作業 XDDP作業分 だけ作業量 が増える 従来の作業がXDDP作業 により置き換えられ,トー タルの作業量が減る
7 アンケート アンケート アンケート アンケート ながら作業置換表 ながら作業置換表 ながら作業置換表 ながら作業置換表 変更要求 仕様書 TM 変更設 計書 外部仕様書を読み,要求仕様を確認する 3.普通 1.01.01.01.0 [変更要求仕様書]の作成を行い,外 部仕様書を読み,要求仕様を確認 する。 0.8 0.80.80.80.8 外部仕様書で読み取れなかった不明点を 確認する(メール,電話での問い合わせを 含む) 1.非常に多い 3.03.03.03.0[変更要求仕様書]の作成を行い,不 明点をメール,電話等で確認する。 2.4 2.42.42.42.4 仕様書で表現されていなかった詳細な振る 舞いを人に聞いたり,ドキュメントを読んだ 上で判断する 3.普通 1.01.01.01.0[変更要求仕様書]の作成を行い,不 明点を確認する。 0.8 0.80.80.80.8 (中略) 作業時間合計 20.520.520.520.5 4.0 1.4 5.5 2.0 12.912.912.912.9 ・調査結果が3点セットとして残るた め,過去に調べた内容を思いだす必 要がなくなる(-40%) ・[変更要求仕様書」として文書化す る必要がある(+20%) 作業内容 作業内容作業内容 作業内容 現状の実装工程にお 現状の実装工程にお現状の実装工程にお 現状の実装工程にお ける作業量 ける作業量 ける作業量 ける作業量 XDDPによる作業置換と,その際の時間短縮効果XDDPによる作業置換と,その際の時間短縮効果XDDPによる作業置換と,その際の時間短縮効果XDDPによる作業置換と,その際の時間短縮効果 XDDP導入後の作業時間予測XDDP導入後の作業時間予測XDDP導入後の作業時間予測XDDP導入後の作業時間予測 作業時間の 作業時間の作業時間の 作業時間の 大小 大小 大小 大小 数値化数値化数値化数値化 XDDPへの置き換えXDDPへの置き換えXDDPへの置き換えXDDPへの置き換え 時間短縮のポイント 時間短縮のポイント 時間短縮のポイント 時間短縮のポイント (カッコ内は想定される時間短縮効 (カッコ内は想定される時間短縮効 (カッコ内は想定される時間短縮効 (カッコ内は想定される時間短縮効 果) 果) 果) 果) 3点セットの作成 実装 合計合計合計合計 アンケートでの質問項目 アンケートの回答 アンケートの回答 を数値化したもの XDDPでの作業 置換えを示す XDDPで作業時間がどの ように変化するかを示す XDDP導入時の作 業時間配分予測 作業内容毎の 作業時間合計 現状の作業時間とXDDP導入後の 作業時間を表示する (1) 外部仕様書を読み、要求仕様を確認する □ 非常に多い □ やや多い ■ 普通 □ 少ない □ なし (2) 外部仕様書で読み取れなかった不明点を確 認する(メール、電話での問い合わせを含む) ■ 非常に多い □ やや多い □ 普通 □ 少ない □ なし (3) 仕様書で表現されていなかった詳細な振る 舞いを人に聞いたり、ドキュメントを読んだ上 で判断する □ 非常に多い □ やや多い ■ 普通 □ 少ない □ なし 図図図図 5 . 「 な が ら 作 業「 な が ら 作 業「 な が ら 作 業「 な が ら 作 業 置 換 表 」 に よ る置 換 表 」 に よ る 説 明置 換 表 」 に よ る置 換 表 」 に よ る説 明説 明説 明 のののの 手 順手 順手 順手 順 4 . 解 決 策 の 検 証解 決 策 の 検 証解 決 策 の 検 証解 決 策 の 検 証 4 . 1 . 4 . 1 .4 . 1 . 4 . 1 . 「「「 R E X「R E XR E XR E X -- P--PP 」 に よ る サ ン プ ル の 作 成P」 に よ る サ ン プ ル の 作 成」 に よ る サ ン プ ル の 作 成 」 に よ る サ ン プ ル の 作 成 我 々 は 2 つ の プ ロ ジ ェ ク ト を 選 択 し , 「 R E X - P 」 を 使 っ て サ ン プ ル を 作 成 し た . サ ン プ ル 作 成 に 利 用 し た プ ロ ジ ェ ク ト の 概 要 及 び サ ン プ ル の 概 要 を 表 2 に 示 す . こ の 作 業 に よ り 我 々 は 「R E X - P 」 を 使 う こ と に よ っ て サ ン プ ル 作 成 が 可 能 で あ る こ と を 確 認 し た . 表 表表 表 2 . サ ン プ ル 作 成 に 利 用 し た プ ロ ジ ェ ク ト 概 要 と サ ン プ ル の 概 要サ ン プ ル 作 成 に 利 用 し た プ ロ ジ ェ ク ト 概 要 と サ ン プ ル の 概 要サ ン プ ル 作 成 に 利 用 し た プ ロ ジ ェ ク ト 概 要 と サ ン プ ル の 概 要サ ン プ ル 作 成 に 利 用 し た プ ロ ジ ェ ク ト 概 要 と サ ン プ ル の 概 要 プ ロ ジ ェ ク ト プ ロ ジ ェ ク ト プ ロ ジ ェ ク ト プ ロ ジ ェ ク ト A プ ロ ジ ェ ク トプ ロ ジ ェ ク トプ ロ ジ ェ ク トプ ロ ジ ェ ク ト B プ ロ ジ ェ ク ト の 概 要 交 通 管 制イ ン フ ラ 制 御 ソ フ ト の 機 能 追 加 機 器 C の 制 御 対 象 の 追 加 開 発 規 模 , 開 発 期 間 0 . 5 人 月 ・ 0 . 5 ヶ 月 0 . 6 人 月 ・ 0 . 6 ヶ 月 S / W コ ー ド 規 模 ( 変 更 量 ) 0 . 4 k S L O C 0 . 4 k S L O C S / W コ ー ド 規 模 ( 流 用 元 ) 9 . 3 k S L O C 8 2 . 5 k S L O C サ ン プ ル 変 更 要 求 仕 様 書/ T M A 4 5 枚 A 4 1 枚 変 更 設 計 書 A 4 4 3 枚 A 4 7 枚 サ ン プ ル 作 成 に 要 し た 時 間 1 6 時 間 1 1 時 間 次に サ ン プ ル を 使 っ て 現 場 説 明 会 を 実 施 し た . 説 明 会 実 施 後 に ア ン ケ ー ト を 行 い 「 教 育 時 間 に 対 す る 不 安 」 の 変 化 を 調査 し た . ア ン ケ ー ト 結 果 を 図 6 に 示 す . 研 究 員 A の 現 場 に つ い て は , 「 不 安 あ り 」 の 割 合 が 説 明 会 実 施 前 の 7 0 % か ら 説 明 会 実 施 後 は 4 1 % に 減 少 し た . 一 方 「 不 安 な し 」 の 割 合 が 0 % か ら 1 8 % に 増 加 し た . 研 究 員 B の 現 場 に つ い て は , 「 不 安 あ り 」 の 割 合 が 1 0 0 % か ら 2 9 % に 減 少 し , 「 不 安 な し 」 の 割 合 が 0 % か ら 7 1 % に 増 加 し た . ア ン ケ ー ト の 結 果 か ら , 研 究 員 A , 研 究 員 B の い ず れ の 現 場 で も 「 教 育 時 間 に 対 す る 不 安 」 が 減 っ て い る こ と を 確 認 し た . 図 図 図 図 6 . 「 教 育 時 間 に 対 す る 不 安 」 の 変 化「 教 育 時 間 に 対 す る 不 安 」 の 変 化「 教 育 時 間 に 対 す る 不 安 」 の 変 化「 教 育 時 間 に 対 す る 不 安 」 の 変 化 0% 50% 100% 研究員 研究員研究員 研究員 B 0% 50% 100% 説明会実施前 説明会実施後 研究員 研究員 研究員 研究員A 不安なし 不明 不安あり (N=22~~~27)~ (N=7)
8 4 . 2 . 4 . 2 .4 . 2 . 4 . 2 . 「 な「 な「 な が ら「 なが らが ら 作 業が ら作 業 置 換 表 」 を 使 っ た作 業作 業置 換 表 」 を 使 っ た置 換 表 」 を 使 っ た置 換 表 」 を 使 っ た 説 明説 明説 明説 明 会 の 実 施 会 の 実 施 会 の 実 施 会 の 実 施 「 な が ら 作 業 置 換 表 」 を 使 っ て 現 場 説 明 会 を 実 施 し た . 説 明 会 実 施 後 に ア ン ケ ー ト を 行 い 「 作 業 時 間 の 増 加 に 対 す る 不 安 」 の 変 化 を 調 査 し た . ア ン ケ ー ト の 結 果 を 図 7 に 示 す . 研 究 員 A の 現 場 に つ い て は , 「 不 安 あ り 」 の 割 合 が 説 明 会 実 施 前 の 4 1 % か ら 説 明 会 実 施 後 は 2 3 % に 減 少 し た . 一 方 「 不 安 な し 」 の 割 合 が 0 % か ら 1 8 % ま で 増 加 し た . 研 究 員 B の 現 場 に つ い て は , 「 不 安 あ り 」 の 割合 が 5 7 % か ら 4 3 % に 減 少 し , 「 不 安 な し 」 の 割 合 が 0 % か ら 2 9 % に 増 加 し た . ア ン ケ ー ト の 結 果 , 研 究 員 A , 研 究 員 B の い ず れ の 現 場 で も 「 作 業 時 間 の 増 加 に 対 す る 不 安 」 が 減 っ て い る こ と を 確 認 し た . 5 . 結 論結 論結 論結 論 5 . 1 . 5 . 1 .5 . 1 . 5 . 1 . 取 組 み と 成 果取 組 み と 成 果取 組 み と 成 果取 組 み と 成 果 短 納 期 開 発 現 場 へ X D D P を 導 入 す る 上 で , 「 教 育 時 間 に 対 す る 不 安 」 と 「 作 業 時 間 の 増 加 に 対 す る 不 安 」 が 心 理 的 障 壁 に な っ て い た . そ の 心 理 的 障 壁 を 解 消 す る た め に 「R E X - P 」 と 「 な が ら 作 業 置 換 表 」 を 考 案 し , こ れ ら を 使 っ て 現 場 に 対 す る 説 明 会 を 実 施 し た . 説 明 会 後 の ア ン ケ ー ト で は , 現 場 作 業 者 の 「 教 育 時 間 に 対 す る 不 安 」 と 「 作 業 時 間 の 増 加 に 対 す る 不 安 」 が 減 っ て い る こ と を 確 認 し た . そ の 後 我 々 は ,2 つ の 短 納 期 開 発 プ ロ ジ ェ ク ト に X D D P を 試 行 導 入 す る こ と に 成 功 し た . 導 入 成 功 の 要 因 は , 今 回 考 案 し た 手 法 に よ っ て , 現 場 に 馴 染 み の あ る 事 例 の サ ン プ ル を 導 入 推 進 者 側 で 作 成 で き た こ と と , 導 入 に よ る メ リ ッ ト を 数 値 に よ っ て 具 体 的 に 示 し た こ と に あ る . 5 . 2 . 5 . 2 .5 . 2 . 5 . 2 . 今 後 の 課 題今 後 の 課 題今 後 の 課 題今 後 の 課 題 研 究 員 そ れ ぞ れ の 現 場 に お け る X D D P 導 入 が 試 行 レ ベ ル に 留 ま っ て お り , 広 く 適 用 す る に は 至 っ て い な い . 今 後 は 本 研 究 の 成 果 を 生 か し て X D D P の 導 入 を 進 め て い く . ま た X D D P 導 入 に よ っ て 得 ら れ る 現 場 の 実 績 デ ー タ を 「 な が ら 作 業 置 換 表 」 に フ ィ ー ド バ ッ ク す る こ と で , 「 な が ら 作 業 置 換 表 」 の 精 度 向 上 を 図 っ て い く . 本 論文 が X D D P や そ の 他 様 々 な 改 善 施 策 推 進 の 一 助 に な る こ と を 切 に 願 う . 6 . 参 考 文 献参 考 文 献参 考 文 献参 考 文 献 [ 1 ] 良 知 敦 他 , “ 派 生 開 発 で 成 功 す る た め の 施 策 – 部 分 的 に X D D P の 仕 組 み を 取 り 入 れ た 設 計 書 の 提 案” , ソ フ ト ウ ェ ア 品 質 管 理 研 究 会 第 2 6 年 度 ( 2 0 1 0 年 度 ) 分 科 会 成 果 報 告 , 日 本 科 学 技 術 連 盟, p 1 - 8 , 2 0 1 1 [ 2 ] 長 友 優 治 他 , “ 派 生 開 発 に X D D P を 導 入 す る 際 の 障 壁 と そ の 解 消 に 向 け た ア プ ロ ー チ ” , ソ フ ト ウ ェ ア 品 質 管 理 研 究 会 第 2 5 年 度 ( 2 0 0 9 年 度 ) 分 科 会 成 果 報 告 , 日 本 科 学 技 術 連 盟, p 1 - 8 , 2 0 1 0 [ 3 ] 清 水 吉 男 , “ 「 派 生 開 発 」 を 成 功 さ せ る プ ロ セ ス 改 善 の 技 術 と 極 意 ” , 技 術 評 論 社 , p 3 7 3 -3 8 7 , 2 0 0 7 図 図図 図 7 . 「 作 業 時 間 の 増 加 に 対 す る 不 安 」 の 変 化「 作 業 時 間 の 増 加 に 対 す る 不 安 」 の 変 化「 作 業 時 間 の 増 加 に 対 す る 不 安 」 の 変 化 「 作 業 時 間 の 増 加 に 対 す る 不 安 」 の 変 化 0% 50% 100% 研究員 研究員研究員 研究員 B 0% 50% 100% 説明会実施前 説明会実施後 研究員 研究員 研究員 研究員A 不安なし 不明 不安あり (N=22~~~27)~ (N=7)
付録1.意識調査アンケートの内容
派生開発における開発プロセス改善についてのアンケート 所属 氏名 質問1 □ 0~9工事 □ 10~19工事 □ 20~49工事 □ 50~99工事 □ 100~199工事 □ 200工事以上 質問2 自分達の組織(課又はグループ)で該当すると思われるものを選んで下さい. a) 仕事量に比べて人員数が少ない □ はい □ いいえ □ どちらとも言えない b) 仕事の工期が短い(適正な工期が与えられていない) □ はい □ いいえ □ どちらとも言えない c) 職場内のコミュニケーションが足りない □ はい □ いいえ □ どちらとも言えない d) 担当者の技量が不足している. □ はい □ いいえ □ どちらとも言えない e) 仕事を円滑に進めて行く上で障害となる無駄作業が多い. □ はい □ いいえ □ どちらとも言えない (具体的に「無駄」だと感じている作業があれば,お書き下さい) f) 仕事の進め方が最適化されていない. □ はい □ いいえ □ どちらとも言えない g) 管理者の管理能力が不足している. □ はい □ いいえ □ どちらとも言えない h) その他(自由に書いて下さい) 質問3 自分達の組織の問題について,改善が必要だと思いますか □ 思う □ 思わない □ どちらとも言えない (理由) 質問4 自分達の組織の問題について,自分達自身(自分と同じチームの メンバーだけ)の力で改善できると思いますか □ 思う □ 思わない □ どちらとも言えない (理由) 質問5 我々は派生開発における問題解決の手法としてXDDPという方法 に着目しています.XDDPについてはご存じですか □ 知っている □ 名前は知って いる □ 知らない 質問6 XDDPを当社に導入することについて貴方のお考えをお聞かせ下さ い. □ 賛成 □ 反対 □ 条件付きで賛成 (理由) 質問7 XDDP導入するに当たり不安な要素は何ですか. a) 今までのやり方を変えてまで導入する必要を感じない □ はい □ いいえ □ どちらとも言えない b) 世間で本当に効果が出ているのか,疑問に思う. □ はい □ いいえ □ どちらとも言えない c) 作業時間が増えるだけで,効果が上がらない. □ はい □ いいえ □ どちらとも言えない d) 効果は得られるかもしれないが,それ以上に作業時間が増える. □ はい □ いいえ □ どちらとも言えない e) 我々の仕事には適合していない可能性が高い. □ はい □ いいえ □ どちらとも言えない f) 十分な教育なしに方法論だけ導入しても効果が上がらない □ はい □ いいえ □ どちらとも言えない g) 導入準備に時間を取られるのは嫌だ □ はい □ いいえ □ どちらとも言えない h) 社内の組織標準に合致していない □ はい □ いいえ □ どちらとも言えない i) その他(自由に書いて下さい) 貴方が1年間で担当しているプロジェクト数はいくつですか.概算で 構いませんので教えてください.付録2.意識調査アンケートの結果
それぞれの組織における回答数 それぞれの組織における回答数 それぞれの組織における回答数 それぞれの組織における回答数 研究員A 研究員A 研究員A 研究員A 研究員B研究員B研究員B研究員B は は は は い い い い い い い い い い い い え え え え ど どど ど ち ちち ち ら ら ら ら と とと と も も も も 言 言言 言 え え え え な な な な い い い い は は は は い い い い い いい い い いい い え ええ え ど ど ど ど ち ち ち ち ら らら ら と と と と も もも も 言 言 言 言 え え え え な な な な い いい い 自分達の組織(課又はグループ)で該当すると思われるものを選んで下さ い. a)仕事量に比べて人員数が少ない 26 1 2 6 0 1 b)仕事の工期が短い(適正な工期が与えられていない) 17 3 9 6 0 1 c)職場内のコミュニケーションが足りない 9 11 9 1 1 5 d)担当者の技量が不足している. 8 10 11 3 0 4 e)仕事を円滑に進めて行く上で障害となる無駄作業が多い. 8 5 16 3 0 4 f)仕事の進め方が最適化されていない. 7 4 18 6 0 1 g)管理者の管理能力が不足している. 3 13 12 2 0 5 自分達の組織の問題について,改善が必要だと思いますか 17 1 1 6 0 1 自分達の組織の問題について,自分達自身(自分と同じチームのメン バーだけ)の力で改善できると思いますか 0 17 11 0 2 5 XDDPについて知っていますか 1 22 6 4 2 1 XDDPを導入することについて賛成ですか 2 4 16 1 0 5 XDDP導入するに当たり不安な要素は何ですか. a)今までのやり方を変えてまで導入する必要を感じない 4 9 14 0 5 2 b)世間で本当に効果が出ているのか,疑問に思う. 12 2 13 4 2 1 c)作業時間が増えるだけで,効果が上がらない. 5 2 20 0 3 4 d)効果は得られるかもしれないが,それ以上に作業時間が増える. 11 0 16 4 0 3 e)我々の仕事には適合していない可能性が高い. 2 6 19 1 3 3 f)十分な教育なしに方法論だけ導入しても効果が上がらない 19 0 8 7 0 0 g)導入準備に時間を取られるのは嫌だ 7 2 18 1 3 3 h)社内の組織標準に合致していない 1 3 23 0 2 5 質問内容 質問内容 質問内容 質問内容付録3.変更内容一覧表
変更内容 変更内容変更内容 変更内容 変更前 変更前変更前 変更前 変更後変更後変更後変更後 変更 変更 変更 変更 モジュール モジュールモジュール モジュール 変更関数変更関数変更関数変更関数 仕様番号仕様番号仕様番号仕様番号 変更モジュール名 を記入する 変更関数名を記入す る.関数外の場合は"関 数外"と記入する 変更内容をBefore/Afterの形式で 記入する. その時,ソースコードの変更内容を 出来る限り忠実に(ただしコピーペ ストすることなしに)記入する 変更内容1件につき,仕様番号 を付与する.その時,関連のある 複数の変更内容については,同 じ仕様番号を複数個所に記入す る付録4.「REX-P」によるサンプル作成作業の例
調査対象(仮想の民間航空機シミュレータの派生開発を想定した) 調査対象(仮想の民間航空機シミュレータの派生開発を想定した) 調査対象(仮想の民間航空機シミュレータの派生開発を想定した) 調査対象(仮想の民間航空機シミュレータの派生開発を想定した) 変更設計書変更設計書変更設計書変更設計書 変更要求仕様書 変更要求仕様書 変更要求仕様書 変更要求仕様書 変更要求仕様書(作成途中) 変更要求仕様書(作成途中) 変更要求仕様書(作成途中) 変更要求仕様書(作成途中) 変更一覧表 変更一覧表 変更一覧表 変更一覧表 変更内容 変更内容変更内容 変更内容 変更後 変更後 変更後 変更後 空港の種類を示す#define文の34番目に IWAKUNIを追加する 仕様1 空港の最大数示す#define MAX_AIRPORT_NUM=34 仕様2 岩国空港のビットマップ呼び出しを茨城空港の下 に追加する。 // 航空路データを呼び出す switch(airport) case HANEDA:setbitmap(xxxx);break; case NARITA:setbitmap(xxxx);break; ---(中略)--- case IBARAKI:setbitmap(xxxx);break; case IWAKUNI:setbitmap(xxxx);break; default:break; } 仕様1 定数c_drawing_center[33]に岩国空港の中心座 標をセットする。 緯度=Nxx:xx:xx.x 経度=Exxx:xx:xx.x 仕様3 定数c_filed_elv[0~32][33]に岩国空港の Filed_ELVをセットする。 緯度=Filed_ELV 仕様3 岩国空港を茨城空港の次に追加する Display_string(xx,xx,"34:岩国空港") 仕様4 仕様番号 仕様番号 仕様番号 仕様番号 変更内容 変更内容 変更内容 変更内容 変更前 変更前 変更前 変更前 変更後変更後変更後変更後 airport.h 関数外 空港の種類を示す#define文はHANEDA(1)から IBARAKI(33)まで計33種類である 空港の種類を示す#define文の34番目に IWAKUNIを追加する 仕様1 関数外 空港の最大数示す#define MAX_AIRPORT_NUM=33 空港の最大数示す#define MAX_AIRPORT_NUM=34 仕様2 draw_map.c drwa_map() 教官卓で前回と異なる空港が選択された時、 setbitmap関数を使って空港周辺エリアの航空路 を示すビットマップデータを読み込んでいる。 // 航空路データを呼び出す switch(airport) case HANEDA:setbitmap(xxxx);break; case NARITA:setbitmap(xxxx);break; ---(中略)--- case IBARAKI:setbitmap(xxxx);break; default:break; } 岩国空港のビットマップ呼び出しを茨城空港の下 に追加する。 // 航空路データを呼び出す switch(airport) case HANEDA:setbitmap(xxxx);break; case NARITA:setbitmap(xxxx);break; ---(中略)--- case IBARAKI:setbitmap(xxxx);break; case IWAKUNI:setbitmap(xxxx);break; default:break; } 仕様1 int_map() 定数c_drawing_center[0~32]に羽田空港(1)~ 茨城空港(33)までの表示中心座標をセットしてい る。 定数c_drawing_center[33]に岩国空港の中心座 標をセットする。 緯度=Nxx:xx:xx.x 経度=Exxx:xx:xx.x 仕様3 int_map() 定数c_filed_elv[0~32]に羽田空港(1)~茨城空港 (33)までのFiled_ELVをセットしている。 定数c_filed_elv[0~32][33]に岩国空港の Filed_ELVをセットする。 緯度=Filed_ELV 仕様3 display_menu() メニュー画面が選択された時、display_string関数 を使ってメニューを表示している。 Display_string(xx,xx,,"1:羽田空港) 岩国空港を茨城空港の次に追加する Display_string(xx,xx,"34:岩国空港") 仕様4 変更 変更 変更 変更 モジュール モジュール モジュール モジュール 変更関数変更関数変更関数変更関数 仕様番号仕様番号仕様番号仕様番号 変更内容 変更内容変更内容 変更内容 変更前 変更前 変更前 変更前 変更後変更後変更後変更後 airport.h 関数外 空港の種類を示す#define文はHANEDA(1)から IBARAKI(33)まで計33種類である 空港の種類を示す#define文の34番目に IWAKUNIを追加する 仕様1 変更 変更 変更 変更 モジュ ール モジュ ール モジュ ール モジュ ール 変更関数変更関数変更関数変更関数 仕様番号仕様番号仕様番号仕様番号 既存の要求定義書から得られた要求事項 例:「岩国空港を追加する 」 変更前 のS/W コード 1式 変更後 のS/W コード 1式 要求1 理由 説明 要 求 岩国空港を追加する 要求1 理由 説明 仕様1-1 仕様1-2 仕様1-3 仕 様 選択可能な空港に岩国空港を追加する 岩国空港から航空機が発着できるよう にする 岩国空港選択時、マップ表示画面に岩 国空港を中心とする航空路線を表示す る 要 求 岩国空港を追加する Module 作成者 xxxxxx 仕様 修正者 xxxxxx 確認者 xxxxxx データ構想の変更 変更の有無:■なし、□あり 変更内容( 変更ありの場合のみ) 変更内容( 変更ありの場合のみ) 変更内容( 変更ありの場合のみ) 変更内容( 変更ありの場合のみ) 関数呼び出し構造の変更 変更の有無:■なし、□あり 変更内容( 変更ありの場合のみ) 変更内容( 変更ありの場合のみ) 変更内容( 変更ありの場合のみ) 変更内容( 変更ありの場合のみ) 関数外の変更 項目 項目 項目 項目 予想行数予想行数予想行数予想行数 チェックチェックチェックチェック 1 xxx □ 2 □ 3 □ 4 □ 関数の変更 関数名 関数名 関数名 関数名 □変更、■追加、□削除 項目 項目 項目項目 BeforeBeforeBeforeBefore AfterAfterAfterAfter 予想行数予想行数予想行数予想行数 チェックチェックチェックチェック
1 教官卓で前回と異なる空港が選択された時、 setbitmap関数を使って空港周辺エリアの航 空路を示すビットマップデータを読み込んで いる。 // 航空路データを呼び出す switch(airport) case HANEDA:setbitmap(xxxx);break; case NARITA:setbitmap(xxxx);break; ---(中略)--- case IBARAKI:setbitmap(xxxx);break; default:break; } 岩国空港のビットマップ呼び出しを茨城空港 の下に追加する。 // 航空路データを呼び出す switch(airport) case HANEDA:setbitmap(xxxx);break; case NARITA:setbitmap(xxxx);break; ---(中略)--- case IBARAKI:setbitmap(xxxx);break; case IWAKUNI:setbitmap(xxxx);break; default:break; } xxx □ □ □ draw_map.c 岩国空港選択時、マップ表示画面に岩国空港を中心とする航空路線を表示する 変更内容 変更内容 変更内容 変更内容 ①要求項目を記入する ①要求項目を記入する ①要求項目を記入する ①要求項目を記入する ③変更モジュール,変更関数, ③変更モジュール,変更関数, ③変更モジュール,変更関数, ③変更モジュール,変更関数, 変更内容を記入する 変更内容を記入する 変更内容を記入する 変更内容を記入する ④仕様番号を付ける ④仕様番号を付ける ④仕様番号を付ける ④仕様番号を付ける ⑤仕様内容を定義する ⑤仕様内容を定義する ⑤仕様内容を定義する ⑤仕様内容を定義する ⑥要求と仕様の対応付け ⑥要求と仕様の対応付け ⑥要求と仕様の対応付け ⑥要求と仕様の対応付け を行う を行う を行う を行う この段階で全ての要求項目 を抽出できない可能性がある が,ここでは文書から引き出 せる要求項目を抽出するに 留め,次の作業へ進む 変更内容を日本語で表現する のが難しい場合,S/Wコードの 変更内容を「ちょっとだけ読み変 え」して,変更内容欄に書きこむ 理由,説明は空欄 ままでも可 この段階で要求項目の 漏れを補う ⑧変更設計書を作成する ⑧変更設計書を作成する ⑧変更設計書を作成する ⑧変更設計書を作成する 変更一覧表の変更内容を 機械的にコピー&ペースト する TM TM TM TM TM(作成途中) TM(作成途中) TM(作成途中) TM(作成途中) 注:①~⑧の数値は,本文の図2と一致させた. Filed_ELVをセットする。 緯度=Filed_ELV 岩国空港を茨城空港の次に追加する Display_string(xx,xx,"34:岩国空港") 仕様4 int_map() 定数c_filed_elv[0~32]に羽田空港(1)~茨城空港 (33)までのFiled_ELVをセットしている。 定数c_filed_elv[0~32][33]に岩国空港の Filed_ELVをセットする。 緯度=Filed_ELV 仕様3 display_menu() メニュー画面が選択された時、display_string関数 を使ってメニューを表示している。 Display_string(xx,xx,,"1:羽田空港) Display_string(xx,xx,"2:成田空港) ---(中略)--- Display_string(xx,xx,"33:茨城空港") 岩国空港を茨城空港の次に追加する Display_string(xx,xx,"34:岩国空港") 仕様4 airport.h 関数外 空港の種類を示す#define文はHANEDA(1)から IBARAKI(33)まで計33種類である 空港の種類を示す#define文の34番目に IWAKUNIを追加する 仕様1 関数外 空港の最大数示す#define MAX_AIRPORT_NUM=33 空港の最大数示す#define MAX_AIRPORT_NUM=34 仕様2 draw_map.c drwa_map() 教官卓で前回と異なる空港が選択された時、 setbitmap関数を使って空港周辺エリアの航空路 を示すビットマップデータを読み込んでいる。 // 航空路データを呼び出す switch(airport) case HANEDA:setbitmap(xxxx);break; case NARITA:setbitmap(xxxx);break; ---(中略)--- case IBARAKI:setbitmap(xxxx);break; default:break; } 岩国空港のビットマップ呼び出しを茨城空港の下 に追加する。 // 航空路データを呼び出す switch(airport) case HANEDA:setbitmap(xxxx);break; case NARITA:setbitmap(xxxx);break; ---(中略)--- case IBARAKI:setbitmap(xxxx);break; case IWAKUNI:setbitmap(xxxx);break; default:break; } 仕様1 トレーサビリティマトリクス a irp o r t.h a irc la ft.h w ea t he r.h a irp o r t.d at in t_a irp o rt .c in t_a irc ra ft.c in t_w ea th e r.c d ra w _m ap .c flig h t.c in s tru m e n t.c en gin e .c tro u b le .c w ea t he r.c c o n tro l_d a tab a se .c ②全モジュール名を記入する ②全モジュール名を記入する ②全モジュール名を記入する ②全モジュール名を記入する モジュールの分割単位は,ファイル単位、コ ンポーネント単位,ディレクトリ単位等があ る.どの単位で分割するかは,概ね「20~30 個の範囲で収まる数」を目安とする. 同じ情報(変数等)扱っている 複数の変更について同じ仕 様番号を割り当てる S/Wコードの変更内容 を漏れなく書きこむの がコツ モジュールの分割単位は,TM と一致させておくこと 要求/仕様 トレーサビリティマトリクス a irpo r t.h a irc la ft.h w e ath e r.h a irpo r t.da t in t_a irp o rt.c in t_a irc ra ft.c in t_w e a the r.c d ra w _m a p .c fligh t. c in stru m e n t.c en g in e .c tr ou b le.c w e ath e r.c c on tro l_d ata ba se .c 要求/仕様 要 求 岩国空港を追加する 要求1 理由 説明 仕様1-1 ○ ○ 仕様1-2 ○ 仕様1-3 ○ 仕 様 選択可能な空港に岩国空港を追加する 岩国空港から航空機が発着できるよう にする 岩国空港選択時、マップ表示画面に岩 国空港を中心とする航空路線を表示す る 要 求 岩国空港を追加する 機械的にコピー&ペースト する ⑦ ⑦⑦ ⑦ TMの該当個所にの該当個所にの該当個所にの該当個所に ○を記入する ○を記入する○を記入する ○を記入する ソースコードの変更内容と"変更 内容"欄の記述が1対1対応するぐ らいの細かさで書く 変更一覧表の変更内容に基づいて 機械的に○を記入していく