Continuing our theme of Frog Software Design Principles (First Post):
The next stage is to take these options, get a group of people together that understand the system inside out (preferably including people from outside of the development team, although those with adequate knowledge will be few and far between). Outline the possible additions, the options, the favourites and then start dreaming! We’re looking for a number of possible journey’s that these development could go on. What other capabilities might we want to add? Where could this go if we had infinite resource and concentrated completely on it? What other cool things would we want to add to it?
There will almost never be a situation where this exercise doesn’t influence the way we choose to implement the additional capabilities. It will help us select the preferred option and shape the way it’s put together.
In principle, we are growing the scope of the project as much as we can in as many different ways as we can. The key to this step is that it forces us to think ahead and consider how our enhancements could be used in the future, reducing the chance that we’ve just invented a dead end that only adds value to the specific issue in front of us.