Item type |
Trans(1) |
公開日 |
2016-05-24 |
タイトル |
|
|
タイトル |
識別子命名からのオブジェクトの機能分析に基づくプログラム構造変化の類型抽出 |
タイトル |
|
|
言語 |
en |
|
タイトル |
Extracting Temporal Patterns in Structural Revisions of Program Based on Functional Analysis of Objects by Word Usage of Their Identifiers |
言語 |
|
|
言語 |
jpn |
キーワード |
|
|
主題Scheme |
Other |
|
主題 |
[発表概要] |
資源タイプ |
|
|
資源タイプ識別子 |
http://purl.org/coar/resource_type/c_6501 |
|
資源タイプ |
journal article |
著者所属 |
|
|
|
大阪電気通信大学大学院工学研究科 |
著者所属 |
|
|
|
大阪電気通信大学情報通信工学部 |
著者所属(英) |
|
|
|
en |
|
|
Graduate School of Engineering, Osaka Electro-Communication University |
著者所属(英) |
|
|
|
en |
|
|
Faculty of Information and Communication, Osaka Electro-Communication University |
著者名 |
山下, 大貴
竹内, 和広
|
著者名(英) |
Hiroki, Yamashita
Kazuhiro, Takeuchi
|
論文抄録 |
|
|
内容記述タイプ |
Other |
|
内容記述 |
本研究では,バージョンアップにともない,ソフトウェアが修正・拡張され,頑健性が向上する様子を分析する.特に,ソフトウェアの理解や保守を向上させるといった様々な利点があるとされているデザインパターンの実装を主眼に分析を行う.従来のデザインパターン分析ツールでは,オブジェクトの構成を主眼に,プログラムが採用するデザインパターンを分析する.それに対して,本研究では,デザインパターンの内部オブジェクトの機能形成をデータ構造の観点から分析する.その際,オブジェクトの機能の特定は,オブジェクトとそれに関係するメソッドの識別子命名に用いられる自然言語の用法を分析用辞書に整理することにより実現する.また,分析用辞書は,リポジトリマイニングを活用して構築したものを用いる.研究の成果については,まず,提案の分析手法が,従来のデザインパターン特定ツールに比べて,精度的に劣らず,時系列分析に適している点を示す.次に,複数のオープンソースプロジェクトのマイナーバージョンアップにおける構造変化の分析例として,当初はlistデータ構造のみのプログラム構造からiteratorパターンに近いプログラム構造に変化することにより,ソフトウェアの頑健性を向上させているといった,いくつかの構造変化の類型の発見について説明する.このような構造変化の類型の発見は,デザインパターンの実装が段階的に頑健となっていく方法論を知るうえで有益な知見と考える. |
論文抄録(英) |
|
|
内容記述タイプ |
Other |
|
内容記述 |
In this paper, we analyze structural changes of software through its history of upgrades. Our viewpoint of the analysis is temporal features of implementation of the design patterns, which make the maintenance of software easier and improve its readability. For this purpose, we propose a tool that analyzes software by the functions of objects that constitute design patterns under our assumption that these functions can be analyzed by the naming of identifiers for objects and methods in the program. As a basis of the analysis, we conduct the data mining to software repositories and collect usages and rules of natural language words for naming identifiers. Contributions of our work to program engineering are twofold: we firstly show the capabilities of our proposing tool that can identify function of the objects by comparing with one of the well-known tools that have been used for the design pattern analysis to existing programs. Secondly, we show our findings that there are some temporal patterns through software upgrades: for example, a simple implementation of data structure sometimes grows up as more complex one where the data structure is a part of the iterator pattern. These findings will contribute to make it clearer how the robustness of implementation of design patterns is improved through the revisions. |
書誌レコードID |
|
|
収録物識別子タイプ |
NCID |
|
収録物識別子 |
AA11464814 |
書誌情報 |
情報処理学会論文誌プログラミング(PRO)
巻 9,
号 2,
p. 6-6,
発行日 2016-05-24
|
ISSN |
|
|
収録物識別子タイプ |
ISSN |
|
収録物識別子 |
1882-7802 |
出版者 |
|
|
言語 |
ja |
|
出版者 |
情報処理学会 |