This is somewhat larger than simply branching (or maybe not) but I thought this was the best place to ask this.
We are beginning to re architect our site in a way that will make things much more modular and provide release independence for the various areas of our application.
Each section of our application would be its own independent app. These apps will be released independently but follow a common company-wide iteration schedule and, hopefully, have the workitems managed in a common TFS project.
Here would be a common scenario:
App 1 is released after iteration 3
App 2 is released after iteration 5 and a service pack release in iteration 7.
App 3 is also released in iteration 5 with a service pack in iteration 8 and a second major release in iteration 12
The way these apps will utilize common functionality (logging, persistence etc) will be through an underlying framework that can also be released independently.
My question is, what would the recommended strategy be for these? Would we want to keep them in the same project due to the fact that the iterations are common or would we want to give them each their own project so that the branches are more normalized
to the release patterns of the particular application.