JaSST’13 Tokyo	

上流設計工程における未然防止プロセスの実用化に向けて－不具合モード発想力を高める秘訣－
２０１３年１月３０日
東芝ソシオシステムズ（株）
大谷和夫
塩谷和夫

久米智己子
渥美武雄

（株）東芝  ソフトウェアFMEA分科会
Copyright© 2013 Toshiba Social Automation Systems Co. Ltd. All Rights Reserved.

MIZEN

会社概要
◆会社名
東芝ソシオシステムズ株式会社	
◆設立
１９８２年４月１日	
◆人員
４８２名（2012年10月現在）	
◆事業内容 東芝ｾｷｭﾘﾃｨ・自動化ｼｽﾃﾑの設計・製造	
自動化機器システム	
セキュリティ関連システム	
ＩＣカードシステム	
アプリケーション・ソフトウェアの開発	
◆事業所
本社・設計部門	 東芝小向工場内（川崎）	
製造部門		 秋田事業所	
Copyright© 2013 Toshiba Social Automation Systems Co. Ltd. All Rights Reserved.

2

主力製品

海外向け選別取り揃え押印機	

海外向け銀行券鑑査機	

新幹線自動改札機 	

ＥＴＣシステム	

Copyright© 2013 Toshiba Social Automation Systems Co. Ltd. All Rights Reserved.

定期券発行機 	3

Agenda1.

昨年JaSST’12東京での提案（おさらい）

2.

未然防止実用化に向けての課題Ø

未然防止対象範囲の絞り込みØ

不具合モード発想手順の定型化Ø

発想力の向上3.

パイロットプロジェクトへの展開

4.

特に工夫した点

5.

まとめCopyright© 2013 Toshiba Social Automation Systems Co. Ltd. All Rights Reserved.

4

JaSST’12提案：未然防止プロセスの確立
n 不具合モードの発想– 欠陥の観点リストと過去の不具合情報をベースにした未然防止リストを使って、不具合モードを発想蓄積された不具合情報入力情報（改造要求仕様書）	

変化点の	機能抽出	

観点リスト	

未然防止リスト	

欠陥の	観点選択	

不具合モード	発想	

Copyright© 2013 Toshiba Social Automation Systems Co. Ltd. All Rights Reserved.

対策	5

当時の問題点n 不具合モードの発想が発散– 未然防止プロセスを検証した結果実際の不具合モードと一致した割合が１０～３８％と低く、議論が発散していた– 原因
発想する対象の範囲が広すぎる
欠陥の観点リストがうまく使えていない
参加者の発想するためのスキルがバラつくn 観点リストの改良––観点リストを  『何が、どうして、どうなる』 タイプに分解し、発想しやすくした
この観点リストは適用できず提案で終わっていた
Copyright© 2013 Toshiba Social Automation Systems Co. Ltd. All Rights Reserved.

6

Agenda1.

昨年JaSST’12東京での提案（おさらい）

2.

未然防止実用化に向けての課題Ø

未然防止対象範囲の絞り込みØ

不具合モード発想手順の定型化Ø

発想力の向上3.

パイロットプロジェクトへの展開

4.

特に工夫した点

5.

まとめ
Copyright© 2013 Toshiba Social Automation Systems Co. Ltd. All Rights Reserved.

7

未然防止実用化に向けての課題
n 課題１：未然防止対象範囲の絞り込み– 入力となる機能や制約条件を整理

n 課題２：不具合モード発想手順の定型化– 改良型観点リストを使い、発想手順パターン構築n 課題３：発想力の向上–

発想力を高める教育の実施

Copyright© 2013 Toshiba Social Automation Systems Co. Ltd. All Rights Reserved.

8

施策１ 未然防止対象範囲の絞り込みn  処理モデルと想定される設計ロジック採用
Ｘ年間未使用のＩＣカードを入退場ゲートに翳したとき、取扱い停止にする

要求仕様
処理モデル
入力（対象）
ＩＣカードの前回利用日
データ

別入力：端末の有効／無効設定
他の制約条件出力（振る舞い）

未使用期間
チェック処理	取扱い停止

条件：Ｘ年間未使用想定される設計ロジック
ICカード	

前回利用日

読取
OK	
Ｎ

リトライ

Ｙ

未使用期間＞Ｘ年	

Ｙ

取扱い停止

Ｎ

通常の取扱

Copyright© 2013 Toshiba Social Automation Systems Co. Ltd. All Rights Reserved.

9未然防止実用化に向けての課題
n 課題１：未然防止対象範囲の絞り込み– 入力となる機能や制約条件を整理

n 課題２：不具合モード発想手順の定型化– 改良型観点リストを使い、発想手順パターン構築n 課題３：発想力の向上–

発想力を高める教育の実施

Copyright© 2013 Toshiba Social Automation Systems Co. Ltd. All Rights Reserved.

10

施策２ 不具合モード発想手順の定型化
n  改良型観点リストとは何が	何が	部品＝機能	どうして	部品の特性	
技術要素	

メカニズム	

どうなる	
機能不全	

不具合モード	

観点リスト			内部処理	論理演算処理		

通信・データ伝送処理		
容量	能力	

割り込み処理	
ポーリング処理	
数値演算処理	・・・・

スピード	 不足	

性能	・・・

・・・

違う機能になってしまう	

不足	

機能が欠落する	

不安定	

不要な機能が動く	

不足	

性能不足	

・・・・	

異常終了	

・・・・・・・	

Copyright© 2013 Toshiba Social Automation Systems Co. Ltd. All Rights Reserved.

・・・・・・・	

11n  不具合発想の起点を定型化
不具合モード	
発想方法整理	（1）技術要素・環境起点
観点起点	 （2）機能不全起点（3）シナリオベース
事例起点	 （4）事例起点• 観点を利用して、手順に従って不具合モードを発想	– 発想のパターンは大きく４つ	– 手順にとらわれず、観点や事例を自由に組み合わせて発想することも必要• 一つの観点を固定し、別の観点の組み合わせを入れ替えてみる	• 「何が」や「どうして」を複数組み合わせてみる	

• 要求仕様 事例「Ｘ年間未使用カードを取扱い停止にする」を（１）～（３）の手順で不具合発想
Copyright© 2013 Toshiba Social Automation Systems Co. Ltd. All Rights Reserved.	

12

（１）不具合モード発想手順  （技術要素・環境起点）
不具合モード	
何が	技術要素・環境	

失敗パターン	どうして	どうなる	

機能不全	

•技術要素・環境起点（何が）⇒  失敗ﾒｶﾆｽﾞﾑ（どうして）何が と どうして の観点を組合せて発想  ⇒  機能不全（どうなる）
Copyright© 2013 Toshiba Social Automation Systems Co. Ltd. All Rights Reserved.

13

観点リストCopyright© 2013 Toshiba Social Automation Systems Co. Ltd. All Rights Reserved.

14

（１）不具合モード発想手順  （技術要素・環境起点）•技術要素・環境起点（何が）⇒  失敗ﾒｶﾆｽﾞﾑ（どうして）  ⇒  機能不全（どうなる）① 日付・変換処理（何が） ⇒ 整合性・誤った内容（どうして）『前回利用日を 西暦年４桁を２桁として取扱い、2012年07月04日
未使用期間を正しく計算できず、↓取扱い停止とすべき日を間違える』
20年12月07日	

② リトライ制御（何が） ⇒ 処理・抜ける（どうして）読取	  『カード読取りエラーのリトライ読取り時、チェック	
未使用期間チェック処理が抜け、Ｘ年間未使用でも取り扱い停止にならない』
Copyright© 2013 Toshiba Social Automation Systems Co. Ltd. All Rights Reserved.

リトライ	15

（２）不具合モード発想手順  （機能不全起点）
不具合モード	
何が	技術要素・環境	

失敗パターン	どうして	どうなる	機能不全	

•機能不全起点（どうなる）  ① 機能欠落
② 不要な機能③ 性能不足④ 異常終了⑤ 違う機能⇒  何が  ⇒  どうして を追加して発想
Copyright© 2013 Toshiba Social Automation Systems Co. Ltd. All Rights Reserved.

16

（２）不具合モード発想手順  （機能不全起点）•機能不全起点（どうなる）  ① 機能欠落

取扱い停止にならない ＊② 不要な機能 別条件から取扱い停止にすべきでない③ 性能不足取扱い停止になるまで時間がかかる④ 異常終了システムが停止してしまう ＊⑤ 違う機能Ｘ年より前（または後）に取扱い停止

Copyright© 2013 Toshiba Social Automation Systems Co. Ltd. All Rights Reserved.

17

観点リストCopyright© 2013 Toshiba Social Automation Systems Co. Ltd. All Rights Reserved.

18

（２）不具合モード発想手順  （機能不全起点）•機能不全起点（どうなる）   ⇒  何が  ⇒  どうして① 取扱い停止にならない
内部Ｉ／Ｆ   ⇒ 参照先・不整合←有効／無効	『未使用期間チェック有効／無効パラメータの←予備 ”0” 	
参照先アドレスを間違えて常に無効となり取扱い停止にならない』
引き出しを間違えるな	④ システムが停止してしまう
日付計算 ⇒ 条件・不足『未使用期間の計算結果が負となる条件を考慮していなかったため処理がアボートし停止してしまう』
Copyright© 2013 Toshiba Social Automation Systems Co. Ltd. All Rights Reserved.

１５時－１６時＝－１時間	
時計の狂いを考慮	

19

（３）不具合モード発想手順  （シナリオベース）
実際の利用形態を考える	

不具合モード	
何が	技術要素・環境	 失敗パターン	

どうして	どうなる	

機能不全	

•シナリオベース起点
実際の利用形態や運用を考える
何が  ⇒  どうして  ⇒ どうなる 形式で記述
Copyright© 2013 Toshiba Social Automation Systems Co. Ltd. All Rights Reserved.

20

（３）不具合モード発想手順  （シナリオベース）•シナリオベース起点（実際の利用形態を考える）
何が  ⇒  どうして  ⇒ どうなる  - 条件組合せ  『残額０円など他の条件と組合わさった時、残額不足エラーが優先され取扱い停止にならない』

財布の中身は空っぽ	- 特異日に利用  『前回を閏年の2/29に使用し、Ｘ年後に2/29がなく閏年を考慮した期間計算ができず取扱い停止にならない』
うるう年
忘れるな	
Copyright© 2013 Toshiba Social Automation Systems Co. Ltd. All Rights Reserved.

21

未然防止実用化に向けての課題
n 課題１：未然防止対象範囲の絞り込み– 入力となる機能や制約条件を整理

n 課題２：不具合モード発想手順の定型化– 改良型観点リストを使い、発想手順パターン構築n 課題３：発想力の向上–

発想力を高める教育の実施

Copyright© 2013 Toshiba Social Automation Systems Co. Ltd. All Rights Reserved.

22

施策３ 発想力の向上
n 発想力を高める教育– 技術者の経験度合いにより発想力のバラツキがあるため、発想力高める教育を実施– カリキュラム
再発防止と未然防止の違い、ＦＭＥＡ実施手順、不具合モード抽出事例の紹介、演習– 講義１時間＋演習２時間

n 演習内容– 課題の機能に対し、４種類の発想手順を使い、実際に不具合モードを発想してもらう
Copyright© 2013 Toshiba Social Automation Systems Co. Ltd. All Rights Reserved.

23

施策３ 発想力の向上
n 受講対象者––

２０１２年７月～１１月に教育を４回開催し、延べ４２名が受講未然防止パイロッティングを実施するプロジェクトは必須教育とした

n 受講者のアンケート結果–––

事例紹介があり、未然防止の適用方法、効果がわかりやすい
不具合の発想は難しいと感じた
発想手順が４つあるので、得意な手順を使って発想し、繰り返し行うことにより身に付くと思うCopyright© 2013 Toshiba Social Automation Systems Co. Ltd. All Rights Reserved.

24

Agenda1.

昨年JaSST’12東京での提案（おさらい）

2.

未然防止実用化に向けての課題Ø

未然防止対象範囲の絞り込みØ

不具合モード発想手順の定型化Ø

発想力の向上3.

パイロットプロジェクトへの展開

4.

特に工夫した点

5.

まとめ
Copyright© 2013 Toshiba Social Automation Systems Co. Ltd. All Rights Reserved.

25

“経理データシステム開発”への適用
不具合抽出	
要求仕様			

SW-FMEAシート

総合試験	

システム
設計	

設計確認	

結合試験			単体試験	ソフトウェア		

詳細設計	

試験仕様確認	実装	

・不具合モードを抽出した後、発生頻度と影響度から対策検討→「SW-FMEAシート」に整理
・設計着手前に対策を再確認
・試験仕様書作成前に対策を再確認
Copyright© 2013 Toshiba Social Automation Systems Co. Ltd. All Rights Reserved.

26

未然防止プロセス実施手順
送信データ作成

０．準備	

データ送信

１．対象業務機能の選定	

観点リスト	
データ取込み	

要求仕様書	
業務機能フロー図	
業務機能説明書	２．不具合モード
抽出	

過去のトラブル事例	

不具合モード	システム構成図	

３．影響解析	

頻度・影響値	Copyright© 2013 Toshiba Social Automation Systems Co. Ltd. All Rights Reserved.

４．対策検討	FMEAシート	

27

準備
０．準備	

要求仕様書	
業務機能フロー図	
業務機能説明書	システム構成図	

GAIA送信
データ作成①メンバ選定GAIA送信１．対象業務・ＰＪの関係者（設計者＆レビュア）
観点リスト	
機能の選定	GAIA取込み	
・ＰＪメンバ以外
・ファシリテータ ２．不具合モード抽出	
・アドバイザ
不具合モード	②資料準備・システムの概要が分かるもの
・要求仕様書 ３．影響解析	
・業務フローとシステムの振る舞
４．対策検討	
頻度・影響値	
いが分かるもの

過去のトラブル事例	

Copyright© 2013 Toshiba Social Automation Systems Co. Ltd. All Rights Reserved.

FMEAシート	

28

対象業務・機能の選択
送信データ作成

０．準備	

データ送信

１．対象業務	
機能の選定	

観点リスト	
データ取込み	

要求仕様書	
業務機能フロー図	

過去のトラブル事例	

２．不具合モード抽出	

次の機能に着目して対象機能を選定
業務機能説明書	不具合モード	・チェックロジックの多い機能
システム構成図	・他システムとのＩ／Ｆの機能
３．影響解析	
頻度・影響値	Copyright© 2013 Toshiba Social Automation Systems Co. Ltd. All Rights Reserved.

４．対策検討	FMEAシート	29

不具合モードの抽出
送信データ作成

０．準備	

データ送信
１．対象業務機能の選定	

「機能不全起点」によるデータ取込み	
要求仕様書	
発想手順を使って実施
２．不具合モード
業務機能抽出	・機能欠落
フロー図	
・不要な機能業務機能説明書	不具合モード	
・性能不足
システム構成図	
３．影響解析	・異常終了
・違う機能
頻度・影響値	Copyright© 2013 Toshiba Social Automation Systems Co. Ltd. All Rights Reserved.

観点リスト	

過去のトラブル事例	

４．対策検討	FMEAシート	

30

不具合モードの抽出事例
機能不全起点（どうなる）  ⇒  何が  ⇒  どうして【ＣＳＶファイルの読込み】（１）機能欠落
ＣＳＶファイルが読み込めない・ファイル容量が大きい
・異なるフォーマットのファイルを指定した・区切り文字（タブ／カンマ）の間違え
・ヘッダー有無判断の間違え（ヘッダー無なのに有で読んだ）（２）不要な機能
取込まなくてよいファイルを取込む
・同じファイルの読込みが何度でも出来る（データの重複）・異なるフォーマットのファイルを指定した
Copyright© 2013 Toshiba Social Automation Systems Co. Ltd. All Rights Reserved.

31

影響解析・対策検討
GAIA送信データ作成

０．準備	
影響解析と対策検討
GAIA送信発生頻度と発生時の影響度を分析して、１．対象業務
観点リスト	
機能の選定	対策を検討した。
GAIA取込み	
要求仕様書	

過去のトラブル事例	

不具合モード抽出 １８件 ２．不具合モード抽出	

業務機能フロー図	

業務機能説明書	不具合モード	システム構成図	

３．影響解析	頻度・影響値	

Copyright© 2013 Toshiba Social Automation Systems Co. Ltd. All Rights Reserved.

４．対策検討	FMEAシート	32ＳＷ－ＦＭＥＡ事例
N 機能／モジュー 不具合モード	
O	 ル／処理	
何が	どうして	どうなる	

発生頻度	

影響度	

中極小
仮に発生したら（オペミデータが読みEXCELの制限行数はス）‥・
送信データ作成 CSVファイル データ数が多 込まれない
104万8000行。
1	
（時間がかか	のデータ	 い	データを最後まで読み実データはこんなに発生込めない。
る）	し得ない。	
→IEが固まる	

2	 	

3	 	

4	 	

設計考慮した内容	
CSVを読み込む時に件数チェックして、閾値を超えたらエラーメッセージを表示して、DBからも消す。
→プログラム設計書に記載	
区切文字はタブよりカンマの方が見やすいのでカンマにする。
→プログラム設計書に記載

小読み込むCSVファイル
データが読み小はデータ連携システムで区切文字	 間違えた	
CSVファイルを作り直す	
込めない	
出力したファイルが多い
項目数をチェックしてエラーので発生は少ない	
メッセージを表示する→プログラム設計書に記載	
CSVで出力する時に1行目にヘッダーマークをつけて小1行目のデータおき、なければヘッダー無し
プログラムのバグ
ヘッダーの有 有を無と間違
小が取り込まれなCSVファイル編集時の CSVファイルを作り直す	のエラーにする無	えた	い	→プログラム設計書に記載
オペミス		
特定のCSVファイルしか選択できないようにしておく
項目数のチェックとヘッダーマークのチェックで判断する。
データベースへ 小大間違ったファ
読み込んだ	 書込み時にエ ファイル読込み時のオペ データベースに書き込ま 書き込みが全件完了しなイル	
ラーとなる	
ミス	れてしまうデータもある	 かったらロールバックする仕組みを入れる。
→プログラム設計書に記載
Copyright© 2013 Toshiba Social Automation Systems Co. Ltd. All Rights Reserved.	
33

ＳＷ-ＦＭＥＡシートの活用（今後）不具合抽出	
要求仕様			

SW-FMEA
シート

総合試験	

システム
設計	

設計確認			

結合試験			単体試験	ソフトウェア
詳細設計	試験仕様確認	

実装	

・不具合を抽出した後、発生頻度と影響度から対策検討→「SW-FMEAシート」に整理
・設計着手前に対策を再確認
・試験仕様書作成前に対策を再確認
Copyright© 2013 Toshiba Social Automation Systems Co. Ltd. All Rights Reserved.

34

参加者の感想①
Ｑ．未然防止のやり方は理解できましたか？
・○ ほぼできた（全員）Ｑ．開発メンバによる不具合の発想は有効ですか？
・○ 同じ観点リストを見ていても、メンバーによって発想の観点が変わるので良い
・△ 有効だが効果が出るまでに時間がかかりそう・△ 有効と思うが工数とのバランスが難しい

Ｑ．発想した不具合は的を射ることができましたか？
・○ 的を射ることができたが取捨選択が必要
・△ すでに考慮されているものが多かった
Copyright© 2013 Toshiba Social Automation Systems Co. Ltd. All Rights Reserved.

35

参加者の感想②
Ｑ．未然防止の改善案は？
・実践を繰り返すことで不具合発想に慣れるとよい・システム設計レベル、基本設計レベル等、工程毎に粒度を変えて発想しても良い・観点リストを不具合モード発想の視点だけではなく設計検討の場で使うと良い・受講した発想法を一通りやる時間のやり繰りをつけると良い

Copyright© 2013 Toshiba Social Automation Systems Co. Ltd. All Rights Reserved.

36問題点と解決策■問題点
・効果的な不具合発想が難しそう
・時間が掛かり、費用対効果が低いのでは？
・当然考慮すると思われる不具合の発想が多い■解決策
・設計検討会の中で観点リストを使って発想する→ 時間が掛からない、お手軽にできる・業務の有識者を交える、顧客になりきって発想する→ 運用ベースでの不具合発想
Copyright© 2013 Toshiba Social Automation Systems Co. Ltd. All Rights Reserved.

37

Agenda1.

昨年JaSST’12東京での提案（おさらい）

2.

未然防止実用化に向けての課題Ø

未然防止対象範囲の絞り込みØ

不具合モード発想手順の定型化Ø発想力の向上

3.

パイロットプロジェクトへの展開

4.

特に工夫した点

5.

まとめ
Copyright© 2013 Toshiba Social Automation Systems Co. Ltd. All Rights Reserved.

38

特に工夫した点n 不具合モード発想力の向上– 不具合モードの発想手順を４種類用意し、教育により技術者に修得してもらい、発想力を一気に向上n パイロットプロジェクトにて効果を確認– 実際の開発製品に未然防止を適用し、設計工程に不具合となりそうな気づきを与えられるか検証n 重点課題としての取り組み– ソフトウェア未然防止活動を会社ＴＯＰの重点課題とし、従業員全員が一丸となって取り組む
Copyright© 2013 Toshiba Social Automation Systems Co. Ltd. All Rights Reserved.

39

まとめn まとめ– ソフトウェア未然防止の実用化に向けて不具合発想手順を決め、パイロッティングを繰り返すことにより、本格展開の準備ができたn 今後の展開– 未然防止プロセスの適用事例をさらに増やし
ＰＤＣＡをまわしながら、品質向上と生産性向上に貢献していく– 過去事例ベースの不具合モード発想は、ハードウェアのＦＭＥＡに利用されているＳＳＭ（ストレス・ストレングス・モデル）の活用を具体化していく
Copyright© 2013 Toshiba Social Automation Systems Co. Ltd. All Rights Reserved.

40

参考文献
[1]夏目珠規子、小島昌一、村山知寛：“ソフトウェア開発におけるＦＭＥＡの適用可能性検討”、第41回信頼性・保全性シンポジウム発表報文集、2011[2]濱口哲也：“失敗学と創造学”、早稲田大学オープンカレッジ“、
2011[3]田村泰彦：“トラブル未然防止のための知識の構造化－SSMによる設計・計画の質を高める知識マネジメント”、日本規格協会、2008[4]大谷和夫、塩谷和夫、宮本憲一、久米智己子、夏目珠規子：“上流設計工程における未然防止プロセスの提案”,ソフトウェアテストシンポジウムJaSST2012  Tokyo
Copyright© 2013 Toshiba Social Automation Systems Co. Ltd. All Rights Reserved.

41

ご清聴ありがとうございました	Copyright© 2013 Toshiba Social Automation Systems Co. Ltd. All Rights Reserved.