2010 ase-tool support for essential use cases to better capture software requirements

Post on 22-Apr-2015

289 views 1 download

description

 

Transcript of 2010 ase-tool support for essential use cases to better capture software requirements

発表論文

• タイトル

– 「Tool Support for Essential Use Cases to Better

Capture Software Requirements」

• 著者

– Massila Kamalrudin、John Grundy、John Hosking

• 会議

– Automated Software Engineering(ASE) 2010

0SS合同輪講

year accept rate

2008 18%

2009 17%

2010 12%

概要

目的:要求文書から、 EUC(Essential Use Case)を正しく作成すること

手法:EUCサポートツールを作成し評価

結果:手作業でやるより、正しくEUCを作成できた

1SS合同輪講

選定理由

• システム開発プロセスの自動化に関する

研究がしたい

• 上流工程(特に、要求分析工程)に興味が

ある

2SS合同輪講

背景(要求分析の重要性)

• 要求分析工程のミスは、後工程に響く

3SS合同輪講

要求分析

設計

実装

試験

背景(要求分析の難しさ)

• システムエンジニア

–システム開発は得意

–でも、専門業務は不得意(例:医療業務)

• システムエンジニアが、

業務を正しく理解することは非常に困難

4SS合同輪講

• 要求文書中の必須項目を抽出し、EUCに変換

EUC(Essential Use Case)

要求文書 EUC

5SS合同輪講

• 「display time out」(タイムアウトを表示)

• 「show error」(エラーを表示)

• 「display error message」(エラーメッセージを表示)

• 「show problem list」(問題リストを表示)

6SS合同輪講

要求文書中の必須項目

「display error」(エラーを表示)

EUC

EUC(必須項目からEUCへの変換例)

EUCの適応実験(概要)

• 大学院生11人:要求文書からEUCを作成

• 正解率とタイムを計測

ただし、

• 大学院生はソフトウェア工学専攻、UMLの経験有

• 要求文書はATMシステムを想定

• 正解条件:研究関係者の解答と同じ(非常に近い)

とする

7SS合同輪講

8SS合同輪講

• 正解率:47%

(不正解率:53%)

• パーフェクト:1人/11人

(パーフェクト率:9.1%)

• タイム

-最速: 5[分]

-最遅:25[分]

(人によってかなり違う)

被験者

答え

時間(分)

(U

)身分を証明する

(S

)ID

を確認する

(S

)選択肢を提供する

(U)選択肢を選択する

(S

)現金を出す

(U

)現金を受け取る

1 × × × ○ ○ ○ 9

2 ○ × ○ ○ ○ × 5

3 × × ○ × ○ × 10

4 × × × ○ ○ × 7

5 × ○ × × ○ × 10

6 × × × ○ ○ × 7

7 ○ ○ ○ ○ ○ ○ 20

8 ○ × × ○ ○ × 10

9 ○ ○ ○ × × × 10

10 × × × × ○ ○ 25

11 ○ ○ × × × × 10

5 6 4 7 4 7 6 5 9 2 3 8

EUCの適応実験(結果)

11人の大学院生

正解のEUC

EUCの考察

• 長所

–要求分析工程のミス・抜け・漏れを減らすことができる

–従来のユースケースモデルよりも単純明快

• 短所

–要求文書から正しくEUCを作成できない

(SEは業務を正しく理解することが困難)

–サポートツールがない

9SS合同輪講

EUCサポートツール(概要)

10SS合同輪講

Ⅰ.要求文書を入力

Ⅱ.必須項目を判別

Ⅲ.EUCに変換・出力

要求文書

EUC

11

300種類の語句を収録

オンライン予約システム、オンラインバンキングシステム、携帯電話システム、オンライン選挙システム、

オンラインビジネスシステム、オンライン登録システム、電子取引システム

様々なシステムの要求文書から

ライブラリに

SS合同輪講

EUCサポートツール(必須項目の判別1)

12SS合同輪講

構文

動詞 目的語

なし/冠詞/形容詞 名詞

• 必須項目の文は、

Ⅰ. 動詞+名詞

Ⅱ. 動詞+冠詞+名詞

Ⅲ. 動詞+形容詞+名詞

で構成されているので…

複数の必須項目のパターンが作れる

300語を組合せて

EUCサポートツール(必須項目の判別2)

要求文書 EUC

作成した

必須項目のパターン

• 要求文書中で、必須項目のパターンに合う文をEUCに変換

13SS合同輪講

EUCサポートツール(必須項目の判別3)

適合

変換

EUCサポートツールの実行画面

14SS合同輪講

要求文書を入力

EUCが出力

EUCを選択

関連部分がわかる

クリック

評価(評価項目と評価基準)

「サポートツールを使うと、

手作業で作成するよりどれほどいいか」 を評価

• 評価項目

–ツールを使って作成したEUCの正解率

–ツールを使った際のタイム

• 評価基準

–手作業で作成したときのEUCの正解率(47%)

–手作業で作成したときのタイム(平均:11.2[分])

15SS合同輪講

評価(結果)

16SS合同輪講

• 正解率:83%

(不正解率:17%)

• 手作業実験より、

- 36%向上

• タイム

- 1[秒]

(ほとんど無視できる)

答え

正解 不正解

手作業 ツール 手作業 ツール

(U)身分を証明する 5 1 6 0

(S)IDを確認する 4 1 7 0

(S)金額を入金させる 4 1 7 0

(U)選択肢を選択する 6 1 5 0

(S)現金を渡す 9 1 2 0

(U)現金を受け取る 3 0 8 1

正解率 47% 83% 53% 17%

評価2(業務ごとの結果比較)

17SS合同輪講

• 平均正解率:80%

結論

EUCが作成できると、自然言語で記述された

要求文書をモデル化できて、わかりやすい

しかし、EUCを正しく作成することは困難

作成したツールを使用することで、

手作業でやるより正しくEUCを作成できた

18SS合同輪講

研究の課題

EUC:抽出された必須項目から自動生成

EUCの正解率:必須項目の抽出率で決まる

ライブラリ中の収録語数を増やす

ライブラリが自律的に学習しながら、

自動で収録語数を増やすようにしたい

19SS合同輪講

つまり…

そこで…

できれば…

私見

• 長所

– EUC適応実験(手作業)を行うことで、

要求分析の難しさを立証している

• 短所

– EUC適応実験(手作業)において、

適合率について評価していない

20SS合同輪講

附録

ここからは、発表に関連する項目を記載

21SS合同輪講

EUCの定義

• 「完全で、重要で、システムと関連して、

ユーザの観点から明確であり、

一般化されて抽象的で、技術にとらわれず

独立している記述を包括する

アプリケーションドメインと、

ユーザの利用する言語で構造化されて

表現されたもの」

22SS合同輪講

23

従来のユースケースモデル(ユースケース図)

• 基幹業務システムはユースケース数~1000!

• SE:業務の流れがわからない

交通費申請システム

交通費申請書を受付る交通費申

請書を承認する

交通費申請書を作成する

社員

事務

上長SS合同輪講

24

• 基幹業務システムはユースケース数~1000!

• 業務担当者:システムの動作がわからないユースケース名 社員が交通費申請書を作成する

アクター 社員

目的 アクターが交通費を申請する

事前条件 アクターが交通費を申請できる状態

事後条件 交通費申請書が作成済みである状態

基本フロー アクターが、交通費申請書に申請日、合計金額を入力

アクターが、交通費申請書明細に明細金額、行先、移動日、移動手段を入力

ユースケース名 事務が交通費申請書を受付ける

アクター 事務

目的 事務が交通費申請書を受付ける

事前条件 交通費申請書が作成済みである状態

事後条件 交通費申請書が受付済みである状態

基本フロー アクターが、交通費申請書を受付ける

代替フロー アクターが、交通費申請書を受付けない

従来のユースケースモデル(ユースケース記述)

SS合同輪講

適合率と再現率(適合率)

25

• 適合率:検索結果中にどれだけ正解があったか

(不正解が多ければ多いほど適合率は下がる)

R:正解N:検索結果

適合率(precision)

=RーN

SS合同輪講

適合率と再現率(再現率)

26

再現率(recall)

=RーC

R:正解C:全正解

SS合同輪講

• 適合率:検索結果中にどれだけ正解があったか

(不正解が多ければ多いほど適合率は下がる)