Ever wondered how Microsoft takes the combined work of over 11,000 engineers developing Windows at Microsoft, bring it together in one branch, build, test and get it onto your desktop. Want to know what happens to the telemetry, error reports and bugs that you send and how Microsoft tracks them through to fixes. In this session we'll take you through the VSTS based engineering system used by Windows, talk about the transformation to Agile practices and to Git for version control and talk about what improvements we are hoping to make in the future.
14. 11,985
7,305
Software Engineers in WDG that need to work together
Developers bringing in code to WDG repos
3,974,374 Commits in Fall Creator’s Update (RS3) development timeframe
497,903 Pull Requests for RS3
68,646 Official Lab builds for RS3
1,159 Machine years of build resources for RS3 Lab builds
4,201,457 Developer desktop RS3 builds
949 Machine years for test resources during RS3
3,188,972,675 Test cases executed during RS3
15. Multiple Daily
Windows Defender signature updates
Store and Services updates
Weekly Windows Servicing updates
Daily - Biweekly Windows Store Apps updates
Monthly Xbox updates
Semiannually Windows feature updates
18-24mos Device releases
23. Dependencies
Finding the key
work that the
release and other
teams are
dependent on
The Big Picture
Seeing “The Big
Picture” in that
sea of data
Team Execution
Helping the
teams monitor
their work, their
stats, and
figuring out
where things go
26. 7.3K Developers making code changes
11K Topic branches
367K Commits
33K Pull requests
9.7K Branch Integrations
10 commits per minute
1,100 pull requests per day
ON AVERAGE, EACH MONTH
27. • Evaluated Git against Source Depot
• Found Git was the only solution that
could meet all our needs
Source Depot
28. 28
Git was built to work on the Linux kernel,
meaning that it has had to effectively handle
large repositories from day one.
https://git-scm.com/about/small-and-fast
29. Linux
640MB
3k files
90MB pack file
292KB index file
Roslyn
230MB
Git
34MB
57k files
1.7GB pack file
5.5MB index file
12k files
219MB pack file
1.8MB index file
46. BRANCHING TO ISOLATE DEVELOPMENT
MASTER
INTEGRATION
Developer Private Loop
INTEGRATION
LEVELS BUILDS CHANGES DEVS
L0 1.2% 0.3% 0.7%
L1 12.3% 7.3% 8.2%
L2 35.3% 30.5% 36.5%
L3 47.2% 59.9% 52.3%
INTEGRATION INTEGRATION INTEGRATIONINTEGRATION
WORKING WORKING WORKINGWORKING
WORKING WORKING WORKINGWORKING
47.
48.
49.
50.
51. BUT ISOLATION CAN CREATE TIME CHALLENGES
MASTER
INTEGRATION
Developer Private Loop
INTEGRATION
LEVELS BUILDS CHANGES DEVS
L0 1.2% 0.3% 0.7%
L1 12.3% 7.3% 8.2%
L2 35.3% 30.5% 36.5%
L3 47.2% 59.9% 52.3%
INTEGRATION INTEGRATION INTEGRATIONINTEGRATION
WORKING WORKING WORKINGWORKING
WORKING WORKING WORKINGWORKING
52. TOPIC TOPIC
WHICH IS WHY WE’RE WORKING WITH VSTS ON A WINDOWS SCALE PCV
MASTER
Developer Private Loop
TOPIC TOPICTOPIC
WORKING WORKING WORKINGWORKING
53. Prepped as
LKG
Build
PRE-CHECKIN VALIDATION
WORKING
BRANCH
TOPIC
BRANCH
Developer makes code
CHANGES IN TOPIC BRANCH
Latest changes
Synced and built in
ROLLING
BUILDS
Pre-Checkin
BUILD
Combined with scoped
CHANGES FROM DEV
Pre-Checkin
TEST
Successful
BUILD?
Successful
TEST?
Once Pre-Checkin Criteria are
met Developer can make a
PULL REQUEST
57. Microsoft Confidential
WHY INSIDERS?
• Long History of Beta Programs
• Complexity
• 8.5M Unique Devices
• 21.2M Unique Apps
• [N] Configuration Options
• Latency
• By the time people saw our work, it was too late to give feedback
(Fortunately in the real world these things tend to cluster, but it’s still a big set)
58. 58
WINDOWS DEVELOPMENT IN THE OPEN
0 200 400 600 800 1000 1200 1400
Windows 7
Windows 8
Windows 8.1
Windows 10 (10240)
Windows 10 (10586)
Windows 10 (14393)
Windows 10 (15063)
Windows 10 (16299)
Windows 10 (RS4)
Windows 10 (RS5)
Delta Start-First Public Delta First Public Delta RTM GA
15 public previews
6 public previews
44 public previews
37 public previews
*3 public previews
* Not yet RTM
2 public previews
3 public previews
1 public preview
28 public previews
25 public previews
59. Every country in the world has
Insiders, covering ~ 95% of hardware
components found on PCs
Insiders are
worldwide
65. Areas Owners
SHARING OUR CODE INTERNALLY, IN AN OPEN PROJECT
F e a t u r e s a v a i l a b l e n o w i n a n o p e n M i c r o s o f t p r o j e c t