3 ms·
How did this approach deal with difficult technical/algorithmic problems where someone needs to investigate something before further decisions can be made? Exa
by MauranKilom 5y ago
How did this approach deal with difficult technical/algorithmic problems where someone needs to investigate something before further decisions can be made?
Example: You want to improve performance. Somebody will have to fire up a profiler and measure things, and then figure out which hotspots are worth optimizing.
I totally get breaking it down to "set up profiling tool", "do profiling runs for workflow X/Y/Z", and "identify low-hanging fruit". Presumably these tasks are not going to take the entire sprint.
How do you plan the next step in task format? Do you not do any further work on the topic until the next sprint, where you then plan out concrete "optimize function X" tasks?
If not, i.e. whoever does profiling also gets to optimize code during the same sprint, how do you account for that in planning? Three dummy tasks "optimize a hotspot" without any actual idea what it will involve? Maybe it requires rewriting a component to use different data structures? Maybe it's just a single JVM config tweak? "Could be a 1 or it could take my whole life?"
Maybe it's just less common in certain domains, but this kind of "we need to investigate this issue and then decide what changes to make based on the investigation (and good engineering judgement)" - which is bread and butter in my part of the org - does not seem to fit into the "tasks with points" concept at all. Well, unless you want to always spread the process of "investigate issue", "identify problem and solution(s)" and "implement solution" over a whole month. That seems soul-crushing to me.
To be clear, I'm very interested in seeing how to make this mesh with Agile. But it feels like trying to write a binary search in a language that has no indirection or conditionals.
- forgotmypw17 5y agoResearch and algo design was where most of the 3- and 5-point tickets came from. I think I remember a couple with more points, but not many. Given the "about one hour of work, give or take" target point value we used, there weren't many tasks which had more points than that.
- MauranKilom 5y agoI see. But that's still only the first, "plannable" part. If the research (or algo design) led to the conclusion that component X needed a rewrite, would it require waiting half a month to get started? Maybe that makes sense if it's a larger thing (so that detailed planning would be worthwhile), but would you be required to drop it and do something else in the meantime even for smaller ones (say, a man-day of work)?
- forgotmypw17 5y agoif the rewrite was 5 points, added to sprint. if 20 or more almost definitely next sprint. in between, gray area.