Skip to main content
QUICK REVIEW

[论文解读] Assumptions Underlying Agile Software Development Processes

Dan Turk, Robert France|arXiv (Cornell University)|Sep 22, 2014
Software Engineering Techniques and Practices参考文献 24被引用 6
一句话总结

本文通过分析敏捷软件开发的原理与实践,识别出其核心假设,揭示了敏捷的有效性依赖于团队协作、需求演进和技术稳定性等未明言的条件。当这些假设不成立时,研究指出了其局限性,并提出通过整合互补技术来增强在不适宜情境下的敏捷性。

ABSTRACT

Agile processes focus on facilitating early and fast production of working code, and are based on software development process models that support iterative, incremental development of software. Although agile methods have existed for a number of years now, answers to questions concerning the suitability of agile processes to particular software development environments are still often based on anecdotal accounts of experiences. An appreciation of the (often unstated) assumptions underlying agile processes can lead to a better understanding of the applicability of agile processes to particular situations. Agile processes are less likely to be applicable in situations in which core assumptions do not hold. This paper examines the principles and advocated practices of agile processes to identify underlying assumptions. The paper also identifies limitations that may arise from these assumptions and outlines how the limitations can be addresses by incorporating other software development techniques and practices into agile development environments.

研究动机与目标

  • 揭示敏捷软件开发过程中常被忽视的核心假设。
  • 研究这些假设如何影响敏捷方法在不同开发环境中的适用性与有效性。
  • 识别当核心假设在现实环境中不成立时所产生的局限性。
  • 提出将非敏捷技术整合到敏捷环境中的策略,以应对这些局限性。
  • 为超越主观经验的敏捷适用性评估提供理论依据。

提出的方法

  • 对Scrum和XP等主要框架中的敏捷原则与实践进行系统性分析。
  • 通过从敏捷文献和流程模型中提取主题,识别基础假设。
  • 将假设分类为文化、组织、技术与环境维度。
  • 评估偏离这些假设如何导致流程崩溃或效率低下。
  • 提出将传统软件工程实践(例如正式建模、文档编制)整合到敏捷工作流中的混合方法。
  • 使用基于案例的推理与对比分析,说明假设在实践中何时以及如何失效。

实验结果

研究问题

  • RQ1敏捷软件开发过程所依赖的根本假设是什么?
  • RQ2在哪些开发环境中这些假设会失效,其后果是什么?
  • RQ3如何通过整合其他软件工程实践来缓解因假设未满足而产生的局限性?
  • RQ4在核心假设不成立的环境中,敏捷过程能在多大程度上被适应?
  • RQ5可使用哪些标准来评估敏捷方法的适用性,而不仅仅是基于主观经验?

主要发现

  • 敏捷过程依赖于诸如团队组成稳定、客户持续参与以及需求演进等假设,这些假设虽常未明言,但至关重要。
  • 当技术稳定性或团队自主性等假设被违反时,敏捷实践可能失效或有效性下降。
  • 敏捷过程中缺乏正式建模或文档编制,可能导致复杂系统在可维护性与可扩展性方面出现问题。
  • 整合轻量级建模与文档编制实践,可在保持敏捷性的同时提升长期系统质量。
  • 在监管严格或高度受限的环境中,敏捷方法适用性较低,除非通过补充技术进行调整。
  • 本文通过分析表明,对假设的系统性理解可实现更优的敏捷方法选择与定制。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

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