首页 > 最新文献

2018 IEEE International Conference on Software Maintenance and Evolution (ICSME)最新文献

英文 中文
Threats of Aggregating Software Repository Data 软件存储库数据聚合的威胁
Pub Date : 2018-09-01 DOI: 10.1109/ICSME.2018.00009
M. Robillard, M. Nassif, Shane McIntosh
This artifact is a data set generated as part of a study on the threats of aggregating software repository data, which includes information derived from the GitHub repositories of eight open-source projects.
该工件是作为聚合软件存储库数据的威胁研究的一部分生成的数据集,其中包括来自八个开源项目的GitHub存储库的信息。
{"title":"Threats of Aggregating Software Repository Data","authors":"M. Robillard, M. Nassif, Shane McIntosh","doi":"10.1109/ICSME.2018.00009","DOIUrl":"https://doi.org/10.1109/ICSME.2018.00009","url":null,"abstract":"This artifact is a data set generated as part of a study on the threats of aggregating software repository data, which includes information derived from the GitHub repositories of eight open-source projects.","PeriodicalId":6572,"journal":{"name":"2018 IEEE International Conference on Software Maintenance and Evolution (ICSME)","volume":"29 1","pages":"508-518"},"PeriodicalIF":0.0,"publicationDate":"2018-09-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"72834938","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
Search-Based Scheduling of Experiments in Continuous Deployment 连续部署中基于搜索的实验调度
Pub Date : 2018-09-01 DOI: 10.1109/ICSME.2018.00059
Gerald Schermann, P. Leitner
Continuous experimentation involves practices for testing new functionality on a small fraction of the user base in production environments. Running multiple experiments in parallel requires handling user assignments (i.e., which users are part of which experiments) carefully as experiments might overlap and influence each other. Furthermore, experiments are prone to change, get canceled, or are adjusted and restarted, and new ones are added regularly. We formulate this as an optimization problem, fostering the parallel execution of experiments and making sure that enough data is collected for every experiment avoiding overlapping experiments. We propose a genetic algorithm that is capable of (re-)scheduling experiments and compare with other search-based approaches (random sampling, local search, and simulated annealing). Our evaluation shows that our genetic implementation outperforms the other approaches by up to 19% regarding the fitness of the solutions identified and up to a factor three in execution time in our evaluation scenarios.
持续实验包括在生产环境中一小部分用户基础上测试新功能的实践。并行运行多个实验需要仔细处理用户分配(即,哪些用户是哪些实验的一部分),因为实验可能重叠并相互影响。此外,实验很容易发生变化,被取消,或调整和重新启动,并定期增加新的实验。我们将其表述为一个优化问题,促进实验的并行执行,并确保每个实验收集足够的数据,避免重复实验。我们提出了一种能够(重新)调度实验的遗传算法,并与其他基于搜索的方法(随机抽样,局部搜索和模拟退火)进行了比较。我们的评估表明,在确定的解决方案的适应度方面,我们的遗传实现比其他方法高出19%,在我们的评估场景中,执行时间高出3倍。
{"title":"Search-Based Scheduling of Experiments in Continuous Deployment","authors":"Gerald Schermann, P. Leitner","doi":"10.1109/ICSME.2018.00059","DOIUrl":"https://doi.org/10.1109/ICSME.2018.00059","url":null,"abstract":"Continuous experimentation involves practices for testing new functionality on a small fraction of the user base in production environments. Running multiple experiments in parallel requires handling user assignments (i.e., which users are part of which experiments) carefully as experiments might overlap and influence each other. Furthermore, experiments are prone to change, get canceled, or are adjusted and restarted, and new ones are added regularly. We formulate this as an optimization problem, fostering the parallel execution of experiments and making sure that enough data is collected for every experiment avoiding overlapping experiments. We propose a genetic algorithm that is capable of (re-)scheduling experiments and compare with other search-based approaches (random sampling, local search, and simulated annealing). Our evaluation shows that our genetic implementation outperforms the other approaches by up to 19% regarding the fitness of the solutions identified and up to a factor three in execution time in our evaluation scenarios.","PeriodicalId":6572,"journal":{"name":"2018 IEEE International Conference on Software Maintenance and Evolution (ICSME)","volume":"22 1","pages":"485-495"},"PeriodicalIF":0.0,"publicationDate":"2018-09-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"77987915","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}
引用次数: 6
On State Machine Mining from Embedded Control Software 基于嵌入式控制软件的状态机挖掘
Pub Date : 2018-09-01 DOI: 10.1109/ICSME.2018.00024
Wasim Said, Jochen Quante, R. Koschke
Program understanding is a time-consuming and tedious activity for software developers. Manually building abstractions from source code requires in-depth analysis of the code in the first place. Model mining can support program comprehension by semi-automatically extracting high-level models from code. One potentially helpful model is a state machine, which is an established formalism for specifying the behavior of a software component. There exist only few approaches for state machine mining, and they either deal with object-oriented systems or expect specific state implementation patterns. Both preconditions are usually not met by real-world embedded control software written in procedural languages. Other approaches extract only API protocols instead of the component's behavior. In this paper, we propose and evaluate several techniques that enable state machine mining from embedded control code: 1) We define criteria for state variables in procedural code based on an empirical study. This enables adaptation of an existing approach for extracting state machines from object-oriented software to embedded control code. 2) We present a refinement of the transition extraction process of that approach by removing infeasible transitions, which on average leads to more than 50% reduction of the number of transitions. 3) We evaluate two approaches to reduce the complexity of transition conditions. 4) An empirical study examines the limits of transition conditions' complexity that can still be understood by humans. These techniques and studies constitute major building blocks towards mining understandable state machines from embedded control software.
对于软件开发人员来说,程序理解是一项耗时且乏味的活动。从源代码手动构建抽象需要首先对代码进行深入分析。模型挖掘可以通过从代码中半自动地提取高级模型来支持程序理解。一个可能有用的模型是状态机,它是用于指定软件组件行为的既定形式。只有少数几种方法可以用于状态机挖掘,它们要么处理面向对象的系统,要么期望特定的状态实现模式。用过程语言编写的实际嵌入式控制软件通常不满足这两个前提条件。其他方法只提取API协议,而不提取组件的行为。在本文中,我们提出并评估了几种能够从嵌入式控制代码中挖掘状态机的技术:1)基于经验研究,我们定义了过程代码中状态变量的标准。这使得从面向对象软件中提取状态机到嵌入式控制代码的现有方法得以适应。2)我们对该方法的过渡提取过程进行了改进,去掉了不可行的过渡,平均减少了50%以上的过渡数量。3)我们评估了两种降低过渡条件复杂性的方法。4)一项实证研究考察了人类仍能理解的过渡条件复杂性的极限。这些技术和研究构成了从嵌入式控制软件中挖掘可理解状态机的主要构建块。
{"title":"On State Machine Mining from Embedded Control Software","authors":"Wasim Said, Jochen Quante, R. Koschke","doi":"10.1109/ICSME.2018.00024","DOIUrl":"https://doi.org/10.1109/ICSME.2018.00024","url":null,"abstract":"Program understanding is a time-consuming and tedious activity for software developers. Manually building abstractions from source code requires in-depth analysis of the code in the first place. Model mining can support program comprehension by semi-automatically extracting high-level models from code. One potentially helpful model is a state machine, which is an established formalism for specifying the behavior of a software component. There exist only few approaches for state machine mining, and they either deal with object-oriented systems or expect specific state implementation patterns. Both preconditions are usually not met by real-world embedded control software written in procedural languages. Other approaches extract only API protocols instead of the component's behavior. In this paper, we propose and evaluate several techniques that enable state machine mining from embedded control code: 1) We define criteria for state variables in procedural code based on an empirical study. This enables adaptation of an existing approach for extracting state machines from object-oriented software to embedded control code. 2) We present a refinement of the transition extraction process of that approach by removing infeasible transitions, which on average leads to more than 50% reduction of the number of transitions. 3) We evaluate two approaches to reduce the complexity of transition conditions. 4) An empirical study examines the limits of transition conditions' complexity that can still be understood by humans. These techniques and studies constitute major building blocks towards mining understandable state machines from embedded control software.","PeriodicalId":6572,"journal":{"name":"2018 IEEE International Conference on Software Maintenance and Evolution (ICSME)","volume":"124 1","pages":"138-148"},"PeriodicalIF":0.0,"publicationDate":"2018-09-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"89434361","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}
引用次数: 12
Reflexion Models for State Machine Extraction and Verification 状态机提取与验证的反射模型
Pub Date : 2018-09-01 DOI: 10.1109/ICSME.2018.00025
Wasim Said, Jochen Quante, R. Koschke
High-level design models are often used for describing the behavior or structure of a software system. It is generally much easier and more adequate to understand a software system on this level than on the level of individual code lines. Such models are also created by developers as they gain an understanding of the software. Unfortunately, these models often do not correspond to what is really in the code. Murphy et al. introduced the idea of reflexion models in 1995 to overcome this problem. Their approach is today widely used for architecture conformance checking and reconstruction. In this paper, we introduce reflexion models for state machines. Our approach allows to check the correspondence of a hypothetical state machine model with the code. It returns information about convergence, partial convergence, divergence, or absence of the specified states and transitions. Similar to the original reflexion model, the approach can be used for conformance checking as well as interactive reverse engineering of state machine models. We concentrate on the latter and show the potential of the approach in several case studies.
高级设计模型通常用于描述软件系统的行为或结构。一般来说,在这个层次上理解软件系统要比在单个代码行上理解软件系统容易得多,也更充分。这样的模型也是由开发人员在了解软件后创建的。不幸的是,这些模型通常与代码中的实际内容不相对应。Murphy等人在1995年引入了反射模型的思想来克服这个问题。他们的方法如今被广泛用于架构一致性检查和重建。本文介绍了状态机的反射模型。我们的方法允许检查假设状态机模型与代码的对应关系。它返回关于收敛、部分收敛、发散或不存在指定状态和转换的信息。与最初的反射模型类似,该方法可用于一致性检查以及状态机模型的交互式逆向工程。我们着重于后者,并在几个案例研究中展示了该方法的潜力。
{"title":"Reflexion Models for State Machine Extraction and Verification","authors":"Wasim Said, Jochen Quante, R. Koschke","doi":"10.1109/ICSME.2018.00025","DOIUrl":"https://doi.org/10.1109/ICSME.2018.00025","url":null,"abstract":"High-level design models are often used for describing the behavior or structure of a software system. It is generally much easier and more adequate to understand a software system on this level than on the level of individual code lines. Such models are also created by developers as they gain an understanding of the software. Unfortunately, these models often do not correspond to what is really in the code. Murphy et al. introduced the idea of reflexion models in 1995 to overcome this problem. Their approach is today widely used for architecture conformance checking and reconstruction. In this paper, we introduce reflexion models for state machines. Our approach allows to check the correspondence of a hypothetical state machine model with the code. It returns information about convergence, partial convergence, divergence, or absence of the specified states and transitions. Similar to the original reflexion model, the approach can be used for conformance checking as well as interactive reverse engineering of state machine models. We concentrate on the latter and show the potential of the approach in several case studies.","PeriodicalId":6572,"journal":{"name":"2018 IEEE International Conference on Software Maintenance and Evolution (ICSME)","volume":"63 1","pages":"149-159"},"PeriodicalIF":0.0,"publicationDate":"2018-09-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"80508724","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}
引用次数: 5
Cloned Buggy Code Detection in Practice Using Normalized Compression Distance 基于归一化压缩距离的克隆错误代码检测
Pub Date : 2018-09-01 DOI: 10.1109/ICSME.2018.00022
T. Ishio, Naoto Maeda, Kensuke Shibuya, Katsuro Inoue
Software developers often write similar source code fragments in a software product. Since such code fragments may include the same mistake, developers have to inspect code clones if they found a bug in their code. In this study, we developed a tool to detect clones of a faulty code fragment for a software company, since existing code clone detection tools do not fit the requirements of the company. The tool employs Normalized Compression Distance for source code comparison, because its definition is understandable for developers, and also it is easy to support multiple programming languages. We conducted two experiments using an existing research dataset and actual examples. Based on the evidence, the tool has been deployed in several projects in the company.
软件开发人员经常在软件产品中编写类似的源代码片段。由于这些代码片段可能包含相同的错误,如果开发人员在代码中发现错误,则必须检查代码克隆。在本研究中,我们为一家软件公司开发了一个工具来检测有缺陷的代码片段的克隆,因为现有的代码克隆检测工具不适合该公司的需求。该工具使用标准化压缩距离进行源代码比较,因为它的定义对开发人员来说是可以理解的,而且它很容易支持多种编程语言。我们使用现有的研究数据集和实际例子进行了两个实验。根据证据,该工具已在公司的几个项目中部署。
{"title":"Cloned Buggy Code Detection in Practice Using Normalized Compression Distance","authors":"T. Ishio, Naoto Maeda, Kensuke Shibuya, Katsuro Inoue","doi":"10.1109/ICSME.2018.00022","DOIUrl":"https://doi.org/10.1109/ICSME.2018.00022","url":null,"abstract":"Software developers often write similar source code fragments in a software product. Since such code fragments may include the same mistake, developers have to inspect code clones if they found a bug in their code. In this study, we developed a tool to detect clones of a faulty code fragment for a software company, since existing code clone detection tools do not fit the requirements of the company. The tool employs Normalized Compression Distance for source code comparison, because its definition is understandable for developers, and also it is easy to support multiple programming languages. We conducted two experiments using an existing research dataset and actual examples. Based on the evidence, the tool has been deployed in several projects in the company.","PeriodicalId":6572,"journal":{"name":"2018 IEEE International Conference on Software Maintenance and Evolution (ICSME)","volume":"3 3 1","pages":"591-594"},"PeriodicalIF":0.0,"publicationDate":"2018-09-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"83704449","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
Efficient, Evolutionary Security Analysis of Interacting Android Apps 交互Android应用的高效、进化安全分析
Pub Date : 2018-09-01 DOI: 10.1109/ICSME.2018.00044
H. Bagheri, Jianghao Wang, Jarod Aerts, S. Malek
In parallel with the increasing popularity of mobile software, an alarming escalation in the number and sophistication of security threats is observed on mobile platforms, remarkably Android as the dominant platform. Such mobile software, further, evolves incrementally, and especially so when being maintained after it has been deployed. Yet, most security analysis techniques lack the ability to efficiently respond to incremental system changes. Instead, every time the system changes, the entire security analysis has to be repeated from scratch, making it too expensive for practical use, given the frequency with which apps are updated, installed, and removed in such volatile environments as the Android ecosystem. To address this limitation, we present a novel technique, dubbed FLAIR, for efficient, yet formally precise, security analysis of Android apps in response to incremental system changes. Leveraging the fact that the changes are likely to impact only a small fraction of the prior analysis results, FLAIR recomputes the analysis only where required, thereby greatly improving analysis performance without sacrificing the soundness and completeness thereof. Our experimental results using numerous bundles of real-world apps corroborate that FLAIR can provide an order of magnitude speedup over prior techniques.
随着移动软件的日益普及,移动平台上安全威胁的数量和复杂性也出现了惊人的增长,尤其是Android成为了主导平台。此外,这种移动软件是逐步发展的,尤其是在部署之后进行维护时。然而,大多数安全分析技术缺乏有效响应增量系统更改的能力。相反,每次系统更改时,整个安全分析都必须从头开始重复,考虑到应用程序在Android生态系统这样不稳定的环境中更新、安装和删除的频率,这使得实际应用成本过高。为了解决这一限制,我们提出了一种名为FLAIR的新技术,用于对Android应用程序进行有效但形式上精确的安全分析,以响应增量系统更改。利用变更可能只影响先前分析结果的一小部分这一事实,FLAIR只在需要的地方重新计算分析,从而在不牺牲其可靠性和完整性的情况下大大提高分析性能。我们使用大量实际应用程序的实验结果证实,FLAIR可以提供比以前的技术一个数量级的加速。
{"title":"Efficient, Evolutionary Security Analysis of Interacting Android Apps","authors":"H. Bagheri, Jianghao Wang, Jarod Aerts, S. Malek","doi":"10.1109/ICSME.2018.00044","DOIUrl":"https://doi.org/10.1109/ICSME.2018.00044","url":null,"abstract":"In parallel with the increasing popularity of mobile software, an alarming escalation in the number and sophistication of security threats is observed on mobile platforms, remarkably Android as the dominant platform. Such mobile software, further, evolves incrementally, and especially so when being maintained after it has been deployed. Yet, most security analysis techniques lack the ability to efficiently respond to incremental system changes. Instead, every time the system changes, the entire security analysis has to be repeated from scratch, making it too expensive for practical use, given the frequency with which apps are updated, installed, and removed in such volatile environments as the Android ecosystem. To address this limitation, we present a novel technique, dubbed FLAIR, for efficient, yet formally precise, security analysis of Android apps in response to incremental system changes. Leveraging the fact that the changes are likely to impact only a small fraction of the prior analysis results, FLAIR recomputes the analysis only where required, thereby greatly improving analysis performance without sacrificing the soundness and completeness thereof. Our experimental results using numerous bundles of real-world apps corroborate that FLAIR can provide an order of magnitude speedup over prior techniques.","PeriodicalId":6572,"journal":{"name":"2018 IEEE International Conference on Software Maintenance and Evolution (ICSME)","volume":"2 1","pages":"357-368"},"PeriodicalIF":0.0,"publicationDate":"2018-09-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"83165653","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}
引用次数: 10
Linking Source Code to Untangled Change Intents 将源代码链接到未纠缠的更改意图
Pub Date : 2018-09-01 DOI: 10.1109/ICSME.2018.00047
Xiaoyu Liu, LiGuo Huang, Chuanyi Liu, Vincent Ng
Previous work [13] suggests that tangled changes (i.e., different change intents aggregated in one single commit message) could complicate tracing to different change tasks when developers manage software changes. Identifying links from changed source code to untangled change intents could help developers solve this problem. Manually identifying such links requires lots of experience and review efforts, however. Unfortunately, there is no automatic method that provides this capability. In this paper, we propose AutoCILink, which automatically identifies code to untangled change intent links with a pattern-based link identification system (AutoCILink-P) and a supervised learning-based link classification system (AutoCILink-ML). Evaluation results demonstrate the effectiveness of both systems: the pattern-based AutoCILink-P and the supervised learning-based AutoCILink-ML achieve average accuracy of 74.6% and 81.2%, respectively.
先前的工作[13]表明,当开发人员管理软件变更时,纠结的变更(即,在单个提交消息中聚集了不同的变更意图)可能会使跟踪到不同的变更任务变得复杂。识别从已更改的源代码到未纠缠的更改意图的链接可以帮助开发人员解决这个问题。然而,手动识别这样的链接需要大量的经验和审查工作。不幸的是,没有提供此功能的自动方法。在本文中,我们提出了AutoCILink,它通过基于模式的链接识别系统(AutoCILink- p)和基于监督学习的链接分类系统(AutoCILink- ml)自动识别代码以解纠缠的更改意图链接。评估结果证明了两种系统的有效性:基于模式的AutoCILink-P和基于监督学习的AutoCILink-ML的平均准确率分别为74.6%和81.2%。
{"title":"Linking Source Code to Untangled Change Intents","authors":"Xiaoyu Liu, LiGuo Huang, Chuanyi Liu, Vincent Ng","doi":"10.1109/ICSME.2018.00047","DOIUrl":"https://doi.org/10.1109/ICSME.2018.00047","url":null,"abstract":"Previous work [13] suggests that tangled changes (i.e., different change intents aggregated in one single commit message) could complicate tracing to different change tasks when developers manage software changes. Identifying links from changed source code to untangled change intents could help developers solve this problem. Manually identifying such links requires lots of experience and review efforts, however. Unfortunately, there is no automatic method that provides this capability. In this paper, we propose AutoCILink, which automatically identifies code to untangled change intent links with a pattern-based link identification system (AutoCILink-P) and a supervised learning-based link classification system (AutoCILink-ML). Evaluation results demonstrate the effectiveness of both systems: the pattern-based AutoCILink-P and the supervised learning-based AutoCILink-ML achieve average accuracy of 74.6% and 81.2%, respectively.","PeriodicalId":6572,"journal":{"name":"2018 IEEE International Conference on Software Maintenance and Evolution (ICSME)","volume":"19 1","pages":"393-403"},"PeriodicalIF":0.0,"publicationDate":"2018-09-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"85761699","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}
引用次数: 6
Two Datasets for Sentiment Analysis in Software Engineering 软件工程情感分析的两个数据集
Pub Date : 2018-09-01 DOI: 10.1109/ICSME.2018.00084
B. Lin, Fiorella Zampetti, R. Oliveto, M. D. Penta, Michele Lanza, G. Bavota
Software engineering researchers have used sentiment analysis for various purposes, such as analyzing app reviews and detecting developers' emotions. However, most existing sentiment analysis tools do not achieve satisfactory performance when used in software-related contexts, and there are not many ready-to-use datasets in this domain. To facilitate the emergence of better tools and sufficient validation of sentiment analysis techniques, we present two datasets with labeled sentiments, which are extracted from mobile app reviews and Stack Overflow discussions, respectively. The web app we created to support the labeling of the Stack Overflow dataset is also provided.
软件工程研究人员已经将情感分析用于各种目的,例如分析应用程序评论和检测开发人员的情绪。然而,大多数现有的情感分析工具在与软件相关的环境中使用时都没有达到令人满意的性能,并且在该领域没有很多现成的数据集。为了促进更好的工具的出现和情感分析技术的充分验证,我们提出了两个带有标记情感的数据集,它们分别从移动应用程序评论和Stack Overflow讨论中提取。我们创建的支持Stack Overflow数据集标记的web应用程序也提供了。
{"title":"Two Datasets for Sentiment Analysis in Software Engineering","authors":"B. Lin, Fiorella Zampetti, R. Oliveto, M. D. Penta, Michele Lanza, G. Bavota","doi":"10.1109/ICSME.2018.00084","DOIUrl":"https://doi.org/10.1109/ICSME.2018.00084","url":null,"abstract":"Software engineering researchers have used sentiment analysis for various purposes, such as analyzing app reviews and detecting developers' emotions. However, most existing sentiment analysis tools do not achieve satisfactory performance when used in software-related contexts, and there are not many ready-to-use datasets in this domain. To facilitate the emergence of better tools and sufficient validation of sentiment analysis techniques, we present two datasets with labeled sentiments, which are extracted from mobile app reviews and Stack Overflow discussions, respectively. The web app we created to support the labeling of the Stack Overflow dataset is also provided.","PeriodicalId":6572,"journal":{"name":"2018 IEEE International Conference on Software Maintenance and Evolution (ICSME)","volume":"1 1","pages":"712-712"},"PeriodicalIF":0.0,"publicationDate":"2018-09-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"79832351","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}
引用次数: 8
TraceLab Components for Generating Speech Act Types in Developer Question/Answer Conversations TraceLab组件用于在开发人员问答对话中生成语音行为类型
Pub Date : 2018-09-01 DOI: 10.1109/ICSME.2018.00085
Rrezarta Krasniqi, Collin McMillan
This artifact is a reproducibility package for experiments in speech act types generation. We have prepacked and created an easily-reusable artifact that consists of a set of reproducible components for generating speech act types. Prior to this artifact, the implementation was accessible but required managing various dependencies and predefined configurations for different scripts. We have made available this artifact via our online appendix. The artifact includes the components, a detailed tutorial with screenshots that describe steps how to generate the experiment and an example virtual machine image.
该工件是语音行为类型生成实验的可重复性包。我们已经预先打包并创建了一个易于重用的工件,该工件由一组用于生成语音行为类型的可重复组件组成。在此工件之前,实现是可访问的,但需要管理不同脚本的各种依赖关系和预定义配置。我们已经通过我们的在线附录提供了这个工件。工件包括组件、详细的教程和描述如何生成实验的步骤的屏幕截图,以及一个示例虚拟机映像。
{"title":"TraceLab Components for Generating Speech Act Types in Developer Question/Answer Conversations","authors":"Rrezarta Krasniqi, Collin McMillan","doi":"10.1109/ICSME.2018.00085","DOIUrl":"https://doi.org/10.1109/ICSME.2018.00085","url":null,"abstract":"This artifact is a reproducibility package for experiments in speech act types generation. We have prepacked and created an easily-reusable artifact that consists of a set of reproducible components for generating speech act types. Prior to this artifact, the implementation was accessible but required managing various dependencies and predefined configurations for different scripts. We have made available this artifact via our online appendix. The artifact includes the components, a detailed tutorial with screenshots that describe steps how to generate the experiment and an example virtual machine image.","PeriodicalId":6572,"journal":{"name":"2018 IEEE International Conference on Software Maintenance and Evolution (ICSME)","volume":"2015 1","pages":"713-713"},"PeriodicalIF":0.0,"publicationDate":"2018-09-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"86208061","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}
引用次数: 1
Semi-Automated Feature Traceability with Embedded Annotations 带有嵌入式注释的半自动特性可追溯性
Pub Date : 2018-09-01 DOI: 10.1109/ICSME.2018.00049
Hadil Abukwaik, Andreas Burger, B. Andam, T. Berger
Engineering software amounts to implementing and evolving features. While some engineering approaches advocate the explicit use of features, developers usually do not record feature locations in software artifacts. However, when evolving or maintaining features – especially in long-living or variant-rich software with many developers – the knowledge about features and their locations quickly fades and needs to be recovered. While automated or semi-automated feature-location techniques have been proposed, their accuracy is usually too low to be useful in practice. We propose a semi-automated, machine-learning-assisted feature-traceability technique that allows developers to continuously record feature-traceability information while being supported by recommendations about missed locations. We show the accuracy of our proposed technique in a preliminary evaluation, simulating the engineering of an open-source web application that evolved in different, cloned variants.
工程软件相当于实现和发展功能。虽然一些工程方法提倡显式地使用特性,但开发人员通常不记录软件工件中的特性位置。然而,当开发或维护功能时——特别是在有许多开发人员的长期存在或变体丰富的软件中——关于功能及其位置的知识很快就会消失,需要恢复。虽然已经提出了自动化或半自动化的特征定位技术,但它们的精度通常太低,无法在实践中使用。我们提出了一种半自动的、机器学习辅助的特征跟踪技术,该技术允许开发人员连续记录特征跟踪信息,同时支持关于缺失位置的建议。我们在初步评估中展示了我们提出的技术的准确性,模拟了一个开源web应用程序的工程,该应用程序在不同的克隆变体中进化。
{"title":"Semi-Automated Feature Traceability with Embedded Annotations","authors":"Hadil Abukwaik, Andreas Burger, B. Andam, T. Berger","doi":"10.1109/ICSME.2018.00049","DOIUrl":"https://doi.org/10.1109/ICSME.2018.00049","url":null,"abstract":"Engineering software amounts to implementing and evolving features. While some engineering approaches advocate the explicit use of features, developers usually do not record feature locations in software artifacts. However, when evolving or maintaining features – especially in long-living or variant-rich software with many developers – the knowledge about features and their locations quickly fades and needs to be recovered. While automated or semi-automated feature-location techniques have been proposed, their accuracy is usually too low to be useful in practice. We propose a semi-automated, machine-learning-assisted feature-traceability technique that allows developers to continuously record feature-traceability information while being supported by recommendations about missed locations. We show the accuracy of our proposed technique in a preliminary evaluation, simulating the engineering of an open-source web application that evolved in different, cloned variants.","PeriodicalId":6572,"journal":{"name":"2018 IEEE International Conference on Software Maintenance and Evolution (ICSME)","volume":"46 1","pages":"529-533"},"PeriodicalIF":0.0,"publicationDate":"2018-09-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"84687517","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}
引用次数: 31
期刊
2018 IEEE International Conference on Software Maintenance and Evolution (ICSME)
全部 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