{"metadata":{"_oai":{"id":"oai:ipsj.ixsq.nii.ac.jp:00190000","sets":["581:9322:9328"]},"path":["9328"],"owner":"11","recid":"190000","title":["AutoSort:レガシーシステム分析のためのプログラミング言語の判定支援手法"],"pubdate":{"attribute_name":"公開日","attribute_value":"2018-06-15"},"_buckets":{"deposit":"828299ce-05b7-494d-abd5-7182667f7a72"},"_deposit":{"id":"190000","pid":{"type":"depid","value":"190000","revision_id":0},"owners":[11],"status":"published","created_by":11},"item_title":"AutoSort:レガシーシステム分析のためのプログラミング言語の判定支援手法","author_link":["433950","433943","433948","433944","433946","433945","433949","433947"],"item_titles":{"attribute_name":"タイトル","attribute_value_mlt":[{"subitem_title":"AutoSort:レガシーシステム分析のためのプログラミング言語の判定支援手法"},{"subitem_title":"AutoSort: A Supporting Method of Programming Language Detection for Analyzing Legacy Systems","subitem_title_language":"en"}]},"item_keyword":{"attribute_name":"キーワード","attribute_value_mlt":[{"subitem_subject":"[一般論文] レガシーマイグレーション,リバースエンジニアリング,プログラム理解,クラスタリング","subitem_subject_scheme":"Other"}]},"item_type_id":"2","publish_date":"2018-06-15","item_2_text_3":{"attribute_name":"著者所属","attribute_value_mlt":[{"subitem_text_value":"株式会社NTTデータ技術革新統括本部/大阪大学大学院情報科学研究科"},{"subitem_text_value":"奈良先端科学技術大学院大学情報科学研究科"},{"subitem_text_value":"株式会社NTTデータ技術革新統括本部"},{"subitem_text_value":"大阪大学大学院情報科学研究科"}]},"item_2_text_4":{"attribute_name":"著者所属(英)","attribute_value_mlt":[{"subitem_text_value":"NTT DATA Corporation / Osaka University","subitem_text_language":"en"},{"subitem_text_value":"Nara Institute of Science and Technology","subitem_text_language":"en"},{"subitem_text_value":"NTT DATA Corporation","subitem_text_language":"en"},{"subitem_text_value":"Osaka University","subitem_text_language":"en"}]},"item_language":{"attribute_name":"言語","attribute_value_mlt":[{"subitem_language":"jpn"}]},"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/190000/files/IPSJ-JNL5906004.pdf","label":"IPSJ-JNL5906004.pdf"},"date":[{"dateType":"Available","dateValue":"2020-06-15"}],"format":"application/pdf","billing":["billing_file"],"filename":"IPSJ-JNL5906004.pdf","filesize":[{"value":"513.5 kB"}],"mimetype":"application/pdf","priceinfo":[{"tax":["include_tax"],"price":"660","billingrole":"5"},{"tax":["include_tax"],"price":"330","billingrole":"6"},{"tax":["include_tax"],"price":"0","billingrole":"8"},{"tax":["include_tax"],"price":"0","billingrole":"44"}],"accessrole":"open_date","version_id":"ad01bd59-5902-4587-b847-0e8ba6f48f68","displaytype":"detail","licensetype":"license_note","license_note":"Copyright (c) 2018 by the Information Processing Society of Japan"}]},"item_2_creator_5":{"attribute_name":"著者名","attribute_type":"creator","attribute_value_mlt":[{"creatorNames":[{"creatorName":"岡田, 譲二"}],"nameIdentifiers":[{}]},{"creatorNames":[{"creatorName":"石尾, 隆"}],"nameIdentifiers":[{}]},{"creatorNames":[{"creatorName":"坂田, 祐司"}],"nameIdentifiers":[{}]},{"creatorNames":[{"creatorName":"井上, 克郎"}],"nameIdentifiers":[{}]}]},"item_2_creator_6":{"attribute_name":"著者名(英)","attribute_type":"creator","attribute_value_mlt":[{"creatorNames":[{"creatorName":"Joji, Okada","creatorNameLang":"en"}],"nameIdentifiers":[{}]},{"creatorNames":[{"creatorName":"Takashi, Ishio","creatorNameLang":"en"}],"nameIdentifiers":[{}]},{"creatorNames":[{"creatorName":"Yuji, Sakata","creatorNameLang":"en"}],"nameIdentifiers":[{}]},{"creatorNames":[{"creatorName":"Katsuro, Inoue","creatorNameLang":"en"}],"nameIdentifiers":[{}]}]},"item_2_source_id_9":{"attribute_name":"書誌レコードID","attribute_value_mlt":[{"subitem_source_identifier":"AN00116647","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_2_source_id_11":{"attribute_name":"ISSN","attribute_value_mlt":[{"subitem_source_identifier":"1882-7764","subitem_source_identifier_type":"ISSN"}]},"item_2_description_7":{"attribute_name":"論文抄録","attribute_value_mlt":[{"subitem_description":"レガシーなメインフレームシステムには,拡張子が存在せずプログラミング言語が不明なソースコードファイルが多数存在する.レガシーシステムを分析する際には各ソースコードファイルのプログラミング言語を判定する必要があるが,これを手作業で行うと多大な労力が必要となってしまう.本研究ではプログラミング言語の判定作業を支援するために,手作業で判定すべきファイルの代表をクラスタリングによって選出する手法を提案する.正確な判定を支援するため,提案手法はパターンマッチによる自動判定と,手作業での判定結果を用いた解析による判定誤りの補正をクラスタリングに組み合わせて用いる.提案手法の評価として,人手で正解のプログラミング言語を付与した2つの実際のレガシーシステムのファイル集合に対して本手法を適用した.その結果,提案手法は19万ファイルのうち,99.49%のファイルを正しく分類できることを確認した.また,これらのファイルに対する人手での判定は3.3人月の工数が必要だったが,提案手法は8時間の計算時間と,人手による15分の確認だけで判定を完了した.","subitem_description_type":"Other"}]},"item_2_description_8":{"attribute_name":"論文抄録(英)","attribute_value_mlt":[{"subitem_description":"Legacy mainframe systems involve many source code files without file extensions. Their programming languages are undocumented. Therefore, their respective programming languages are not easily judged by hand. Although detecting a programming language for each file is necessary for various program analysis tasks, it is time consuming to manually analyze a large amount of files. In this research, we propose a method to support the process of programming language detection employing a clustering technique to select a small number of representatives for manual detection of programming languages. To improve accuracy, our method combines pattern matching and a static analysis using a result of manual detection. In the experiment, we applied our method to two actual legacy systems whose source code files have been manually analyzed. As a result, our method correctly classified 99.49% of the 190,000 files. While a manual detection of programming languages for the systems required 3.3 man-months, our method completed the analysis in eight hours for computation and fifteen minutes for manual checks of programming languages.","subitem_description_type":"Other"}]},"item_2_biblio_info_10":{"attribute_name":"書誌情報","attribute_value_mlt":[{"bibliographicPageEnd":"1414","bibliographic_titles":[{"bibliographic_title":"情報処理学会論文誌"}],"bibliographicPageStart":"1405","bibliographicIssueDates":{"bibliographicIssueDate":"2018-06-15","bibliographicIssueDateType":"Issued"},"bibliographicIssueNumber":"6","bibliographicVolumeNumber":"59"}]},"relation_version_is_last":true,"weko_creator_id":"11"},"updated":"2025-01-20T01:23:38.159142+00:00","created":"2025-01-19T00:55:59.717978+00:00","links":{},"id":190000}