自己紹介： 中川博之
 ディペンダビリティ工学講座 (土屋研) 准教授
 担当講義：計算理論, 情報論理学
 研究内容：自己適応システム 要求工学 知的ソフトウェア, AI応用
 ソフトウェア開発の自動化
 マルチエージェントシステム
work, docs,document, write, time189

free, open,simple, review, story

docs, work,write, document, phone252

file, simple,organize, create, mobile

option, terrible,appauled, chi, codocs, iphone,laptop, far, organize

92

276

474

212

text, highlight,
browser, copy/cut, superiorschool, ms,finish, right, box

work, school,docs, keep, savenote, time,
life, feature, helpful

keep, free,save, note, timespell, check,belittle, -i, become

allow, open,
document, share, platform

docs, iphone,laptop, far, organize

docs, iphone,laptop, far, organize

docs, iphone,laptop, organize, savenever, device,
book, version, day

download, platform,
live, fact, weird

anywhere, allow,open, document, share

download, right,template, weird, number

462

download, drive,template, weird, number

415

update, change,
review, bother, telldesign, web,shortcuts, scale, etc

computer, print,docs, indent, dark

share, work,folder, apps, addtype, fix,crap, form, time

work, docs,open, free, change

type, time,crap, form, fix

85

298

type, time,crap, form, fixchange, idea,
emojis, lock, fix

ipad, fix,iphone, document, enough42

indent, night,
mode, story, paragraph149

folder, suggestion,
delete, organized, request

cloud, drive,
learn, bit, mathdocument, work,
share, open, time237

share, open,
docs, create, emojis

241

laptop, college,
worthless, waste, perfectly

time, worthless,waste, usually, right12

free, share,drive, find, anothershare, data,bit, math, symbol

122

430

write, docs,time, indent, phonedark, mode,night, ive, request/suggestion

folder, add,organized, drive, sort60

learn, cloud,drive, apps, keep

38

open, save,school, people, filewrong, almost,voiceover, work, key

334

automatically, recommend,due, website, suredocs, document,game, changer, project

414

156

work, docs,document, drive, save

helpful, laptop,cant, sheet, apps

476

179document, open,edit, work, never229

document, edit,open, never, save

save, paper,work, automatically, school

178

131

game, changer,
whether, right, startsave, student,
docs, sure, losephone, computer,
print, work, helpfulrecommend, book,allow, document, offline

paragraph, computer,phone, miss, backdocument, open,edit, work, time94

34

save, paper,work, automatically, school

save, ipad,
whole, sign, multiple

146

indent, night,
dark, mode, paragraphfolder, add,
delete, document, organized81

voiceover, character,delete, speak, move

drive, game,changer, project, collaborate

search, find,unscripted, look, coworker

40

document, open,work, edit, voiceover

work, docs,
save, paper, document

write, computer,
ipad, print, docs

174

crap, form,
storage, mistake, replace329

changer, due,app/website, chain, revisionchange, nosifer,bother, tell, inconvenient

data, form,
another, mistake, accountwork, access,school, docs, save

440

apps, note,
time, user, text

live, updates,
yesterday, move, adobe

work, document,
access, docs, time356

cursor, voiceover,speak, row, link

docs, work,document, write, phone434

dark, night,nosifer, skin, printing

free, download,file, life, apps

1771

docs, work,document, write, time

33

free, drive,change, print, helpful

153

326

write, docs,
time, work, phone

document, edit,open, download, alreadydownload, already,apps, link, properly

240

phone, computer,
print, work, ipad

427

print, work,
helpful, access, savephone, computer,
print, ipad, work

edit, bug,select, force, version

185

computer, ipad,edit, add, new382

can't print files
need dark modeloading large amount
can't keep with next
need autocorrection
can't open files
free
don't work
lost files
format is hardneed more fonts
offlineneed indent
can't edit files
need folder
can't save files
forces to download app
need Grammarly support
can't go through via drive
can't access files
slow
can't read docs
can't add picture
can't remove files
create document
can't change input
need privacy
lacking features
00.20.4

RecallPrecision

301

0.6

0.81

研究内容紹介：自己適応システム
 自己適応システム (self-adaptive systems):
 自発的に振舞いを替えることで環境に柔軟に適応できるシステム
 以下の能力が必要

環境を観測する能力 (Monitor)
 現在の状況を分析する能力 (Analyze) 望ましい振る舞いを決定する能力 (Plan)
 振舞いを切り替える能力 (Execute)

MAPE loop2自己適応システムフレームワーク

publi c cl ass Moni torE vent ext ends Mon itor {Ser ialC ommu nica tion ser ial = nu ll;
Kno wled geSt ate know ledg e = null ;pub lic Moni torE vent (Sys temE vent Conv erte r se , St ring nam e) {s uper (se, nam e);t his. seri al = new Ser ialC ommu nica tion ();t his. know ledg e = (Kno wled geSt ate) sup er.k nowl edge ;}Set a serial port

 実世界の環境変化に適応するロボット

Set a Knowledge component@Ov erri depub lic Obje ct g etEv ent( ) {プログラミングフレームワークを実装
 LEGO Mindstorms上に実装
w hile (tru e) {// chec k wh ethe r bu tton eve nts happ ened
int but ton_ even t = -1;
if( (but ton_ even t = this .ser ial. getB utto nEve nt() ) != -1) {s witc h(bu tton _eve nt) {cas e CL EAN: ret urn "Cle an”;
cas e SP OT: retu rn " Spot ";def ault : br eak;}}// chec k wh ethe r in tern al e vent s ha ppen ed
if( know ledg e.ge tEve nt() !=nu ll) {r etur n th is.k nowl edge .get Even t();}

前面}

背面

Monitor new events}[…]}

本体（CPU）
超音波センサージャイロセンサー

E
モーター（左）M

activeactiveMovingRobot

タッチセンサーactiveM

ActionController

activeAPColorSensor

E3M

SuperSonicSensor

GyroSensor

カラーセンサー

passivepassiveTouchSensor

RotateWheels
active[Tsuda15] H. Tsuda, H. Nakagawa, T. Tsuchiya, “Towards Self-Adaptation on Real-World Hardware: a Preliminary Lightweight
Programming Framework”, in SASO 2015, IEEE, 2015.

M

MAPEループの応用 MAPEループを利用した組み込みシステムの機能拡張

例題: 清掃ロボットの機能拡張
 MAPEループの外付けによる機能の追加, 変更

publi c cl ass Moni torE vent ext ends Mon itor {Ser ialC ommu nica tion ser ial = nu ll;
Kno wled geSt ate know ledg e = null ;pub lic Moni torE vent (Sys temE vent Conv erte r se , St ring nam e) {s uper (se, nam e);t his. seri al = new Ser ialC ommu nica tion ();t his. know ledg e = (Kno wled geSt ate) sup er.k nowl edge ;}Set a serial port

Set a Knowledge component@Ov erri depub lic Obje ct g etEv ent( ) {w hile (tru e) {// chec k wh ethe r bu tton eve nts happ ened
int but ton_ even t = -1;
if( (but ton_ even t = this .ser ial. getB utto nEve nt() ) != -1) {s witc h(bu tton _eve nt) {cas e CL EAN: ret urn "Cle an”;
cas e SP OT: retu rn " Spot ";def ault : br eak;}}Raspberry Pi// chec k wh ethe r in tern al e vent s ha ppen ed
if( know ledg e.ge tEve nt() !=nu ll) {r etur n th is.k nowl edge .get Even t();}}}Monitor new events[…]}

USBcamera

4[Tsuchida 18] S. Tsuchida, H. Nakagawa, E. Tramontana, A. Fornaia, T. Tsuchiya, “A Framework for Updating Functionalities
Based on the MAPE Loop Mechanism”, in COMPSAC 2018, IEEE, 2018.

異常検知
 環境変化を検知する技術
オンライン時系列
異常検知技術 RNNを利用 適切なウィンドウサイズをXAI技術を利用して判断

5

XAI (explainableAI)角田詩門・中川博之・土屋達弘，“XAIを用いた自己適応異常検知手法の実用化に向けて”，電子情報通信学会 知能ソフトウェ
ア工学研究会(SIG-KBSE) ，(2022年5月).

検証技術要求 (満たすべき性質)

システム

システム設計者

モデル
モニタリングによるモデル決定

モデル作成

要求 (満たす

要求 (満たすべき性質)べき性質)

モデル

6

検証式
事前計算 (実行前)
モニタリング

モデル

検証

検証

開発時

実行時

従来の検証

動的検証

検証式
(変数値確定)システム

実行時

式評価による検証

効率化された動的検証

自己適応システムの研究 ≒ ソフトウェア構築技術の自動化

研究内容紹介：要求工学
 要求工学の重要性: StandishのCHAOSレポート
プロジェクト失敗の原因：
 2位「不完全な要求と仕様」，3位「要求と仕様の変更」

＠ITより引用
原著：University ofLondon Computer
Center Newsletter,
No.53, March 1973

7

[Standish] The Standish Group “The Standish Group Report - CHAOS”, 1995.

ゴールモデル ソフトウェアが実現すべき要求 (ゴール)を構造化し,目標から手段へと階層的に展開したモデル
分析漏れや要求間の矛盾発見に効果的

例: 清掃ロボットに関するゴールモデル
AND-refinement

フィールド上のごみを清掃できる

各種ごみを清掃できる抽象化(Why)
ごみの場所に到達できる

適切な手段でごみを清掃できる

OR-refinement
吸引によりごみを清掃できる
8

持ち上げによりごみを清掃できる具体化(What)ゴールモデル構築ツール
実装ツール
The ATM willcommunicate with the
bank's computer overan appropriate
communication link.
…

要求記述(入力)

1. 要求記述を文分割
2. 質問への回答に従いゴールを配置
3. ゴールモデルの画像を生成

ゴールモデル (出力)回答

質問

要求分析者要求分析者はゴールモデルを意識せずに質問に答えるだけ！
9H. Nakagawa, H. Shimada, T. Tsuchiya, “Interactive Goal Model Construction Based on a Flow of Questions”, IEICE
Transactions on Information and Systems, Vol.E103-D, No.06, pp．1309-1318, Jun. 2020 (2020. 6).

レビューからのゴールモデルの自動生成 膨大なアプリケーションレビューから要求を抽出類似レビューを分類し，ゴールモデルを構築
 クラスタリングによりゴールを発見し構造化 自然言語処理技術, Deep Learningを用いてゴールラベリング

Test cases Test cases
Test cases Test cases
Reviews
Reviews

work, docs,
document, write, time

docs, work,
document, write, time

33

189

free, open,
simple, review, storydocs, work,write, document, phone252

file, simple,organize, create, mobile

option, terrible,
appauled, chi, codocs, iphone,laptop, far, organize

92

276

474

212

text, highlight,
browser, copy/cut, superiorschool, ms,
finish, right, box

work, school,docs, keep, savenote, time,life, feature, helpful

keep, free,save, note, timespell, check,belittle, -i, become

allow, open,
document, share, platform

docs, iphone,laptop, far, organize

docs, iphone,laptop, far, organize

docs, iphone,laptop, organize, save

440

apps, note,time, user, text

live, updates,
yesterday, move, adobe

data, form,
another, mistake, accountwork, access,school, docs, savecrap, form,
storage, mistake, replace

share, work,
folder, apps, addtype, fix,crap, form, time

work, docs,
open, free, change

download, right,template, weird, number

462

download, drive,template, weird, number

415

type, time,
crap, form, fix

85

298

type, time,crap, form, fix

update, change,
review, bother, telldesign, web,shortcuts, scale, etc

computer, print,docs, indent, dark

share, open,docs, create, emojis

laptop, college,
worthless, waste, perfectly

177

ipad, fix,iphone, document, enough42

indent, night,
mode, story, paragraphtime, worthless,waste, usually, right12

free, share,drive, find, anothershare, data,bit, math, symbol

122

430

automatically, recommend,due, website, suredocs, document,
game, changer, project

414

156

work, docs,document, drive, save

helpful, laptop,cant, sheet, apps

dark, mode,night, ive, request/suggestion

folder, add,organized, drive, sort60

learn, cloud,drive, apps, keep

38

34

476

179

document, open,edit, work, neversave, paper,work, automatically, school

229

document, edit,
open, never, save

save, paper,work, automatically, school

178

131

game, changer,
whether, right, startsave, student,
docs, sure, losephone, computer,
print, work, helpfulrecommend, book,allow, document, offline

paragraph, computer,phone, miss, backdocument, open,edit, work, time94

save, ipad,
whole, sign, multiple

146

indent, night,dark, mode, paragraphfolder, add,delete, document, organized81

write, docs,
time, indent, phone

open, save,school, people, filewrong, almost,voiceover, work, key

334

drive, game,changer, project, collaborate

folder, suggestion,
delete, organized, request

cloud, drive,
learn, bit, mathvoiceover, character,delete, speak, move

work, docs,
save, paper, document

search, find,unscripted, look, coworker

241

document, open,work, edit, voiceoverchanger, due,app/website, chain, revision149

document, work,share, open, time

237

329

write, computer,ipad, print, docs

40change, idea,
emojis, lock, fix

docs, work,document, write, phonechange, nosifer,bother, tell, inconvenient174

never, device,
book, version, day

download, platform,
live, fact, weird

anywhere, allow,open, document, share

work, document,
access, docs, time356

cursor, voiceover,speak, row, link

434

dark, night,
nosifer, skin, printing

free, download,
file, life, apps

free, drive,change, print, helpful153326

write, docs,time, work, phone

document, edit,open, download, alreadydownload, already,apps, link, properly

240

382

phone, computer,print, work, ipad

427

print, work,
helpful, access, savephone, computer,
print, ipad, work

edit, bug,select, force, version

185

computer, ipad,edit, add, new301

10 [Shimada19] H. Shimada, H. Nakagawa, T. Tsuchiya, “Goal Model Construction Based on User Review Classification”, in REFSQ 2019.
[Ren20] S. Ren, H. Nakagawa, T. Tsuchiya, “An Automated Goal Labeling Method Based on User Reviews”, in SEKE 2020.

仕様カバレッジ可視化ツール

 仕様がどれだけテストされているかを自動推測

ばねモデルにより類似の仕様を近くに配置 自然言語処理技術を用いてPythonで実装


文書間の類似度を測定

11 松井勝利，中川博之，土屋達弘，“文書間の類似度に基づいた要求カバレッジ可視化手法”，日本ソフトウェア科学会
学会誌『コンピュータソフトウェア』， Vol. 35, No. 1, pp. 67-75 (2018.2).

プロセスマイニング
 イベントログからプロセスモデルを自動構築
パラメータ調整が大変

 要求に合致したモデルに対応するパラメータの探索アルゴリズムを提案

12 南垣内一輝，中川博之，海谷治彦，小形真平，竹内広宜，土屋達弘，“Heuristic Minerを用いたパラメータ調整に基づくプロセスモデル抽出手法”， 電子情報通信学会 知能ソフトウェア工学研究会(SIG-KBSE) , 信学技報KBSE2021-46, pp.30-35 (2022年3月).