著者
島田 隆次 市井 誠 早瀬 康裕 松下 誠 井上 克郎
出版者
情報処理学会
雑誌
情報処理学会研究報告ソフトウェア工学(SE) (ISSN:09196072)
巻号頁・発行日
vol.2008, no.112, pp.31-38, 2008-11-12

クラスやメソッドなどソフトウェアの構成要素であるソフトウェア部品を再利用することで,ソフトウェアの品質や生産性が向上するといわれている.開発者はソフトウェア部品検索システムを用いたキーワード検索により再利用可能なソフトウェア部品を得ることができる.しかしキーワード検索を用いた再利用には,開発者が意識しないと検索が行われないなどの問題点がある.それに対して,開発者の指示なしに自動的にソフトウェア部品を検索する手法が提案されているが,その手法では入出力仕様が完全に一致するものを検索するため,入出力仕様に変更を加えれば再利用できるような部品は発見できない.そこで本稿では,そのようなソフトウェア部品も検索できるソフトウェア部品の自動推薦手法を提案する.提案手法では,ソースコード中に数多く現れるコメントや識別子を利用し,自然言語に対する検索手法である LSI を応用して暖昧さを許容する検索を行うことで,多少の変更を加えれば再利用できるようなソフトウェア部品も推薦することができる.また,提案手法を実装したソフトウェア部品の自動推薦システムを作成した.Reusing software components like classes and modules improves software quality and productivity. Software developers often retrieve available components by keyword search using software component retrieval system. However the developers who will not search for components can not retrieve reusable components. To address this issue, software component retrieval technique without developer's instruction was proposed. However developers can not discover available components that need change using the technique because it searches components having same input and output specification to requested one. In this paper, we propose the automatic software component recommendation technique that can retrieve such software component. Proposed technique vaguely retrieves reusable components including the ones that requires small modification to reuse based on the LSI technique using comments and identifiers in source code. In addition, we have developed the automatic software component recommendation system that implements the proposed technique.
著者
市井 誠 小川 秀人
出版者
日本ソフトウェア科学会
雑誌
コンピュータ ソフトウェア (ISSN:02896540)
巻号頁・発行日
vol.32, no.3, pp.3_70-3_76, 2015

リファクタリングにおける振舞い保持を検証するため,プログラム等価性検証手法を提案する.提案手法は,プログラム構造の差分を抽象構文木に基づくモデルを用いて検出する.差分検出にあたり,リファクタリングにより意図された構造の変更を差分から除外するため,リファクタリングパターンに従ったモデル変換を実施する.また,提案手法をC/C++言語を対象とした検証ツールPOM/EQとして実装した.さらに,実装したツールの適用実験を行い,ある組込み製品にて実施されたリファクタリングのうち,56%を正しく判定できた.
著者
市井 誠 松下 誠 井上 克郎
出版者
一般社団法人電子情報通信学会
雑誌
電子情報通信学会論文誌. D, 情報・システム = The IEICE transactions on information and systems (Japanese edition) (ISSN:18804535)
巻号頁・発行日
vol.90, no.7, pp.1733-1743, 2007-07-01
参考文献数
19
被引用文献数
2

ソフトウェア部品とはモジュールや関数,クラス等のソフトウェアの構成単位であり,参照や呼出しなどの形で互いに利用関係をもつ.ソフトウェア部品を頂点,利用関係を有向辺としたグラフはソフトウェア部品グラフ(部品グラフ)と呼ばれ,ソフトウェアの解析手法に広く用いられている.グラフを特徴づける要素として頂点の次数分布がある.近年,WWW上のページのリンク関係やソーシャルネットワーク等,様々な分野のグラフで次数分布がべき乗則に従うことが明らかになり,活発に研究されている.本論文では,Javaソフトウェアに含まれるクラス間の静的な利用関係に基づく部品グラフの次数分布にべき乗則が成り立つかどうかを調査した.その結果,一つのソフトウェア及び大規模なソフトウェアの集合に関し,入次数の分布がべき乗則に従い,出次数の分布は次数の大きな範囲でのみべき乗則に従うことが明らかになった.また,一部の部分集合においても同様の性質が成り立ち,特に,単語に基づく部分集合は非常に少ない部品数でも全体集合と同様の性質をもつことが明らかになった.
著者
市井 誠 松下 誠 井上 克郎
出版者
一般社団法人電子情報通信学会
雑誌
電子情報通信学会技術研究報告. SS, ソフトウェアサイエンス (ISSN:09135685)
巻号頁・発行日
vol.105, no.491, pp.37-42, 2005-12-13
被引用文献数
1

スケールフリー性とはグラフ中のノードの接続辺数がべき分布に従う性質であり, インターネット上のノードなど様々な対象において確認されている.ソフトウェア部品間の利用関係をあらわす部品グラフにおいても, 大部分の部品はほとんど利用関係を持たないのに対してごく少数の部品が非常に多くの利用関係を持つスケールフリー性をもつことが知られている.利用関係はソフトウェアの設計が反映されたものであることから, 部品グラフにおける接続辺数の分布から設計に関する情報が得られると考えられるが, 設計による接続辺数の分布の違いは知られていない.本研究では, ソフトウェアによる接続辺数の分布の違いを入力辺数と出力辺数に分けて調査をおこない, ソフトウェアおよび含まれる部品の性質との関連について調査する.その結果, 入力辺数および出力辺数の分布はソフトウェアの設計や含まれる部品により異なることが判明した.また, 得られた結果より, 理解支援やソフトウェア評価を目的として, 部品グラフの接続辺数の分布からソフトウェアの設計に関する特徴の分析をおこなう手法について考察する.