Programming Windows: War Room (Premium)

Tensions ran high in January 2003 as the Windows team built Windows .NET Server 2003 each day, moving inexorably towards the shipping release.

Note: Much of this article was originally published in 2003, and it was based on unprecedented access to the teams responsible for building and shipping the product that became Windows Server 2003. However, I’ve edited it here to include information not found in the original article and to provide a conclusion to the story.
Developing Windows
One element about the NT family of operating systems---which evolved from Windows NT to Windows 2000, XP, and, now, Windows Server 2003---that has remained unchanged over the years, though the details have changed dramatically, is the build process. Somewhere deep in the bowels of Microsoft, virtually every day, at least one Windows product is compiled, or built, into executable code that can be tested internally by the dev teams. For Windows Server 2003, this process is consummated in Building 26 on Microsoft's Redmond campus, where banks of PCs and CD duplicating machines churn almost constantly under the watchful eyes of several engineers.

The details of NT---excuse me, Windows---development have changed dramatically since the project first started in the late 1980s. "Back in the early days, we started with 6 people," Microsoft Distinguished Engineer and Windows Server Architect Mark Lucovsky told me. "Now there are 5000 members of the Windows team, plus an additional 5000 contributing partners, generating over 50 million lines of code for Windows Server 2003. Getting all those people going in the same direction, cranking out code, is an enormous task. Building the results of their work, compiling and linking it into the executable and other components that make up a Windows CD is a 12- to 13-hour process that is done every day of the week. It's an enormous task, the biggest software engineering task ever attempted. There are no other software projects like this." And Microsoft compiles the whole thing---all 50+ million lines of code---almost every single day, he said. "We're evolving the development environment all the time," Lucovsky noted.

"When we turn the crank, we compile the whole thing," he said. "We have to be able to reproduce the system at any point in time as well. So developers check-in code, we press a button, and out comes a system. We should be able to reproduce that [build] three years in the future, using the various tools, compilers, and scripts we used at that time."

David Thompson, corporate vice president of the Windows Server Product Group at Microsoft, elaborated on the process. "The key here is that we built up the system over the years, advancing it in three dimensions," he said. "First is the product itself. Second is the way we engineer the product. And third is the way we interact with a broader set of customers. The product evolution is pretty straightforward. The source code control system we use now...

Gain unlimited access to Premium articles.

With technology shaping our everyday lives, how could we not dig deeper?

Thurrott Premium delivers an honest and thorough perspective about the technologies we use and rely on everyday. Discover deeper content as a Premium member.

Tagged with

Share post

Please check our Community Guidelines before commenting

Windows Intelligence In Your Inbox

Sign up for our new free newsletter to get three time-saving tips each Friday

"*" indicates required fields

This field is for validation purposes and should be left unchanged.

Thurrott © 2024 Thurrott LLC