摘要
针对需求与代码设计阶段分离及传统模型对变更影响程度缺乏定量描述等问题,从概率模型的角度提出一种基于条件随机场的软件变更影响分析方法(CRFCIA)。通过研究不同阶段软件构件及跟踪关系的特点,对软件实体依赖进行了建模分析,并在此基础上研究了变更传播过程,引入条件随机场模型,以传播序列的条件概率评分Pscore表征实体依赖链的受影响程度。实验结果表明,CRFCIA在求解影响集和评估变更影响程度上具有可行性与准确性。
Since the requirements and code design phases are usually separated and the lack of quantitative description of the change impact is common in traditional models,a software change impact analysis method based on conditional random fields( CRFCIA) is proposed from the perspective of probability model. In this paper,the dependencies are formally modeled by study of the characteristics of software component and the tracking relations in different stages,which is based on study of change propagation,and the conditional random fields model is introduced to characterize the influence of the dependency chain by the conditional probability score Pscore of the propagation sequence. Experimental result shows that CRFCIA is feasible and of accuracy in getting the impact set and assessing the impact of changes.
引文
[1] Asefa A Y,Hansson F. Investigation of Approaches for Change Impact Analysis and Facilitating Finding Reviewers in Testing Frameworks[J]. G9teborg:Chalmers University of Technology,2018.
[2] Sun Xiaobing,Leung Hareton,Li Bin,et al. Change Impact Analysis and Changeability Assessment for a Change Proposal:An Empirical Study[J]. Journal of Software and System,2014,96(10):51-60.
[3] Santelices R,Harrold M J. Probabilistic Slicing for Predictive Impact Analysis[J]. Georgia Institute of Technology,2010.
[4] Lehnert S. A Review of Software Change Impact Analysis[J]. Ilmenau University of Technology,2011.
[5] O'Neal J S. Analyzing The Impact of Changing Software Requirements:A Traceability-based Methodology[D].Clemson University. 2003.
[6] Hassine J,Rilling J,Hewitt J,et al. Change Impact Analysis for Requirement Evolution Using Use Case Maps[C]//Principles of Software Evolution,Eighth International Workshop on. IEEE,2005:81-90.
[7] Shiri M,Hassine J,Rilling J. A Requirement Level Modification Analysis Support Framework[C]//Software Evolvability,2007 Third International IEEE Workshop on. IEEE,2007:67-74.
[8] Lehnert S. Multiperspective Change Impact Analysis to Support Software Maintenance and Reengineering[D].University of Hamburg,2015.
[9]孙小兵,李斌,陈颖,等.软件修改影响分析研究与进展[J].电子学报,2014,42(12):2467-2476.(Sun Xiaobing,Li Bin,Chen Ying,et al. A Survey of Software Change Impact Analysis Techniques[J]. Acta Electronica Sinica,2014,42(12):2467-2476.)
[10] Arvanitou,E. M. Proposing and Empirically Validating Change Impact Analysis Metrics[D]. University of Groningen. 2018:257-258.
[11] Napoletano P,Colace F,De S M,et al. Text Classification Using a Graph of Terms[C]//Complex,Intelligent and Software Intensive Systems(CISIS),2012Sixth International Conference on. IEEE,2012:1030-1035.
[12]王明文,洪欢,江爱文,等.基于词重要性的信息检索图模型[J].中文信息学报,2016,30(4):134-141.(Wang Mingwen,Hong Huan,Jiang Aiwen,et al. An Information Retrieval Graph Model Based on Term Importance[J]. Journal of Chinese Information Processing,2016,30(4):134-141.)
[13] Lafferty J D,Mccallum A,Pereira F C N. Conditional Random Fields:Probabilistic Models for Segmenting and Labeling Sequence Data[C]//Eighteenth International Conference on Machine Learning. Morgan Kaufmann Publishers Inc. 2001:282-289.
[14] Sutton C,Mccallum A. An Introduction to Conditional Random Fields[J]. Foundations and Trendsin Machine Learning,2012,4(4):267-373.
[15] Zia H B,Raza A A,Athar A. Urdu Word Segmentation using Conditional Random Fields(CRFs)[J]. ar Xiv preprint ar Xiv:1806. 05432,2018.
[16] Ramya M M,Shoba L,Abhijith P. Named Entity Recognition for Kannada using Gazetteers List With Conditional Random Fields[J]. Journal of Computer Science,2018.