Windows: a software engineering odyssey

This is a text transcription of the slides from the “Windows: a software engineering odyssey” talk given on Microsoft culture by Mark Lucovsky in 2000. This is hosted here because I wanted to link to the slides, but the only formats available online were powerpoint and slide-per-page HTML where each page is basically a screenshot of a powerpoint slide. If you’re looking for something on current Microsoft culture, try these links.

Agenda

NT timeline: first 10 years

Unix timeline: first 20 years

History of NT

History of NT, cont.

Design longevity

Goal setting

NS OS/2 design workbook

Developing a culture

The NT culture

NT 3.1 vs. Windows 2000

Development team

Source control system (NT 3.1)

Source control system (Windows 2000)

Process management (NT 3.1)

Process management (Windows 2000)

Team size

Product Devs Testers
NT 3.1 200 140
NT 3.5 300 230
NT 3.51 450 325
NT 4.0 800 700
Win2k 1400 1700

Serialized Development

Defect rates and serialization

Defect rates data

Product Team # Defects/dev-yr Fix time / defect Defects / day Total fix time
NT 3.1 200 2 20m 1 20m
NT 3.5 300 2 25m 1.6 41m
NT 3.51 450 2 30m 2.5 1.2h
NT 4.0 800 3 35m 6.6 3.8h
Win2k 1400 4 40m 15.3 10.2h

Dev environment summary

Focused fixes

Source control system

Source code restructuring

New tree layout

Team level independence

Automated builds

Productivity gains