研究課題
ソフトウェアの再利用をソフトウェア開発活動の中心におく方法論として、コンポーネントベース開発がある。コンポーネントベース開発では、特定のソフトウェアアーキテクチャに基づいて、ソフトウェアを機能単位で部品に分解し、ソフトウェア部品(コンポーネント)を組み合わせることによって開発を進める。コンポーネントベース開発は、開発コストの削減とソフトウェア全体の信頼性の向上を実現することを目的とする。コンポーネントベース開発を進めるにあたっては、必要なコンポーネントが既に存在する必要がある。しかし、再利用可能なコンポーネントを全ての状況に応じて事前に準備することは不可能である。一方、目的とする機能要件を部分的に満たすプログラムが存在することは一般にあるが、プログラム全体のままでは用いるべき部分を特定するのが困難であり、利用者が開発したものでなければ効果的に再利用できない。そこで、既存のオブジェクト指向プログラムから、目的に合致する部分をコンポーネントとして抽出できれば、プログラム資産を生かしたコンポーネントベース開発を実現可能となる。また、抽出された部品のソースコードだけを参照して、部品の実行条件や利用方法を推測することは困難である。従って、部品を抽出する際に、抽出される部品の利用例を得られることが望ましい。本研究では、JAVAプログラムを対象として、ソースコード集合を静的に解析して得られるクラス関連グラフを示した。続いて、クラス関連グラフを用いて、オブジェクト指向プログラムからコンポーネントを抽出し、抽出元のプログラムについて、抽出されたコンポーネントを利用するための変更作業を行う手法を提案した。提案した手法は、抽出元プログラムの外部に対する振舞いを変更しないため、リファクタリングの一種として捉えることができる。
すべて 2005 2004
すべて 雑誌論文 (22件)
情報処理学会ソフトウェア工学研究会ウィンターワークショップ・イン・伊豆2005
ソフトウェアテストシンポジウム2005(JaSST'05)
ITの深化の基盤を拓く情報学研究・研究成果報告書(科研・特定領域「情報学」A01新しいソフトウェアの実現)
情報処理学会ソフトウェアジャパン2004
第11回ソフトウェア工学の基礎ワークショップ(FOSE2004)
日本ソフトウェア科学会第21回大会
第3回情報科学技術フォーラム(FIT2004)
Journal of Science of Computer Programming, Elsevier Science
日本データベース学会論文誌DBSJ Letters Vol.3, No.3
Proc.of 2nd ACIS International Conference on Software Engineering Research, Management and Applications(SERA2004)
Proc.of 5th International Conference on Extreme Programming and AgileProcesses in Software Engineering(XP2004), LNCS Vol.3092
Proc.of 8th International Conference on Software Reuse(ICSR), LNCS Vol.3107
Proc.of 6th JCKBSE2004, Frontiers in Artificial Intelligence and Applications, IOS Press
Proc.of Workshop on New Approaches to Software Construction(WNASC2004)
Companion to the 19th Annual ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications
Proc.of Software Transformation Systems Workshop at GPCE'04/19th Annual ACM SIGPIAN Conference on OOPSLA 2004
組込みソフトウェアシンポジウム2004(ESS2004)