有人在计算科学研究中使用软件估算方法吗?


11

在工作中,我基本上是一名独立顾问。对于管理人员和客户,我需要估计开发软件所需的时间,这是我的计算科学研究的一部分。但是,我的时间估计通常不正确。我知道有一些方法可以估算开发软件所需的时间。这些方法会为我提供有关研究任务的准确估计吗?它们甚至在研究环境中有用吗?如果不是,是否有比“保留记录并相应地修改估算值”更好的方法?


1
鉴于最聪明的程序员和不太聪明的程序员之间存在一个数量级的差异,因此重新使用现有数据集将无法使您的估算神奇地符合现实。但是,您可以做的是遍历先前的项目并收集复杂性数据,并拟合几个简单的回归。研究与其他类型的活动的不同之处在于,存在几次撞墙的巨大风险……建立与您的项目的相对新颖性有关的边际,并使用墨菲定律来纠正自己的乐观情绪。
鹿猎人(

4
在以前的软件开发人员职业中,我经常为明确指定的项目进行此类估算。如果设计足够完整,并且没有重大技术风险,则说明设计合理。但是,我现在从事的软件开发实际上是比软件开发更多的研究,这是一个重大问题,即该想法是否行得通,并且始终出现意外问题。
Brian Borchers

Answers:


1

在大多数研究环境中,您无法访问技能水平相对统一的专业程序员,而他们可以决定自己的时间。相反,您是由经验丰富的程序员(也许是博士后,也许是教师)和研究生组成的,这些程序员几乎没有编程经验,也根本没有关于大型项目的经验。此外,所有这些行为者还承担着许多其他职责(教学,TAing,审阅论文,担任委员会委员),这些职责在整个时间中相差很大。因此,我认为要获得准确的估算将非常困难。当然,我的经验是“它将花费比我想象的更长的时间”。


在一般情况下,您对所有这些问题都是正确的。我很好奇,因为就我而言,我经常是唯一从事编码工作的人(最多,另外一两个人也在同一项目上进行编码,但通常是在无关或独立的任务上)。另外,由于我的工作像顾问一样,我非常自信地知道我每周可以花多少时间在给定的项目上,从而大大减少了不确定性。
Geoff Oxberry
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.