What Makes a Good User Story?

Peter Bodenheimer

The other night I was having a discussion with a few folks about Flatsourcing and how we work. After my brief spiel about working in an agile way with technically proficient clients we started discussing how user stories fit into the process.

One of the less technical people in the conversation wasn’t familiar with user stories, so we spent a few minutes explaining the benefit of the user story versus a full blown specification doc. My favorite moment was when I got to share what I think is the best quote about the downside of large specification documents:

“Walking on water and developing software from a specification are easy if both are frozen.”
- Edward V. Berard

Once we were all on the same page again the conversation turned to what makes a good user story. Is it better to be brief and vague or slightly less brief with more detail? Do they need to be written out on a card or can you just create a quick text doc with a bunch of stories laid out in it?

It got me thinking and after doing a little searching this weekend I found this article, Writing Good User Stories, that I thought had some great insights to help me resolve my dilemma.

User stories should ultimately be short and sweet, but they can often begin as bulky and clunky…that’s the process. In the end, they should be reflective of the vision they are meant to break down. They should help a developer who may not “get” the larger picture build the blocks upon which an application is going to be based on without needing to “get” the big picture.



What makes a successful Internet entrepreneur?

Peter Bodenheimer

I came across an article this morning called the 12 Characteristics of Successful Internet Entrepreneurs and it got me thinking about what aspects of the list Flatsourcing brings to the table for our clients. While several of our clients aren’t developing their own products, but rather are doing client work, those that are certainly fit the mold of the entrepreneurs in the article.

Some of the things that Flatsourcing offers to these clients are; Experimentation, Simplicity, Focus, Flexibility, and Frugality. We probably also bring a touch of eccentricity, but tackling that subject is for another day.

Experimentation and Flexibility - Both of these are part and parcel of working using the Agile methodology. We are constantly developing and refining based on the real world feedback we get from our clients’ customers. Being able to try different things and then having the flexibility to react to feedback and adjust on the fly is critical to the success of our clients and a core tenant of how Flatsourcing approaches each project.

Simplicity and Focus - Whether it is using a standard set of tools or scheduling regular standup meetings we try to maintain the focus of our team and our clients on the work. Part of the reason we have come to work solely on a retainer basis is so that we can remain focused on the task at hand rather than the ever changing scope of a given project. Simplicity of design, clean and concise code, and a process that is both simple and focused allows us to produce the best work for our clients and give them the best possible chances for success in their ventures.

Frugality - Cost is important, but not as important as value. We strive to provide value to our clients at a cost that is competitive. Flatsourcing isn’t Elance or Rent a Coder, but rather an option for the sophisticated business with development needs that can’t be filled by other options. We’re not the budget option, but the best option within a reasonable budget. To us the end goal is to provide the best value within the financial realities our clients face every day.

To find out more about how Flatsourcing can help you grow your business, drop us a line and set up a time to learn what we do and how we do it.



Beyond Dev - Choosing the Right Business Model

Peter Bodenheimer

Ran across this really fascinating post, choosing the right business model, from client and all around friend of Flatsourcing, Ryan Carson’s blog and wanted to pass it along.

We work with a lot of early stage start-ups, and while having a great idea is the certainly best place to start, it clearly takes more than that to turn it into a thriving business.

In the presentation by Roan Lavery, you’ll get useful info on the following topics:

  • Finding your niche
  • Should you charge or go ‘Freemium’?
  • Understanding the psychology of free
  • Agile business development

Since I have a personal fascination with anything that uses the term agile, I had to watch the whole thing. I’m glad I did, and I recommend you take a few minutes to check it out when you can, it’s well worth the time.



Selling Agile Development

Peter Bodenheimer

In some recent calls with prospective clients I seem to have spent some extra time discussing the benefits of our decision to focus on the Agile Development methodology. More and more people are beginning to understand the benefits of agile versus the time and effort spent in the past focused on scope documents, dense detailed project specifications, and trying to peek into the future so they can plan accordingly.

I’ve found that the simple 4 points found in the Agile Manfiesto help explain our choice and picque the interest of those unfamiliar with agile.

  • Individuals and interactions over processes and tools
  • Working software over comprehensive documentation
  • Customer collaboration over contract negotiation
  • Responding to change over following a plan

While these 4 points get to the core of agile, there is also an understanding that all of the items on the right side are in themselves valuable, but only within the context of the greater goal of developing a meaningful end result.

Tools and process are very important, and if you would like to know more about ours, check out Chris’s post from earlier this week.

For more resources on Agile Development, check out the links below:

http://www.agilealliance.org/
http://www.targetprocess.com/blog/
http://www.useit.com/alertbox/agile-methods.html