开发人员在任务之间切换的最有效方法是什么?

Jim*_*amb 6 survey

我正在寻找您从一个软件开发任务切换到另一个软件开发任务所执行的一系列步骤的工作流程类型描述.如果某个步骤涉及工具,请指定使用哪种工具及其使用方法.工作流的目标是实现从任务#1到任务#2并返回到任务#1的最平滑过渡.

考虑这种情况......

  • 你正在实现一个新的用户故事,虽然你今天到目前为止取得了进展,但还没有完成,你还没有实现你的测试.
  • 你的领导是一个高优先级的错误,阻止你的测试团队.您需要停止正在进行的操作并修复错误.该错误是在三天前构建的,这是测试团队最近获得的构建.

您可以在新版本的源中修复该错误,但它必须是稳定版本,并且不能包含您当前正在处理的不完整功能.

Dom*_*mra 12

Alt + Tab就是我们这样做的方式.

  • 多米尼克......吉姆正在寻找工作流程:步骤1:按Alt键; 第2步:按Tab键; 第3步:如果任务不正确,重复步骤2; 第4步:释放Alt键; 第5步:处理新任务. (10认同)

小智 8

任务切换是大脑的事情.我不认为有一个工具可以帮到你.如果有,我也感兴趣.

每个人都有自己的准备方式,有些人根本没有做好准备,而是处于另一种状态,比如快照,有些需要更多时间等等.这取决于男人/女人.

当然,您可以尝试创建一些心理里程碑(记笔记,发出提醒等)以便在返回任务时返回它,但这又取决于其他因素(任务切换多长时间,办公室多么安静,熟悉任务,月相等).

我认为开发人员在任务之间切换的最有效方式是主观的.与此同时,您是否阅读过Joel Spolsky 认为有害的人工任务开关


Mar*_*ema 3

我想说,在您描述的场景中需要采取的步骤 100% 取决于您设置的开发环境和工具。

使用 Perforce 进行源代码版本控制,我们建立了一个分支系统,其中版本与开发工作分开,所有开发分支都源于单个“接受”分支。每个分支用于单个问题或一组非常密切相关的问题。在更改被集成到验收分支之前,不能在分支中处理其他问题。

是的,这确实意味着我们有很多分支机构。是的,我们做了很多同步(验收到工作分支)和集成(工作分支到验收)。但当涉及到轻松地从一项任务切换到另一项任务、返回到测试构建、发现两个相互影响的问题等时,它的价值是无法估量的。

开发完成工作(包括他们自己的测试)后,QA 团队将测试问题。首先在自己的分支中隔离。之后,将其集成到验收分支中,并进行回归测试,以发现任何相互影响的独立问题。当发布的所有问题都已纳入验收时,质量检查团队将执行完整的回归和新功能测试。

因此,接受分支始终是应用程序的“最新”开发状态。

在此设置中,您描述的场景将如下所示:

  • 保持我当前的任务不变,可能会检查任何未完成的更改,以免在计算机崩溃时丢失它们。如果这意味着破坏该分支的日常构建,我不会签入,除非很容易修复编译错误。(请注意,我们的应用程序套件中有许多应用程序,虽然我的更改可能会在我正在开发的应用程序中编译,但它们仍然可能会破坏我们套件中其他应用程序的编译)我们的规则是:每次提交都可能会破坏功能,但是不得破坏构建过程。

  • 找到一个“空”分支 - 当前未用于任何开发工作的分支,或者,如果所有分支都已占用,则创建一个新分支。

  • 强制同步接受分支和选定的工作分支,这样我的机器就保证拥有两个分支的最新状态。

  • 将验收分支的最新状态同步(必要时强制)到工作分支,因此所选的工作分支与验收分支相同。

  • 在 IDE 中打开该分支的应用程序套件,进行调试和解决。提交工作部门。

  • 告诉 QA 在工作分支中查看它。如果他们对此感到满意,请将更改整合到接受状态,以便他们可以继续测试。

  • 将 IDE 切换回我之前工作的分支中的应用程序套件。

  • 冲洗并重复。