BrainBlog

BrainBlog is the Brains4All weblog. Established 2004 in The Netherlands. Brains have been working in IT since 1983, working on the internet since 1993, and using their own agile development process for design and application development since 2003. We talk about about design and usability, the industry of software and web development, web applications and simplicity, beautiful and spectacular things.

DDP: What is a user story?

January 25, 2007 |
marko

We’re starting a new series here on BrainBlog about Design and Development processes here at Brains4All. Hopefully we can share some of our insights with you and maybe you will find it useful. Also for those of you looking to purchase Design or Software Development services we hope it can give you some insights as to what makes a successful project and what to look for in a supplier or a vendor.

This first installment is actually a frequently asked question, we use user stories to describe functionalities and estimate scope of the project. A lot of people wonder why we don’t need big design documents or requirements gathering. Stories are a part of the answer.

UserStory.gif

Basically a story is a short story, about a paragraph or two, that describes the functionality to be developed. It is kind of like a use case only it does not try to be as complete or technical. A story is just enough text to describe what is needed and to be able to estimate the cost/difficulty and duration of the development. A story does not try to be complete because only in working software can you really see how it works and what it does, and if that is what you really need for your business. What is the value of a piece of software that you never use?

Zero, Zilch, Nada, Nothing.

Why would you pay for something that has no value? That does not make sense.

Developers build what is described in the story and then release it to the development server where the customer can use it to test it out. When you've experienced how it works we hope to get your feedback and use that to improve the functionality in the story. We repeat this process again and again until we get it right, and you're completely happy with the working software that was described in your story.

Basically a story is a guarantee for a customer to be happy with the functionality delivered, regardless of the amount of time spend to get it right.

Brains4All uses a relative system to estimate our projects. We do not estimate in days, hours and minutes but in a unit we call story points. What we're saying is a story with 3 story points is three times more difficult then a story with a 1 story point estimate. We average out how many story points we do in a month as a team and divide the total team cost on that amount. That is how we arrive at the cost of a project and it also gives us an excellent indication of the amount of time we need to complete a story. Of course we make mistakes too, but while we cannot pinpoint the delivery date of a single story, we can guarantee that a whole project will be delivered on a certain date.

As a customer this offers you some advantages:

  • It means as a customer, you get the working software on a guaranteed delivery date.
  • It means as a customer, you know the total cost for this project to you, for this set of functionality, no surprises, and no late fees.
  • It means guaranteed quality of the software.
  • It means as a customer, you get the functionality you need and that you're absolutely happy with it, or you don't have to pay. (What? – Yes you don’t have to pay until you’re happy – at least with Brains4All)

It also means to our not so tech-savvy customers (don’t worry – you’re not alone) that they get a proposal that is not swarming with jargon or technical terms they don't understand. Even better, we try to get our customers to write the stories themselves - in their language, so the stories actually mean something to them.

For us as a vendor it means we can offer these advantages to our customers whilst keeping the flexibility we know we need in a software project. By using an abstract unit (story points) to determine scope we have the ability to have the customer change scope mid-project, just as long as the total number of story points stays the same.

As you can understand our development process depends rather heavily on communication with our customers. The speed at which high quality feedback can be given is decisive for project turnaround.

That is why we like to get in touch with our customers first to discuss what is needed. In talking to our customers in the past few weeks I have been very positively surprised in this respect. I've found a lot of excellent communicators capable of producing and getting across needed information almost effortlessly, information that had to cross time-zones, language-barriers and some oceans as well. I guess that in the information age people adapt to embrace new ways to exchange information and they are becoming more adept using these technologies more efficiently. That is why I'm excited about our upcoming projects.

Please let me know how you feel about our story concept and what other questions you might have about our development process.

  



Brains4All and 14Dayz nominated "Best Dutch Company" and "Best Dutch App"

January 4, 2007 |
marko

web20awards_logo.gif

We were very pleased to find out that both Brains4All and 14Dayz have been nominated for the Dutch Web 2.0 Awards organized by BlueAce, the Dutch Web 2.0 Blog. We’d appreciate it if you’d head over to the site and vote for us in either the “Best Dutch Company” or “Best Dutch App” category.

We're already very pleased with the nomination! Thanks guys!

  



Archive entries


Archives

Categories


Sign up today