讨论:在 Scrum 环境中使用 TDD

发布于 2024-10-12 09:50:06 字数 1431 浏览 3 评论 0原文

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

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

发布评论

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

评论(2

粉红×色少女 2024-10-19 09:50:06

听起来好像您的任务可能是水平切片的 - 也许沿着“创建数据库表”或“写入控制器”等技术边界 - 而您的开发是垂直切片的。

无论如何,我讨厌必须将故事拆分为任务(这对新手团队很有用,并且可以让项目经理感到高兴,仅此而已),但如果我被迫这样做,我会按场景垂直拆分它们。走故事中的第一条“快乐之路”。把它作为第一个任务。找到边缘情况。他们每个人都成为另一项任务。例如,如果我被要求编写 ATM 软件,故事标题是“让人们取出现金”,我的任务可能是:

  • 允许用户取出现金
  • 防止用户在没有足够现金的情况下取出现金
  • 透支
  • 用完 10 美元
  • 根本没有钱
  • 用户达到每日现金限额
  • 检查它是否与 Fred 的“PIN 验证”故事相符。

这样做的另一个好处是,我可以随时展示某些内容并获得反馈,从而使我可以尽早让测试人员参与进来,帮助我找出是否遗漏了任何内容。

It sounds as if your tasks might be horizontally sliced - perhaps along technical boundaries like "create database table" or "write controller" - while your development is sliced vertically.

I hate having to split stories into tasks anyway (it's useful for novice teams and to keep project managers happy, nothing else) but if I'm forced to do so I'll split them vertically, by scenario. Take the first "happy path" through a story. Make that into the first task. Find the edge cases. Each of them becomes another task. So for instance, if I'm asked to write ATM software and the story title is "Let people take out cash", my tasks might be:

  • Allow user to take out cash
  • Prevent user from taking out cash if he doesn't have enough
  • Overdrafts
  • Run out of $10
  • No money left at all
  • User hit their daily cash limit
  • Check that it works with Fred's "PIN verification" story.

This has the additional benefit that at any point I can showcase something and get feedback, allowing me to bring testers in early to help me work out if I've missed anything.

∞梦里开花 2024-10-19 09:50:06

我认为你可能以错误的方式处理这个问题。听起来您对工作量的原始估计有很大偏差,因为如果不是,为什么不直接使用原始任务呢?这仍然是你正在努力实现的目标。如果您发现工作量非常错误或者您错误地分析了问题,那么在我看来,您不应该只是在冲刺中添加越来越多的任务,因为这没有帮助。

因此,与其只创建一个任务,不如尝试创建所有任务并仅打开您需要首先开始的任务。因此,不要以自上而下的方式考虑任务,而应将其视为并行任务。

不过,我可能不太理解你的情况。当然,你经常会在做事情的过程中发现你没有想到的东西,但如果你的任务太大,以至于你经常严重超出你的估计,那么我唯一的建议就是更好地计划你的工作。仅仅因为待办事项有一项大任务并不意味着您不能将其拆分到您的 Spring 日志中。

I think you approach this maybe in the wrong way. It sounds like your original estimates on work amounts are way off because if they aren't, why not just use the original task? That's still what you are trying to accomplish. If you find that the work amount was very wrong or you misanalyzed the problem, you should, IMO, not just add more and more tasks into your sprint because it doesn't help.

So rather than create just one task, try to create all of the tasks and open only the one you need to start on first. So don't think of the tasks in a top-down manner, rather as parallel tasks.

I might not quite understand your case, though. Of course you often find stuff you hadn't thought of in the middle of doing things, but if you tasks are so big that you regularly over-exceed you estimates badly then my only suggestion is to plan your work better. Just because the backlog has a big task doesn't mean you can't split it up into your spring log.

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