{"metadata":{"_oai":{"id":"oai:ipsj.ixsq.nii.ac.jp:00161482","sets":["934:935:8438:8665"]},"path":["8665"],"owner":"11","recid":"161482","title":["識別子命名からのオブジェクトの機能分析に基づくプログラム構造変化の類型抽出"],"pubdate":{"attribute_name":"公開日","attribute_value":"2016-05-24"},"_buckets":{"deposit":"8e5d9901-2711-4f6f-bdaa-88852f849e17"},"_deposit":{"id":"161482","pid":{"type":"depid","value":"161482","revision_id":0},"owners":[11],"status":"published","created_by":11},"item_title":"識別子命名からのオブジェクトの機能分析に基づくプログラム構造変化の類型抽出","author_link":["313950","313951","313952","313953"],"item_titles":{"attribute_name":"タイトル","attribute_value_mlt":[{"subitem_title":"識別子命名からのオブジェクトの機能分析に基づくプログラム構造変化の類型抽出"},{"subitem_title":"Extracting Temporal Patterns in Structural Revisions of Program Based on Functional Analysis of Objects by Word Usage of Their Identifiers","subitem_title_language":"en"}]},"item_keyword":{"attribute_name":"キーワード","attribute_value_mlt":[{"subitem_subject":"[発表概要] ","subitem_subject_scheme":"Other"}]},"item_type_id":"3","publish_date":"2016-05-24","item_3_text_3":{"attribute_name":"著者所属","attribute_value_mlt":[{"subitem_text_value":"大阪電気通信大学大学院工学研究科"},{"subitem_text_value":"大阪電気通信大学情報通信工学部"}]},"item_3_text_4":{"attribute_name":"著者所属(英)","attribute_value_mlt":[{"subitem_text_value":"Graduate School of Engineering, Osaka Electro-Communication University","subitem_text_language":"en"},{"subitem_text_value":"Faculty of Information and Communication, Osaka Electro-Communication University","subitem_text_language":"en"}]},"item_language":{"attribute_name":"言語","attribute_value_mlt":[{"subitem_language":"jpn"}]},"item_publisher":{"attribute_name":"出版者","attribute_value_mlt":[{"subitem_publisher":"情報処理学会","subitem_publisher_language":"ja"}]},"publish_status":"0","weko_shared_id":-1,"item_file_price":{"attribute_name":"Billing file","attribute_type":"file","attribute_value_mlt":[{"url":{"url":"https://ipsj.ixsq.nii.ac.jp/record/161482/files/IPSJ-TPRO0902009.pdf","label":"IPSJ-TPRO0902009.pdf"},"date":[{"dateType":"Available","dateValue":"2018-05-24"}],"format":"application/pdf","billing":["billing_file"],"filename":"IPSJ-TPRO0902009.pdf","filesize":[{"value":"108.8 kB"}],"mimetype":"application/pdf","priceinfo":[{"tax":["include_tax"],"price":"0","billingrole":"5"},{"tax":["include_tax"],"price":"0","billingrole":"6"},{"tax":["include_tax"],"price":"0","billingrole":"15"},{"tax":["include_tax"],"price":"0","billingrole":"44"}],"accessrole":"open_date","version_id":"fcb1c9e2-e57b-4171-93c2-89268f43d561","displaytype":"detail","licensetype":"license_note","license_note":"Copyright (c) 2016 by the Information Processing Society of Japan"}]},"item_3_creator_5":{"attribute_name":"著者名","attribute_type":"creator","attribute_value_mlt":[{"creatorNames":[{"creatorName":"山下, 大貴"}],"nameIdentifiers":[{}]},{"creatorNames":[{"creatorName":"竹内, 和広"}],"nameIdentifiers":[{}]}]},"item_3_creator_6":{"attribute_name":"著者名(英)","attribute_type":"creator","attribute_value_mlt":[{"creatorNames":[{"creatorName":"Hiroki, Yamashita","creatorNameLang":"en"}],"nameIdentifiers":[{}]},{"creatorNames":[{"creatorName":"Kazuhiro, Takeuchi","creatorNameLang":"en"}],"nameIdentifiers":[{}]}]},"item_3_source_id_9":{"attribute_name":"書誌レコードID","attribute_value_mlt":[{"subitem_source_identifier":"AA11464814","subitem_source_identifier_type":"NCID"}]},"item_resource_type":{"attribute_name":"資源タイプ","attribute_value_mlt":[{"resourceuri":"http://purl.org/coar/resource_type/c_6501","resourcetype":"journal article"}]},"item_3_source_id_11":{"attribute_name":"ISSN","attribute_value_mlt":[{"subitem_source_identifier":"1882-7802","subitem_source_identifier_type":"ISSN"}]},"item_3_description_7":{"attribute_name":"論文抄録","attribute_value_mlt":[{"subitem_description":"本研究では,バージョンアップにともない,ソフトウェアが修正・拡張され,頑健性が向上する様子を分析する.特に,ソフトウェアの理解や保守を向上させるといった様々な利点があるとされているデザインパターンの実装を主眼に分析を行う.従来のデザインパターン分析ツールでは,オブジェクトの構成を主眼に,プログラムが採用するデザインパターンを分析する.それに対して,本研究では,デザインパターンの内部オブジェクトの機能形成をデータ構造の観点から分析する.その際,オブジェクトの機能の特定は,オブジェクトとそれに関係するメソッドの識別子命名に用いられる自然言語の用法を分析用辞書に整理することにより実現する.また,分析用辞書は,リポジトリマイニングを活用して構築したものを用いる.研究の成果については,まず,提案の分析手法が,従来のデザインパターン特定ツールに比べて,精度的に劣らず,時系列分析に適している点を示す.次に,複数のオープンソースプロジェクトのマイナーバージョンアップにおける構造変化の分析例として,当初はlistデータ構造のみのプログラム構造からiteratorパターンに近いプログラム構造に変化することにより,ソフトウェアの頑健性を向上させているといった,いくつかの構造変化の類型の発見について説明する.このような構造変化の類型の発見は,デザインパターンの実装が段階的に頑健となっていく方法論を知るうえで有益な知見と考える.","subitem_description_type":"Other"}]},"item_3_description_8":{"attribute_name":"論文抄録(英)","attribute_value_mlt":[{"subitem_description":"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.","subitem_description_type":"Other"}]},"item_3_biblio_info_10":{"attribute_name":"書誌情報","attribute_value_mlt":[{"bibliographicPageEnd":"6","bibliographic_titles":[{"bibliographic_title":"情報処理学会論文誌プログラミング(PRO)"}],"bibliographicPageStart":"6","bibliographicIssueDates":{"bibliographicIssueDate":"2016-05-24","bibliographicIssueDateType":"Issued"},"bibliographicIssueNumber":"2","bibliographicVolumeNumber":"9"}]},"relation_version_is_last":true,"weko_creator_id":"11"},"id":161482,"updated":"2025-01-20T11:54:36.975280+00:00","links":{},"created":"2025-01-19T00:34:13.690606+00:00"}