Microsoft's SQL Server development team learned a hard lesson from its work on SQL Server 2005: customers do not want to wait five years for an upgrade.
From now on, a new development regime called the Software Reengineering Initiative (SRI) will ensure that releases ship every two years whether new features are ready or not, according to Mark Souza, who heads the team.
For many customers who signed up for Microsoft's Software Assurance licensing model in the summer of 2002, the wait for SQL Server 2005 has been particularly painful. One of the touted benefits of Software Assurance was that the cost of upgrades would be covered, but as some analysts pointed out at the time, this deal carried a potential sting for customers.
Three years later that warning hit home when, at the end of the first Software Assurance term, there was still no sight of an upgrade to either Exchange or SQL Server.
With SQL Server 2005 having finally launched earlier this month, Microsoft says it has learned its lesson. "We are taking care of our customers, one by one, who were expecting an earlier release," said Souza, speaking to ZDNet UK at Microsoft's IT Forum event in Barcelona on Tuesday. "We learned a lot, but one thing you have to remember is that it is about more than just upgrades — it is about maintenance too."
The big lesson that the development team learnt, said Souza, was to change the engineering processes to ensure a two-year release cycle. "SQL Server will be on a two-year release train. If your feature is not done, you catch the next train. With SQL Server 2005 we had lot of features 80 percent done, but because of the way we engineered the product we could not just yank them out."
Perhaps the biggest change brought about by SRI lies in the testing process. "The way it worked before was that individual groups would develop and test a feature and then we had to test all the other components that used that feature."
One example of this is database mirroring, which has been left out of the first release of SQL Server 2005, but is now due to ship "sometime between the first and second quarters of 2006," said Souza. " We built it, but then we had to make sure it worked with every single component. The testing process just blew up as we added more features. And SQL server 2005 has more features than any previous release so the testing matrix was bigger than ever."
SRI means changing the way developers work on a project. "You work on one team but work with a feature team until you complete that feature, so it does mean we can't work on as many features, but when they are done they are done. This also makes it easier to know whether that feature will get into a particular release or not."
The result — an end to the idea of the big release. "Up front we will have themes for a particular release, such as zero admin costs," said Souza. "We will then list everything we want to do, and tick off as many items on that list as possible before the deadline."
The idea, which has been pioneered in the SQL Server group and is drawing interest from other product groups within Microsoft, is a direct result of the five-year wait for the latest SQL Server. "Oracle shipped twice in last five years, as did IBM. But if you look at their release, they are small themes, and customers seem to adapt to that well," said Souza.