Skip to main content
QUICK REVIEW

[论文解读] Methodology Matters: How We Study Socio-Technical Aspects in Software Engineering

Courtney Williams, Margaret-Anne D. Storey|arXiv (Cornell University)|May 30, 2019
Software Engineering Techniques and Practices参考文献 59被引用 7
一句话总结

本文提出一个框架,用于对软件工程研究策略进行分类,通过分析253篇ICSE技术论文,揭示出研究社区在数据驱动和以技术解决方案为导向的方法上存在强烈偏倚,而对人类与社会因素的直接研究则相对不足。主要发现是,该领域主要采用数据策略来生成设计/评估类贡献,呼吁提升方法论的多样性,以更深入理解人技融合的动态机制。

ABSTRACT

Modern software engineering involves both human and technical aspects, the importance of which is widely accepted by practitioners and researchers alike. At a community level, software engineering researchers may be expected to choose a balance of research strategies that capture both social and technical characteristics of software development. In this paper, we consider if the research strategies we use do in fact provide this balance. We first developed a research strategy framework to help distinguish research strategies that directly study human and social aspects, from strategies that rely on data such as trace, archival or simulated data, and those that may focus more on technical or system aspects. We utilized this framework to categorize the research strategies used by 253 technical track papers from the International Conference on Software Engineering (ICSE). Using a design science lens, we further identified the types of research contributions provided in these papers---either descriptive knowledge, or the design and evaluation of technical solutions. We mapped the contribution types to the research strategies identified. We found that, at the community level, the papers we analyzed strongly favour data strategies over strategies that directly study human and social aspects, and most research contributions consist of the design or evaluation of technical solutions. We conclude by proposing that our community should diversify our use of research strategies so that we may have a deeper understanding of human and social aspects of software development practice, while balancing the design and evaluation of innovations on the technical side.

研究动机与目标

  • 检验当前软件工程研究策略是否在人类/社会因素研究与技术系统开发之间保持平衡。
  • 开发一个框架,根据研究重点区分研究策略:直接的人类/社会研究、基于数据的分析(痕迹/档案/模拟)或技术/系统导向方法。
  • 运用设计科学视角,将研究贡献(描述性知识 vs. 技术解决方案的设计/评估)与研究策略进行映射。
  • 识别软件工程社区内研究策略使用中的不平衡现象,特别是在ICSE等主要会议中。
  • 倡导通过多样化研究策略,以实现对软件开发中社会技术维度更均衡的理解。

提出的方法

  • 开发研究策略框架,根据研究重点对研究进行分类:直接的人类/社会研究、基于数据的分析(痕迹、档案、模拟)或技术/系统聚焦。
  • 收集并分析了国际软件工程会议(ICSE)的253篇技术论文。
  • 运用设计科学视角,将每篇论文的贡献分类为描述性知识或技术解决方案的设计/评估。
  • 将每篇论文的研究策略与其贡献类型进行映射,以识别模式与不平衡现象。
  • 采用定性分类与主题分析方法,评估研究策略与贡献的普遍性与分布情况。
  • 基于分析所得实证发现,提出方法论多样化的建议。

实验结果

研究问题

  • RQ1当前ICSE论文中的软件工程研究策略在多大程度上优先采用基于数据或技术系统的方法,而忽视对人类与社会因素的直接研究?
  • RQ2ICSE论文中最常见的研究贡献类型(描述性知识 vs. 技术解决方案的设计/评估)是什么?它们在不同研究策略中的分布如何?
  • RQ3与基于数据和以技术为导向的策略相比,直接研究人类与社会因素的研究策略在ICSE论文中的频率与贡献类型有何差异?
  • RQ4研究策略与软件工程研究中贡献性质之间存在何种关系?
  • RQ5软件工程研究社区如何改善方法论的平衡性,以更好地理解软件开发中的社会技术维度?

主要发现

  • 分析显示,基于数据的研究策略——尤其是痕迹、档案和模拟数据——在整体研究策略中占据主导地位,远超直接研究人类与社会因素的策略。
  • 在所分析的ICSE论文中,大多数研究贡献属于技术解决方案的设计或评估,而非关于人类或社会因素的描述性知识。
  • 在所分析的ICSE技术论文中,聚焦于人类与社会因素的研究策略显著不足。
  • 研究策略的分布存在明显失衡,技术与数据驱动方法的数量远远超过直接的社会技术探究方法。
  • 研究发现,当前软件工程研究文化更倾向于技术革新与数据分析,而对开发实践中人类与社会动态的深入探索则相对不足。
  • 作者得出结论:该领域应多样化其方法论路径,以实现对软件工程中社会技术现象更均衡的理解。

更好的研究,从现在开始

从论文设计到论文写作,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。