Presentations -
-
データが動的に連動するソフトウェアの設計指針導出手法
小林 謙太郎, 新田 直也
情報処理学会第187回ソフトウェア工学研究会 情報処理学会
Event date: 2015.3
データが動的に連動するソフトウェアの開発では,データをどのように管理し,いつどのように更新すればよいか等の設計指針を決定する必要がある.しかしながら決定した設計指針が不適切であると,期待される振る舞いを実現できなくなる可能性がある.そこで本研究では,システムに対するドメイン固有の制約と,システムに期待される振る舞いを共にラベル付き遷移システムでモデル化し,それらを満たす設計指針を導出する手法を提案する.本稿では 2 つの事例に対して本手法を適用し,適切な設計指針を導出できることを確認したので,その報告を行う.
-
影響波及を考慮したフレームワークアプリケーションのプログラム修復支援手法
森岡友樹, 新田直也
情報処理学会第186回ソフトウェア工学研究会 情報処理学会
Event date: 2014.11
近年,プログラムの不具合修正を支援するプログラム修復技術が研究されている.修正の影響範囲が限定される比較的単純な不具合については修復の自動化も試みられているが,修正の影響が広範囲に波及するような複雑な不具合を対象とした修復手法は今のところ見当たらない.そこで本研究では,対象をフレームワークアプリケーションに限定し,不具合修正を行った結果別の不具合が新たに発見された状況において,両方の不具合を同時に修正可能な修復方針を系統的に導出する手法の提案を行う.本稿では,2つの事例において本手法が有効であることを確認したので報告する.
-
複数クラスを横断する情報隠蔽を実現するリファクタリングフレームワーク
高橋祐介, 新田直也
情報処理学会第186回ソフトウェア工学研究会 情報処理学会
Event date: 2014.11
情報隠蔽に関係するリファクタリングはいくつか存在しているが,実際のソフトウェア開発において,いつどのリファクタリングを適用すればよいのかは自明ではない.特に対象となるクラスを複数のクラスから隠蔽する場合には,これらのリファクタリングを適切に選択し,適切な順序で適切な位置に適用しなければ隠蔽は正常に完結しない.そこで本研究では,複数のクラスを横断するような情報隠蔽を支援するためのリファクタリングフレームワークを提案する.また,提案フレームワークの構成要素として,いくつかの新しいリファクタリングを導入する.本稿では,提案フレームワークを実際の設計変更事例に適用した結果その有効性を確認することができたので,その報告を行う.
-
Toward Efficient Debugging of Unexpected Side-Effects in Framework Applications
KUME Izuru, NITTA Naoya, NAMAKURA Masahide, SHIBAYAMA Etsuya
Technical report of IEICE. SS
Event date: 2014.3
Recently correcting misuses of application frameworks with insufficient documentation becomes an important topic because of so many frameworks used in software development. In this paper, we focus on debugging unexpected side effects caused by misuses. Our method detects possibly unexpected side effects based on behavioral patterns called symptoms, and visualize them for maintainers' judgment, and thus decreases their effort to find defects. We explain a case study to apply our method to a failure on a practical framework application developed by a third party.
-
高速かつ安定な剛体シミュレーションアルゴリズム
安田 開, 新田 直也
第12回全国大会 ゲーム学会
Event date: 2014.3
-
マーカレスARを用いた実世界指向情報共有システムの提案
西原 優人, 新田 直也,久野 剛司
第12回全国大会 ゲーム学会
Event date: 2014.3
-
フレームワーク・アプリケーションに於ける予期せぬ副作用の効率的なデバッグに向けて
久米 出, 新田 直也, 中村 匡秀, 柴山 悦哉
ソフトウェアサイエンス研究会 電子情報通信学会
Event date: 2014.3
-
A Visualization Technique for Side Effects Caused by Framework Misuses
久米 出, 中村 匡秀, 新田 直也, 柴山 悦哉
ウィンターワークショップ2014・イン・大洗 論文集
Event date: 2014.1
-
フレームワークアプリケーションに於ける副作用の兆候を抽出する動的解析手法 (ソフトウェアサイエンス)
久米 出, 新田 直也, 中村 匡秀, 柴山 悦哉
電子情報通信学会技術研究報告 = IEICE technical report : 信学技報
Event date: 2013.10
プログラムのデバッグには検出された不具合からその原因を特定するために、多くの時間や労力を費して制御やデータの流れを辿る作業が必要である。多くのデバッグ支援手法は、作業者によるデバッグ対象プログラムの実装に関する知識を想定している。しかしながらフレームワークアプリケーションのように、既知のコードと未知のコード同士が相互に呼び出し合うようなプログラムの場合にはこうした想定が成り立たない。本論文ではフレームワークアプリケーションに於ける副作用に焦点を当てたプログラム理解とデバッグ支援の手法を提案する。我々の手法は副作用と共に発生する挙動を抽象化した兆候をプログラムトレースから抽出する点に新規性を有する。兆候は作業者が副作用の有無を判断する根拠として利用される。またオブジェクトやメソッド呼び出しと関連付ける事によって副作用の発生過程の理解を支援する事も期待されている。本提案手法を実用的なアプリケーション例題に対して適用し、その結果を評価する。
-
実行シナリオに基づくレイヤアーキテクチャの評価手法 (ソフトウェアサイエンス)
小林 謙太郎, 新田 直也
電子情報通信学会技術研究報告 = IEICE technical report : 信学技報
Event date: 2013.10
大規模ソフトウェアの開発において,開発初期におけるアーキテクチャの選択は,その後のプロジェクトの成否を大きく左右する.しかしながら,実際の開発においてアーキテクチャをどのように選択すればよいかについては,設計者の経験に依存する部分が大きく,アーキテクチャ選択のための決定的な手法は確立されていないのが現状である.そこで本研究では,レイヤアーキテクチャを対象に,選択したアーキテクチャが要求仕様から抽出した実行シナリオと適合しているか否かを評価する手法を提案する.事例研究として,本研究室で開発した3D格闘ゲームの実行シナリオおよび初期アーキテクチャに対して本手法の適用を行った.その結果,本手法による評価結果が,当該プロジェクトにおいて初期アーキテクチャをほぼ変更することなく開発完了したという事実とよく一致していることがわかった.
-
デルタ抽出プラグインの開発とそのプログラム理解に対する有効性評価
松岡智大, 新田直也
研究報告ソフトウェア工学(SE)
Event date: 2013.10
デバッグや再利用を適切に行う上で対象となるプログラムの理解は必要不可欠である.一般に,プログラムの動的振る舞いは広範囲に渡るソースコードによって実現されている場合が多く,その理解のために,ソースコードに加えてデバッガなどで得られるプログラム実行時の情報も参照されることが多い.しかしながら,実用規模プログラムでは実行時に生成される情報が非常に膨大になり,その中から必要な情報を取り出すには多くの時間と労力を要する.そこで本研究では,オブジェクト指向プログラムの実行履歴から,プログラム理解に有用な情報を効率良く取り出すための抽象化手法 (デルタ抽出) を提案している.本稿では,プログラム理解の支援を目的としてデルタ抽出を行う Eclipse プラグインの実装を行った.また,プラグインの有効性を評価するため技術者を対象とした実証実験を行ったので,その結果について紹介する.
-
デルタ抽出プラグインの開発とそのプログラム理解に対する有効性評価
松岡 智大, 新田 直也
電子情報通信学会技術研究報告. SS, ソフトウェアサイエンス
Event date: 2013.10
デバッグや再利用を適切に行う上で対象となるプログラムの理解は必要不可欠である.一般に,プログラムの動的振る舞いは広範囲に渡るソースコードによって実現されている場合が多く,その理解のために,ソースコードに加えてデバッガなどで得られるプログラム実行時の情報も参照されることが多い.しかしながら,実用規模プログラムでは実行時に生成される情報が非常に膨大になり,その中から必要な情報を取り出すには多くの時間と労力を要する.そこで本研究では,オブジェクト指向プログラムの実行履歴から,プログラム理解に有用な情報を効率良く取り出すための抽象化手法(デルタ抽出)を提案している.本稿では,プログラム理解の支援を目的としてデルタ抽出を行うEclipseプラグインの実装を行った.また,プラグインの有効性を評価するため技術者を対象とした実証実験を行ったので,その結果について紹介する.
-
実行シナリオに基づくレイヤアーキテクチャの評価手法
小林謙太郎, 新田直也
研究報告ソフトウェア工学(SE)
Event date: 2013.10
大規模ソフトウェアの開発において,開発初期におけるアーキテクチャの選択は,その後のプロジェクトの成否を大きく左右する.しかしながら,実際の開発においてアーキテクチャをどのように選択すればよいかについては,設計者の経験に依存する部分が大きく,アーキテクチャ選択のための決定的な手法は確立されていないのが現状である.そこで本研究では,レイヤアーキテクチャを対象に,選択したアーキテクチャが要求仕様から抽出した実行シナリオと適合しているか否かを評価する手法を提案する.事例研究として,本研究室で開発した 3D 格闘ゲームの実行シナリオおよび初期アーキテクチャに対して本手法の適用を行った.その結果,本手法による評価結果が,当該プロジェクトにおいて初期アーキテクチャをほぼ変更することなく開発完了したという事実とよく一致していることがわかった.
-
フレームワークサンプルアプリケーションを利用した実行シナリオの実装支援ツールの開発
縄江 保宏, 新田 直也
電子情報通信学会技術研究報告. SS, ソフトウェアサイエンス
Event date: 2013.10
近年,アプリケーションの設計と実装の再利用性を高める仕組みとしてアプリケーションフレームワークが広く用いられ成果をあげている.しかしながら,フレームワークを利用する際には様々な取り決めや制約が存在し,所望の振る舞いを矛盾なく実装するのが困難となる場合がある.そこで本研究ではフレームワークのサンプルアブリケーションを利用して,与えられた実行シナリオの実装を支援する手法を提案している.具体的には,実装したい実行シナリオと近い振る舞いをするサンプルアプリケーションを選び,その中の実行シナリオと競合する振る舞いを実装している箇所を特定し,改変方針を提示することによって支援を行う.本稿では,手法の一部を自動化する動的解析ツールを開発し,その有効性について評価を行った.
-
フレームワークサンプルアプリケーションを利用した実行シナリオの実装支援ツールの開発
縄江保宏, 新田直也
研究報告ソフトウェア工学(SE)
Event date: 2013.10
近年,アプリケーションの設計と実装の再利用性を高める仕組みとしてアプリケーションフレームワークが広く用いられ成果をあげている.しかしながら,フレームワークを利用する際には様々な取り決めや制約が存在し,所望の振る舞いを矛盾なく実装するのが困難となる場合がある.そこで本研究ではフレームワークのサンプルアプリケーションを利用して,与えられた実行シナリオの実装を支援する手法を提案している.具体的には,実装したい実行シナリオと近い振る舞いをするサンプルアプリケーションを選び,その中の実行シナリオと競合する振る舞いを実装している箇所を特定し,改変方針を提示することによって支援を行う.本稿では,手法の一部を自動化する動的解析ツールを開発し,その有効性について評価を行った.
-
フレームワークアプリケーションに於ける副作用の兆候を抽出する動的解析手法
久米出, 新田直也, 中村匡秀, 柴山悦哉
研究報告ソフトウェア工学(SE)
Event date: 2013.10
プログラムのデバッグには検出された不具合からその原因を特定するために、多くの時間や労力を費して制御やデータの流れを辿る作業が必要である。多くのデバッグ支援手法は、作業者によるデバッグ対象プログラムの実装に関する知識を想定している。しかしながらフレームワークアプリケーションのように、既知のコードと未知のコード同士が相互に呼び出し合うようなプログラムの場合にはこうした想定が成り立たない。本論文ではフレームワークアプリケーションに於ける副作用に焦点を当てたプログラム理解とデバッグ支援の手法を提案する。我々の手法は副作用と共に発生する挙動を抽象化した兆候をプログラムトレースから抽出する点に新規性を有する。兆候は作業者が副作用の有無を判断する根拠として利用される。またオブジェクトやメソッド呼び出しと関連付ける事によって副作用の発生過程の理解を支援する事も期待されている。本提案手法を実用的なアプリケーション例題に対して適用し、その結果を評価する。
-
実行シナリオに基づくレイヤアーキテクチャの評価手法
小林 謙太郎,新田 直也
第182回ソフトウェア工学研究会 情報処理学会
Event date: 2013.10
-
フレームワークサンプルアプリケーションを利用した実行シナリオの実装支援ツールの開発
縄江 保宏, 新田 直也
第182回ソフトウェア工学研究会 情報処理学会
Event date: 2013.10