Category: Technique

Stakeholders: Building a User Story Roadmap

This is the third in a series of posts that began with “How to Capture Software Requirements Using Story Roadmaps”. The focus of this post is stakeholders. The importance of stakeholders in any enterprise software project cannot be overstated. Let me say that again … The importance of stakeholders in any enterprise software project cannot […]

How to Capture Software Requirements Using Story Roadmaps

There’s much disagreement among software practitioners about how to capture requirements. Some argue in favor of lengthy, detailed documentation. With equal vigor, others argue in favor of simple tools like user stories. What should you do? There are valid arguments on both sides. Detailed requirements documentation can supply levels of insight that are hard to […]

There’s a Problem with Burndown Charts

Okay. I admit it. I’m not a big fan of burndown charts for tracking software release progress. You can flip them over and call them burnup charts but I’m still not a believer. Here’s why. The burndown chart has an end goal. That goal is total user story points expected to be delivered for the […]

User Stories and Security Stories Are Not the Same

The folks over at the non-profit group, Software Assurance Forum for Excellence in Code (SAFECode) have published a great document called “Practical Security Stories and Security Tasks for Agile Development Environments”. Here is the direct link to the PDF file. It’s a 34-page document that undoubtedly required a lot of work by a number of […]

10 Tips for Enhancing Waterfall Software Development

So your company uses a waterfall approach to software development and you’re stuck with it. Your management doesn’t understand agile development and doesn’t want to. They like how work gets done even if projects often take longer than they’d like. Now what? Other than finding another job, your options are limited. Here are ten suggestions […]

User Stories Aren’t Just About Business Users

Some folks criticize agile approaches to software development like Scrum, Kanban and XP, with the claim that there’s too much emphasis on the end user. How can you develop software systems that are robust, fast and secure using stories? End users are not going to write stories defining the technical characteristics of a system. That […]

Team Velocity Is Not as Simple as It Seems

The subject of Scrum team velocity can be confusing and controversial. My intent is not to add fuel to the fire but rather, to contribute to the knowledge base around velocity and what it represents. The simplest way to do this is via an example. Let’s say a Scrum team has an average velocity of […]

Legacy Code Is a Tangled Web for Agile Developers

What is one of the biggest impediments to adopting agile development? It’s a bit of a rhetorical question because there are many answers, with cultural issues being high on the list. For this post, I’d like to focus on legacy software. Every established company has software systems that are used everyday and may have been […]

Software Estimates: Are You Feeling Lucky?

Estimating the delivery date for a software application can be notoriously difficult. Miscalculations of 100% or more are surprisingly common. Let’s examine a couple of possible situations. 1) You’re working in a software-as-a-service environment like or Microsoft Dynamics. The stakeholders want to know how long it will take to add a simple feature. You […]