是否存在科学研究能够使从业者就在项目中使用敏捷的好处做出定量决策?

发布于 2024-07-15 01:08:52 字数 1709 浏览 7 评论 0原文

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(8

寄离 2024-07-22 01:08:52

我认为不可能“证明”这样的事情。

我会更进一步说,我认为通过这样的研究来研究“软件开发生产力”问题真的不可能。 这主要就是为什么我们真正必须继续使用的所有证据都是经验丰富的人告诉我们的(不幸的是,每个人对各种方法都有不同的看法)。

原因很简单:人与人之间是完全不同的。 让一个 5 人的团队坐下来完成一个为期几个月的项目(我猜,这比大多数研究所管理的时间还要长;让我们看看有人愿意花几个月的开发时间),你一定会完全得到不同的结果。 问题是,无法区分这里的许多不同因素:

  1. 程序员个人的能力。
  2. 程序员付出的奉献/努力。
  3. 使用工具的经验。
  4. 团队领导者的能力(仅仅遵循方法论是不够的,如果一个人不知道如何管理团队,方法论就无法真正体现出来)。

可能还有更多因素。

所以我想说的是,不要相信“证明”一种方法/工具/任何东西比其他方法更有效的研究。 它们几乎是不可能做到的。

I don't think it's possible to "prove" such a thing.

I'll go even further, and say that I don't think it's really possible to study the issue of "Software Development productivity" with such a study. Which is mainly why all the evidence we ever really have to go on is what experienced people tell us (and unfortunately, each one has a different view on various methodologies).

There's a simple reason for this: people are completely different. Sit down a team of 5 people for a project of a few months (which is more, I'm guessing, than most studies ever manage; let's see anyone finance a few months of developer time), and you're bound to get completely different results. The problem is, there is no way to sepearate the many different factors here:

  1. Ability of the individual programmers.
  2. Dedication/effort put in by the programmers.
  3. Experience with the tools.
  4. The ability of whoever is acting as the team leader (just following a methodology isn't enough. If someone doesn't know how to manage a team, the methodology won't really be well represented).

And there are probably many more factors.

So what I'm trying to say is, don't believe studies that have "proven" that one methodology/tool/anything works better than others. They're almost impossible to do.

两个我 2024-07-22 01:08:52

向我证明的是瀑布式统计失败,即科学管理应用于软件开发。 敏捷作为一种运动,只是对这一经验证据的回答(例如参见 CHAOS 报告)。

What is proven to me is the statistical failure of waterfall i.e. scientific management applied to software development. Agile, as a movement, is just an answer to this empirical evidence (see for example the CHAOS reports).

无人问我粥可暖 2024-07-22 01:08:52

InfoQ 上 Linda Rising 的采访在一定程度上解决了您的问题。 她谈论了安慰剂的有效性和我们对医学的信念,以及这些相同的事情如何与软件开发相关。 基本上,敏捷社区中的我们是否给自己开了一颗“糖丸”?

采访摘录

科学是关于实验的,关于在短时间内持有一个想法并对其进行测试,然后检查测试结果以找出假设是否成立。 这就是敏捷的真正含义。 敏捷是关于小实验的。 我现在相信,我们所做的一切,不仅仅是软件开发,我们的生活都应该是一系列的小实验。

我们引入每一个可能的利益相关者,我们引入客户,我们引入用户,测试人员与开发人员合作。 我们一直在仔细检查那些糖丸。 真的有效吗? 你怎么认为? 您对结果满意吗? 这是唯一能拯救我们的东西——敏捷本身。 这一系列的小实验。

This interview with Linda Rising on InfoQ addresses your question to some extent. She talks about the effectiveness of placebos and our beliefs in medicine and how these same things might relate to Software Development. Basically, are we in the Agile community giving our selves a "Sugar Pill"?

Interview Excerpt

Science is about experiments, about holding an idea for a short period of time and testing it and then examining the results of that test to find out whether or not the hypothesis holds up. That's really what Agile is about. Agile is about small experiments. I now believe that everything we do, not just software development, but our lives should be a series of small experiments.

We bring in every possible stakeholder, we bring in customers, we bring in users, testers work with developers. We are always examining carefully those sugar pills. Does it really work? What do you think? Are you happy with the results? That's the only thing that saves us - Agile itself. This series of small experiments.

故事未完 2024-07-22 01:08:52

本文分析了敏捷方法与传统方法的投资回报率 (ROI)。 它基于已发表研究的实际结果。

摘要:

敏捷方法的投资回报率是原来的四倍
比昂贵的传统方法,
比便宜的便宜两倍,
以及最好的敏捷和传统
方法具有相同的投资回报率。

This paper analyzes the return on investment (ROI) of Agile vs Traditional methods. It's based on actual results from published studies.

From the abstract:

Agile Methods ROI was four times more
than expensive Traditional Methods,
two times less than inexpensive ones,
and the best Agile and Traditional
Methods had equal ROI.

初相遇 2024-07-22 01:08:52

不,这没有经过科学或其他方式证明。 “证明”它意味着:

  • 从分析的角度证明其有效性。
  • 证明它在实践中有效,然后推断其有效性

分析方法是不可行的,因为我们在这里面对的是人而不是简单的系统。 你无法将团队和组织正规化。

另一方面,已经进行了实证研究,但结果尚无定论。 例如,罗伯特·格拉斯 (Robert Glass) 在他的《软件创造力 2.0》一书中展示了一些有趣的结果。

所以不,敏捷尚未得到证实。 差远了。 :-)

No, it's not scientifically or otherwise proven. To "prove" it would mean either:

  • To demonstrate its validity from an analytical point of view.
  • To show that it works in practice and then infer its validity

An analytical approach is unfeasible, since we are dealing with people here rather than simple systems. You cannot formalise teams and organisations.

Empirical studies, on the other hand, have been conducted, but the outcomes are unconclusive. Robert Glass shows some interesting results in his book Software Creativity 2.0, for example.

So no, agile is not proven. Not even close. :-)

偏爱你一生 2024-07-22 01:08:52

科学吗? 嗯,阿利斯泰尔·科伯恩的作品给我留下了深刻的印象。 此处听听他的讲话

当 IBM 要求 Alistair Cockburn 为面向对象项目编写一种方法时,他已经担任了 16 年的硬件设计师和研究员。 过去十年来,他一直在研究和撰写有关软件开发的文章,并了解到一些最成功的项目都有最简单的流程。2001 年,他和其他 16 位软件开发重量级人物会面讨论所谓的轻量级方法。 ,其中一项成果是敏捷软件开发宣言,其中包括四个价值陈述:个人以及流程和工具上的交互; 工作软件胜过全面的文档; 客户协作胜过合同谈判; 并响应变化而不是遵循计划。

Scientific? Well, I'm very impressed of Alistair Cockburn work. Listen to him here

Alistair Cockburn had been a hardware designer and researcher for 16 years when IBM asked him to write a methodology for object-oriented projects. He's spent the last decade studying and writing about software development and learned that some of the most successful projects have the simplest processes. In 2001 he and 16 other software-development heavyweights met to discuss so-called lightweight methodologies, and one result was the Agile Software Development Manifesto, which includes four value statements: individuals and interactions over processes and tools; working software over comprehensive documentation; customer collaboration over contract negotiation; and responding to change over following a plan.

最舍不得你 2024-07-22 01:08:52

来自 NCSU 的 Laurie Williams 发表了许多关于结对编程有效性的非常有趣的研究,然后开始处理敏捷的更多方面。

Laurie Williams from NCSU published a lot of really interesting studies on the effectiveness of pair programming, and then started dealing with more facets of agile.

任谁 2024-07-22 01:08:52

Scrum 的某些方面有支持性的经验证据。已经对 Scrum 的不同部分进行了大量的实证研究。 我听 Jeff Sutherland(http://jeffsutherland.com/scrum/ Scrum 的发明者)提到过很多在他的演讲中提出了具体的研究和观察。

一般来说,敏捷只是一个总称,旨在让不同的政治团体保持适度的满意。 不要期望看到实验证明所有“敏捷”的一般性内容。 它太模糊了,没有什么用处。

Certain aspects of scrum have supporting empirical evidence. Quite a number of empirical studies of different part of scrum have been done. I've heard Jeff Sutherland ( http://jeffsutherland.com/scrum/ the inventor of scrum) mention lots of specific studies and observations in his talks.

Agile in general is just an umbrella term designed to keep different political groups moderately happy. Don't expect to see an experiment prove anything general about all of "agile". It's too vague to be useful.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文