著者
門田 暁人 高田 義広 鳥居 宏次
出版者
一般社団法人電子情報通信学会
雑誌
電子情報通信学会論文誌. D-I, 情報・システム, I-コンピュータ (ISSN:09151915)
巻号頁・発行日
vol.80, no.7, pp.644-652, 1997-07-25
被引用文献数
34

ソフトウェアの保守, 再利用などのためには, 解析や理解の容易なプログラムを作成しておくことが重要である. ところが, 完成したプログラムを多数のユーザに配布する場合には, システムの安全性の確保や知的財産権の保護などのために, 内部の解析が困難なプログラムの作成が要求される場合がある. そのような場合には, 解析が容易なように作成したプログラムを, 解析が困難になるように変換する方式が有用であると考えられる. このようなプログラムの等価変換を, プログラムの難読化と呼ぶ. 本論文では, ループを含むプログラムを自動的に難読化する2通りの方法を提案し, それぞれの方法の有効性を評価するための実験について報告する. 実験の結果, 極めて小規模なプログラムに対しても, 提案する方法が有効であることがわかった.
著者
武田 隆之 牛窓 朋義 山内 寛己 門田 暁人 松本 健一
出版者
情報処理学会
雑誌
研究報告ソフトウェア工学(SE) (ISSN:09196072)
巻号頁・発行日
vol.2010, no.8, pp.1-8, 2010-03-11

本稿では,学生の演習課題のような小規模なソースコードを対象とした盗用の検出を目的とする.インデント,演算子などのコーディングスタイルに着目し,59 項目の特徴量として抽出し,盗用の発見に用いる.盗用関係にあるソースコード間において 59 項目の特徴量の差分を測定し,盗用関係にないソースコード間における特徴量の差分と比較したところ,28 項目の特徴量が盗用検出に有効であること,28 項目のうち 8 項目の特徴量はプログラムの内容によらず盗用検出に有効であること,8 項目のうち 3 項目の特徴量はソースコード整形ツールによるインデント整形に対して耐性を持つことが分かった.The goal of this paper is to detect software plagiarism in small-size source code like exercise assignments at school. This paper focused on coding style elements, such as indents and operators, and computed 59 quantitative measures from these elements. To evalute the usefulness of measures for plagiarism detection, we compared measures of suspected pairs (of plagiarism) and nonsuspected pairs. As a result, we found that 28 measures were effective to detect plagiarisms. Especially, 8 of 28 measures were effective for different program specifications, and 3 out of 8 measures were effective even after source code indentation tools were applied.
著者
大和正武 神代 知範 門田 暁人 松本 健一 井上 克郎
出版者
一般社団法人情報処理学会
雑誌
情報処理学会研究報告
巻号頁・発行日
pp.73-78, 1999
被引用文献数
1

本研究では,視線とマウスを併用することでより効率のよい入力インタフェースの実現を目指す.その第一歩として,GUI上でのボタン選択操作を「ボタン上にカーソルを移動する操作(移動操作)」と「ボタンを押す操作(確定操作)」に分け,移動操作を視線で,確定操作をマウスで行う方式について検討した.適用実験の結果,視線によるカーソル移動は高速で,マウスのみによる選択操作よりも効率の良いことが分った.但し,操作対象となるボタンの大きさが1cm四方程度に小さい場合,視線のみでボタン上にカーソルを移動することは困難であり,視線による移動操作を補助する必要のあることも分った.
著者
中川 尊雄 亀井 靖高 上野 秀剛 門田 暁人 鵜林 尚靖 松本 健一
出版者
日本ソフトウェア科学会
雑誌
コンピュータ ソフトウェア (ISSN:02896540)
巻号頁・発行日
vol.33, no.2, pp.2_78-2_89, 2016-04-22 (Released:2016-06-22)

本論文は,NIRS (Near Infra-Red Spectroscopy; 近赤外分光法)による脳血流計測を用い,開発者がプログラム理解時に困難を感じているかの判別を試みた我々の先行研究(レター論文)を発展させたものである.本論文では,20名の被験者に対して,難易度の異なる三種類のプログラムの理解時の脳血流を計測する実験を行った.実験が中断された3名を除く17名中16名において,(1)難易度の高いプログラムの理解時に脳活動がより活発化するという結果(正確二項検定, p < 0.01)が得られた.また,(2)被験者アンケートによって得られた難易度の主観的評価と,脳活動値の間には有意な相関(スピアマンの順位相関係数 = 0.46, p < 0.01)がみられた.
著者
神崎 雄一郎 門田 暁人 中村 匡秀 松本 健一
出版者
一般社団法人電子情報通信学会
雑誌
電子情報通信学会論文誌. A, 基礎・境界 (ISSN:09135707)
巻号頁・発行日
vol.87, no.6, pp.755-767, 2004-06-01
被引用文献数
9

本論文では,プログラムに含まれる多数の命令をカムフラージュ(偽装)することにより,悪意をもったユーザ(攻撃者)によるプログラムの解析を困難にする方法を提案する.提案方法では,プログラム中の任意の命令(ターゲット)を異なる命令で偽装し,プログラムの自己書換え機構を用いて,実行時のある期間においてのみ元来の命令に復元する.攻撃者がカムフラージュされた命令を含む範囲の解析を試みたとしても,ターゲットの書換えを行うルーチン(書換えルーチン)の存在に気づかない限り,プログラムの元来の動作を正しく理解することは不可能である.解析を成功させるためには,書換えルーチンを含む範囲についても解析する必要があり,結果として,攻撃者はより広範囲にわたるプログラムの解析を強いられることとなる.提案方法は自動化が容易であり,要求される保護の強さ,及び,許容される実行効率の低下の度合に応じて,ターゲットの個数を任意に決定できる.
著者
柳 正純 門田 暁人 高田 義広 鳥居 宏次
出版者
一般社団法人電子情報通信学会
雑誌
電子情報通信学会技術研究報告. SS, ソフトウェアサイエンス
巻号頁・発行日
vol.94, no.334, pp.9-16, 1994-11-17
被引用文献数
3

我々は,プログラマーのキーストロークを監視・分析するシステムにより,人手を介さずに,バグの混入を報告する方式について検討している.ところが,キーストロークより得られるデータの上に,バグの混入に関連する行動の特徴が現れるかどうかは,従来,ほとんど調査されていない.そこで,そのようなキーストロークデータを収集し,プログラマの行動の特徴を検出するためのシステムを設計し試作した.試作したシステムを適用した例から,本システムがデータの収集に有効に働くことがわかった.また,バグ混入時の特徴をいくつか発見し,上述のような警告方式が実現可能であることを示唆するデータが得られた.
著者
大和 正武 門田暁人 高田 義広 松本 健一 鳥居 宏次
出版者
一般社団法人情報処理学会
雑誌
情報処理学会論文誌 (ISSN:18827764)
巻号頁・発行日
vol.40, no.2, pp.613-622, 1999-02-15
被引用文献数
19

本稿では 視線によるテキストウィンドウの自動スクロール方式を提案し 提案方式による自動スクロールが可能なテキストブラウザを用いた評価実験の結果について述べる. 従来の視線を入力とするインタフェースでは 視線情報をポインティングデバイスの代替として利用しており メニューやアイコンの選択のために一時的にではあるが作業対象から視線を外す必要があった. これに対して提案する方式では ウィンドウ内での視線の移動に着目する. 作業者はウィンドウ内で視線を移動させるだけで 表示したいテキスト部分をウィンドウ中央部に移動させ 表示させた状態でスクロールを停止させることができる. 評価実験の結果から テキストのスクロールにより文字列を検索するという作業(タスク)においては 視線による自動スクロールはキーボード操作によるスクロールと比較して同程度かそれ以上に有効であることが分かった. この場合 ウィンドウ中央から注視点までの垂直方向の距離をスクロール速度に比例させる制御方式が 他の方式に比べ優れていることが確認できた.This paper proposes a method and implementation for a system to automatically scroll a text window by tracking where a user is looking at. A user of the system can access a portion of the displayed document without using keyboard or mouse. Existing eye-tracking methods, which use eye-gaze as a substitute for pointing devices, require a user to "look at" menus and icons to manipulate a window display. In contrast, our proposed method uses eye movement within a window to control its display. A position of a user's gaze within a text window determines how to scroll the window, what portion of the text to display, and where to stop. Our user study demonstrates that the effectives of scrolling using this method is as good as one with convetional keyboard control as respects string search by scrolling. In particular, we have found that a controlling mechanism to determine the speed of scrolling in terms of the distance of the gaze point from the center of the window was both qualitatively and quantitatively superior to other control mechanisms in the string search by scrolling.
著者
麻生 直希 西浦 生成 笹倉 万里子 門田 暁人
出版者
一般社団法人 日本ソフトウェア科学会 ソフトウェア工学の基礎研究会
雑誌
ソフトウェア工学の基礎ワークショップ論文集 第29回ソフトウェア工学の基礎ワークショップ(FOSE2022) (ISSN:2436634X)
巻号頁・発行日
pp.241-242, 2022-11-10 (Released:2023-05-18)

スマートフォンのゲームアプリ(スマホゲーム)の普及に伴い,ゲームに過度に課金するユーザ(いわゆる重課金,廃課金プレイヤー)の存在が問題となっている.スマホゲームには,ユーザが課金したくなるような仕組みや,課金を繰り返させるような仕組みが設けられており,そのような課金誘導方法を知ることは,やみくもな課金を避ける上で重要であると考える.本研究では,複数の代表的なスマホゲームを実際にプレイし,課金誘導方法を調査する.
著者
福居 誠二 門田 暁人
雑誌
ウィンターワークショップ2018・イン・宮島 論文集
巻号頁・発行日
vol.2018, pp.32-33, 2018-01-11

本稿では,尖度と歪度を考慮した予測モデル有効性について検討した結果について報告する.
著者
門田暁人 佐藤慎一 神谷 年洋 松本 健一
雑誌
情報処理学会論文誌 (ISSN:18827764)
巻号頁・発行日
vol.44, no.8, pp.2178-2188, 2003-08-15

ソフトウェアに含まれるコードクローン(重複するコード列)は,ソフトウェアの構造を複雑にし,ソフトウェア品質に悪影響を与えるといわれている.しかし,コードクローンとソフトウェア品質の関係はこれまで定量的に明らかにされていない.本論文では,20年以上前に開発され,拡張COBOL言語で記述されたある大規模なレガシーソフトウェアを題材とし,代表的なソフトウェア品質である信頼性・保守性とコードクローンとの関係を定量的に分析した.信頼性の尺度として保守工程で発見された「フォールト数/LOC(Lines of Code)」を用い,保守性の尺度として「モジュールの改版数」を用いた.分析の結果,コードクローンを含むモジュール(clone-includedモジュール)は含まないモジュール(non-cloneモジュール)よりも信頼性(平均値)が約40%高いが,200行を超える大きさのコードクローンを含むモジュールは逆に信頼性が低いことが分かった.また,clone-includedモジュールはnon-cloneモジュールよりも改版数(平均値)が約40%大きく(すなわち,改版のためにより多くの保守コストが費やされてきた),さらに,モジュールに含まれるコードクローンのサイズが大きいほど改版数がより大きい傾向にあることが分かった.
著者
玉田 春昭 中村 匡秀 門田 暁人 松本 健一
出版者
電子情報通信学会
巻号頁・発行日
2007-10-01

名前難読化とは,プログラム中の名前(識別子)を別の名前に付け替えることで,プログラムを理解しづらいものにするソフトウェア保護手法である.従来の名前難読化手法は,各名前を静的に別の文字列で置換するものであり,プログラム中に現れる任意のユーザ定義の名前を隠ぺいできる.しかしながら,従来手法を用いてシステム定義の名前(標準ライブラリやAPIの呼出し等)を難読化することは,プログラムの移植性を著しく低下させるため,現実的に不可能である.そこで本論文では,オブジェクト指向言語を対象に,システム定義の名前をも隠ぺい可能な新たな名前難読化手法を提案する.具体的には,プログラム中の名前使用部分をあらかじめ暗号化しておき,実行時に名前を復号して当該処理を実行する,動的名前解決の仕組みを導入する.提案手法では,オブジェクト指向言語のリフレクション機構を用いて,クラスの参照,メソッド呼出し,フィールドの参照・代入に現れる任意の名前を動的解決する方法を実現している.また,提案手法をJavaプログラム用に実装し評価実験を行った.ある実用プログラムへの適用では,4.11倍の性能劣化でプログラム中のすべてのクラス名,メソッド名,フィールド名(計10,580回出現)を難読化できることが分かった.
著者
門田 暁人 伊原 彰紀 松本 健一
出版者
日本ソフトウェア科学会
雑誌
コンピュータ ソフトウェア (ISSN:02896540)
巻号頁・発行日
vol.30, no.2, pp.2_52-2_65, 2013-04-25 (Released:2013-08-25)

ソフトウェアリポジトリマイニング(MSR)は,研究テーマの宝庫であり,大変魅力のある研究分野である.「ソフトウェアリポジトリ」という鉱山から,マイニング(宝探し)をすることで,新しい研究目的を見つけ出すことが研究の醍醐味となっている.特に,オープンソースソフトウェア(OSS)のリポジトリを対象とした研究が盛んであり,OSS開発の広がりとともにMSRの分野は発展してきた.本稿では,MSR研究の魅力,主な研究テーマ,マイニングの具体例,MSR分野の今後の発展について述べる.
著者
門田 暁人 井上 克郎 松本 健一 岡原 聖 真鍋 雄貴 山内 寛己 Yamauchi Hiroki Okahara Satoshi Inoue Katsuro Monden Akito Manabe Yuki Matsumoto Kenichi マツモト ケンイチ モンデン アキト ヤマウチ ヒロキ オカハラ サトシ マナベ ユウキ イノウエ カツロウ
出版者
電子情報通信学会
雑誌
電子情報通信学会技術研究報告. SS, ソフトウェアサイエンス (ISSN:09135685)
巻号頁・発行日
vol.108, no.362, pp.7-11, 2008-12-11

Generally, if a piece of code clone was found between two different programs, a plagiarism or a code reuse (program piracy) might be made. On the other hand, code clone also occurs accidentally or by code idioms. This paper experimentally derives the probability of program piracy based on length of code clone. In the experiment, we identified code clones among many different programs which we confirmed that program piracy has not been made, and formulated by power approximation the relation between the length of code clone and its derivation probability. By using this formula, we can compute the probability of program piracy from the maximum length of code clone derived from given two programs.一般に, プログラム間で一致するコード列(コードクローン)が見つかった場合, コードの盗用もしくは流用の疑いがある. 一方で, 独立に開発されたプログラム間で偶然(もしくは定型処理など)によりコードクローンが生じることもある. 本稿では, どの程度の長さのクローンであれば, 偶然に生じたものではないと言えるか, その判断基準を実験的に導出する.実験では, 独立に開発された(流用のない)多数のプログラム間で検出されるコードクローンの長さと個数を調査し, 最大クローン長とクローン検出確率の関係を算出した. そして, 偶然に生じうるコードクローンの検出確率を累乗近似により定式化した. 導出した式により, 2つのプログラム間の最大クローン長を計測することにより, 偶然や定型処理ではない, すなわち, 盗用や流用が行われた確率を求めることが可能となった.
著者
齊藤 康廣 門田 暁人 松本 健一
雑誌
研究報告ソフトウェア工学(SE)
巻号頁・発行日
vol.2013-SE-179, no.5, pp.1-7, 2013-03-04

本稿では,自然言語で記述された提案依頼書 (Request For Proposal ;以下 RFP とする )に記載された非機能要件の記述の明確さを機械学習により評価する方法を提案する.提案方法では,まず,RFP から非機能要件に関するキーワード群を抽出し,個々の非機能要件の特性とマッピングさせる.次に,各キーワードの出現頻度と文脈ベクトルに着目して重み付けを行い,ランダムフォレストによって,非機能要件の記述の明確さをモデル化する.70 件の RFP を題材として,提案方法によって多数の非機能要件の記述の明確さを 3 段階で評価した結果,エキスパートによる評価に対する完全一致率の平均が 69.8 %となった.また,完全不一致率 (評価が 2 段階外れること) は極めて小さかった.このことから,エキスパートがいない状況においても,機械学習によって RFP の品質の自動評価をある程度行えることが分かった.
著者
柿元健 門田暁人 亀井 靖高 〓本真佑 松本 健一 楠本 真二
出版者
情報処理学会
雑誌
情報処理学会論文誌 (ISSN:18827764)
巻号頁・発行日
vol.50, no.7, pp.1716-1724, 2009-07-15
被引用文献数
2

ソフトウェアの信頼性確保を目的として,faultの有無を推定するモデル(faultproneモジュール判別モデル)が数多く提案されている.しかし,どのようにテスト工数を割り当てるのかといったfault-proneモジュール判別モデルの判別結果の利用方法についての議論はほとんどされておらず,信頼性確保の効果は不明確であった.そこで,本論文では,faultの有無の判別,テスト工数の割当て,ソフトウェア信頼性の関係のモデル化を行い,TEAR(Test Effort Allocation and software Reliability)モデルを提案する.TEARモデルにより,与えられた総テスト工数の枠内で,ソフトウェア信頼性が最大となるような(モジュールごとの)テスト工数割当ての計画立案が可能となる.TEARモデルを用いてシミュレーションを行った結果,推定される判別精度が高い,もしくは,fault含有モジュールが少ない場合には,fault-proneモジュールに多くのテスト工数を割り当てた方がよく,推定される判別精度が低い,もしくは,fault含有モジュールを多く含む場合には,判別結果に基づいてテスト工数を割り当てるべきではないことが分かった.Various fault-prone detection models have been proposed to improve software reliability. However, while improvement of prediction accuracy was discussed, there was few discussion about how the models shuld be used in the field, i.e. how test effort should be allocated. Thus, improvement of software reliability by fault-prone module detection was not clear. In this paper, we proposed TEAR (Test Effort Allocation and software Reliability) model that represents the relationship among fault-prone detection, test effort allocation and software reliability. The result of simulations based on TEAR model showed that greater test effort should be allocated for fault-prone modules when prediction accuracy was high and/or when the number of faulty modules were small. On the other hand, fault-prone module detection should not be use when prediction accuracy was small or the number of faulty modules were large.
著者
吉村 巧朗 亀井 靖高 上野 秀剛 門田 暁人 松本 健一
出版者
一般社団法人電子情報通信学会
雑誌
電子情報通信学会技術研究報告. KBSE, 知能ソフトウェア工学 (ISSN:09135685)
巻号頁・発行日
vol.109, no.307, pp.85-90, 2009-11-19
被引用文献数
1

デバッグ作業は,作業に従事する開発者ごとに効率に大きな違いが見られる.デバッグにおける開発者の行動から効率に影響を与えている要因を明らかにできれば,教育や支援に役立てることができる.そこで本研究では、デバッガを使用したデバッグ行動について分析し,上手な人と下手な人の間にどのような差異が存在するのか明らかにすることを目的とした.そのアプローチとして,多くのデバッガが実装しているブレークポイント機能に着目し,その使用履歴よりプログラマの特徴を分析した.150行程度のJavaプログラムを題材とした実験の結果,次のような知見が得られた.デバッグの下手な人は,連続した行にブレークポイントを設置する傾向がある.また上手い人には,ブレークポイントを用いた実行を頻繁に行う傾向がある.
著者
角田雅照 門田暁人 松本健一 大岩佐和子 押野智樹
雑誌
研究報告ソフトウェア工学(SE)
巻号頁・発行日
vol.2014-SE-186, no.12, pp.1-7, 2014-11-06

近年,情報システムの規模の増大や,システム運用の外部委託の進展に伴い,システム運用に関する注目が高まっている.システム運用費用が妥当であるかどうかは,システム運用の委託側企業にとって判断が難しい.本稿では,委託側企業がシステム運用費用の妥当性判断の参考となるような情報の提供を目指し,システム運用費用に影響を与える要因の分析を行った.受託側の作業時間と運用費用は非常に関連が強いため,受託側作業時間を把握することができれば,標準的な運用費用を推定することができる.ただし,受託側作業時間を委託側企業が把握することは一般に容易ではない.そこで本稿では,作業時間と技術者の単価から簡易的に価格を推定することを前提とし,作業時間と単価に影響する要因を個別に分析した.その結果,作業時間はプログラム本数と最大利用者数から決まることや,ネットワーク範囲が狭い場合,単価が低くなる傾向があることがわかった.
著者
齊藤 康廣 門田 暁人 松本 健一
雑誌
研究報告ソフトウェア工学(SE)
巻号頁・発行日
vol.2013, no.5, pp.1-7, 2013-03-04

本稿では,自然言語で記述された提案依頼書 (Request For Proposal ;以下 RFP とする )に記載された非機能要件の記述の明確さを機械学習により評価する方法を提案する.提案方法では,まず,RFP から非機能要件に関するキーワード群を抽出し,個々の非機能要件の特性とマッピングさせる.次に,各キーワードの出現頻度と文脈ベクトルに着目して重み付けを行い,ランダムフォレストによって,非機能要件の記述の明確さをモデル化する.70 件の RFP を題材として,提案方法によって多数の非機能要件の記述の明確さを 3 段階で評価した結果,エキスパートによる評価に対する完全一致率の平均が 69.8 %となった.また,完全不一致率 (評価が 2 段階外れること) は極めて小さかった.このことから,エキスパートがいない状況においても,機械学習によって RFP の品質の自動評価をある程度行えることが分かった.This paper proposes a machine learning approach to evaluate the clarity of non-functional requirements (NFRs) described in a Request For Proposal (RFP) written in a natural language. In the proposed method, keywords related to NFRs are extracted from a RFP, and mapped to each NFR category. Then, the clarity of NFRs is modeled by the random forest with weight factors based on appearance frequency and context vectors. As a result of an experimental to evaluate the clarity (low, mid or high) of many NFR categories in 70 RFPs, the proposed method showed 69.8% match to the expert's decision. Also, there were few cases where the model concluded as clarity=high while expert concluded clarity=low, and vice versa. These results suggest that the proposed machine learning approach could be used to automatically evaluate the quality of RFP without experts.