首页 > 最新文献

Workshop on Emerging Trends in Software Metrics最新文献

英文 中文
The fractal dimension metric and its use to assess object-oriented software quality 分形维数及其在面向对象软件质量评价中的应用
Pub Date : 2011-05-24 DOI: 10.1145/1985374.1985391
I. Turnu, G. Concas, M. Marchesi, R. Tonelli
We present a study were software systems are considered as complex networks which have a self-similar structure under a length-scale transformation. On such complex software networks we computed a self-similar coefficient, also known as fractal dimension, using "the box counting method". We analyzed various releases of the publically available Eclipse software systems, calculating the fractal dimension for twenty sub-projects, randomly chosen, for every release, as well as for each release as a whole. Our results display an overall consistency among the sub-projects and among all the analyzed releases. We found a very good correlation between the fractal dimension and the number of bugs for Eclipse and for twenty sub-projects. Since the fractal dimension is just a scalar number that characterizes a whole system, while complexity and quality metrics are in general computed on every system module, this result suggests that the fractal dimension could be considered as a global quality metric for large software systems. Our results need however to be confirmed for other large software systems.
我们提出了一项研究,认为软件系统是一个复杂的网络,在长度尺度变换下具有自相似结构。在这种复杂的软件网络上,我们使用“盒计数法”计算了一个自相似系数,也称为分形维数。我们分析了公开可用的Eclipse软件系统的各种版本,计算了20个子项目的分形维数,这些子项目是随机选择的,针对每个版本,以及作为一个整体的每个版本。我们的结果显示了子项目和所有分析版本之间的总体一致性。我们发现分形维数与Eclipse和20个子项目的bug数量之间有很好的相关性。由于分形维数只是表征整个系统的标量数,而复杂性和质量度量通常是在每个系统模块上计算的,因此该结果表明分形维数可以被认为是大型软件系统的全局质量度量。然而,我们的结果需要在其他大型软件系统中得到证实。
{"title":"The fractal dimension metric and its use to assess object-oriented software quality","authors":"I. Turnu, G. Concas, M. Marchesi, R. Tonelli","doi":"10.1145/1985374.1985391","DOIUrl":"https://doi.org/10.1145/1985374.1985391","url":null,"abstract":"We present a study were software systems are considered as complex networks which have a self-similar structure under a length-scale transformation. On such complex software networks we computed a self-similar coefficient, also known as fractal dimension, using \"the box counting method\".\u0000 We analyzed various releases of the publically available Eclipse software systems, calculating the fractal dimension for twenty sub-projects, randomly chosen, for every release, as well as for each release as a whole. Our results display an overall consistency among the sub-projects and among all the analyzed releases.\u0000 We found a very good correlation between the fractal dimension and the number of bugs for Eclipse and for twenty sub-projects. Since the fractal dimension is just a scalar number that characterizes a whole system, while complexity and quality metrics are in general computed on every system module, this result suggests that the fractal dimension could be considered as a global quality metric for large software systems. Our results need however to be confirmed for other large software systems.","PeriodicalId":103819,"journal":{"name":"Workshop on Emerging Trends in Software Metrics","volume":"114 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2011-05-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122956041","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 4
Analyzing tool usage to understand to what extent experts change their activities when mentoring 分析工具的使用情况,以了解专家在指导时改变其活动的程度
Pub Date : 2011-05-24 DOI: 10.1145/1985374.1985380
P. Abrahamsson, Ilenia Fronza, Jelena Vlasenko
Automated In-Process Software Engineering Measurement and Analysis (AISEMA) systems represent a major advancement in tracking non-invasively the activities of developers. We have built on the top of an AISEMA system a model that enables to understand better how the tools are used in practical real-life development settings. In this work we evaluate to what extent experienced developers change their activities during mentoring activities in Pair Programming (PP) and, in this case, how long this effect can be observed. We compare how the experienced developers use the tools when working with other experts and when with new developers. The results indicate that there is a notable difference in the way the tools are used between the experts working together and the experts mentoring the new developers that have just joined the team. Moreover, over time the difference between pairs of experts and mixed pairs (experts and novices) working together becomes almost unnoticeable.
自动化过程中软件工程测量和分析(AISEMA)系统代表了跟踪非侵入性开发人员活动的主要进步。我们在AISEMA系统的基础上建立了一个模型,使我们能够更好地理解这些工具是如何在实际的实际开发环境中使用的。在这项工作中,我们评估有经验的开发人员在结对编程(PP)的指导活动中改变他们的活动的程度,在这种情况下,这种影响可以观察到多长时间。我们比较了经验丰富的开发人员在与其他专家合作和与新开发人员合作时如何使用这些工具。结果表明,在一起工作的专家和指导刚刚加入团队的新开发人员的专家之间,使用工具的方式有显著的不同。此外,随着时间的推移,专家对和混合对(专家和新手)一起工作之间的差异几乎变得不明显。
{"title":"Analyzing tool usage to understand to what extent experts change their activities when mentoring","authors":"P. Abrahamsson, Ilenia Fronza, Jelena Vlasenko","doi":"10.1145/1985374.1985380","DOIUrl":"https://doi.org/10.1145/1985374.1985380","url":null,"abstract":"Automated In-Process Software Engineering Measurement and Analysis (AISEMA) systems represent a major advancement in tracking non-invasively the activities of developers. We have built on the top of an AISEMA system a model that enables to understand better how the tools are used in practical real-life development settings. In this work we evaluate to what extent experienced developers change their activities during mentoring activities in Pair Programming (PP) and, in this case, how long this effect can be observed. We compare how the experienced developers use the tools when working with other experts and when with new developers. The results indicate that there is a notable difference in the way the tools are used between the experts working together and the experts mentoring the new developers that have just joined the team. Moreover, over time the difference between pairs of experts and mixed pairs (experts and novices) working together becomes almost unnoticeable.","PeriodicalId":103819,"journal":{"name":"Workshop on Emerging Trends in Software Metrics","volume":"16 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2011-05-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129603978","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 2
Data quality: cinderella at the software metrics ball? 数据质量:软件度量舞会上的灰姑娘?
Pub Date : 2011-05-24 DOI: 10.1145/1985374.1985376
M. Shepperd
In this keynote I explore what exactly do we mean by data quality, techniques to assess data quality and the very significant challenges that poor data quality can pose. I believe we neglect data quality at our peril since - whether we like it or not - our research results are founded upon data and our assumptions that data quality issues do not confound our results. A systematic review of the literature suggests that it is a minority practice to even explicitly discuss data quality. I therefore suggest that this topic should become a higher priority amongst empirical software engineering researchers.
在这个主题演讲中,我将探讨数据质量的确切含义、评估数据质量的技术以及糟糕的数据质量可能带来的重大挑战。我相信我们忽视数据质量是在我们的危险之中,因为——不管我们喜欢与否——我们的研究结果是建立在数据和我们假设数据质量问题不会混淆我们的结果的基础上的。对文献的系统回顾表明,甚至明确讨论数据质量都是少数人的做法。因此,我建议这个主题应该成为经验软件工程研究人员优先考虑的问题。
{"title":"Data quality: cinderella at the software metrics ball?","authors":"M. Shepperd","doi":"10.1145/1985374.1985376","DOIUrl":"https://doi.org/10.1145/1985374.1985376","url":null,"abstract":"In this keynote I explore what exactly do we mean by data quality, techniques to assess data quality and the very significant challenges that poor data quality can pose. I believe we neglect data quality at our peril since - whether we like it or not - our research results are founded upon data and our assumptions that data quality issues do not confound our results. A systematic review of the literature suggests that it is a minority practice to even explicitly discuss data quality. I therefore suggest that this topic should become a higher priority amongst empirical software engineering researchers.","PeriodicalId":103819,"journal":{"name":"Workshop on Emerging Trends in Software Metrics","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2011-05-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"131003302","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 14
Integrating quality models and static analysis for comprehensive quality assessment 综合质量评价的质量模型与静态分析相结合
Pub Date : 2011-05-24 DOI: 10.1145/1985374.1985378
K. Lochmann, L. Heinemann
To assess the quality of software, two ingredients are available today: (1) quality models defining abstract quality characteristics and (2) code analysis tools providing a large variety of metrics. However, there exists a gap between these two worlds. The quality attributes defined in quality models are too abstract to be operationalized. On the other side, the aggregation of the results of static code analysis tools remains a challenge. We address these problems by defining a quality model based on an explicit meta-model. It allows to operationalize quality models by defining how metrics calculated by tools are aggregated. Furthermore, we propose a new approach for normalizing the results of rule-based code analysis tools, which uses the information on the structure of the source code in the quality model. We evaluate the quality model by providing tool support for both developing quality models and conducting automatic quality assessments. Our results indicate that large quality models can be built based on our meta-model. The automatic assessment shows a high correlation between the automatic assessment and an expert-based ranking.
为了评估软件的质量,今天有两个要素可用:(1)定义抽象质量特征的质量模型,(2)提供大量度量标准的代码分析工具。然而,这两个世界之间存在着差距。质量模型中定义的质量属性过于抽象,无法实现。另一方面,静态代码分析工具的结果聚合仍然是一个挑战。我们通过定义基于显式元模型的质量模型来解决这些问题。它允许通过定义工具计算的度量是如何聚合的来实现质量模型的可操作性。此外,我们提出了一种新的方法来规范化基于规则的代码分析工具的结果,该方法使用了质量模型中源代码结构的信息。我们通过为开发质量模型和执行自动质量评估提供工具支持来评估质量模型。我们的结果表明,基于我们的元模型可以建立大质量的模型。自动评估结果显示,自动评估结果与基于专家的排名结果高度相关。
{"title":"Integrating quality models and static analysis for comprehensive quality assessment","authors":"K. Lochmann, L. Heinemann","doi":"10.1145/1985374.1985378","DOIUrl":"https://doi.org/10.1145/1985374.1985378","url":null,"abstract":"To assess the quality of software, two ingredients are available today: (1) quality models defining abstract quality characteristics and (2) code analysis tools providing a large variety of metrics. However, there exists a gap between these two worlds. The quality attributes defined in quality models are too abstract to be operationalized. On the other side, the aggregation of the results of static code analysis tools remains a challenge. We address these problems by defining a quality model based on an explicit meta-model. It allows to operationalize quality models by defining how metrics calculated by tools are aggregated. Furthermore, we propose a new approach for normalizing the results of rule-based code analysis tools, which uses the information on the structure of the source code in the quality model. We evaluate the quality model by providing tool support for both developing quality models and conducting automatic quality assessments. Our results indicate that large quality models can be built based on our meta-model. The automatic assessment shows a high correlation between the automatic assessment and an expert-based ranking.","PeriodicalId":103819,"journal":{"name":"Workshop on Emerging Trends in Software Metrics","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2011-05-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124404596","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 14
Linking software design metrics to component change-proneness 将软件设计指标与组件变更倾向联系起来
Pub Date : 2011-05-24 DOI: 10.1145/1985374.1985384
C. Ingram, S. Riddle
One technique from value-based software engineering involves prioritising the system and selectively applying time-consuming techniques (such as traceability) in order to maximise return on investment. This prioritisation could be based on predicted change-proneness of code modules, if a sufficiently accurate prediction can be achieved. Several previous studies have examined links between software change-proneness and software metrics such as size and complexity. However, conclusions differ as to the strength of the relationships. We present here a new case study project, extracting a range of complexity values from the code modules and testing for the existence of a significant link between change-proneness and complexity. We find only limited evidence of a linear relationship, but analysis using other statistical techniques does reveal some other significant links.
来自基于价值的软件工程的一种技术包括对系统进行优先级排序,并有选择地应用耗时的技术(例如可追溯性),以便最大化投资回报。这种优先级可以基于预测的代码模块的变化倾向,如果可以实现足够准确的预测。之前的一些研究已经检查了软件变更倾向和软件度量(如大小和复杂性)之间的联系。然而,关于这种关系的强度,结论是不同的。我们在这里提出了一个新的案例研究项目,从代码模块中提取了一系列复杂性值,并测试了变更倾向和复杂性之间存在的重要联系。我们只发现线性关系的有限证据,但使用其他统计技术的分析确实揭示了一些其他重要的联系。
{"title":"Linking software design metrics to component change-proneness","authors":"C. Ingram, S. Riddle","doi":"10.1145/1985374.1985384","DOIUrl":"https://doi.org/10.1145/1985374.1985384","url":null,"abstract":"One technique from value-based software engineering involves prioritising the system and selectively applying time-consuming techniques (such as traceability) in order to maximise return on investment. This prioritisation could be based on predicted change-proneness of code modules, if a sufficiently accurate prediction can be achieved. Several previous studies have examined links between software change-proneness and software metrics such as size and complexity. However, conclusions differ as to the strength of the relationships. We present here a new case study project, extracting a range of complexity values from the code modules and testing for the existence of a significant link between change-proneness and complexity. We find only limited evidence of a linear relationship, but analysis using other statistical techniques does reveal some other significant links.","PeriodicalId":103819,"journal":{"name":"Workshop on Emerging Trends in Software Metrics","volume":"25 2 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2011-05-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122507030","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 4
Insights into component testing process 对组件测试过程的洞察
Pub Date : 2011-05-24 DOI: 10.1145/1985374.1985382
Vikrant S. Kaulgud, V. Sharma
Effective component testing (or commonly termed as Unit Testing) is important to control defect slippage into the testing stage. Often testing teams lack in-process visibility into the effectiveness of ongoing component testing. Using project data such as code coverage and schedule and effort estimates, we generate temporal and rate-based insights into component testing effectiveness. A simple composite metric is used for measuring and forecasting the health of the component testing process. The early warning signals, based on the forecast and associated insights, lead teams to take proactive actions for improving component testing. In our ongoing experimental studies, we have observed that use of these insights cause a substantial reduction in defect slippage.
有效的组件测试(或者通常称为单元测试)对于控制缺陷滑入测试阶段非常重要。通常,测试团队对正在进行的组件测试的有效性缺乏过程中的可见性。使用项目数据,如代码覆盖率、进度和工作量估算,我们生成了对组件测试有效性的时间和基于速率的洞察。使用一个简单的复合度量来测量和预测组件测试过程的运行状况。早期的预警信号,基于预测和相关的见解,引导团队采取积极的行动来改进组件测试。在我们正在进行的实验研究中,我们已经观察到使用这些见解导致缺陷滑移的实质性减少。
{"title":"Insights into component testing process","authors":"Vikrant S. Kaulgud, V. Sharma","doi":"10.1145/1985374.1985382","DOIUrl":"https://doi.org/10.1145/1985374.1985382","url":null,"abstract":"Effective component testing (or commonly termed as Unit Testing) is important to control defect slippage into the testing stage. Often testing teams lack in-process visibility into the effectiveness of ongoing component testing. Using project data such as code coverage and schedule and effort estimates, we generate temporal and rate-based insights into component testing effectiveness. A simple composite metric is used for measuring and forecasting the health of the component testing process. The early warning signals, based on the forecast and associated insights, lead teams to take proactive actions for improving component testing. In our ongoing experimental studies, we have observed that use of these insights cause a substantial reduction in defect slippage.","PeriodicalId":103819,"journal":{"name":"Workshop on Emerging Trends in Software Metrics","volume":"94 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2011-05-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"115903939","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 4
By no means: a study on aggregating software metrics 绝不是:关于聚合软件度量的研究
Pub Date : 2011-05-24 DOI: 10.1145/1985374.1985381
Bogdan Vasilescu, Alexander Serebrenik, M. Brand
Fault prediction models usually employ software metrics which were previously shown to be a strong predictor for defects, e.g., SLOC. However, metrics are usually defined on a microlevel (method, class, package), and should therefore be aggregated in order to provide insights in the evolution at the macro-level (system). In addition to traditional aggregation techniques such as the mean, median, or sum, recently econometric aggregation techniques, such as the Gini, Theil, and Hoover indices have been proposed. In this paper we wish to understand whether the aggregation technique influences the presence and strength of the relation between SLOC and defects. Our results indicate that correlation is not strong, and is influenced by the aggregation technique.
故障预测模型通常使用软件度量,这些度量以前被证明是缺陷的强大预测器,例如SLOC。然而,度量标准通常是在微观层面(方法、类、包)上定义的,因此应该进行汇总,以便在宏观层面(系统)上提供对演进的洞察。除了传统的聚合技术,如平均值、中位数或总和,最近也提出了计量经济学聚合技术,如基尼系数、泰尔指数和胡佛指数。在本文中,我们希望了解聚合技术是否影响SLOC和缺陷之间关系的存在和强度。我们的结果表明,相关性不强,并受到聚合技术的影响。
{"title":"By no means: a study on aggregating software metrics","authors":"Bogdan Vasilescu, Alexander Serebrenik, M. Brand","doi":"10.1145/1985374.1985381","DOIUrl":"https://doi.org/10.1145/1985374.1985381","url":null,"abstract":"Fault prediction models usually employ software metrics which were previously shown to be a strong predictor for defects, e.g., SLOC. However, metrics are usually defined on a microlevel (method, class, package), and should therefore be aggregated in order to provide insights in the evolution at the macro-level (system). In addition to traditional aggregation techniques such as the mean, median, or sum, recently econometric aggregation techniques, such as the Gini, Theil, and Hoover indices have been proposed. In this paper we wish to understand whether the aggregation technique influences the presence and strength of the relation between SLOC and defects. Our results indicate that correlation is not strong, and is influenced by the aggregation technique.","PeriodicalId":103819,"journal":{"name":"Workshop on Emerging Trends in Software Metrics","volume":"2 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2011-05-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123222365","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 43
An empirical evaluation of coupling metrics on aspect-oriented programs 对面向方面程序的耦合度量的经验评价
Pub Date : 2010-05-04 DOI: 10.1145/1809223.1809231
Rachel Burrows, F. Ferrari, Alessandro F. Garcia, François Taïani
Coupling metrics received increased recognition by object-oriented (OO) software developers when they were found to be indicators of important quality attributes, such as fault-proneness. However, there is no consensus on which coupling metrics are effective quality indicators for emerging development paradigms, such as Aspect-Oriented Programming (AOP). AOP aims to improve software quality by providing significantly different decomposition mechanisms, such as pointcut, advice and intertype declarations. Therefore, it is not obvious if quality indicators for AOP can be derived from direct extensions of classical OO metrics. However, empirical studies of AOP do often rely on classical coupling metrics. Despite the recent adoption of AOP in industrial projects, coupling metrics have been rarely evaluated as useful indicators of fault-proneness in this context. This paper analyses the effectiveness of coupling metrics as indicators of fault-proneness in aspect-oriented (AO) systems. We collected faults from several releases of a real-world AO system. We applied and compared existing metrics for coupling and other internal attributes. We have also considered a novel metric that quantifies specific dependencies in AO software not captured by existing metrics. The results show that coupling metrics, which are not directives of object-oriented metrics, tended to be superior indicators of fault-proneness.
当耦合度量被发现是重要的质量属性(如错误倾向)的指示器时,面向对象(OO)软件开发人员对耦合度量的认可增加了。然而,对于哪种耦合度量是新兴开发范例(例如面向方面编程(AOP))的有效质量指标,还没有达成共识。AOP的目标是通过提供显著不同的分解机制来提高软件质量,比如切入点、通知和类型间声明。因此,AOP的质量指标是否可以从经典OO度量的直接扩展中派生出来并不明显。然而,AOP的实证研究经常依赖于经典的耦合度量。尽管最近在工业项目中采用了AOP,但是耦合度量在这种情况下很少被评估为有用的故障倾向指示器。本文分析了耦合度量在面向方面系统中作为故障倾向性指标的有效性。我们从一个真实的AO系统的几个版本中收集了错误。我们应用并比较了耦合和其他内部属性的现有度量。我们还考虑了一种新的度量,它量化了AO软件中没有被现有度量捕获的特定依赖关系。结果表明,耦合度量(不是面向对象度量的指示)往往是更好的故障倾向指标。
{"title":"An empirical evaluation of coupling metrics on aspect-oriented programs","authors":"Rachel Burrows, F. Ferrari, Alessandro F. Garcia, François Taïani","doi":"10.1145/1809223.1809231","DOIUrl":"https://doi.org/10.1145/1809223.1809231","url":null,"abstract":"Coupling metrics received increased recognition by object-oriented (OO) software developers when they were found to be indicators of important quality attributes, such as fault-proneness. However, there is no consensus on which coupling metrics are effective quality indicators for emerging development paradigms, such as Aspect-Oriented Programming (AOP). AOP aims to improve software quality by providing significantly different decomposition mechanisms, such as pointcut, advice and intertype declarations. Therefore, it is not obvious if quality indicators for AOP can be derived from direct extensions of classical OO metrics. However, empirical studies of AOP do often rely on classical coupling metrics. Despite the recent adoption of AOP in industrial projects, coupling metrics have been rarely evaluated as useful indicators of fault-proneness in this context. This paper analyses the effectiveness of coupling metrics as indicators of fault-proneness in aspect-oriented (AO) systems. We collected faults from several releases of a real-world AO system. We applied and compared existing metrics for coupling and other internal attributes. We have also considered a novel metric that quantifies specific dependencies in AO software not captured by existing metrics. The results show that coupling metrics, which are not directives of object-oriented metrics, tended to be superior indicators of fault-proneness.","PeriodicalId":103819,"journal":{"name":"Workshop on Emerging Trends in Software Metrics","volume":"10 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2010-05-04","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123564416","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 46
Improving developer activity metrics with issue tracking annotations 使用问题跟踪注释改进开发人员活动指标
Pub Date : 2010-05-04 DOI: 10.1145/1809223.1809234
Andrew Meneely, Mackenzie Corcoran, L. Williams
Understanding and measuring how groups of developers collaborate on software projects can provide valuable insight into software quality and the software development process. Current practices of measuring developer collaboration (e.g. with social network analysis) usually employ metrics based on version control change log data to determine who is working on which part of the system. Version control change logs, however, do not tell the whole story. Information about the collaborative problem-solving process is also documented in the issue tracking systems that record solutions to failures, feature requests, or other development tasks. To enrich the data gained from version control change logs, we propose two annotations to be used in issue tracking systems: solution originator and solution approver. We examined the online discussions of 602 issues from the OpenMRS healthcare web application, annotating which developers were the originators of the solution to the issue, or were the approvers of the solution. We used these annotations to augment the version control change logs and found 47 more contributors to the OpenMRS project than the original 40 found in the version control change logs. Applying social network analysis to the data, we found that central developers in a developer network have a high likelihood of being approvers. These results indicate that using our two issue tracking annotations identify project collaborators that version control change logs miss. However, in the absence of our annotations, developer network centrality can be used as an estimate of the project's solution approvers. This improvement in developer activity metrics provides a valuable connection between what we can measure in the project development artifacts and the team's problem-solving process.
理解和度量开发人员团队如何在软件项目上协作,可以为软件质量和软件开发过程提供有价值的见解。当前度量开发人员协作的实践(例如,使用社会网络分析)通常使用基于版本控制更改日志数据的度量来确定谁在系统的哪个部分工作。然而,版本控制更改日志并不能说明全部情况。关于协作解决问题过程的信息也记录在记录故障、特性请求或其他开发任务的解决方案的问题跟踪系统中。为了丰富从版本控制变更日志中获得的数据,我们建议在问题跟踪系统中使用两种注释:解决方案发起人和解决方案审批者。我们检查了来自OpenMRS医疗保健web应用程序的602个问题的在线讨论,并注释了哪些开发人员是问题解决方案的发起者,哪些开发人员是解决方案的审批者。我们使用这些注释来扩充版本控制变更日志,发现OpenMRS项目的贡献者比版本控制变更日志中原来的40个多了47个。通过对数据进行社交网络分析,我们发现开发者网络中的核心开发者更有可能成为审批者。这些结果表明,使用我们的两个问题跟踪注释可以识别版本控制更改日志遗漏的项目合作者。然而,在没有我们的注释的情况下,开发人员网络中心性可以用作项目解决方案审批者的估计。开发人员活动度量的改进提供了我们在项目开发工件和团队问题解决过程中可以度量的内容之间的有价值的联系。
{"title":"Improving developer activity metrics with issue tracking annotations","authors":"Andrew Meneely, Mackenzie Corcoran, L. Williams","doi":"10.1145/1809223.1809234","DOIUrl":"https://doi.org/10.1145/1809223.1809234","url":null,"abstract":"Understanding and measuring how groups of developers collaborate on software projects can provide valuable insight into software quality and the software development process. Current practices of measuring developer collaboration (e.g. with social network analysis) usually employ metrics based on version control change log data to determine who is working on which part of the system. Version control change logs, however, do not tell the whole story. Information about the collaborative problem-solving process is also documented in the issue tracking systems that record solutions to failures, feature requests, or other development tasks. To enrich the data gained from version control change logs, we propose two annotations to be used in issue tracking systems: solution originator and solution approver. We examined the online discussions of 602 issues from the OpenMRS healthcare web application, annotating which developers were the originators of the solution to the issue, or were the approvers of the solution. We used these annotations to augment the version control change logs and found 47 more contributors to the OpenMRS project than the original 40 found in the version control change logs. Applying social network analysis to the data, we found that central developers in a developer network have a high likelihood of being approvers. These results indicate that using our two issue tracking annotations identify project collaborators that version control change logs miss. However, in the absence of our annotations, developer network centrality can be used as an estimate of the project's solution approvers. This improvement in developer activity metrics provides a valuable connection between what we can measure in the project development artifacts and the team's problem-solving process.","PeriodicalId":103819,"journal":{"name":"Workshop on Emerging Trends in Software Metrics","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2010-05-04","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129589915","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 25
Metrics-based detection of micro patterns 基于度量的微模式检测
Pub Date : 2010-05-04 DOI: 10.1145/1809223.1809229
S. Maggioni, F. Fontana
Micro patterns are class-level patterns which aim to identify and formalize common programming techniques. A type (either a class or an interface) is an instance of a micro pattern if and only if all of its methods and/or attributes satisfy the constraints specified by the micro pattern. We suggest a novel approach to the detection of micro patterns which is aimed to identify types that are very close and similar to a correct micro pattern implementation, even if some of the methods and/or attributes of the type do not comply with the constraints defined by the micro pattern. The new interpretation is based on the number of attributes (NOA) and the number of methods (NOM) of a type. The identification of types similar to micro patterns allows the analysis of software systems along various releases, as well as the identification of possible critical classes that can't be detected with a precise matching approach.
微模式是类级模式,旨在识别和形式化通用编程技术。当且仅当其所有方法和/或属性满足微模式指定的约束时,类型(类或接口)就是微模式的实例。我们提出了一种检测微模式的新方法,旨在识别与正确的微模式实现非常接近和相似的类型,即使该类型的某些方法和/或属性不符合微模式定义的约束。新的解释是基于一个类型的属性数(NOA)和方法数(NOM)。与微模式相似的类型识别允许对不同版本的软件系统进行分析,以及识别无法用精确匹配方法检测到的可能的关键类。
{"title":"Metrics-based detection of micro patterns","authors":"S. Maggioni, F. Fontana","doi":"10.1145/1809223.1809229","DOIUrl":"https://doi.org/10.1145/1809223.1809229","url":null,"abstract":"Micro patterns are class-level patterns which aim to identify and formalize common programming techniques. A type (either a class or an interface) is an instance of a micro pattern if and only if all of its methods and/or attributes satisfy the constraints specified by the micro pattern.\u0000 We suggest a novel approach to the detection of micro patterns which is aimed to identify types that are very close and similar to a correct micro pattern implementation, even if some of the methods and/or attributes of the type do not comply with the constraints defined by the micro pattern. The new interpretation is based on the number of attributes (NOA) and the number of methods (NOM) of a type. The identification of types similar to micro patterns allows the analysis of software systems along various releases, as well as the identification of possible critical classes that can't be detected with a precise matching approach.","PeriodicalId":103819,"journal":{"name":"Workshop on Emerging Trends in Software Metrics","volume":"34 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2010-05-04","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129407360","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 11
期刊
Workshop on Emerging Trends in Software Metrics
全部 Acc. Chem. Res. ACS Applied Bio Materials ACS Appl. Electron. Mater. ACS Appl. Energy Mater. ACS Appl. Mater. Interfaces ACS Appl. Nano Mater. ACS Appl. Polym. Mater. ACS BIOMATER-SCI ENG ACS Catal. ACS Cent. Sci. ACS Chem. Biol. ACS Chemical Health & Safety ACS Chem. Neurosci. ACS Comb. Sci. ACS Earth Space Chem. ACS Energy Lett. ACS Infect. Dis. ACS Macro Lett. ACS Mater. Lett. ACS Med. Chem. Lett. ACS Nano ACS Omega ACS Photonics ACS Sens. ACS Sustainable Chem. Eng. ACS Synth. Biol. Anal. Chem. BIOCHEMISTRY-US Bioconjugate Chem. BIOMACROMOLECULES Chem. Res. Toxicol. Chem. Rev. Chem. Mater. CRYST GROWTH DES ENERG FUEL Environ. Sci. Technol. Environ. Sci. Technol. Lett. Eur. J. Inorg. Chem. IND ENG CHEM RES Inorg. Chem. J. Agric. Food. Chem. J. Chem. Eng. Data J. Chem. Educ. J. Chem. Inf. Model. J. Chem. Theory Comput. J. Med. Chem. J. Nat. Prod. J PROTEOME RES J. Am. Chem. Soc. LANGMUIR MACROMOLECULES Mol. Pharmaceutics Nano Lett. Org. Lett. ORG PROCESS RES DEV ORGANOMETALLICS J. Org. Chem. J. Phys. Chem. J. Phys. Chem. A J. Phys. Chem. B J. Phys. Chem. C J. Phys. Chem. Lett. Analyst Anal. Methods Biomater. Sci. Catal. Sci. Technol. Chem. Commun. Chem. Soc. Rev. CHEM EDUC RES PRACT CRYSTENGCOMM Dalton Trans. Energy Environ. Sci. ENVIRON SCI-NANO ENVIRON SCI-PROC IMP ENVIRON SCI-WAT RES Faraday Discuss. Food Funct. Green Chem. Inorg. Chem. Front. Integr. Biol. J. Anal. At. Spectrom. J. Mater. Chem. A J. Mater. Chem. B J. Mater. Chem. C Lab Chip Mater. Chem. Front. Mater. Horiz. MEDCHEMCOMM Metallomics Mol. Biosyst. Mol. Syst. Des. Eng. Nanoscale Nanoscale Horiz. Nat. Prod. Rep. New J. Chem. Org. Biomol. Chem. Org. Chem. Front. PHOTOCH PHOTOBIO SCI PCCP Polym. Chem.
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
0
微信
客服QQ
Book学术公众号 扫码关注我们
反馈
×
意见反馈
请填写您的意见或建议
请填写您的手机或邮箱
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
现在去查看 取消
×
提示
确定
Book学术官方微信
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术
文献互助 智能选刊 最新文献 互助须知 联系我们:info@booksci.cn
Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。
Copyright © 2023 Book学术 All rights reserved.
ghs 京公网安备 11010802042870号 京ICP备2023020795号-1