Dynamics of Agile Software Development

msra(2009)

引用 32|浏览14
暂无评分
摘要
Software projects have traditionally been problematic in terms of quality, cost and time. Researchers and practitioners have focused on agile software development as an alternative to overcome these problems. Agile methods employ iterative development cycles (typically 20 working-days), interspersed by user feedback. The key to agile projects is the sense of urgency created by the need to deliver at regular intervals. This paper examines this construct, i.e., schedule pressure. We investigate the relationship between the level of agility (length of the iterative cycle) and project outcomes. We argue that project outcomes may suffer either from a team being too inactive, e.g., in sequential or low levels of agility, or from a team being over-active over too long, a situation likely to occur in high levels of agility. We hypothesize that moderate levels of agility are likely to result in the best project outcomes. We test our hypothesis through simulation, and find a U-shaped pattern: performance is better when iteration lengths are 50 working-days, as opposed to 20 working-day cycles widely used in practice. Our analysis provides both theoretical insights into the dynamics of agile software development and practical suggestions for managing these projects.
更多
查看译文
关键词
system dynamics,agile software development,iterations,schedule pressure,agile methods
AI 理解论文
溯源树
样例
生成溯源树,研究论文发展脉络
Chat Paper
正在生成论文摘要