代码之家  ›  专栏  ›  技术社区  ›  Hux

开发时间条目有多重要?

  •  1
  • Hux  · 技术社区  · 15 年前

    对于我的最后一年项目(软件工程理学士),我在查看软件应用程序的时间条目,以及它们是否准确反映了项目的开发,以及它们是否可以改进或自动化。

    为此,我将使用vPackages为Visual Studio制作一个插件原型,该插件将自动跟踪正在处理的文件,并将这些文件分配给任务和项目。该插件还将跟踪Visual Studio中不活动的时间段。

    然后,将通过一个简单的Web应用程序进行备份,以便非技术人员从中提取报告,以便能够非常准确地跟踪项目。

    我目前在一家小公司(10人)工作,无法获得我需要的大量数据,我无法从中得到一个好的结论。因此,我询问是否可以讨论以下主题,如果您有几分钟的空闲时间来填写我的问卷,并将结果通过电子邮件发送到文档中包含的地址:

    http://www.mediafire.com/?dmrqmwknmty

    干杯, 米格

    6 回复  |  直到 15 年前
        1
  •  3
  •   David M    15 年前

    为了回答您的问题,开发时间条目非常重要。但是你不能通过一个IDE来测量它们,也不能通过任何软件来测量。开发过程是一个复杂的过程,包括讨论、围绕白板进行规划、在纸上绘制图表、在互联网上进行研究等。

    阅读杰夫·阿特伍德的优秀文章 laziness 他提到的其他职位。一个好的、成功的开发人员花时间远离IDE,确保他们不会花费90%的工作日来重新设计方向盘,或者他们一天中的50%去错误的方向,因为他们没有仔细考虑设计。

        2
  •  1
  •   Pekka    15 年前

    我发现基本的想法很有趣,尽管自动时间跟踪有缺陷,正如测量项目提交的数量和频率(例如在ohloh.net上所做的)可能是一个非常误导性的活动指标一样。

    然而,实际情况是,工作时间是计费的基础,需要以某种方式进行衡量。不过,已经有了解决方案。

    看一看

    (外面还有很多,但我很清楚这两个)。

    它们独立于我使用的工具/ides工作,它们可以检测到我在计算机上的缺席/存在,并提示我如何归档时间,它们可以执行所有必要的报告。添加和管理归档条目也很容易。

    您的Visual Studio插件将实现这些解决方案尚未提供的功能?

        3
  •  1
  •   David    15 年前

    在一个IDE中开发所花费的时间只提供了开发人员工作时间的一个(有时非常)部分度量。

    我最近一直在使用FogBugz版本7,它有一个特性,允许开发人员估计完成一个案例需要多长时间。然后开发人员可以使用软件说,“我正在处理这个案例”。然后,根据开发人员的工作日程(包括休息日)、他们说他们在办公室的时间以及他们估计他们正在处理案例的时间百分比,时钟将倒计时到零。

    但是作为一个开发人员,我知道我可以很容易地被更重要的案例偏离轨道。我还知道,我花了大量时间使用除IDE以外的工具来处理这些案例,例如在MBUnit中进行测试,在线查找错误消息解释,或者向询问我为什么还没有完成bug的人提供状态。我也在一些地方度过了半个典型的日子——或者更多——在会议上或者在实验室里,在另一个地方的远程机器上做我的工作。当我在办公桌旁的时候,我可以用我的电脑为我正在做的工作规划出想法,或者只是纸和笔。

    所以当你问“坐在那里的人真的在做他的工作吗?”时,有很多变量需要考虑。您真的需要查看更多正在运行的应用程序,而不仅仅是Visual Studio 2008(devenv.exe)。您可能需要查看与开发人员的测试框架、文本文档、与其他机器的远程桌面连接,甚至是Firefox相关联的进程的活动。(对于某人是否真的在工作,火狐将是一个巨大的判断信号!)

    作为项目研究的一部分,我还建议您研究一些在整个公司行业中使用的其他时间收集系统,并比较它们的功能。

        4
  •  0
  •   John Parker    15 年前

    有点偏离轨道,但你可以 潜在地 使用这类数据来说明复杂区域(loc)、易于更改的区域(间隔n天频繁更新)等,但即使是这类数据,也会受到不同程序员开发方法的影响。

        5
  •  0
  •   HLGEM    15 年前

    我们每天按项目跟踪我们的所有时间。我每天花不到五分钟的时间来填写我正在做的工作。这不是可以自动化甚至应该自动化的东西,因为它永远不会接近精确。文件并不总是只与一个项目相关联,我会花更多的时间告诉应用程序哪些文件属于哪个项目,而这需要五分钟来填写我的时间表。没有人花一整天的时间打字——有会议、电话和思考(你知道你想在哪里打字!),这些都不会在您的自动化系统中捕获。你在看的东西不会比要求人们每天填写时间表更准确,也不会比要求人们每天填写时间表更准确。

        6
  •  0
  •   JB King    15 年前

    虽然时间条目很重要,但要想知道如何组织它,问题就在哪里出现了。非技术人员如何理解开发的各个阶段以了解数据?我同意其他人的回答,即IDE跟踪是一个糟糕的想法,特别是如果正在做的部分工作涉及到通过Web浏览器更改数据库,这正是我在当前大型CMS项目中所拥有的,在该项目中,我们可能需要更改模板或创建内容来测试功能是否有效。

    这也严重忽视了游戏可能发生的系统思想。如果我在调试时打开IDE,因为我想扫描内存或者做其他需要打开窗口才能实际查看的事情,但是我也可能离开了我的办公桌,除非你以某种方式跟踪我正在查看和坐着的位置。