Microsoft Commits to Agility

Scrum could speed up revision cycles.

Even as Microsoft Corp. launched Visual Studio 2005, SQL Server 2005 and BizTalk 2006 here last week—the first major releases for the products in several years—the company acknowledged it must now revise its wares more frequently to respond to customer needs.

One way Microsofts development teams intend to do that is through the use of agile development methodologies, such as Extreme Programming and Scrum, officials said. Scrum is an agile method for management of software development projects.

David Treadwell, corporate vice president of the .Net developer platform group at Microsoft, said that while Microsoft welcomes the use of methodologies such as Scrum, "were not mandating them, but were encouraging them. So Scrum is one process—the idea that teams meet once a day for half an hour, figure out what theyre going to do, then go off and do their work very quickly. The other is Extreme Programming, the concept where you might have two people working on a given piece of code, and the idea is that two minds are better than one because you can find problems faster."

Treadwell added: "One thing we find is that you cant excessively mandate software development processes on a broad scale. Its most important to mandate levels of quality."

The change in methodology is the result of Microsoft projects outgrowing the processes that the company has had in place for years, Treadwell said.

Steve Ballmer, CEO of Microsoft, said during his keynote address at the launch event that the Redmond, Wash., company needs to get more agile and produce software faster, to the tune of delivering technology every 18 to 24 months.

Asked in an interview following his keynote how long the revision cycle for these products will be, Ballmer told eWEEK: "Its short. I mean whether that winds up being more like one year or more like two years, well have these products turning much more rapidly. Were definitely committed to a much closer cycle time. Not just for the next release but from here on out."

Robert Galen, principal consultant at RGalen Consulting Group LLC, in Cary, N.C., said a typical Scrum team is made up of five to 10 people, although there could be more. The team then works in Scrum "sprints" of about 30 days to complete a task or set of tasks for a particular milestone.

Eric Koetsch, a software test engineer at Bose Corp., in Framingham, Mass., said Bose is using Scrum in a development project he is involved in.

"I can definitely see how Scrum could be useful in a test environment," Koetsch said. "Scrum helps add to the level of quality in the software youre developing. You have to really buy into the process, but once you see success in some of the early sprints, everybody seems to follow on and take advantage of the opportunity to build better code."