I see this question come up once in awhile on the forums and I thought it would be nice to give you a little behind the scenes information on how we designed IP.Board 2.2.
When we map out a new release, we usually have a specific goal in mind for that release. This can be anything from increasing security, reliability, new features, or some combination of the three. For example, when we started mapping out IP.Board 2.2 the overriding goal of the release was to streamline the software and make it easier to use. We didn't want to focus on adding a lot of new features, we wanted to improve what was already there.
We spent a lot of time looking over every section of the forum and figuring out how we could make everything easier to use. We already knew most of the areas that needed improvement from our day to day customer service issues. We ended up with a huge list of tweaks, enhancements, and minor features that we wanted to include in 2.2.
With development of 2.2 now underway, we began discussing adding one major feature to the release to add a little flavor. We decided that the profile could really use a overhaul, it really had not changed much since 1.0 and was one of the more stagnat portions of the forum. In fact a new profile system was something we had discussed off and on for a few years and with social networks on the rise, it seemed a good time to finally make those changes to IP.Board. Also, while the profile system was certainly a massive change, it still was more or less inline with our goal of improving existing functionality.
We also selected a small group of customers to test 2.2 as it was developed and give feedback on the changes we were making. They were shown the profile system in a few different stages and their feedback was instrumental in the final profile.
All the while this is going on, we continue to closely monitor the feedback forum and keep an internal list of features we want to add to the board. This list basically breaks down into three sections: Include in this release, would be nice in this release, and to be included in a later release. Anything that fit in with our goals for this release found it's way onto one of the first two lists. Anything that did not, but was still a good idea, found it's way onto the third list. After 2.2 was feature locked, everything left was moved to the last category.
That's obviously a pretty broad overview of the process, but I think it gives you a good idea of how we handled 2.2. I plan to go into more detail on some of these points in the next couple weeks. If you have any questions about our development process, feel free to post them here and we may blog on it in the future.