Mud Design - The Agile Way

One of the issues the Mud Designer has suffered with over the years is lack of direction. I have a grand vision, but don't have any kind of proper design documentation wrote up or flow charts created to indicate the apps flow. Without a lot of the lower level stuff defined, I find myself hitting barriers because of gaps in the engine I missed. I end up fixing or adding things to bridge the gap, which in turn break other items in the engine and before I know it, I've someone managed to modify a massive chunk of the engine in one check-in.

If it's one thing I've learned from my day job, is that improper planning can ruin a product. We spend a lot of time planning and making sure things are crystal clear before progressing and it makes a huge difference. In our previous Sprint, I improperly planned it and we failed to finish it. This really made me think about the Mud Engine too. I haven't ever properly planned out what the finished product is, nor what features it should fully support. That's going to change.

I created a VisualStudio online project tonight for the Mud Designer. It gives me access to a full TFS project, with Agile planning tools, user story and work item support and source control support all in one. The plus side is I have a one stop shop for the project and it's work items. I'll even be able to attach Tasks, User Stories and Bug items to my check-ins. The fact that it supports Git is a plus, however I just stuck with the standard TFS source control since that's what I use on a daily basis at work.

The downside to this is that VisualStudio online does not support open source projects. So the source code will no longer be hosted on Codeplex. I will provide the source code as a download on codeplex, so I can stay within the Codeplex policies, but the actual source code repository will be moved to a closed server.

Most of the users who downloaded the product, did not download the source so I don't think this will be a big deal. The source will still be available, just at a higher scope. Each individual check-in will not be made readily available to the public.

So moving forward, I've started writing user stories and got on board the agile bandwagon for Mud. I have a lot of ideas that I have always wanted to do, but never got them wrote down. Without seeing the cool concepts and ideas every day, motivation tends to suffer. This should go a long way towards addressing that. I'm also anxious to start tackling it in verticle slices and shipping a product again. I enjoyed the feedback and communication I received from users when I was actively pushing new versions out. I'm hoping to get some of that interaction back.