I'm currently watching someone use story points as time estimates (1 point = 1 day), but ALSO using the heuristic that 5 points is too much (which is for when story points represent complexity), so now no one is ever allowed to work on one thing for five days.

💀

I move ever closer to my villain arc.

@ludicity Definitely it's an issue if developers are getting into trouble for going over the estimate. Management will likely get the opposite of what they want out of that move, as developers pad their estimates.

Nonetheless, it seems reasonable to me to break up a task into components at the outset if you think it will take more than a week. Looking back at my career I can't remember any time when I had a branch open longer than a week and it was a good idea.

@sanedragon @ludicity

In my current project, lots of stories take weeks. Even small ones that take only a few days will inevitably take weeks to complete, partially because our application really is that complex, but mostly because our CI street is that complex, and it can take days before all the automatic tests are green, and then a tester sends it back because they want more from this feature.

@mcv @ludicity That sounds terribly frustrating. I would say that a testing process that takes days and gates integration can't really be described as "continuous integration". It would likely benefit your team to have feature flagging, to enable new feature code to get integrated before QA is complete on it, and to get a regression test suite that can complete in under an hour that you can use to gate integration, and run the full days-long suite against the main branch on a schedule.

@sanedragon @ludicity

The test suite takes a bit over an hour, but there's always something that randomly fails, so you end up spending days hunting rerunning tests and checking if maybe it's a legitimate error that requires fixing. Or Sonar decides that you touched a file that doesn't have sufficient test coverage. And then something else has been merged and you need to fix a bunch of merge conflicts. And then one of a bunch of dependencies starts causing errors.

The real problem is that we've got 20 devs on a single complex code base. It's actually working much better than you'd expect, but it does create a lot of overhead and frustration.

@mcv @ludicity The more devs you have the more important it is to integrate quickly to avoid conflicts! It sounds to me like moving some of these checks that are gating integration to after code is integrated (but before the task is considered complete) would help.

@sanedragon @ludicity

Yeah, that's the neverending discussion here. Maybe we need two main branches: one before the full test run and one after.

I'm coping, but it does make me eager to work on something on my own again.