I’m working on a new project and we’re using a pretty nice stack. NHibernate, Spring, MVC… the list goes on.
One thing I’ve noticed tho is that in the 6 months since we’ve started we’ve had a new release of NHibernate, a new release of a third party control toolkit and Windows 7 is on the horizon.
We’ve had problems before where being stuck on an old version of a technology has cost us dearly, so I’m wondering what are some techniques we could use to help ensure that our transitions to the latest versions of things are as painless as possible?
I agree with the other comments here about updating often. If you wait too long it will be enough work that you will notice it in the project productivity.
The way we do it is the following.
This way we do not loose productivity of the team during the upgrade. Note this would be much more difficult without unit tests.