講演・口頭発表等 - 新田 直也
-
フレームワーク・アプリケーションに於ける予期せぬ副作用の効率的なデバッグに向けて (ソフトウェアサイエンス)
久米 出, 新田 直也, 中村 匡秀, 柴山 悦哉
電子情報通信学会技術研究報告 = IEICE technical report : 信学技報
開催年月日: 2014年3月
近年アプリケーションフレームワークを利用したソフトウェア開発が常態化する中で、文書の不備に起因するフレームワークの誤用とその解決が大きな問題として認識されつつある。本論文では誤用によって発生した予期せぬ副作用が障害を発生させる場合を想定し、そのデバッグを支援する手法を提案する。本手法では誤用による副作用の候補を動的解析によって特定し、可視化する事によってデバッグ作業を支援する。候補を特定する挙動パターンを予兆と呼ぶ。作業者は予兆が実行されたメソッド呼び出し文脈よりそれが実際に予期せぬ副作用であるか否かを判断する。これによって障害から副作用を手作業で辿る作業が大幅に軽減される。本論文では第三者が開発した実用的なフレームワークのアプリケーションの誤用例に本手法を適用した結果を紹介する。
-
高速かつ安定な剛体シミュレーションアルゴリズム
安田 開, 新田 直也
第12回全国大会 ゲーム学会
開催年月日: 2014年3月
-
マーカレスARを用いた実世界指向情報共有システムの提案
西原 優人, 新田 直也,久野 剛司
第12回全国大会 ゲーム学会
開催年月日: 2014年3月
-
フレームワーク・アプリケーションに於ける予期せぬ副作用の効率的なデバッグに向けて
久米 出, 新田 直也, 中村 匡秀, 柴山 悦哉
ソフトウェアサイエンス研究会 電子情報通信学会
開催年月日: 2014年3月
-
フレームワーク誤用による副作用の可視化手法
久米 出, 中村 匡秀, 新田 直也, 柴山 悦哉
ウィンターワークショップ2014・イン・大洗 論文集
開催年月日: 2014年1月
-
フレームワークアプリケーションに於ける副作用の兆候を抽出する動的解析手法 (ソフトウェアサイエンス)
久米 出, 新田 直也, 中村 匡秀, 柴山 悦哉
電子情報通信学会技術研究報告 = IEICE technical report : 信学技報
開催年月日: 2013年10月
プログラムのデバッグには検出された不具合からその原因を特定するために、多くの時間や労力を費して制御やデータの流れを辿る作業が必要である。多くのデバッグ支援手法は、作業者によるデバッグ対象プログラムの実装に関する知識を想定している。しかしながらフレームワークアプリケーションのように、既知のコードと未知のコード同士が相互に呼び出し合うようなプログラムの場合にはこうした想定が成り立たない。本論文ではフレームワークアプリケーションに於ける副作用に焦点を当てたプログラム理解とデバッグ支援の手法を提案する。我々の手法は副作用と共に発生する挙動を抽象化した兆候をプログラムトレースから抽出する点に新規性を有する。兆候は作業者が副作用の有無を判断する根拠として利用される。またオブジェクトやメソッド呼び出しと関連付ける事によって副作用の発生過程の理解を支援する事も期待されている。本提案手法を実用的なアプリケーション例題に対して適用し、その結果を評価する。
-
実行シナリオに基づくレイヤアーキテクチャの評価手法 (ソフトウェアサイエンス)
小林 謙太郎, 新田 直也
電子情報通信学会技術研究報告 = IEICE technical report : 信学技報
開催年月日: 2013年10月
大規模ソフトウェアの開発において,開発初期におけるアーキテクチャの選択は,その後のプロジェクトの成否を大きく左右する.しかしながら,実際の開発においてアーキテクチャをどのように選択すればよいかについては,設計者の経験に依存する部分が大きく,アーキテクチャ選択のための決定的な手法は確立されていないのが現状である.そこで本研究では,レイヤアーキテクチャを対象に,選択したアーキテクチャが要求仕様から抽出した実行シナリオと適合しているか否かを評価する手法を提案する.事例研究として,本研究室で開発した3D格闘ゲームの実行シナリオおよび初期アーキテクチャに対して本手法の適用を行った.その結果,本手法による評価結果が,当該プロジェクトにおいて初期アーキテクチャをほぼ変更することなく開発完了したという事実とよく一致していることがわかった.
-
デルタ抽出プラグインの開発とそのプログラム理解に対する有効性評価
松岡智大, 新田直也
研究報告ソフトウェア工学(SE)
開催年月日: 2013年10月
デバッグや再利用を適切に行う上で対象となるプログラムの理解は必要不可欠である.一般に,プログラムの動的振る舞いは広範囲に渡るソースコードによって実現されている場合が多く,その理解のために,ソースコードに加えてデバッガなどで得られるプログラム実行時の情報も参照されることが多い.しかしながら,実用規模プログラムでは実行時に生成される情報が非常に膨大になり,その中から必要な情報を取り出すには多くの時間と労力を要する.そこで本研究では,オブジェクト指向プログラムの実行履歴から,プログラム理解に有用な情報を効率良く取り出すための抽象化手法 (デルタ抽出) を提案している.本稿では,プログラム理解の支援を目的としてデルタ抽出を行う Eclipse プラグインの実装を行った.また,プラグインの有効性を評価するため技術者を対象とした実証実験を行ったので,その結果について紹介する.
-
フレームワークサンプルアプリケーションを利用した実行シナリオの実装支援ツールの開発
縄江 保宏, 新田 直也
電子情報通信学会技術研究報告. SS, ソフトウェアサイエンス
開催年月日: 2013年10月
近年,アプリケーションの設計と実装の再利用性を高める仕組みとしてアプリケーションフレームワークが広く用いられ成果をあげている.しかしながら,フレームワークを利用する際には様々な取り決めや制約が存在し,所望の振る舞いを矛盾なく実装するのが困難となる場合がある.そこで本研究ではフレームワークのサンプルアブリケーションを利用して,与えられた実行シナリオの実装を支援する手法を提案している.具体的には,実装したい実行シナリオと近い振る舞いをするサンプルアプリケーションを選び,その中の実行シナリオと競合する振る舞いを実装している箇所を特定し,改変方針を提示することによって支援を行う.本稿では,手法の一部を自動化する動的解析ツールを開発し,その有効性について評価を行った.
-
フレームワークサンプルアプリケーションを利用した実行シナリオの実装支援ツールの開発
縄江保宏, 新田直也
研究報告ソフトウェア工学(SE)
開催年月日: 2013年10月
近年,アプリケーションの設計と実装の再利用性を高める仕組みとしてアプリケーションフレームワークが広く用いられ成果をあげている.しかしながら,フレームワークを利用する際には様々な取り決めや制約が存在し,所望の振る舞いを矛盾なく実装するのが困難となる場合がある.そこで本研究ではフレームワークのサンプルアプリケーションを利用して,与えられた実行シナリオの実装を支援する手法を提案している.具体的には,実装したい実行シナリオと近い振る舞いをするサンプルアプリケーションを選び,その中の実行シナリオと競合する振る舞いを実装している箇所を特定し,改変方針を提示することによって支援を行う.本稿では,手法の一部を自動化する動的解析ツールを開発し,その有効性について評価を行った.
-
フレームワークアプリケーションに於ける副作用の兆候を抽出する動的解析手法
久米出, 新田直也, 中村匡秀, 柴山悦哉
研究報告ソフトウェア工学(SE)
開催年月日: 2013年10月
プログラムのデバッグには検出された不具合からその原因を特定するために、多くの時間や労力を費して制御やデータの流れを辿る作業が必要である。多くのデバッグ支援手法は、作業者によるデバッグ対象プログラムの実装に関する知識を想定している。しかしながらフレームワークアプリケーションのように、既知のコードと未知のコード同士が相互に呼び出し合うようなプログラムの場合にはこうした想定が成り立たない。本論文ではフレームワークアプリケーションに於ける副作用に焦点を当てたプログラム理解とデバッグ支援の手法を提案する。我々の手法は副作用と共に発生する挙動を抽象化した兆候をプログラムトレースから抽出する点に新規性を有する。兆候は作業者が副作用の有無を判断する根拠として利用される。またオブジェクトやメソッド呼び出しと関連付ける事によって副作用の発生過程の理解を支援する事も期待されている。本提案手法を実用的なアプリケーション例題に対して適用し、その結果を評価する。
-
デルタ抽出プラグインの開発とそのプログラム理解に対する有効性評価
松岡 智大, 新田 直也
電子情報通信学会技術研究報告. SS, ソフトウェアサイエンス
開催年月日: 2013年10月
デバッグや再利用を適切に行う上で対象となるプログラムの理解は必要不可欠である.一般に,プログラムの動的振る舞いは広範囲に渡るソースコードによって実現されている場合が多く,その理解のために,ソースコードに加えてデバッガなどで得られるプログラム実行時の情報も参照されることが多い.しかしながら,実用規模プログラムでは実行時に生成される情報が非常に膨大になり,その中から必要な情報を取り出すには多くの時間と労力を要する.そこで本研究では,オブジェクト指向プログラムの実行履歴から,プログラム理解に有用な情報を効率良く取り出すための抽象化手法(デルタ抽出)を提案している.本稿では,プログラム理解の支援を目的としてデルタ抽出を行うEclipseプラグインの実装を行った.また,プラグインの有効性を評価するため技術者を対象とした実証実験を行ったので,その結果について紹介する.
-
実行シナリオに基づくレイヤアーキテクチャの評価手法
小林謙太郎, 新田直也
研究報告ソフトウェア工学(SE)
開催年月日: 2013年10月
大規模ソフトウェアの開発において,開発初期におけるアーキテクチャの選択は,その後のプロジェクトの成否を大きく左右する.しかしながら,実際の開発においてアーキテクチャをどのように選択すればよいかについては,設計者の経験に依存する部分が大きく,アーキテクチャ選択のための決定的な手法は確立されていないのが現状である.そこで本研究では,レイヤアーキテクチャを対象に,選択したアーキテクチャが要求仕様から抽出した実行シナリオと適合しているか否かを評価する手法を提案する.事例研究として,本研究室で開発した 3D 格闘ゲームの実行シナリオおよび初期アーキテクチャに対して本手法の適用を行った.その結果,本手法による評価結果が,当該プロジェクトにおいて初期アーキテクチャをほぼ変更することなく開発完了したという事実とよく一致していることがわかった.
-
実行シナリオに基づくレイヤアーキテクチャの評価手法
小林 謙太郎,新田 直也
第182回ソフトウェア工学研究会 情報処理学会
開催年月日: 2013年10月
-
フレームワークサンプルアプリケーションを利用した実行シナリオの実装支援ツールの開発
縄江 保宏, 新田 直也
第182回ソフトウェア工学研究会 情報処理学会
開催年月日: 2013年10月
-
デルタ抽出プラグインの実装とそのプログラム理解に対する有効性評価
松岡 智大, 新田 直也
第182回ソフトウェア工学研究会 情報処理学会
開催年月日: 2013年10月
-
フレームワークアプリケーションに於ける副作用の兆候を抽出する動的解析手法
久米 出, 新田 直也, 中村 匡秀, 柴山 悦哉
第182回ソフトウェア工学研究会 情報処理学会
開催年月日: 2013年10月
-
フレームワークアプリケーションの抽象化のための動的解析手法
久米出, 中村匡秀, 新田直也, 柴山悦哉
研究報告ソフトウェア工学(SE)
開催年月日: 2013年3月
近年のソフトウェア開発に於けるアプリケーションフレームワークの普及と共に、その正しい利用法を効率的に学ぶ手法がますます重要になっている。フレームワークの学習の障害として、その複雑性と、所謂制御の反転 (Inversion of Control) に特徴付けられる独特な実行形態が挙げられる。我々はこれらの障害を克服するために、フレームワークアプリケーションの内部挙動を抽象化して表現する機能モデル (feature model) と、動的解析を用いたモデリングを提案する。本論文では第三者が開発した実用的なフレームワークアプリケーション内で発見されたフレームワーク利用の誤りを事例として我々の取り組みとその将来課題を説明する。