If you can’t come up with a good user story, why are you doing it?

Often times when creating user stories we come across the question of who the user or persona in the user story should be.  For example, if we are re-designing the default website template, which many of our customers end up swapping the logo and using, did we make the new design for them or is it for better branding and marketing?

When we make a decision to spend developer resources on something that doesn’t appear to have a direct impact on our users, should we be doing it?  Sometimes it seems the answer is yes, but then let’s not create a user story.  However, if everything else being done on a product is a user story(with a target persona) then there’s no chance you can ever truly know the status of the release.  That’s when scope creep can get out of control. What other things can we do that do not require a user story? Can’t we just do things adhoc that we know need to be done without having to track their progress and define their requirements and goals?

The answer should be no. Because if the answer is yes, then you’re saying it’s not anyones responsibility to know the true status of a release.  If you don’t require tracking of efforts against a timeline, do not expect good estimations from anyone.  And in the end, no one actually wants that. The amount of time you saved by not having to document or define a requirement is lost in the amount of frustration and loss of control you feel when it comes to release day.  You never know quite what was done in the release, and your customers expect that you do. Of course they do.

If you don’t know what’s in it, who does?

User stories can be made for the development team too

A target persona for a release can be an internal developer. For example, we have tasks to complete internally such as update the build server with the new code to automate builds and updating the release folder. The <type of user> can be a developer. Not the end user developer, but an internal developer.


As an internal developer I want to update Team City with new projects for the query portal release and branch so that source code compilation and building can be automated making it easier to manage releases