木村/Research Subject
人と非機能要件に関する分類器の比較分析†
Approach†
- ユーザスタディの実施
- 最低でも10人は必要
- 非機能要件分類チュートリアルを実施
- 実際に用意した要件をラベリングしてもらう
- (ツールができれば)
- ツール有無で時間を測定
- 数をこなすと時間が短縮する可能性を考慮して交差実験をする
- 一人に対し2つの要件書を割り当てる
- 組み合わせによるバイアスの低減?
- イメージ
| Aさん | Bさん | Cさん |
| 要件書A | ○ | ○ | |
| 要件書B | | ○ | ○ |
| 要件書C | ○ | | ○ |
Experiment†
- 知りたいこと
- 分類器で分類したものと人の手作業で分類されたものの違いはあるか?
- 品質特性ごとにラベリングされたもののバラツキはどのようなものか?
- バラツキが多い品質特性は曖昧度が高い
- 学習させる際に考慮すべき事柄が見つかるかも?
- (分類器をツール化した場合の予定)
- ツールの有無で時間はどのくらい違うのか?
- 要件ごとに時間の短縮度合いに違いはあるか?(一度に分類するため測定するのは難しいかも)
- 手動で分類した時とツールを使って分類した時で要件の分類のばらつきはどうか?
- ツールを使用した時にばらつきが少なければ,非機能要件の分類
- [旧]
- (RQ1)人と人の分類結果の一致具合はどうか?
- 1つの要件書に複数人割り当てたグループを複数作る
- たまたま分類がしやすい要件書だった可能性をなくすため
- 各グループごとに相関分析を行う
- 人の分類結果にバラツキが大きければ,高精度のモデルを作るのは難しいのでは?
- 分類器を使う場面を考え,設計の見直しが必要になるかも
- 品質特性の区別なしの相関と品質特性ごとの相関を表に表す
- (RQ2)人と分類器の分類結果の一致具合はどうか?
- 各要件書に対し複数のモデルで分類を行う
- 100回の分類結果を1つずつ,人の分類結果と相関分析を行う
- RQ1と同様に品質特性の区別有無と各モデルの相関を表で表す
- (RQ3)RQ1の結果がRQ2にどのように影響しているか?
- RQ1の相関の値が適切なモデルの選択に関係しているかどうか?
- [新]
- (RQ1)人と分類器の分類はどのくらい一致しているか?
- (RQ2)表現の曖昧さは分類器の分類精度にどのくらい影響しているか?
- (RQ2-1)各要件の曖昧さはどのくらいか?
- (RQ2-2)表現の曖昧さと分類精度にどのくらい関係があるか?
- (RQ2-3)表現の曖昧さが高い文は見逃す,あるいは間違いやすく,表現の曖昧さが低い文は正しく分類されやすい
- 曖昧さの定義
- 人が分類したときの結果の一致の度合いのこと.
- 一致しやすいものはわかりやすい文であり理解の仕方にブレがなく,一致しづらい文はわかりにくく理解の仕方が複数ある
- RQ2-2やRQ2-3で曖昧さが分類精度に影響していた場合,分類器の設計を変える必要があると述べられる
- 単語の類似度ではなく,文章の類似単語の組み合わせや文構造,あるいは前後の文脈を加味した設計を作る必要がある
- 一回の分類ではなく複数回ループさせるとか面白そう
To Do†
- どの時点の分類器と比較するのかを決める
- 未来と一緒に分類器の性能向上を目指す
- 実験環境の設定を定める
- データ分類における規約の設定
- ノイズとなっている単語の特定
- 学習データと精度を比較しながらどの文章,あるいは単語がノイズになっているかを特定する
- とりあえず目視
Done†
- 分類器の改良
- 品詞を限定した時としていない時では,品詞を限定していない時の方が全体的に精度がいい
Memo†
- 秋頃を過ぎると被験者の方々も忙しくなるので,ユーザスタディは夏までに実施しデータを獲得する
- RQ1とRQ2の順序を逆にした方が自然な流れになりそう
卒業論文執筆メモ†
Chapter1:Introduction†
Background†
Goal・Contribution†
- 分類器と人の分類精度の違いを分析し,自動分類手法の有効性,効率性を評価
- 分類器と人の分類における問題点の抽出
- 分が短いと間違いやすい
- 文脈から読み取れる要件文は間違えやすい
Chapter2:Non-functional Requirement and Prior Research†
- 2章は本研究の位置付け
- 先行研究が行ったこととその研究では行われなかったことの明記
Non-functional Requirement†
- 要件定義書では,機能要件と非機能要件が存在
- 機能要件は顧客が求める機能の詳細を記したもの
- 非機能要件は満たすべき性能の詳細を記したもの
- 非機能要件は開発するシステムの品質に関わることから製品品質とも呼ばれ,開発における重要な要因の1つ
- 品質特性を定義した規格は多岐にわたるが,本研究で用いる品質特性はISO25010の規格に則ったもの
- ISO25010は機能適合性,性能効率性,互換性,使用性,信頼性,セキュリティ,保守性,移植性の8つの品質特性から構成されている
Previous Classification Technique†
Chapter3:Research Questions†
RQ1†
RQ2†
- 自動分類手法の効率性は?
- Precisionが低くRecallが高ければ,見直しの量が増え二度手間になる可能性がある
予備調査?†
- それぞれのラベル付けの間違えた部分の分析
- ここで間違えたラベルが,文脈を考慮すると実は正しいなどがわかれば最高
RQ3†
RQ4†
Chapter4:Experiment†
Classification Technique†
- テキストのクリーニング
- ストップワードの除去
- 単語の正規化
- 形態素解析
- 単語の分散表現
- 分類器は,ランダムフォレスト,ナイーブベイズ,SVM,SMOなど
Dataset†
- オンライン上で公開されている官公庁の提案依頼書(RFP:Request For Proposal)
- 内訳を表にて記載
Approach†
- 被験者実験(conduct user study)
- 実験の環境概要
- 分類対象のデータ規模(100〜200件ぐらいの規模)
- 人数(10人くらい)
- 手作業で分類する(2人1組,もしくは1人で分類するかを考える)
- 2人1組での分類:相談できるので,ラベルの正しさの信頼度が高い?,バディの意見に引っ張られやすい
- 1人での分類:個々人の要件の捉え方が分かりやすい,ラベルの正しさの信頼度が下がる
- 分類方法(2パターン)
- 一文だけで要件判断(メインラベル)
- 話の流れを考慮して判断(サブラベル)
Chapter5:Result†
Chapter6:Discussion†
Threats To Validity†
Chapter7:Related Work†
Chapter8:Conclusion(and Future work)†
Reference†
- [1]Brooks Jr., F.P., “No Silver Bullet: Essences and Accidents of Software Engineering,” IEEE Computer., 4, (Apr. 1987), 10-19.
- 非機能要件をきちんと管理できていないとシステムの品質に影響を及ぼし,システム障害を引き起こす可能性がある