These past two weeks we ended up taking on much more work than we could handle. This week, I intended to work 20 hrs but ended up working far more.
Here are the tasks I had to do:
Re-architect product filtering
Ability to mark products as sold out by hand (had to deal with an additional state for inventory items)
Hide sold out products after 7 days
Create product functionality (and supporting the slug changing after editing)
Slug versioning (had to rewrite a large number of tests and implement custom logic for determining when to update a slug)
Flash message (had to architect and write a component for this)
Ability for a merchant to delist a product (not done yet)
I went into the week knowing that the first three tasks were in the sprint. But I'm not sure how we got in a situation where we ended up with additional work. I spent most of Saturday writing code so let us just say I'm pretty motivated to get this RFC resolved.
I think the issue comes from three problems
We aren't crystal clear on what we have agreed upon for a given sprint. The slug versioning was a pretty involved change and that task appeared on Friday. It wasn't clear that creating a product was in the sprint--this came as a surprise to us at the end. We shouldn't have surprises like "Wait what?! We have to do this for the current sprint?!"
Even if we are clear on the sprint, additional tasks end up finding their way into the sprint. The client needs to know that it's not possible to add tasks to a sprint once the sprint is underway without removing something. The only exception here would be if a task is really quick.
If we are not able to get everything done in the sprint, the expectations aren't clear that estimates are what they are called: estimates. If we say that slugs should take 2 hours but they end up taking 4, we shouldn't have to absorb the cost and work extra to make up for that.
I don't know a solution to this yet but I'll be thinking about this some. Given that we have a new sprint coming up, I'd like us to put this as the top priority.
These past two weeks we ended up taking on much more work than we could handle. This week, I intended to work 20 hrs but ended up working far more.
Here are the tasks I had to do:
I went into the week knowing that the first three tasks were in the sprint. But I'm not sure how we got in a situation where we ended up with additional work. I spent most of Saturday writing code so let us just say I'm pretty motivated to get this RFC resolved.
I think the issue comes from three problems
Even if we are clear on the sprint, additional tasks end up finding their way into the sprint. The client needs to know that it's not possible to add tasks to a sprint once the sprint is underway without removing something. The only exception here would be if a task is really quick.If we are not able to get everything done in the sprint, the expectations aren't clear that estimates are what they are called: estimates. If we say that slugs should take 2 hours but they end up taking 4, we shouldn't have to absorb the cost and work extra to make up for that.I don't know a solution to this yet but I'll be thinking about this some. Given that we have a new sprint coming up, I'd like us to put this as the top priority.