2. Who Am I?
President & CEO of Polaris Solutions
Professional Scrum Master
Certified SAFe Program Consultant
Change Software
Delivery for the
Better.
Chris Kadel
3. This is the most Substantial change in build
to Team Foundation Server in a decade
MsBuild
MsBuild
with More
Extensibility
MSBuild
with XAML
MSBuild
with XAML
Simplified
MSBuild
with XAML
2005 2008 2010 2012 2013 2015
Build vNext
Versions
5. Build Automation is an incredible enabler
to robust DevOps Culture.
Requirements
Design
Develop
Test
Deploy
Monitor
User
Feedback
Prioritize
1980
https://flic.kr/p/c9gpSA
https://flic.kr/p/rcGHG2
2015
18 Mos.
18 Mins.
6. Achieving throughput is going to require build
automation to be as low friction as possible.
https://flic.kr/p/4zZkjG
We Do Manual Builds / Deploy to Test
8 Hours * 4 Times Per Month * 4
People
= $76,800 Year
We Author Builds in XAML We Support our XAML Builds
40 Hours $2000 / App
20 Hours * 1 person * 12
months $12,000 / Year / Apphttps://flic.kr/p/fG2vpZ
75K / Year /
App
14K / Year /
App
Make Authoring
and Support Easier
Lower “Barrier to
Entry” to Automate1 2
A Week To Set Up Team Looses 4 Weeks/Year due to
Complexity
* Slide Based on Actual Consulting Experiences
7. Broader platform support means
rethinking build architecture in TFS.
Team Project
Collection
Build Controller
1:1
Agent 1
Agent 2
Agent N
…
Not True High Availability
Windows Server/Desktop
TFS Server
The Old Architecture…
Broader Support
1:1
8. Broader platform support means
rethinking build architecture in TFS.
The New Architecture…
Broader Support
TFS Project Collection
Pool Agents
Build Def 1
Build Def 2
Agent 1
Agent 2
Agent 3
Agent 4
Agent 5
Agent 6
Pool A
Pool B
Pool C
Agent Belongs to One Pool
Agent Belongs to One Pool
Pools Have Own Administrators
(Decentralization of Authority)
TFS Project Collection
Build Def 3
Build Def 4
Queue A
Queue B
Queue C
Queues Have One Target
9. What can we overlay on top of that
agent/pool architecture?
.NET (MSBUILD)
The Old Architecture…
Windows Workflow
Foundation
XAML
Out of the Box
Customization (Sometimes Heavy)
Command Line Java (ant/maven) PowerShell Invoke
… anything
Invoked on
Windows
Broader Support
10. What can we overlay on top of that
agent/pool architecture?
.NET (MSBUILD)
The New Architecture…
Web Configuration
Out of the Box
Customization (Sometimes Heavy)
Command Line
Java (ant/maven)
PowerShell Invoke
… anything Invoked
on Windows Gulp
XCode Xamarin
… Many Others
Broader Support
11. All of that new architecture
means greater flexibility for
setting up automation.
https://goo.gl/El1s0C
Choose Your
Platform
Choose Your
Tools
Install an
Agent
Broader Support
13. Simplification in authoring of
builds was a key design principle
for build 2015.
Authoring
https://goo.gl/nhP6zK
Visual Studio
Not Required
There’s an
“App” for that
– Mentality.
Audit Logs
http://goo.gl/gpmbk7
https://goo.gl/f0si63
14. Testing has been augmented to allow ci
unit tests and lab type tests on build
Build Run Unit Tests
Build Run Unit Tests Deploy
Run Functional
Testing
Test Adapters Available for nUnit, xUnit
15. Build
Now you can build, test, and launch
(deploy) easily.
https://goo.gl/EmX7iM
Promote the Code
Promote the Bits
Dev
Test
Prod
Branches
(SCM)
Build - Dev
Build - Test
Build - Prod
Builds (TFS)
Fast to Implement
“New” code is being tested for the first
time.
Some auditing requirements would fail this.
Good for “getting started” and “smaller
groups”
Main/Trunk
10101
10101
10101
10101
Deploy
Release Mgt
Sometimes more complex
Code is tested in each environment
Good for maturing organizations.