Javaプログラム理解支援のための不変性解析
スポンサーリンク
概要
- 論文の詳細を見る
本稿では,Javaプログラムの理解支援を目的として参照の不変性解析手法を提案する.不変な参照は,その参照が指すオブジェクトの状態を変更する操作が適用されないため,オブジェクトの状態変化を追跡する際に着目する必要がない.本研究では,クラス,インタフェース,メソッド,メソッドの参照型の戻り値,インナクラスのコンストラクタ,参照変数といったJavaプログラムの構成要素間に不変性依存関係を定義する.不変性依存関係は,ある要素の不変性が別の要素の不変性に依存することを表す.不変性依存関係をたどることで不変性解析を行い,不変な参照変数を特定する.Javaプログラムに対し不変性解析を行い,不変な要素とそうでない要素を色分けして示すソースコードブラウザを実装した.実行例を示して本手法の有用性を評価する.
- 2006-05-17
著者
-
桑原 寛明
立命館大学情報理工学部
-
阿草 清滋
京大
-
阿草 清滋
名古屋大学大学院情報科学研究科
-
水野 良太
名古屋大学大学院情報科学研究科
-
阿草 清滋
名古屋大学
-
山本 晋一郎
愛知県立大学
-
桑原 寛明
名古屋大学大学院情報科学研究科
関連論文
- 3K-5 タスク分割によるCell用の自動並列化コンパイラの開発(チップマルチプロセッサと並列化技術,学生セッション,アーキテクチャ)
- 通信プロセスモデルによるAIBO OPEN-Rプログラムのデッドロックフリー解析手法(検証/テストとデバッグ,組込みシステム工学)
- 4K-2 条件分岐のSIMD化手法のCellへの適用(HPCと高速化,学生セッション,アーキテクチャ)
- 4. ソフトウェアエンジニアリング領域(J07-SE)(情報専門学科カリキュラム標準J07)
- 例外処理付きオブジェクト指向プログラムにおける情報流の安全性解析のための型システム(ディペンダブルコンピューティング)
- Apache Cocoon Flowscriptのモデル検査によるWeb応用プログラムの動作検証
- Haskellのための非同期局所化π計算に基づくネットワークプログラミングフレームワーク
- 5K-8 消費電力の実行時予測を用いた電力最適化(マルチスレッドと省電力,学生セッション,アーキテクチャ)
- ソフトウェア科学会第2回大会
- 細粒度リポジトリに基づくVHDLツールプラットフォーム(ツール,開発環境)
- プログラムの正規化に基づいた差分抽出法の提案
- 意味を考慮した差分抽出ツール
- On the Job Learning : 産学連携による新しいソフトウェア工学教育手法
- 高精度なデータ依存解析に基づくシーケンス図スライシング手法(モデリング(学生セッション))
- ソフトウェア理解支援のための多粒度ソフトウェアマップ(インタフェース・ナビゲーション(学生セッション))
- ソフトウェアの大局的可視化のための組織化メトリクス
- 知識基盤社会を支える情報技術論文特集の発行にあたって
- StrutsLint : Web アプリケーションコーディングチェッカ
- 7.高信頼WebWare生成技術 : WebWareのテスト・解析・作成支援(第1部:高い生産性を持つ高信頼ソフトウェア作成技術の開発,学と産の連携による基盤ソフトウェアの先進的開発)
- 要求定義支援のための要求適合度を用いた事例検索(要求工学(学生セッション))
- 設計工程に合わせたビュー生成を可能にするソフトウェア文書管理手法の提案
- 歴代理事長座談会「日本ソフトウェア科学会の20年とこれから」(20周年記念特集)
- 要求フレームに基づいたソフトウェア要求仕様化技法
- 制御ソフトウェアの固定小数点演算化ツールの設計と実装
- 4M-4 細粒度マークアップに基づくカスタマイズ可能なコーディング規約検査器(リーディングプロジェクト e-society:高信頼ソフトウェア・WebWare開発支援システム,一般セッション,リーディングプロジェクト e-society)
- アマゾンバグ防止フレームワークのためのWebアプリケーション双実行モデル
- NEXCESS : 社会人組込みソフトウェア技術者教育におけるスキル育成
- 社会人に対する組込みソフトウェア技術の再教育の取り組み
- GUI抽象化規則を用いたモデル生成手法(開発支援(2)(学生セッション))
- Web抽象プログラムを用いたリファクタリング(開発支援(2)(学生セッション))
- メタ情報とコンテキスト情報を用いた入力補完機能とXPath入力への応用
- デ-25 CX-Checker : 柔軟なカスタマイズが可能なC言語コーディングルールチェッカー(デモセッション,ソフトウェア科学・工学,情報処理学会創立50周年記念)
- メタ情報とコンテキスト情報を用いた入力補完機能と XPath 入力への応用
- バリエーション並行開発のための版管理ツールと統合開発環境
- ソフトウェア科学会第1回大会
- 細粒度リポジトリに基づいたCASEツール・プラットフォームSapid(並列処理)
- 「SEC journal」創刊記念論文 優秀賞受賞論文 大学における社会人向け組込みソフトウェア技術者人材養成の実施と分析 (「SEC journal」創刊記念論文 優秀賞受賞論文発表)
- 社会人に対する組込みソフトウェア技術の再教育の取り組み
- 時間付きデザインパターンに基づく実時間並行ソフトウェアの開発手法
- 20周年特別功労賞発足の経緯と表彰者の紹介(20周年記念特集)
- パネル討論会 : 要求技術の目指すべき方向
- マイコン用高級言語
- 情報科学研究の推進 (特集 情報科学研究)
- ハザ-ドレスNAND回路の合成
- 記憶ペンによる部分像系列から全体像を再現する方法
- 5L-8 コード視覚化手法を用いたMPIプログラム開発環境のユーザインタフェース(プログラミング支援環境,学生セッション,ソフトウェア科学・工学)
- 1K-6 静的解析情報を利用したセキュアシステムの侵入検知精度向上(仮想化と言語処理系,学生セッション,アーキテクチャ)
- 1X-2 冗長な検査の削除を行う整数オーバーフロー対策ツールの実装(セキュア設計・実装・フォレンジクス,学生セッション,セキュリティ)
- 時間付き$\pi$計算における有限プロセスの時間動作抽象化(計算機科学の理論とその応用)
- 例外処理付きオブジェクト指向言語における情報流の安全性解析
- 例外処理付きオブジェクト指向言語における情報流の安全性解析
- Javaプログラム理解支援のための不変性解析
- Java プログラム理解支援のための不変性解析
- π計算に対する時間拡張と合同的性質(計算モデル,フォーマルアプローチ論文)
- π計算に基づくプログラミング言語NepiのためのGUI機能
- 時間付きπ計算によるリアルタイムオブジェクト指向言語の形式的記述(オブジェクト指向とWeb技術)
- π計算による優先度継承プロトコルの形式的記述
- 新しい入力デバイス : 記憶ペン
- 宣言的なプログラム解析が可能なRDFに基づく細粒度ソフトウェアリポジトリ(開発支援(2)(学生セッション))
- 宣言的なプログラム解析が可能なRDFに基づく細粒度ソフトウェアリポジトリ
- (開発支援環境)XMLを用いた汎用的な細粒度ソフトウェアリポジトリの実装(オブジェクト指向技術)
- Webオートマトン : MVCモデルに基づくWebアプリケーションの動作モデル(ディペンダブルソフトウェア)
- CASEツール開発のためのソフトウェア操作言語
- 依存関係に基づく差分抽出ツール
- ソフトウェアの動作状況のモデル化に関する研究
- イディオム検索のための関数呼出依存グラフのクラスタリング手法(ソフトウェア工学)
- XML記述によるソフトウェアリポジトリを用いたコード検索(開発支援環境)
- FCDGに基づいたコーディングパターン
- ラウンドトリップエンジニアリングを目指したWebアプリケーションのための意味モデル(産学連携論文)
- ハイパーテキストを用いたソフトウェアの統合と共有
- オブジェクト指向言語のための細粒度システム依存グラフ
- 自律的BOBモデルを用いたTRSの並列分散実行系
- セッション型に基づく高信頼ネットワークプログラムの関数型言語による実装手法
- 時間オートマトンによる振舞いモデルに基づく高信頼Real-Time Javaコード生成手法
- 時間オートマトンによる振舞いモデルに基づく高信頼 Real-Time Java コード生成手法
- プログラムスライシングツールのための共通表現
- 実時間プロセス言語に基づく時間ステートチャートの動作シミュレーション
- 文書間の不整合解消に基づくソフトウエアプロセスのモデル化
- 共有メモリ型並列計算機における項書換え系の実現方式
- 動作履歴を用いた焦点絞り込みによるプログラム理解
- 細粒度リポジトリに基づくVHDLツールプラットフォーム
- 産学連携と情報処理学会(これからの情報処理学会 第6回)
- 実用ソフトウェアとソフトウェア工学 : 大学におけるソフトウェア開発 : 紺屋の紺袴作り
- 制御理論に基づく戦略的業務モデル
- "正しい"ソフトウェアの開発を
- ソフトウェア科学と工学
- 上流 CASE とソフトウェア開発の効率化
- 前バージョンの整合性を用いた設計復元
- ウィンターワークショップ2011・イン・修善寺開催報告
- メタパターン適用情報に基づくオブジェクトの協調動作履歴可視化ツール
- 例外処理を持つ関数型プログラムの停止性・非停止性証明法
- OJL:産学連携による新しい人材育成の試み (特集 高度IT人材育成の軌跡--ITトップガン構想から先導的ITスペシャリスト育成まで)
- 変更支援のための成果物アクセス履歴マイニング
- 産業技術系専門職大学院の認証評価--大学評価制度はどうあるべきか? (ぺた語義(第7回))
- CX-Checker:柔軟にカスタマイズ可能なC言語プログラムのコーディングチェッカ
- 高度IT資格制度座談会 (特集 高度IT資格制度)
- コールスタックの制御データ検査によるスタック偽装攻撃検知
- IT好き放題:面白さは突然に
- 実行トレース解析のためのデザインパターンに基づくオブジェクトグルーピング
- A-011 既存のプログラミング言語のための量子探索機構(アルゴリズム・コンピュテーション(1),A分野:モデル・アルゴリズム・プログラミング)