• 検索結果がありません。

Microsoft PowerPoint - 教材サンプル1&2.ppt

N/A
N/A
Protected

Academic year: 2021

シェア "Microsoft PowerPoint - 教材サンプル1&2.ppt"

Copied!
11
0
0

読み込み中.... (全文を見る)

全文

(1)

0

© Fuji Xerox Co., Ltd. All Rights Reserved.

ソフトウェアバグの現状: 膨大化するソフトウエア開発と生産性

0 1 2 3 4 5 1960 1970 1980 1990 2000 2010 生産性( H/FP) 0 1 0 2 0 3 0 4 0 5 0 6 0 7 0 1 96 0 19 7 0 19 8 0 1 99 0 2 00 0 20 1 0 ソ フ トの量( F P ) 0 5 0 0 0 1 0 0 0 0 1 5 0 0 0 2 0 0 0 0 2 5 0 0 0 1960 1970 1980 1990 2000 2010

① 開発機能数の指数的な増加

② 開発生産性の向上

生産性を考慮しても、開発時間へのインパクトは、

2000年以降、急激に大きくなっている

① 開発機能数の指数的な増加

② 開発生産性の向上

生産性を考慮しても、開発時間へのインパクトは、

2000年以降、急激に大きくなっている

出典:Software Metricsより

開発機能数

開発機能数

1つの

1つの

機能を開発する時間

機能を開発する時間

開発時間(相対)

開発時間(相対)

ソフトウェアエ ンジニアリング の効果 食い止める何か が必要

(2)

P

R

D

加速

減速

AND

AND

NOT NOT Dモード

アクセル

ブレーキ

加速の関係

減速の関係

前頁の加速/減速の論理式を原因結果グラフにしてみましょう

この様に、原因結果グラフにすると、原因と結果の関係(関連)を把握しやすくなります。

前頁の論理式

D and (not R) and (not P) = Dモード

Dモード and アクセル = 加速

ブレーキ = 減速

(3)

2

© Fuji Xerox Co., Ltd. All Rights Reserved.

下線

太字

斜体

1-8. 直交表が網羅する組合せ

2機能間の組合せが全て存在している (この状態を組合せ網羅率100%と定義する) 全組合せでは直交表に存在しない組合せも出現する (ただし、テスト回数は指数関数的に増大する)

OFF

ON

ON

OFF

OFF

ON

OFF

ON

ON

OFF

OFF

ON

太字

斜体

下線

ON OFF ON OFF 斜体 テストNo.4 テストNo.3 テストNo.2 テストNo.1 L4直交表 ON ON OFF OFF 太字 ON ON OFF OFF 下線 ON ON OFF テストNo.4 OFF OFF ON テストNo.5 ON OFF ON テストNo.6 OFF ON ON テストNo.7 ON ON OFF OFF 斜体 テストNo.8 テストNo.3 テストNo.2 テストNo.1 全組合せ ON OFF OFF OFF 太字 ON OFF ON OFF 下線

(4)

実際にやってみました : プリンタ機能組み合わせテスト

アプリ

ABC

ABC

ABC

OS

ドライバ

印刷物

NET WORK

ドライバ

アプリ

OS

Net

Net

Decomposer

Imager

NET WORK

アプリからの出力指示を始点として紙が出力されるまでのソフト群がテスト対象

アプリからの出力指示を始点として紙が出力されるまでのソフト群がテスト対象

印字不良

印字不良

/

/

出力可否

出力可否

が不具合として検出さ

が不具合として検出さ

れる

れる

リン

ト実

ドライバ設定

ドライ

バ設定

プリント実行指示

(5)

4

© Fuji Xerox Co., Ltd. All Rights Reserved.

HAYST法の結果

モノクロ

モノクロ

ネットワークプリンタ

ネットワークプリンタ

カラーネットワークプリンタ

カラーネットワークプリンタ

因子数:21

因子数:34

製品の特徴

不具合状況

(2水準系直交表L64、

L128)

網羅率

直交表

不具合数

79%

L64

5件

テスト数

網羅率

直交表

不具合数

73%

L128

9件

テスト数

多水準の扱い

3水準~4水準 5水準以上 2水準以下 4水準線点図 8水準線点図 2水準線点図 対応する線点図

禁則の扱い

全てのテスト項目に関して、禁則組合せ

が出現しないように、構成

(64項目テスト項目があったら、1項目も禁則関

係が出現していない。禁則にならないように、

他の水準を割り当てている)

水準数:79

水準数:152

(6)

6-4. 直交表の生い立ち: ラテン方陣

大将

中将

小将

中将

小将

大将

小将

大将

中将

このような表を

このような表を

ラテン方陣と呼ぶ

ラテン方陣と呼ぶ

四方からの攻撃をバラ

四方からの攻撃をバラ

ンスよく守っている

ンスよく守っている

(7)

6

© Fuji Xerox Co., Ltd. All Rights Reserved.

6-11. 機能数と直交表によるテスト

直交表でテストを行うと、網羅率

を保証しつつテスト数を大幅に

削減できる

直交表のテスト数は機能に対し

て、加算で増加する

従来のフルコンビネーションは、

掛算で増加する

トリプル網羅率 50.0 90.0 96.2 98.3 99.2 99.6 99.8 99.9 100.0 40.0 50.0 60.0 70.0 80.0 90.0 100.0 4 8 16 32 64 128 256 512 1024 直交表 % トリプル網羅率

サイ

テストでき

る機能数

テスト数

2機能間

の網羅率

3機能間

の網羅率

2機能の

組合せ数

2機能間

のテスト数

3機能の

組合せ数

3機能間

のテスト数

2機能間

のテスト

3機能間

のテスト

L4

3

4

100%

50.00%

3

12

1

8

3

1

L8

7

8

100%

90.00%

21

84

35

280

11

32

L16

15

16

100%

96.15%

105

420

455

3640

26

219

L32

31

32

100%

98.28%

465

1860

4495

35960

58

1104

L64

63

64

100%

99.18%

1953

7812

39711

317688

122

4923

L128

127

128

100%

99.60%

8001

32004

333375

2667000

250

20753

L256

255

256

100%

99.80%

32385

129540

2731135 21849080

506

85177

フルコンビネーションテスト

直交表の効率

直交表

(8)

6-14. 直交表の利点 : テスト項目数が減る

直交表を用いない場合の組合せテスト

直交表を用いない場合の組合せテスト

直交表を用いる場合の組合せテスト

直交表を用いる場合の組合せテスト

割付け 速度 の“早い”に着目して見てみると、 “早い”に対して、残りの因子の保有する水準との組合せが 直交表の中に出現しているのが分かる。 因子の水準に着目してみても同じ状況になっている。 SWテストへは、直交表の「2因子間の組合せは100%保証する (3因子以上の組合せに関しては保証しない)」という性質を利用 している。 組合せを確認したい設定項目(因子)と各因子のとりうる値 (水準)が次のようになっているとする。 全ての組み合わせを考慮した実験を試みた場合には、 2×2×2 = 8 通り ( 23通り ) 組合せが発生する。 SWの不具合発生は2因子間の組合せで発生している。 2因子間の組合せのみ100%保証するという方針で考えてみる。 因子数が3つだったから8通りですむが、因子数が50個の場 合には250 = 1.12589990×1015通りのテストをこなさなけれ ば、全ての組合せをテストしたことにはならない。 出来るわけ無いので。何とか絞り込まなければならない…。 適当に間引いてしまうとやばそう。 なんか良い方法はないの?? 遅い 高い 高度 低い 10 5 質量 早い 速度 水準名 因子名 高い 低い 高い 低い 高度 テストNo.3 テストNo.3 テストNo.2 テストNo.1 L4直交表 遅い 遅い 早い 早い 速度 10 10 5 5 質量 1 0 1 0 高度 テストNo.3 テストNo.3 テストNo.2 テストNo.1 L4直交表 1 1 0 0 速度 1 1 0 0 質量

(9)

8

© Fuji Xerox Co., Ltd. All Rights Reserved.

8-2. 遷移パスを自動的に抽出する方法

S0

S1

S2

S3

a

b

c

d

e

f

g

j

k

h

i

k

e

g

S3

d

j

S2

f

c

i

S1

a

b

h

S0

S3

S2

S1

S0

関係行列

関係行列

k

e

g

0

d

j

0

0

f

c

i

0

0

a

b

h

k

e

g

0

d

j

0

0

f

c

i

0

0

a

b

h

gf+ed+kk

gc+ej+ke

gi+kg

0

S3

jd+dk

jj+de

dg

0

S2

if+cd+fk

ic+cj+fe

ii+fg

0

S1

bf+ad

ha+bc+aj

hb+bi

hh

S0

S3

S2

S1

S0

状態S1からS2への

遷移はイベントc

によって起こると

いう関係を示す

(10)

9-1. 成果

市場での成果

開発プロセスでの成果

結 合 バグ 検出率 [%] 100% 単 体 機 能 要求 定義 80%         1998年製品 50%       現状 今後 30%       1995年製品 1 2 3 4 5 6ヶ月 システム QAテスト 設計 Code 90%        

開発プロセスでの成果

結 合 バグ 検出率 [%] 100% 単 体 機 能 要求 定義 80%         1998年製品 50%       現状 今後 30%       1995年製品 1 2 3 4 5 6ヶ月 1 2 3 4 5 6ヶ月 システム QAテスト 設計 Code 90%         0 10 20 30 40 50 60 70 80 90 100 Limoges Oceans2TTM 0 5 10 15 20 25 30 35 網羅率 FC 網羅率 [% ]

80%

30%

0件

製品X

製品Y

勘と経験

HAYST法

市場不具合 市場不具合数 0 10 20 30 40 50 60 70 80 90 100 Limoges Oceans2TTM 0 5 10 15 20 25 30 35 網羅率 FC 網羅率 [% ]

80%

30%

0件

製品X

製品Y

勘と経験

HAYST法

市場不具合 市場不具合数

評価での成果

100 60 11 9 6 2 10 4 7 2 7 0 20 40 60 80 100 120 従来 手法 HAY ST手

作業 製品A 製品B 製品C 製品D 製品E 製品F 製品G 製品H 製品I

勘と経験で手作業で作成 HAYSTで手作業で作成 HAYST自動生成ツール使用 工数  [% ] 1テストマトリクスあたりの工数比較

人材開発での成果

16 27 44 60 76 94 113 131 150 164 180 199 218 0 50 100 150 200 250 2001 /9/3 2002 /5/13 200 2/6/ 3 2002 /11/ 11 2002 /12/ 2 2003 /5/13 2003 /6/3 2003 /7/1 200 3/11/ 10 2004 /1/ 19 2004/ 5/31 2004/ 6/28 200 5/3/ 8 0% 20% 40% 60% 80% 100% 受講者数 満足度

フロー

アウト

バグの

撲滅

(CS向

上)

開発

プロセ

の加

速化

(TTM

短縮

評価

コスト

の削

ル活

用)

評価

工学

の確

向上

(11)

10

© Fuji Xerox Co., Ltd. All Rights Reserved.

9-4. 開発テスト終了時のバグ検出状況

0 20 40 60 80 100 総Bug数 SST不具合検出率 0 20 40 60 80 100 総Bug数 SST不具合検出率

HAYST

HAYST

法を使用したサブ

法を使用したサブ

HAYST

HAYST

法を使用しなかったサブ

法を使用しなかったサブ

HAYST法を適用

安定して高い検出率

HAYST法を適用

安定して高い検出率

HAYST法を適用していない

サブのバグ検出状況:

バラツキが大きい

HAYST法を適用していない

サブのバグ検出状況:

バラツキが大きい

評価部門を含め、市場導入

までに検出したバグ数を

100とする

評価部門を含め、市場導入

までに検出したバグ数を

100とする

参照

関連したドキュメント

攻撃者は安定して攻撃を成功させるためにメモリ空間 の固定領域に配置された ROPgadget コードを用いようとす る.2.4 節で示した ASLR が機能している場合は困難とな

東京大学 大学院情報理工学系研究科 数理情報学専攻. [email protected]

Max-flow min-cut theorem and faster algorithms in a circular disk failure model, INFOCOM 2014...

に関して言 えば, は つのリー群の組 によって等質空間として表すこと はできないが, つのリー群の組 を用いればクリフォード・クラ イン形

[r]

of IEEE 51st Annual Symposium on Foundations of Computer Science (FOCS 2010), pp..

最大消滅部分空間問題 MVSP Maximum Vanishing Subspace Problem.. MVSP:

"A matroid generalization of the stable matching polytope." International Conference on Integer Programming and Combinatorial Optimization (IPCO 2001). "An extension of