37
組織の自律改善に寄与する 欠陥特性 日本科学技術連盟 ソフトウェア品質管理研究会(SQiP研究会) 2014年度優秀賞受賞 © 2015 EXA CORPORATION 1 EXA Value Forum 2015 セッション:D-1 株式会社エクサ プロジェクト品質技術部 森 龍二

組織の自律改善に寄与する 欠陥特性自己紹介 • 職歴 –1998年入社 –3D CADシステム開発 –Webフレームワーク開発 –第三者レビュー(QI)組織リーダー

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: 組織の自律改善に寄与する 欠陥特性自己紹介 • 職歴 –1998年入社 –3D CADシステム開発 –Webフレームワーク開発 –第三者レビュー(QI)組織リーダー

組織の自律改善に寄与する欠陥特性

日本科学技術連盟ソフトウェア品質管理研究会(SQiP研究会)

2014年度優秀賞受賞

© 2015 EXA CORPORATION 1

EXA Value Forum 2015セッション:D-1

株式会社エクサ

プロジェクト品質技術部

森 龍二

Page 2: 組織の自律改善に寄与する 欠陥特性自己紹介 • 職歴 –1998年入社 –3D CADシステム開発 –Webフレームワーク開発 –第三者レビュー(QI)組織リーダー

自己紹介

• 職歴– 1998年入社– 3D CADシステム開発– Webフレームワーク開発– 第三者レビュー(QI)組織リーダー– 現在:品質評価、プロセス改善

• 得技– レビュー– ODC(直交欠陥分類)– 欠陥エンジニアリング

• 社外活動– 日科技連SQiP研究会– テスト自動化研究会→翻訳本出版(2014/12)– 探索的テスト研究会– ソフトウェア病理学NEO

JaSST 2015 Tokyo

2014 SQiP研究会成果発表会

2

システムテスト自動化標準ガイド

Page 3: 組織の自律改善に寄与する 欠陥特性自己紹介 • 職歴 –1998年入社 –3D CADシステム開発 –Webフレームワーク開発 –第三者レビュー(QI)組織リーダー

本日お伝えしたいメッセージ

3

「ソフトウェア欠陥」そのものを

見つめなおそう

© 2015 EXA CORPORATION

Page 4: 組織の自律改善に寄与する 欠陥特性自己紹介 • 職歴 –1998年入社 –3D CADシステム開発 –Webフレームワーク開発 –第三者レビュー(QI)組織リーダー

目次

• 問題提起

• 課題整理

• 提案

• 実験と考察

• 将来期待される応用分野

© 2015 EXA CORPORATION 4

Page 5: 組織の自律改善に寄与する 欠陥特性自己紹介 • 職歴 –1998年入社 –3D CADシステム開発 –Webフレームワーク開発 –第三者レビュー(QI)組織リーダー

問題提起

© 2015 EXA CORPORATION 5

Page 6: 組織の自律改善に寄与する 欠陥特性自己紹介 • 職歴 –1998年入社 –3D CADシステム開発 –Webフレームワーク開発 –第三者レビュー(QI)組織リーダー

品質改善うまくいっていますか?

6

開発者と品質保証の対立

メール百烈拳

バグピンポン

手戻り地獄 泥沼

今日も帰れない

By Thomas Leuthard

これらはすべて「欠陥」のしわざなのです!

© 2015 EXA CORPORATION

Page 7: 組織の自律改善に寄与する 欠陥特性自己紹介 • 職歴 –1998年入社 –3D CADシステム開発 –Webフレームワーク開発 –第三者レビュー(QI)組織リーダー

品質管理の現状

7

By Linus Bohman

ベストプラクティスばかり

追い求めていませんか?© 2015 EXA CORPORATION

Page 8: 組織の自律改善に寄与する 欠陥特性自己紹介 • 職歴 –1998年入社 –3D CADシステム開発 –Webフレームワーク開発 –第三者レビュー(QI)組織リーダー

課題整理

© 2015 EXA CORPORATION 8

Page 9: 組織の自律改善に寄与する 欠陥特性自己紹介 • 職歴 –1998年入社 –3D CADシステム開発 –Webフレームワーク開発 –第三者レビュー(QI)組織リーダー

発想の転換

9

そもそも欠陥とは何か?

© 2015 EXA CORPORATION

Page 10: 組織の自律改善に寄与する 欠陥特性自己紹介 • 職歴 –1998年入社 –3D CADシステム開発 –Webフレームワーク開発 –第三者レビュー(QI)組織リーダー

品質特性

機能性 信頼性 使用性

効率性 保守性 移植性

先人に学ぶ

10

品質

性質に分解して理解した

© 2015 EXA CORPORATION

欠陥

表の世界(ベストプラクティス)

裏の世界同じ手が使えるのでは?

Page 11: 組織の自律改善に寄与する 欠陥特性自己紹介 • 職歴 –1998年入社 –3D CADシステム開発 –Webフレームワーク開発 –第三者レビュー(QI)組織リーダー

提案

11© 2015 EXA CORPORATION

Page 12: 組織の自律改善に寄与する 欠陥特性自己紹介 • 職歴 –1998年入社 –3D CADシステム開発 –Webフレームワーク開発 –第三者レビュー(QI)組織リーダー

提案内容

12

「欠陥」とは何か

「欠陥」混入のメカニズム

とは

具現性

有害性

因果性

連鎖性

好複雑性

好欠乏性

増殖性

基本特性

混入特性

欠陥特性

© 2015 EXA CORPORATION

Page 13: 組織の自律改善に寄与する 欠陥特性自己紹介 • 職歴 –1998年入社 –3D CADシステム開発 –Webフレームワーク開発 –第三者レビュー(QI)組織リーダー

基本特性

13© 2015 EXA CORPORATION

Page 14: 組織の自律改善に寄与する 欠陥特性自己紹介 • 職歴 –1998年入社 –3D CADシステム開発 –Webフレームワーク開発 –第三者レビュー(QI)組織リーダー

基本特性とは

• すべての欠陥が保有する性質

14

頭・胸・腹の3つの部位からなる

胸には6本の肢

胸には4枚の翅

欠陥議論の前提条件

具現性

有害性

因果性

基本特性

「昆虫」の定義で例えると

© 2015 EXA CORPORATION

Page 15: 組織の自律改善に寄与する 欠陥特性自己紹介 • 職歴 –1998年入社 –3D CADシステム開発 –Webフレームワーク開発 –第三者レビュー(QI)組織リーダー

対象成果物

具現性

• 具体的な成果物に埋め込まれる性質

• 対象成果物と故障モードの組みあわせ

15

×

具現性

有害性

因果性

基本特性

要件仕様

設計 コード

故障モード

漏れ

誤り

無関係

© 2015 EXA CORPORATION

Page 16: 組織の自律改善に寄与する 欠陥特性自己紹介 • 職歴 –1998年入社 –3D CADシステム開発 –Webフレームワーク開発 –第三者レビュー(QI)組織リーダー

具現性の例

• 要件定義書の要件が仕様書に反映されておらず、テストでそれが発覚した

• ソースコードに処理内容と無関係のコメントが書かれており、欠陥の特定に時間を要した

© 2015 EXA CORPORATION 16

Page 17: 組織の自律改善に寄与する 欠陥特性自己紹介 • 職歴 –1998年入社 –3D CADシステム開発 –Webフレームワーク開発 –第三者レビュー(QI)組織リーダー

有害性

• 欠陥とはなんらかの害を及ぼすものである

• 基本的には品質特性の裏返し

17

具現性

因果性

基本特性

有害性

品質特性

機能性

信頼性

使用性

保守性

効率性

移植性

有害性

機能阻害性

不信性

難使用性

難保守性

非効率性

移植阻害性© 2015 EXA CORPORATION

Page 18: 組織の自律改善に寄与する 欠陥特性自己紹介 • 職歴 –1998年入社 –3D CADシステム開発 –Webフレームワーク開発 –第三者レビュー(QI)組織リーダー

有害性の例

• 機能阻害性– 予定していた新機能を使おうとしたが実装さ

れていない

• 不信性– このスマホアプリ、新機能はとても便利だが、

3分に1回以上落ちる

• 難保守性– ソースコードの複雑度が高く、かつコメント

がほとんど書かれていない

© 2015 EXA CORPORATION 18

Page 19: 組織の自律改善に寄与する 欠陥特性自己紹介 • 職歴 –1998年入社 –3D CADシステム開発 –Webフレームワーク開発 –第三者レビュー(QI)組織リーダー

因果性

• 欠陥は混入・表出に因果関係を伴うものである

19

実害

欠陥

過失因子増幅因子誘発因子

混入原因(因子)

※JaSST Tokyo 2013「過失に着目した欠陥のモデリング

〜バグ分析はなぜうまく行かないのか」発表資料より引用

環境に誤らされる

具現性基本特性

有害性

因果性

開発の制約 間接原因 思考の誤り

© 2015 EXA CORPORATION

Page 20: 組織の自律改善に寄与する 欠陥特性自己紹介 • 職歴 –1998年入社 –3D CADシステム開発 –Webフレームワーク開発 –第三者レビュー(QI)組織リーダー

因果性の例

• テストDBで全件DELETEかけてしまい、以降のテストができなくなった

全件DELETE全件削除

SQL文の組み立てミス

改変案件

テスト中断

スキル依存の体制

例文を書き間違えた

SQLは自前で組み立てる

© 2015 EXA CORPORATION 20

※EXA NVF 2014「欠陥モデリングライブ」より

Page 21: 組織の自律改善に寄与する 欠陥特性自己紹介 • 職歴 –1998年入社 –3D CADシステム開発 –Webフレームワーク開発 –第三者レビュー(QI)組織リーダー

混入特性

21© 2015 EXA CORPORATION

Page 22: 組織の自律改善に寄与する 欠陥特性自己紹介 • 職歴 –1998年入社 –3D CADシステム開発 –Webフレームワーク開発 –第三者レビュー(QI)組織リーダー

混入特性とは

• すべての欠陥に存在するわけではないが、混入から検出されるまでに獲得した性質

• 環境に依存する

22

By Bryan Wright

連鎖性

好複雑性

好欠乏性

増殖性

混入特性

© 2015 EXA CORPORATION

Page 23: 組織の自律改善に寄与する 欠陥特性自己紹介 • 職歴 –1998年入社 –3D CADシステム開発 –Webフレームワーク開発 –第三者レビュー(QI)組織リーダー

連鎖性

• 時間的連なりの中で成長する性質

23

欠陥の残存 欠陥の除去

連鎖性

好複雑性

好欠乏性

増殖性

混入特性

2〜5%混入×

© 2015 EXA CORPORATION

Page 24: 組織の自律改善に寄与する 欠陥特性自己紹介 • 職歴 –1998年入社 –3D CADシステム開発 –Webフレームワーク開発 –第三者レビュー(QI)組織リーダー

連鎖性の例

• スペスミスが一箇所あったが影響は少ないだろうと放置した

• 業務上重要なスペルミスであることが後に発覚

– 例:「理論」と「論理」「数字」と「字数」

• すでにオフショアに展開後だったので修復に時間がかかってしまった

© 2015 EXA CORPORATION 24

Page 25: 組織の自律改善に寄与する 欠陥特性自己紹介 • 職歴 –1998年入社 –3D CADシステム開発 –Webフレームワーク開発 –第三者レビュー(QI)組織リーダー

増殖性

• 複製・再利用により再生産される性質

• 空間的な増殖

25

連鎖性

好複雑性

好欠乏性

増殖性

混入特性

© 2015 EXA CORPORATION

Page 26: 組織の自律改善に寄与する 欠陥特性自己紹介 • 職歴 –1998年入社 –3D CADシステム開発 –Webフレームワーク開発 –第三者レビュー(QI)組織リーダー

好複雑性、好欠乏性

26

複数ベンダー

複雑な成果物

巨大な開発標準

人材・スキル不足

記述・実装漏れ

短納期

複雑 欠乏

混入確率上昇

偏在性

連鎖性

好複雑性

好欠乏性

増殖性

混入特性

成果物人的資源 環境

© 2015 EXA CORPORATION

Page 27: 組織の自律改善に寄与する 欠陥特性自己紹介 • 職歴 –1998年入社 –3D CADシステム開発 –Webフレームワーク開発 –第三者レビュー(QI)組織リーダー

好複雑性、好欠乏性の例

• 好複雑性

– 複数ベンダーでベンダー間の協力体制がない

– 過去の巨大プロジェクト標準をそのまま流用

– 見向きもしない成果物がある

• 好欠乏性

– スキルのある人材ほど不足

– 1から教育するほどの時間がない

– 標準工期と比較して極端に短い工期である

© 2015 EXA CORPORATION 27

Page 28: 組織の自律改善に寄与する 欠陥特性自己紹介 • 職歴 –1998年入社 –3D CADシステム開発 –Webフレームワーク開発 –第三者レビュー(QI)組織リーダー

実験と考察

28© 2015 EXA CORPORATION

Page 29: 組織の自律改善に寄与する 欠陥特性自己紹介 • 職歴 –1998年入社 –3D CADシステム開発 –Webフレームワーク開発 –第三者レビュー(QI)組織リーダー

実験1• 欠陥の認識が統一されたか?

– 従来表現:「例外処理が抜けている」

– 基本特性:「コード内のエラーチェックが存在しない」

© 2015 EXA CORPORATION 29

従来表現欠陥である

60%欠陥ではない

40%

基本特性

欠陥である

94%

欠陥ではない 6%

母数=30

認識の共有が進んだ

Page 30: 組織の自律改善に寄与する 欠陥特性自己紹介 • 職歴 –1998年入社 –3D CADシステム開発 –Webフレームワーク開発 –第三者レビュー(QI)組織リーダー

実験2• 混入特性は品質改善提案につながるか?

– 組織A:組み込み系– 組織B:パッケージアドオン開発– 組織C:業務アプリ開発

© 2015 EXA CORPORATION 30

0%

5%

10%

15%

20%

25%

30%

35%

40%

連鎖性

好複雑性(

組織)

好複雑性(

対象)

好複雑性(環境)

好欠乏性(

組織)

好欠乏性(

対象)

好欠乏性(

環境)

増殖性

組織A

組織B

組織C

組織 導出された改善案

A テスト知識強化

B システム連結部分の改善

C コミュニケーション改善

母数=100欠陥

ピンポイントの改善活動を導出

Page 31: 組織の自律改善に寄与する 欠陥特性自己紹介 • 職歴 –1998年入社 –3D CADシステム開発 –Webフレームワーク開発 –第三者レビュー(QI)組織リーダー

将来期待される応用分野

© 2015 EXA CORPORATION 31

Page 32: 組織の自律改善に寄与する 欠陥特性自己紹介 • 職歴 –1998年入社 –3D CADシステム開発 –Webフレームワーク開発 –第三者レビュー(QI)組織リーダー

新しい欠陥分類法への応用

© 2015 EXA CORPORATION 32

ODC(直交欠陥分類)※

品質の作り込み

欠陥の検出

本提案による分類

欠陥由来の問題+

ピンポイントな予測と改善案※ODC入門:http://www.slideshare.net/mori_ryuji/odc-2014123

Page 33: 組織の自律改善に寄与する 欠陥特性自己紹介 • 職歴 –1998年入社 –3D CADシステム開発 –Webフレームワーク開発 –第三者レビュー(QI)組織リーダー

欠陥情報に基づく予測と予防

• リアルタイム欠陥指摘

© 2015 EXA CORPORATION 33

欠陥DB詳細設計書

【処理機能記述】......AかつBでない場合

A処理

すばやいフィードバック

この書き方は〜という欠陥を引き起こす可能性があります。

!

Page 34: 組織の自律改善に寄与する 欠陥特性自己紹介 • 職歴 –1998年入社 –3D CADシステム開発 –Webフレームワーク開発 –第三者レビュー(QI)組織リーダー

まとめ

© 2015 EXA CORPORATION 34

Page 35: 組織の自律改善に寄与する 欠陥特性自己紹介 • 職歴 –1998年入社 –3D CADシステム開発 –Webフレームワーク開発 –第三者レビュー(QI)組織リーダー

まとめ

• 欠陥の共通言語としての「欠陥特性」

• 基本特性– すべての欠陥に共通する性質

• 混入特性– 混入の過程で事後的に備わる

性質

• 実験と考察– 欠陥特性の有効性が示された

• 今後の欠陥議論の基礎となることが期待できる

35

具現性

有害性

因果性

連鎖性

好複雑性

好欠乏性

増殖性

基本特性

混入特性

© 2015 EXA CORPORATION

欠陥特性

Page 36: 組織の自律改善に寄与する 欠陥特性自己紹介 • 職歴 –1998年入社 –3D CADシステム開発 –Webフレームワーク開発 –第三者レビュー(QI)組織リーダー

36

欠陥エンジニアリングの黎明

By tdlucas5000© 2015 EXA CORPORATION

Page 37: 組織の自律改善に寄与する 欠陥特性自己紹介 • 職歴 –1998年入社 –3D CADシステム開発 –Webフレームワーク開発 –第三者レビュー(QI)組織リーダー

37

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

© 2015 EXA CORPORATION