Skip to main content


Showing posts from 2008

User Stories: you're not Agile without them

Failure to effectively transition to Agile development is often based on a fundamental failure to understand what a User Story is.

Allow me to explain.

The most important aspect of a User Story is that it's an independently *schedulable* unit of requirement (feature). The key to achieving the "independently schedulable" characteristic of a user story is that you express it in terms of how a "user" would use it. This leads you to a unit of functionality that's implemented end-to-end (UI to backend) that a user can actually interact with.

Not surprisingly, because of the focus on how a user would think about a feature, a user stories are highly readable - and could very well be written by the users themselves. However, the other important and less obvious aspect of a User Story is the emphasis on communication with the end-user and getting confirmation on the acceptance criteria.

Describing all the requirements as User Stories for a decent sized product is rigoro…

I say XP, you say Product Management; I say Scrum, you say Project Management

Chances are you've heard about Agile before but you don't know what the heck it is - even if you think you do.

Chances are:
if I say "Agile", you think "methodology"if I say "Agile process", you think "Scrum"if I say "Scrum", you think "daily standup meetings"if I say "XP", you think "Pair Programmingif I say "Requirements", you think "PRD" The problem with the above word/phrase associations is that they establish an incorrect image in your mind about the essence of XP, Scrum and Agile. It is this image that determines in the end whether you succeed or fail when you attempt any Agile method; in fact, it is this image that decides if you'll ever seriously attempt to use an Agile method to build software.

No wonder that Agile methods often get such a bad rap from smart, well-intentioned, successful software developers, engineering le…

What does your VC have to do with your spouse?

Last week at Agile Entrepreneurs, an entrepreneur asked the inevitable question of valuation and equity you need to give up in return for VC funding. As the other entrepreneurs in the room chimed in with the expected answer, the analogy hit me.

Getting funding from a VC is like getting married. No matter who you marry, you give up 50%. And while every man dreams of marrying a hot bombshell, who he ends up with has a lot to do with who he is and how good he looks.

That pretty much sums up the terms you're likely to get from VCs:

The amount of equity you need to give up is fairly constant, irrespective of the amount of money you raise. And the amount of money you're able to raise depends on your leverage.

Moral: Focus on making yourself (and your company) more attractive, i.e. building value. There's not much else you control when in comes to negotiating with VCs.

Venture Quotes for a softening economy

Guess who said the following?

"There's a lot of hot air and arrogance in the (VC) business that we all would be better off without""...useless pontificating in front of entrepreneurs working harder than (VCs)...""...VCs who constantly speak of deals and projects, reveal their self-interest and slight the labor and dreams of the entrepreneurs"

If you think it's some disgruntled entrepreneurs who don't "get it", think again. In the past, I've made some pretty strong but heartfelt things, and I could have said the above, but I didn't.

Read on here to learn who uttered these pearls of wisdom.

What's in a User Story?

Being Agile: my occasional ramblings on Agile development & Extreme Programming

I constantly run into people who claim to be Agile but don't understand XP (extreme programming). And a lot of people fail to grasp the essence of XP because they get stuck on an XP principle that they find threatening - 'pair programming' and 'test driven development' are the usual suspects.

I'll focus on Pair Programming and TDD another day. Today I want to discuss the most important and fundamental aspect of XP - User Stories.

User Stories are like better, state-of-the-art Use-Cases - simpler and lending themselves to be scheduled individually.

Think of a User Story as a fine-grained Use-Case, leading to better estimation of effort, tracking of progress, and higher quality of implementation (fewer bugs due to requirements that are fine-grained, thorough and less ambiguous).

A User Story looks just like a bug would in a bug tracking system:
a one-line title summarizing the requir…