By Peter Bell

It's All About the Tasks . . .

This is a short essay I wrote the other week for a design partner to explain how we think about specifying web applications, but I thought it was worth sharing. It's simple, but it seems to work really well for us.

How do you handle the specification, acceptance and measurement of the web apps you build?

[More]

Defining Dark Matter

Dark matter is a term I've heard for requirements that were not explicitly included within a specification (whether a BDUF detailed spec or an agile user story). Typically dark matter is the cause of most disagreements about scope on fixed bid projects.

For example, if the user story states that there should be a password and confirm password field but validation isn't discussed, it is within or outside of the quoted scope to ensure that the password and confirm password field matches?

What about an application which must check inventory level where the developer assumed this was a field in the product database and in fact it requires integration to a complex third party system?

What about a client having "assumed" that inventory would be on a per warehouse basis and explaining that without that the project is unusable and they are out of budget for changes? If the fact that they had more than one warehouse was never mentioned, this can cause a problem.

On our part, while we might try to take care of the password/confirmation password issue, we make it very clear that unless something is written down as part of a user story, it is not included within the project. The fact is that we can't provide a fair fixed bid for features that will meet a clients business needs as we have no idea what kind of dark matter might be lurking. We do our best to poke around in the discovery time available, but all that we commit to within a fixed bid is creating working software that implements the explicitly documented elements of the user story.

The problem of course is that this often doesn't meet the clients needs which is not good for either of us - which is why we're looking to move towards a blended approach.

Managing Risk in Website Development

I've found it very interesting that on an XP list recently there's been quite a lot of talk about fixed price for features which at first seemed to me the antithesis of the Agile approach. At the same time, we've been developing fixed price software for years, but I'm wondering if a blended model might be the ideal solution . . .

[More]

On Writing Use Cases

Just saw a nice article with some good thoughts on tightening up the way you write your use cases/user stories.

Any other tips anyone would like to share?

How to Build a Web Application

I've been doing a *lot* of thinking about the most efficient and elegant way to design and build a web application. Here's my best thinking to date. Any input appreciated . . .

[More]

The Structure and Delivery of Small Project Consulting

When you consult on larger projects or many varied projects, the majority of the time is spent in client specific activities. For instance, you may spend a couple of hundred hours developing a rich domain model to really understand their unique business processes. However, many smaller consulting projects often have strong similarities to other projects you've undertaken (how much real innovation can you fit into a 60 hour web application?!). The question is what is the best way to handle that . . .

[More]

BlogCFC was created by Raymond Camden. This blog is running version 5.005.