您是否遵循个人软件流程?您的组织/团队是否遵循团队软件流程?

时间:2008-08-26 14:29:56

标签: process personal-software-process

有关详情,请访问Personal Software Process on WikipediaTeam Software Process on Wikipedia

我有两个问题:

  1. 您从中看到了哪些好处? 这些过程?
  2. 什么工具和/或 你用什么方法来遵循这些方法 流程?

10 个答案:

答案 0 :(得分:14)

我参加了培训,然后我的公司付钱给我去Carnegie Mellon并通过PSP讲师培训课程获得认证作为讲师。我认为目标是将其作为公司CMM / CMMI工作的一部分。我遇到了Watts Humphrey,发现他是一个善良,温柔的灵魂,对过程有一些深刻的想法。我也读过他的几本书。

简而言之,这是我对它的看法 - 对于大多数人而言,它过于结构化,假设你遵循了这封信。基于历史信息进行估算的想法是可以的,特别是在课堂环境中,但在现实世界中,由于需求和方向的变化,估计在一天内被撤消,因此它的用处远远不够。我也做了宽带德尔菲估计,这没关系,但说实话,并不一定比我做的“最佳猜测”更好。

我的团队对PSP不太热心,这也是问题的一部分 - 开发者买入。我的公司出于错误的原因这样做 - 只是说“嘿,看看我们使用PSP并拥有一些经过认证的教练!”。

最后,我发现使用“敏捷”方法会更好。我有积压的工作要做,一般可以很好地估计。我已经做了足够长的时间,以至于我可以在时间上做出相当不错的粗略估计,坦率地说,不要认为时间跟踪真的能改善很多东西。也许在某些环境中它可以很好地工作,但在我的位置,我们将继续提供高质量的软件,而不会产生任何带来可疑益处的过程箍。

只是我的两分钱。

答案 1 :(得分:6)

我进入过这一次,甚至尝试使用PSP仪表板。

要跟上时间太难了。谁想为他们的所有活动使用秒表?遵循Joel关于无痛调度和基于证据的调度的建议。

+1这个问题,-1到PSP。

答案 2 :(得分:5)

我已经用心脏PSP和TSP进行了4年(虽然它是在我的软件生涯的开始)。作为一个理想主义者,你会爱上你和当然所做的事情是的,也有惊人的结果。
尽管PSP主张将您的缺陷记录到核心(例如,或者错字),但我正在与Watts Humphrey先生进行对话,很多人向他询问编译器的进步和对象导向性的缺失(我觉得,它是如何丢失的,因为我是OO程序员并成功使用它)。他提供了一个非常好的答案。它继续说,“PSP,或者事实上,任何流程方法都不是一个坚持单一想法的概念。核心思想是向人们介绍质量方法和分析。
“它总是适应性的。你可以根据自己的需要定制它。如果你觉得你会使用功能点方法,你可以继续使用它。对于任何估算技术都是一样的。但你应该不断地和重复地做到这一点。 。
“与编译器的进步相同。如果您认为PSP结构中的WBS不适合您的开发,请修改它并使用但是再次连续执行。
“当你不断地这样做时,你将收集到你的历史数据,并在统计上对所有参数进行可预测和准确的估计”
可能是我迟到了,但是当我阅读所有回复时,我觉得我想分享这个。 根据工具,我们有Process Dashboard,PSP excel表和所有。

答案 3 :(得分:4)

对于PSP,我看过Software Process Dashboard,但似乎很难使用。

答案 4 :(得分:3)

我已经完成了PSP课程,下一个应该是TSP,这是其他人所说的团队动力。我对PSP的看法很复杂(大多是消极的,但结果很有趣),我得出了以下结论:

  • 首先我感到沮丧的主要原因是设计模板太单调乏味且不切实际 为UML和BPMN更改它们,从一开始就告诉您的教师,如果必要,请提示 。该书本身表示,设计模板适用于不了解或不想学习UML的人。
  • 其次,估算是我唯一有价值的部分。这本书本身说你可以使用代码行中的其他内容,甚至可以告诉你如何知道它们在统计上的相关性。我对此(计算代码行)的看法是,与您的VCS(git,mercurial)连接的工具/插件必须存在并自动构建您的个人数据库,否则跟踪基础/添加/重用部分太繁琐。
  • 流程本身很好,但不适用于大型项目,为什么?,因为它只是不能应对迭代。在现实世界中,由于需求的变化,您将不得不重复项目。您仍然可以将该学科应用于小型程序任务,这是:计划,设计,审查您的设计(具有设计标准和您可以记忆的小清单),代码,审查您的代码(具有明确的编码标准和小的心理清单)你可以记住,测试,思考你的错误。任何有经验的程序员都会知道这些最终都是直观的步骤。 我在实际操作中的建议:遵循流程但不记录除设计之外的其他内容,如果您实施单元测试,请将其记录良好
  • 这个过程实际上可能值得遵循和实用......对于实时系统编程而言,绝对没有错误的余地,否则感觉不值得。
  • 如果您正在寻找组织和改善焦点的方法,请先尝试GTD (Get Things Done)Pomodoro
  • 如果你有强迫症,你可能真的喜欢PSP =)。

我的最终建议,从中吸取教训作为参考,可能会带来更好,更实用的东西。这件事太过学术了。

P.S。:R.I.P。 Watts Humphrey

答案 5 :(得分:2)

过去六个月我一直在使用PSP。

这很费时间。对于我的估计,我不得不花7%的时间填写表格。 令人沮丧的是必须一遍又一遍地把错误的“缺少分号”。

但另一方面,当我习惯这个过程时,随着我开始看到我主要做了哪些错误并且我开始“自然地”避免它们而变得很重要。

它还会让您“查看”您的代码,以便在点击编译按钮之前查看是否有任何问题。

对于我推荐使用Timetracker的工具:http://0xff.net/

我建议至少尝试PSP几个月,因为你会创造一些习惯,有助于减少编译和纠正小错误的时间。

答案 6 :(得分:2)

我在大学的最后一个学期就学到了这一点,对我来说很有用。我知道通过跟随它写信,我可以确信我可以点击编译并且不会有任何错误并且通过点击运行我将不再花时间修复和重新编译程序来反复运行它直到混乱得到解决。

人们抱怨必须记录“缺少的半冒号”等等,但是当你参加计划7时,你不再犯这样的琐碎错误,而是你的缺点可以在你的重要部分找到程序。我没有机会将它应用到真实场景中,但我非常期待!

答案 7 :(得分:1)

我尝试尽可能遵循PSP 2.1流程。这真的有助于我专注于不跳过重要但不那么令人兴奋的项目部分。通常这是针对小型项目的设计和设计审查。

要跟踪时间,您可以使用PSP仪表板,它具有一系列内置功能和脚本,可帮助您按照流程进行操作。

如果您只是在寻找时间跟踪工具,我也很喜欢http://slimtimer.com。它也可以做一些体面的报道。

答案 8 :(得分:1)

几年前我跟着PSP走了几个星期,因为我的小组想要试验它。我觉得工作非常令人失望甚至恼火。它耗尽了我的耐心。我的主要负面观点是:

  • 粗暴地强调错字或丢失分号等内容。
  • 您必须手工填写的不切实际的表格。
  • 专注于程序编程而不是OO。
  • 估算涉及计算循环次数,功能等。

我发现这是浪费大量时间。我宁愿选择离开这个职业而不是被迫跟随PSP。

相关资料: My answer about a PSP book在“您不向开发人员推荐哪种编程手册”问题中。

答案 9 :(得分:0)

我在大学期间使用它,但在工作中我们根本没有过程。直到最近我们才开始使用版本控制。

我的经验是,有用的似乎太乏味了。如果它不是自动化的,那么它可以消失。