研究者詳細

学術論文
分割表示   全件表示 >>

33 件中 1 - 10 件目

年度
Year
論文題目名
Title of the articles
共著区分
Collaboration
   Classification
NeoCILIUS
   請求番号/資料ID
Request No
掲載誌名 Journal name,出版機関名 Publishing organization,巻/号 Vol./no.,頁数 Page nos.,発行年月(日) Date
2018  Use-Relationship Based Classification for Software Components  共著   
Proceedings of the Quantitative Approaches to Software Quality  , pp 59--66  , 2018/12/01   

概要(Abstract) In recent years, the maintenance period of the software system is increasing. The size of the software system has grown, and the number of classes and the relationship between classes are also increasingly complicated. If we can categorize software components based on information such as functions and roles, we believe that these classified components can be understood together, and are useful for understanding the system. In this paper, we proposed a classification method for software components based on similarity of use relation. For each component, a set of components used by the component was analyzed. And then, for each pair of components, the distance was calculated from the coincidence of the two sets. A distance matrix was created and components were classified by hierarchical
cluster analysis. We applied this method to jlGui consisting of 70 components. 8 clusters of 36 components were extracted from the 70 components. Characteristics of the extracted clusters were evaluated, and the content of each cluster was introduced as a case study. In 7 clusters out of the 8 clusters, components of the cluster were strongly similar with each other from the viewpoint of their functions. Through these experiments, we confirmed that
our method is effective for classifying components of the target software, and is useful for understanding them. 

備考(Remarks)  

2017  Changes of Evaluation Values on Component Rank Model by Taking Code Clones into Consideration  共著   
IEICE Transactions on Information and Systems  , A Publication of the Information and Systems Society  , Vol.E101-D, No.1  , pp.130-141  , 2018/01/05   

概要(Abstract) There are many software systems that have been used and maintained for a long time. By undergoing such a maintenance process, similar code fragments were intentionally left in the source code of such software, and knowing how to manage a software system that contains a lot of similar code fragments becomes a major concern. In this study, we proposed a method to pick up components that were commonly used in similar code fragments from a target software system. This method was realized by using the component rank model and by checking the differences of evaluation values for each component before and after merging components that had similar code fragments. In many cases, components whose evaluation value had decreased would be used by both the components that were merged, so we considered that these components were commonly used in similar code fragments. Based on the proposed approach, we implemented a system to calculate differences of evaluation values for each component, and conducted two evaluation experiments to confirm our method was useful for detecting the assumed components. Based on the experimental results, we also discuss some improvement methods and provide the results from applications of these methods. 

備考(Remarks) 2017年4月初稿投稿,7月条件付き採録,10月採録
 

2015  Extensions of Component Rank Model by Taking into Account for Clone Relations  共著   
Proceedings of the 10th International Workshop on Software Clones   , pp. 30-36  , 2016/03/15   

概要(Abstract) The size of software increases in recent years, and
the number of classes and relationships between classes are
also increasingly complicated. We have a large interest about
the way to classify a great deal of components effectively. Our
research group proposed a component rank model in the past,
and the model calculates an evaluation value of each component
by using component graph that represents use-relations between
components. In this paper, we suggest a method to reflect code
clone’s relation on the component rank model. In the extended
model, code clone’s relations are reflected on the component
graph by merging components that have similar code fragments.
When we focus simply on how the evaluation value of each
component has changed, component whose evaluation value falls
would be mainly a component used by both of the merged
components. In the experiment, we applied our method to several
open source projects, and confirmed that the change of evaluation
value of each component was within the scope of the assumption.
And we also searched case examples, and confirmed how much
assumed cases existed in the actual software, and a percentage
of the reduction of the evaluation value was useful for detecting
components related with code clone. Through these experiments,
we confirmed that our method is effective to detect components
that existing similar code fragments are using. 

備考(Remarks) SANER の論文集の一部として出版 

2014  Further Considerations about Relationship between Framework and Application Components  共著   
International Journal of Computer Science and Application   , Science and Engineering Publishing Company  , Vol. 4, Issue. 1  , pp.18-31  , 2015/04   

概要(Abstract) A large number of software applications are used over ten years, and are subjected to continuous maintenance activities to improve their operability, functionality, stability and so on. Through such maintenance activities, the internal structure of the software system becomes more complex. We believe that studying how the complexity has evolved is important for understanding the actual maintenance activities. In a previous experiment, we analyzed how code clones and use relations between application and framework components change through a longitudinal study of open source software. However, we performed our analysis over only one set of framework and application, so we would like to discuss how our findings generalize. In this paper, we replicate the previous experiment, targeting several open source projects. By comparing with the result of the past experiment, we will discuss about generalities of our findings. Moreover, we study the differences between the trends for both incoming and outgoing edges, how use relations increase and decrease through long term development, and how code clones are introduced in the software in the early period of the development. These analyses have a certain level of commonality for understanding actual developers' activities. 

備考(Remarks) 2015/03/02 採録決定
 

2012  Evolution of Component Relationships between Framework annd Application  共著   
Journal of Computers   , Computer Society of The Republic of China  , Vol. 23, No2  , pp.61-79  , 2012/07   

概要(Abstract) Most of today’s software applications are built on top of libraries or frameworks. The increasing number of cloud-based services gives rise to 3rd party frameworks that offer such services from a cloud platform. Just as applications evolve, frameworks also evolve. Such evolution is even more pronounced in frameworks that underlie cloud-based services. Upgrading is straightforward when the framework changes preserve the API and behavior of the offered services. However, major changes are introduced with the new framework release, which have a significant impact on the application. A framework user has to consider how to adjust to the new version. In this paper, we study the evolution of an application and its underlying framework through a multi-version analysis. For the analysis, we investigate two kinds of component relationships: one is component rank, the other is clone relation. Component rank measurement is a way of quantifying the importance of a component by its usage. As framework components are used by applications, the rankings of the components are changed. We confirm that upgrading to the new framework version has an impact to a component rank of the entire system. On the other hand, existence of code clone shows how application developers use existing framework code as a reference, and removal of clones shows which reuse activities were recognized as problematic. Analysis of results from these relationships provides useful insights into developers’ activities. 

備考(Remarks) 2012/5 採録決定
 

2010  Measuring the Effects of Aspect-Oriented Refactoring on Component Relationships: Two Case Studies  共著   
in proceedings of the 10th Annual Aspected-Oriented Software Development Conference (AOSD.11)  , pp215--226  , 2011/03   

概要(Abstract) Aspect-oriented refactoring is a promising technique for improving modularity and reducing complexity of existing software systems through encapsulating crosscutting concerns. As complexity of a system is often linked to the degree to which its components (e.g., classes and aspects) are connected, we investigate in this paper the impact of such refactoring activities on component relationships. We analyze two aspect-refactoring projects to determine circumstances when such activities are effective at reducing component relationships and when they are not. We measure two kinds of relationships between components, use and clone relations.
We compare how these metrics changed between the
original and the refactored system. Our findings indicate that aspect-oriented refactoring is successful in improving the modularity and complexity of the base code. However, we obtain mixed results when aspects are accounted for. Based on these results, we also discuss constraints to the technology as well as other design considerations that may limit the effectiveness of aspect-oriented refactoring on actual
systems. 

備考(Remarks) Co author: Harvey Siy, Norihiro Yoshida, Masami Noro, Katsuro Inoue 

2009  Assessing the Impact of Framework Changes Using Component Ranking  共著   
Proceedings of 25th IEEE International Conference on Software Maintenance  , pp.189-198  , 2009/9   

概要(Abstract) In this paper, we study the evolution of an application and its underlying framework to understand the information we can get through a multi-version use relation analysis. We use component rank changes to measure this impact. We use component ranking to identify the core components in each framework version.
We also confirm that upgrading to the new framework version has an impact to a component rank
of the entire system and the framework, and this impact not only involves components which use the framework directly, but also other indirectly-related components. Finally, we also confirm that there is a difference in the growth of use relations between
application and framework. 

備考(Remarks) Co author: Harvey Siy, Masami Noro, Katsuro Inoue 

2009  Software Component Recommendation Using Collaborative Filtering  共著   
Proceedings of 2009 ICSE Workshop on Search-Driven Development Users, Infrastructure, Tools and Evaluation  , pp.17-20  , 2009/5   

概要(Abstract) Software component retrieval systems are widely used to retrieve reusable software components. This paper proposes recommendation system integrated into software component retrieval system based on collaborative filtering. Our system uses browsing history to recommend relevant components to users. We also conducted a case study using programming tasks and found that our system enables users to efficiently retrieve reusable components. 

備考(Remarks) Co.author:Makoto Ichii, Yasuhiro Hayase, Tetsuo Yamamoto, Katsuro Inoue 

2008  ソフトウェア開発を支援するソフトウェア部品検索システム  単著   
ソフトウェアエンジニアリング最前線2008 /ソフトウェアエンジニアリングシンポジウム2008  , 近代科学社発行  , pp.25-32  , 2008/08   

概要(Abstract) ソフトウェアの大まかな処理の流れや全体像を理解する,新たなソフトウェアを構築する際に既存の部品を再利用するなど,過去に作られたソフトウェア(の生成物)から情報を取り出し,理解支援や省力化に活用する機会は非常に多い。ソフトウェアに対して検索を行い,必要な情報を提示するという研究は20〜30 年前から常に挑戦的な研究分野として扱われてきており,今もその状況は変わらない。現在までに,非常に多くのソフトウェアライブラリが構築され,それを利用した検索手法が提案されてきた。本論文では,Java を対象としたソフトウェア部品検索システムSPARS-J を中心に,ソフトウェア部品検索に関する手法を紹介すると共に,今後の部品検索システムの発展がどのような方向性となるであろうかを考察する。 

備考(Remarks) 単著:ソフトウェアエンジニアリングシンポジウム2008(2008年9月)にて発表 

2008  開発履歴中のソースコードを対象とした更新の重要度を評価する手法の提案  共著   
電子情報通信学会論文誌D-I  , 電子情報通信学会  , VolJ91-D-I, No.4  , pp.945-955  , 2008/04   

概要(Abstract) 開発対象となるソフトウェアが大規模化するにつれて,進捗を把握し管理を適切に行うことが,極めて重要な要素となった.開発途中の生成物からLOCなどのメトリクスを抽出し,管理に利用している場面は多くみられる.しかし,開発中のソフトウェアに重大な影響を与える更新を抽出するには,LOCなどだけでは不十分で,更新履歴から変更内容を確認し,それによって生じる変化を理解する必要がある.
本論文では,ソフトウェア部品間の利用関係の変化の度合いを定量化することで,利用関係の変化という観点で更新履歴の中から重大な影響を与えた更新を抽出する手法を提案する.定量化においては,部品間の利用関係に基づいた順位であるコンポーネントランクを用い,更新前後間での各部品の順位の変動を評価基準とする.提案手法に基づきシステムを開発し実際のオープンソースプロジェクトに適用したところ,大規模な機能追加の他に,コア部品に対する機能追加や,コードの作り直し,リファクタリングなどのメンテナンス作業が抽出できた.これらの更新は,LOCの変化量が少ないものも多く,提案手法はこれらの更新作業の抽出に有益であると考えられる. 

備考(Remarks) 共著者:横森 励士, 野呂 昌満, 井上 克郎 

Page: [<<PREV] [1] [2] [3] [4] [NEXT>>]