首页 > 最新文献

2021 IEEE/ACM 43rd International Conference on Software Engineering: Companion Proceedings (ICSE-Companion)最新文献

英文 中文
Scalable Call Graph Constructor for Maven Maven的可伸缩调用图构造函数
Mehdi Keshani
As a rich source of data, Call Graphs are used for various applications including security vulnerability detection. Despite multiple studies showing that Call Graphs can drastically improve the accuracy of analysis, existing ecosystem-scale tools like Dependabot do not use Call Graphs and work at the package-level. Using Call Graphs in ecosystem use cases is not practical because of the scalability problems that Call Graph generators have. Call Graph generation is usually considered to be a "full program analysis" resulting in large Call Graphs and expensive computation. To make an analysis applicable to ecosystem scale, this pragmatic approach does not work, because the number of possible combinations of how a particular artifact can be combined in a full program explodes. Therefore, it is necessary to make the analysis incremental. There are existing studies on different types of incremental program analysis. However, none of them focuses on Call Graph generation for an entire ecosystem. In this paper, we propose an incremental implementation of the CHA algorithm that can generate Call Graphs on-demand, by stitching together partial Call Graphs that have been extracted for libraries before. Our preliminary evaluation results show that the proposed approach scales well and outperforms the most scalable existing framework called OPAL.
作为丰富的数据源,调用图可用于各种应用程序,包括安全漏洞检测。尽管多项研究表明调用图可以极大地提高分析的准确性,但现有的生态系统规模的工具(如Dependabot)不使用调用图,而是在包级别上工作。在生态系统用例中使用调用图是不实际的,因为调用图生成器具有可伸缩性问题。调用图的生成通常被认为是一个“完整的程序分析”,导致大量的调用图和昂贵的计算。为了使分析适用于生态系统规模,这种实用的方法不起作用,因为在一个完整的程序中如何组合一个特定工件的可能组合的数量会爆炸。因此,有必要进行增量分析。已有关于不同类型增量程序分析的研究。然而,它们都没有关注整个生态系统的调用图生成。在本文中,我们提出了CHA算法的增量实现,该算法可以通过将之前为库提取的部分调用图拼接在一起,按需生成调用图。我们的初步评估结果表明,所提出的方法具有良好的可扩展性,并且优于称为OPAL的最具可扩展性的现有框架。
{"title":"Scalable Call Graph Constructor for Maven","authors":"Mehdi Keshani","doi":"10.1109/ICSE-Companion52605.2021.00046","DOIUrl":"https://doi.org/10.1109/ICSE-Companion52605.2021.00046","url":null,"abstract":"As a rich source of data, Call Graphs are used for various applications including security vulnerability detection. Despite multiple studies showing that Call Graphs can drastically improve the accuracy of analysis, existing ecosystem-scale tools like Dependabot do not use Call Graphs and work at the package-level. Using Call Graphs in ecosystem use cases is not practical because of the scalability problems that Call Graph generators have. Call Graph generation is usually considered to be a \"full program analysis\" resulting in large Call Graphs and expensive computation. To make an analysis applicable to ecosystem scale, this pragmatic approach does not work, because the number of possible combinations of how a particular artifact can be combined in a full program explodes. Therefore, it is necessary to make the analysis incremental. There are existing studies on different types of incremental program analysis. However, none of them focuses on Call Graph generation for an entire ecosystem. In this paper, we propose an incremental implementation of the CHA algorithm that can generate Call Graphs on-demand, by stitching together partial Call Graphs that have been extracted for libraries before. Our preliminary evaluation results show that the proposed approach scales well and outperforms the most scalable existing framework called OPAL.","PeriodicalId":136929,"journal":{"name":"2021 IEEE/ACM 43rd International Conference on Software Engineering: Companion Proceedings (ICSE-Companion)","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2021-03-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128220316","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
Team-Oriented Consistency Checking of Heterogeneous Engineering Artifacts 面向团队的异构工程工件一致性检查
Michael Alexander Trols, A. Mashkoor, Alexander Egyed
Consistency checking of interdependent heterogeneous engineering artifacts, such as requirements, specifications, and code, is a challenging task in large-scale engineering projects. The lack of team-oriented solutions allowing a multitude of project stakeholders to collaborate in a consistent manner is thus becoming a critical problem. In this context, this work proposes an approach for team-oriented consistency checking of collaboratively developed heterogeneous engineering artifacts.
相互依赖的异质工程工件(如需求、规范和代码)的一致性检查在大型工程项目中是一项具有挑战性的任务。因此,缺乏面向团队的解决方案,使得众多项目涉众能够以一致的方式进行协作,这成为了一个关键问题。在这种情况下,这项工作提出了一种面向团队的一致性检查方法,用于协作开发的异构工程工件。
{"title":"Team-Oriented Consistency Checking of Heterogeneous Engineering Artifacts","authors":"Michael Alexander Trols, A. Mashkoor, Alexander Egyed","doi":"10.1109/ICSE-Companion52605.2021.00116","DOIUrl":"https://doi.org/10.1109/ICSE-Companion52605.2021.00116","url":null,"abstract":"Consistency checking of interdependent heterogeneous engineering artifacts, such as requirements, specifications, and code, is a challenging task in large-scale engineering projects. The lack of team-oriented solutions allowing a multitude of project stakeholders to collaborate in a consistent manner is thus becoming a critical problem. In this context, this work proposes an approach for team-oriented consistency checking of collaboratively developed heterogeneous engineering artifacts.","PeriodicalId":136929,"journal":{"name":"2021 IEEE/ACM 43rd International Conference on Software Engineering: Companion Proceedings (ICSE-Companion)","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2021-03-27","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"115022192","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}
引用次数: 3
Understanding the Challenges and Assisting Developers with Developing Spark Applications 理解挑战并协助开发人员开发Spark应用程序
Zehao Wang
To process data more efficiently, big data frameworks provide data abstractions to developers. However, due to the abstraction, there may be many challenges for developers to understand and debug the data processing code. To uncover the challenges in using big data frameworks, we first conduct an empirical study on 1,000 Apache Spark-related questions on Stack Overflow. We find that most of the challenges are related to data transformation and API usage. To solve these challenges, we design an approach, which assists developers with understanding and debugging data processing in Spark. Our approach leverages statistical sampling to minimize performance overhead, and provides intermediate information and hint messages for each data processing step of a chained method pipeline. The preliminary evaluation of our approach shows that it has low performance overhead and we receive good feedback from developers.
为了更有效地处理数据,大数据框架为开发人员提供了数据抽象。然而,由于抽象,开发人员在理解和调试数据处理代码时可能会遇到许多挑战。为了揭示使用大数据框架的挑战,我们首先在Stack Overflow上对1000个与Apache spark相关的问题进行了实证研究。我们发现,大多数挑战都与数据转换和API使用有关。为了解决这些挑战,我们设计了一种方法,帮助开发人员理解和调试Spark中的数据处理。我们的方法利用统计抽样来最小化性能开销,并为链式方法管道的每个数据处理步骤提供中间信息和提示消息。对我们方法的初步评估表明,它具有较低的性能开销,并且我们从开发人员那里得到了良好的反馈。
{"title":"Understanding the Challenges and Assisting Developers with Developing Spark Applications","authors":"Zehao Wang","doi":"10.1109/ICSE-Companion52605.2021.00057","DOIUrl":"https://doi.org/10.1109/ICSE-Companion52605.2021.00057","url":null,"abstract":"To process data more efficiently, big data frameworks provide data abstractions to developers. However, due to the abstraction, there may be many challenges for developers to understand and debug the data processing code. To uncover the challenges in using big data frameworks, we first conduct an empirical study on 1,000 Apache Spark-related questions on Stack Overflow. We find that most of the challenges are related to data transformation and API usage. To solve these challenges, we design an approach, which assists developers with understanding and debugging data processing in Spark. Our approach leverages statistical sampling to minimize performance overhead, and provides intermediate information and hint messages for each data processing step of a chained method pipeline. The preliminary evaluation of our approach shows that it has low performance overhead and we receive good feedback from developers.","PeriodicalId":136929,"journal":{"name":"2021 IEEE/ACM 43rd International Conference on Software Engineering: Companion Proceedings (ICSE-Companion)","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2021-03-25","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121623558","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
A Better Approach to Track the Evolution of Static Code Warnings 跟踪静态代码警告演变的更好方法
Junjie Li
Static bug detection tools help developers detect code problems. However, it is known that they remain underutilized due to various reasons. Recent advances to incorporate static bug detectors in modern software development workflows can better motivate developers to fix the reported warnings on the fly. In this paper, we study the effectiveness of the state-of-the-art (SOA) solution in tracking warnings by static bug detectors and propose a better solution based on our analysis of the insufficiencies of the SOA solution. In particular, we examined four large-scale open-source systems and crafted a data set of 3,452 static code warnings by two static bug detectors. We manually uncover the ground-truth evolution status of the selected warnings: persistent, resolved, or newly-introduced. Moreover, upon manual analysis, we identified the critical reasons behind the insufficiencies of the SOA matching algorithm. Finally, we propose a better approach to improve the tracking of static warnings over software development history. Our evaluation shows that our proposed approach provides a significant improvement in the precision of the tracking, i.e., from 66.9% to 90.0%.
静态bug检测工具帮助开发人员检测代码问题。然而,众所周知,由于各种原因,它们仍未得到充分利用。在现代软件开发工作流中合并静态错误检测器的最新进展可以更好地激励开发人员动态修复报告的警告。在本文中,我们研究了最先进的(SOA)解决方案在通过静态错误检测器跟踪警告方面的有效性,并根据我们对SOA解决方案不足之处的分析提出了一个更好的解决方案。特别是,我们检查了四个大型开源系统,并通过两个静态错误检测器制作了一个包含3,452个静态代码警告的数据集。我们手动发现所选警告的真实演变状态:持久、解决或新引入。此外,通过手工分析,我们确定了SOA匹配算法不足背后的关键原因。最后,我们提出了一种更好的方法来改进软件开发历史中静态警告的跟踪。我们的评估表明,我们提出的方法提供了跟踪精度的显著提高,即从66.9%提高到90.0%。
{"title":"A Better Approach to Track the Evolution of Static Code Warnings","authors":"Junjie Li","doi":"10.1109/ICSE-Companion52605.2021.00058","DOIUrl":"https://doi.org/10.1109/ICSE-Companion52605.2021.00058","url":null,"abstract":"Static bug detection tools help developers detect code problems. However, it is known that they remain underutilized due to various reasons. Recent advances to incorporate static bug detectors in modern software development workflows can better motivate developers to fix the reported warnings on the fly. In this paper, we study the effectiveness of the state-of-the-art (SOA) solution in tracking warnings by static bug detectors and propose a better solution based on our analysis of the insufficiencies of the SOA solution. In particular, we examined four large-scale open-source systems and crafted a data set of 3,452 static code warnings by two static bug detectors. We manually uncover the ground-truth evolution status of the selected warnings: persistent, resolved, or newly-introduced. Moreover, upon manual analysis, we identified the critical reasons behind the insufficiencies of the SOA matching algorithm. Finally, we propose a better approach to improve the tracking of static warnings over software development history. Our evaluation shows that our proposed approach provides a significant improvement in the precision of the tracking, i.e., from 66.9% to 90.0%.","PeriodicalId":136929,"journal":{"name":"2021 IEEE/ACM 43rd International Conference on Software Engineering: Companion Proceedings (ICSE-Companion)","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2021-03-25","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114324317","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}
引用次数: 3
Detecting User-Perceived Failure in Mobile Applications via Mining User Traces 通过挖掘用户痕迹来检测移动应用程序中用户感知的故障
Deyu Tian
Mobile applications (apps) often suffer from failure nowadays. Developers usually pay more attention to the failure that is perceived by users and compromises the user experience. Existing approaches focus on mining large volume logs to detect failure, however, to our best knowledge, there is no approach focusing on detecting whether users have actually perceived failure, which directly influence the user experience. In this paper, we propose a novel approach to detecting user-perceived failure in mobile apps. By leveraging the frontend user traces, our approach first builds an app page model, and applies an unsupervised detection algorithm to detect whether a user has perceived failure. Our insight behind the algorithm is that when user-perceived failure occurs on an app page, the users will backtrack and revisit the certain page to retry. Preliminary evaluation results show that our approach can achieve good detection performance on a dataset collected from real world users.
如今,移动应用程序经常遭遇失败。开发人员通常更关注用户感知到的失败,并损害用户体验。现有的方法侧重于挖掘大量日志来检测故障,然而,据我们所知,没有一种方法侧重于检测用户是否实际感知到故障,这直接影响用户体验。在本文中,我们提出了一种检测移动应用程序中用户感知故障的新方法。通过利用前端用户跟踪,我们的方法首先构建应用程序页面模型,并应用无监督检测算法来检测用户是否感知到故障。我们对算法的理解是,当用户感知到应用页面出现故障时,用户会返回并重新访问某个页面进行重试。初步评估结果表明,我们的方法可以在从真实世界用户收集的数据集上获得良好的检测性能。
{"title":"Detecting User-Perceived Failure in Mobile Applications via Mining User Traces","authors":"Deyu Tian","doi":"10.1109/ICSE-Companion52605.2021.00054","DOIUrl":"https://doi.org/10.1109/ICSE-Companion52605.2021.00054","url":null,"abstract":"Mobile applications (apps) often suffer from failure nowadays. Developers usually pay more attention to the failure that is perceived by users and compromises the user experience. Existing approaches focus on mining large volume logs to detect failure, however, to our best knowledge, there is no approach focusing on detecting whether users have actually perceived failure, which directly influence the user experience. In this paper, we propose a novel approach to detecting user-perceived failure in mobile apps. By leveraging the frontend user traces, our approach first builds an app page model, and applies an unsupervised detection algorithm to detect whether a user has perceived failure. Our insight behind the algorithm is that when user-perceived failure occurs on an app page, the users will backtrack and revisit the certain page to retry. Preliminary evaluation results show that our approach can achieve good detection performance on a dataset collected from real world users.","PeriodicalId":136929,"journal":{"name":"2021 IEEE/ACM 43rd International Conference on Software Engineering: Companion Proceedings (ICSE-Companion)","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2021-03-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"133144899","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}
引用次数: 0
RPT: Effective and Efficient Retrieval of Program Translations from Big Code RPT:从大代码中有效和高效地检索程序翻译
Binger Chen, Ziawasch Abedjan
Program translation is a growing demand in software engineering. Manual program translation requires programming expertise in source and target language. One way to automate this process is to make use of the big data of programs, i.e., Big Code. However, existing code retrieval techniques lack the design to cover cross-language code retrieval. Other data-driven approaches require human efforts in constructing cross-language parallel datasets to train translation models. In this paper, we present RPT, a novel code translation retrieval system. We propose a lightweight but informative program representation, which can be generalized to all imperative PLs. Furthermore, we present our index structure and hierarchical filtering mechanism for efficient code retrieval from a Big Code database.
程序翻译在软件工程中是一个日益增长的需求。手动程序翻译需要源语言和目标语言的编程专业知识。自动化这一过程的一种方法是利用程序的大数据,即大代码。然而,现有的代码检索技术缺乏涵盖跨语言代码检索的设计。其他数据驱动的方法需要人工构建跨语言并行数据集来训练翻译模型。本文提出了一种新的代码翻译检索系统RPT。我们提出了一种轻量级但信息丰富的程序表示,它可以推广到所有命令式PLs。此外,我们提出了从大代码数据库中高效检索代码的索引结构和分层过滤机制。
{"title":"RPT: Effective and Efficient Retrieval of Program Translations from Big Code","authors":"Binger Chen, Ziawasch Abedjan","doi":"10.1109/ICSE-Companion52605.2021.00117","DOIUrl":"https://doi.org/10.1109/ICSE-Companion52605.2021.00117","url":null,"abstract":"Program translation is a growing demand in software engineering. Manual program translation requires programming expertise in source and target language. One way to automate this process is to make use of the big data of programs, i.e., Big Code. However, existing code retrieval techniques lack the design to cover cross-language code retrieval. Other data-driven approaches require human efforts in constructing cross-language parallel datasets to train translation models. In this paper, we present RPT, a novel code translation retrieval system. We propose a lightweight but informative program representation, which can be generalized to all imperative PLs. Furthermore, we present our index structure and hierarchical filtering mechanism for efficient code retrieval from a Big Code database.","PeriodicalId":136929,"journal":{"name":"2021 IEEE/ACM 43rd International Conference on Software Engineering: Companion Proceedings (ICSE-Companion)","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2021-03-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124844616","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
Please Don't Go — Increasing Women's Participation in Open Source Software 请不要走——增加女性对开源软件的参与
Bianca Trinkenreich
Women represent less than 24% of the software development industry and suffer from various types of prejudice and biases. In Open Source Software projects, despite a variety of efforts to increase diversity and multi-gendered participation, women are even more underrepresented (less than 10%). My research focuses on answering the question: How can OSS communities increase women's participation in OSS projects? I will identify the different OSS career pathways, and develop a holistic view of women's motivations to join or leave OSS, along with their definitions of success. Based on this empirical investigation, I will work together with the Linux Foundation to design attraction and retention strategies focused on women. Before and after implementing the strategies, I will conduct empirical studies to evaluate the state of the practice and understand the implications of the strategies.
女性在软件开发行业中所占的比例不到24%,她们遭受着各种各样的偏见和偏见。在开源软件项目中,尽管有各种各样的努力来增加多样性和多性别参与,但女性的代表性更低(不到10%)。我的研究重点是回答这个问题:OSS社区如何增加女性对OSS项目的参与?我将确定不同的OSS职业道路,并发展女性加入或离开OSS的动机的整体观点,以及她们对成功的定义。基于这一实证调查,我将与Linux基金会一起设计以女性为重点的吸引和保留策略。在实施战略之前和之后,我将进行实证研究,以评估实践状态并了解战略的含义。
{"title":"Please Don't Go — Increasing Women's Participation in Open Source Software","authors":"Bianca Trinkenreich","doi":"10.1109/ICSE-Companion52605.2021.00059","DOIUrl":"https://doi.org/10.1109/ICSE-Companion52605.2021.00059","url":null,"abstract":"Women represent less than 24% of the software development industry and suffer from various types of prejudice and biases. In Open Source Software projects, despite a variety of efforts to increase diversity and multi-gendered participation, women are even more underrepresented (less than 10%). My research focuses on answering the question: How can OSS communities increase women's participation in OSS projects? I will identify the different OSS career pathways, and develop a holistic view of women's motivations to join or leave OSS, along with their definitions of success. Based on this empirical investigation, I will work together with the Linux Foundation to design attraction and retention strategies focused on women. Before and after implementing the strategies, I will conduct empirical studies to evaluate the state of the practice and understand the implications of the strategies.","PeriodicalId":136929,"journal":{"name":"2021 IEEE/ACM 43rd International Conference on Software Engineering: Companion Proceedings (ICSE-Companion)","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2021-03-18","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127559050","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}
引用次数: 0
Please Don't Go — A Comprehensive Approach to Increase Women's Participation in Open Source Software 请不要走——提高女性参与开源软件的综合方法
Bianca Trinkenreich
Women represent less than 24% of employees in the software development industry and experience various types of prejudice and bias. Despite various efforts to increase diversity and multi-gendered participation, women are even more underrepresented in Open Source Software (OSS) projects. In my Ph.D., I investigate the following question: How can OSS communities increase women's participation in their projects? I will identify different OSS career pathways and develop a holistic view of women's motivations to join or leave OSS, as well as their definitions of success. Based on this empirical investigation, I will work together with the Linux Foundation to design attraction and retention strategies focused on women. Before and after implementing the strategies, I will conduct empirical studies to evaluate the state of the practice and understand the implications of the strategies.
女性在软件开发行业的雇员中所占比例不到24%,并且经历了各种各样的偏见和偏见。尽管为增加多样性和多性别参与做出了各种努力,但女性在开源软件(OSS)项目中的代表性更低。在我的博士学位中,我研究了以下问题:OSS社区如何增加女性对其项目的参与?我将确定不同的OSS职业道路,并对女性加入或离开OSS的动机以及她们对成功的定义形成一个整体的看法。基于这一实证调查,我将与Linux基金会一起设计以女性为重点的吸引和保留策略。在实施战略之前和之后,我将进行实证研究,以评估实践状态并了解战略的含义。
{"title":"Please Don't Go — A Comprehensive Approach to Increase Women's Participation in Open Source Software","authors":"Bianca Trinkenreich","doi":"10.1109/ICSE-Companion52605.2021.00131","DOIUrl":"https://doi.org/10.1109/ICSE-Companion52605.2021.00131","url":null,"abstract":"Women represent less than 24% of employees in the software development industry and experience various types of prejudice and bias. Despite various efforts to increase diversity and multi-gendered participation, women are even more underrepresented in Open Source Software (OSS) projects. In my Ph.D., I investigate the following question: How can OSS communities increase women's participation in their projects? I will identify different OSS career pathways and develop a holistic view of women's motivations to join or leave OSS, as well as their definitions of success. Based on this empirical investigation, I will work together with the Linux Foundation to design attraction and retention strategies focused on women. Before and after implementing the strategies, I will conduct empirical studies to evaluate the state of the practice and understand the implications of the strategies.","PeriodicalId":136929,"journal":{"name":"2021 IEEE/ACM 43rd International Conference on Software Engineering: Companion Proceedings (ICSE-Companion)","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2021-03-15","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"117098867","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
System Component-Level Self-Adaptations for Security via Bayesian Games 基于贝叶斯游戏的系统组件级自适应安全性
Mingyue Zhang
Security attacks present unique challenges to self-adaptive system design due to the adversarial nature of the environment. However, modeling the system as a single player, as done in prior works in security domain, is insufficient for the system under partial compromise and for the design of fine-grained defensive strategies where the rest of the system with autonomy can cooperate to mitigate the impact of attacks. To deal with such issues, we propose a new self-adaptive framework incorporating Bayesian game and model the defender (i.e., the system) at the granularity of components in system architecture. The system architecture model is translated into a Bayesian multi-player game, where each component is modeled as an independent player while security attacks are encoded as variant types for the components. The defensive strategy for the system is dynamically computed by solving the pure equilibrium to achieve the best possible system utility, improving the resiliency of the system against security attacks.
由于环境的对抗性,安全攻击对自适应系统设计提出了独特的挑战。然而,将系统建模为单个参与者,就像在安全领域的先前工作中所做的那样,对于部分妥协的系统和细粒度防御策略的设计是不够的,其中具有自主权的系统的其余部分可以合作以减轻攻击的影响。为了解决这些问题,我们提出了一个新的自适应框架,结合贝叶斯博弈,并在系统架构的组件粒度上为防御者(即系统)建模。系统架构模型被转换为贝叶斯多玩家游戏,其中每个组件被建模为一个独立的玩家,而安全攻击被编码为组件的变体类型。通过求解纯均衡,动态计算系统的防御策略,以获得最佳的系统效用,提高系统抵御安全攻击的弹性。
{"title":"System Component-Level Self-Adaptations for Security via Bayesian Games","authors":"Mingyue Zhang","doi":"10.1109/ICSE-Companion52605.2021.00047","DOIUrl":"https://doi.org/10.1109/ICSE-Companion52605.2021.00047","url":null,"abstract":"Security attacks present unique challenges to self-adaptive system design due to the adversarial nature of the environment. However, modeling the system as a single player, as done in prior works in security domain, is insufficient for the system under partial compromise and for the design of fine-grained defensive strategies where the rest of the system with autonomy can cooperate to mitigate the impact of attacks. To deal with such issues, we propose a new self-adaptive framework incorporating Bayesian game and model the defender (i.e., the system) at the granularity of components in system architecture. The system architecture model is translated into a Bayesian multi-player game, where each component is modeled as an independent player while security attacks are encoded as variant types for the components. The defensive strategy for the system is dynamically computed by solving the pure equilibrium to achieve the best possible system utility, improving the resiliency of the system against security attacks.","PeriodicalId":136929,"journal":{"name":"2021 IEEE/ACM 43rd International Conference on Software Engineering: Companion Proceedings (ICSE-Companion)","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2021-03-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"115020459","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
Investigating the Interplay between Developers and Automation 调查开发人员和自动化之间的相互作用
Omar Elazhary
Continuous practices are a staple of the modern software development workflow. Automation, in particular, is widely adopted due to its benefits related to quality and productivity. However, automation, similarly to all other aspects of the software development workflow, interacts with humans (in this case developers). While some work has investigated the impact of automation on developers, it is not clear to what extent context and process influence that impact. We present our ADEPT theory of developers and automation, in an attempt to bridge this gap and identify the possible ways context, process, and other factors may influence how developers perceive, interpret, and interact with automation.
持续实践是现代软件开发工作流的主要内容。特别是自动化,由于其与质量和生产力相关的好处而被广泛采用。然而,与软件开发工作流的所有其他方面类似,自动化与人类(在本例中是开发人员)交互。虽然有些工作已经调查了自动化对开发人员的影响,但是上下文和过程对这种影响的影响程度并不清楚。我们提出了开发人员和自动化的ADEPT理论,试图弥合这一差距,并确定可能影响开发人员如何感知、解释和与自动化交互的环境、过程和其他因素。
{"title":"Investigating the Interplay between Developers and Automation","authors":"Omar Elazhary","doi":"10.1109/ICSE-Companion52605.2021.00064","DOIUrl":"https://doi.org/10.1109/ICSE-Companion52605.2021.00064","url":null,"abstract":"Continuous practices are a staple of the modern software development workflow. Automation, in particular, is widely adopted due to its benefits related to quality and productivity. However, automation, similarly to all other aspects of the software development workflow, interacts with humans (in this case developers). While some work has investigated the impact of automation on developers, it is not clear to what extent context and process influence that impact. We present our ADEPT theory of developers and automation, in an attempt to bridge this gap and identify the possible ways context, process, and other factors may influence how developers perceive, interpret, and interact with automation.","PeriodicalId":136929,"journal":{"name":"2021 IEEE/ACM 43rd International Conference on Software Engineering: Companion Proceedings (ICSE-Companion)","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2021-03-12","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"132244766","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
期刊
2021 IEEE/ACM 43rd International Conference on Software Engineering: Companion Proceedings (ICSE-Companion)
全部 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