TOOLS FOR AGILITY
 @cory_foy | Cory Foy | http://coryfoy.com
AGENDA

A day in the life...
Planning Tools
Development Tools
Continuous Integration
Automated Deployment
Demo
AGENDA

A day in the life...
Planning Tools
Development Tools
Continuous Integration
Automated Deployment
Demo
A DAY IN THE LIFE...
A DAY IN THE LIFE...




Credit: http://www.flickr.com/photos/pietel/3409462244
A DAY IN THE LIFE...

                                                        What we really need is
                                                              a widget




Credit: http://www.flickr.com/photos/pietel/3409462244
A DAY IN THE LIFE...

                                                        What we really need is
                                                              a widget




                                                          Credit: http://www.flickr.com/photos/halfanacre/3370191142

Credit: http://www.flickr.com/photos/pietel/3409462244
A DAY IN THE LIFE




   Credit: http://www.flickr.com/photos/mattgrommes/2977325638
A DAY IN THE LIFE




Credit: http://www.flickr.com/photos/improveit/1683673971




                                                           Credit: http://www.flickr.com/photos/gkirk/3351962087
A DAY IN THE LIFE
A DAY IN THE LIFE
A DAY IN THE LIFE
A DAY IN THE LIFE
A DAY IN THE LIFE
A DAY IN THE LIFE
A DAY IN THE LIFE
A DAY IN THE LIFE




Credit: http://www.flickr.com/photos/turtlemom_nancy/1914397629
A DAY IN THE LIFE




    Credit: http://www.flickr.com/photos/warzauwynn/2173383575
AGENDA

A day in the life...
Planning Tools
Development Tools
Continuous Integration
Automated Deployment
Demo
PLANNING TOOLS
Lots of good tools
  VersionOne
  Rally
  Team Foundation Server
  Serena Agile on Demand
  Zen
  Pivotal Tracker
PLANNING TOOLS
Lots of good tools
  VersionOne
  Rally
  Team Foundation Server
  Serena Agile on Demand
  Zen
  Pivotal Tracker
PLANNING TOOLS
Lots of good tools
  VersionOne
  Rally
  Team Foundation Server
  Serena Agile on Demand
  Zen
  Pivotal Tracker
PLANNING TOOLS
Lots of good tools
  VersionOne
  Rally
  Team Foundation Server
  Serena Agile on Demand
  Zen
  Pivotal Tracker
PLANNING TOOLS
Lots of good tools
  VersionOne
  Rally
  Team Foundation Server
  Serena Agile on Demand
  Zen
  Pivotal Tracker
PLANNING TOOLS
Lots of good tools
  VersionOne
  Rally
  Team Foundation Server
  Serena Agile on Demand
  Zen
  Pivotal Tracker
PLANNING TOOLS
Lots of good tools
  VersionOne
  Rally
  Team Foundation Server
  Serena Agile on Demand
  Zen
  Pivotal Tracker
PLANNING TOOLS
PLANNING TOOLS


Go back to something simpler
PLANNING TOOLS


Go back to something simpler
  Index Cards
PLANNING TOOLS


Go back to something simpler
  Index Cards
PLANNING TOOLS


Go back to something simpler
  Index Cards
  Kanban Boards
PLANNING TOOLS


Go back to something simpler
  Index Cards
  Kanban Boards
PLANNING TOOLS


Go back to something simpler
  Index Cards
  Kanban Boards
  Planning Poker / Team Estimation
PLANNING TOOLS


Go back to something simpler
  Index Cards
  Kanban Boards
  Planning Poker / Team Estimation
ESTIMATION DEMO
@cory_foy | Cory Foy | http://coryfoy.com
PLANNING TOOLS
PLANNING TOOLS


Customer Communication
PLANNING TOOLS


Customer Communication
 FitNesse (http://fitnesse.org)
PLANNING TOOLS


Customer Communication
 FitNesse (http://fitnesse.org)
PLANNING TOOLS


Customer Communication
 FitNesse (http://fitnesse.org)
 Cucumber (http://cukes.info)
PLANNING TOOLS


Customer Communication
 FitNesse (http://fitnesse.org)
 Cucumber (http://cukes.info)
PLANNING TOOLS


Customer Communication
 FitNesse (http://fitnesse.org)
 Cucumber (http://cukes.info)
 StoryTeller (http://storyteller.tigris.org)
PLANNING TOOLS


Customer Communication
 FitNesse (http://fitnesse.org)
 Cucumber (http://cukes.info)
 StoryTeller (http://storyteller.tigris.org)
AGENDA

A day in the life...
Planning Tools
Development Tools
Continuous Integration
Automated Deployment
Demo
DEVELOPMENT TOOLS

Development Tools
  Unit Testing
  Refactoring
  Profiling
  ORMs
  Mocking Tools
DEVELOPMENT TOOLS
DEVELOPMENT TOOLS

Unit Testing
DEVELOPMENT TOOLS

Unit Testing
  NUnit (http://nunit.org)
DEVELOPMENT TOOLS

Unit Testing
  NUnit (http://nunit.org)
DEVELOPMENT TOOLS

Unit Testing
  NUnit (http://nunit.org)
  xUnit.NET (http://codeplex.com/xunit)
DEVELOPMENT TOOLS

Unit Testing
  NUnit (http://nunit.org)
  xUnit.NET (http://codeplex.com/xunit)
DEVELOPMENT TOOLS

Unit Testing
  NUnit (http://nunit.org)
  xUnit.NET (http://codeplex.com/xunit)
  MbUnit (http://mbunit.com)
DEVELOPMENT TOOLS

Unit Testing
  NUnit (http://nunit.org)
  xUnit.NET (http://codeplex.com/xunit)
  MbUnit (http://mbunit.com)
DEVELOPMENT TOOLS

Unit Testing
  NUnit (http://nunit.org)
  xUnit.NET (http://codeplex.com/xunit)
  MbUnit (http://mbunit.com)
  MSTest (http://microsoft.com)
DEVELOPMENT TOOLS

Unit Testing
  NUnit (http://nunit.org)
  xUnit.NET (http://codeplex.com/xunit)
  MbUnit (http://mbunit.com)
  MSTest (http://microsoft.com)
DEVELOPMENT TOOLS

Unit Testing
  NUnit (http://nunit.org)
  xUnit.NET (http://codeplex.com/xunit)
  MbUnit (http://mbunit.com)
  MSTest (http://microsoft.com)
DEVELOPMENT TOOLS
DEVELOPMENT TOOLS


Refactoring
DEVELOPMENT TOOLS


Refactoring
  Resharper (http://jetbrains.com/resharper)
DEVELOPMENT TOOLS


Refactoring
  Resharper (http://jetbrains.com/resharper)
DEVELOPMENT TOOLS


Refactoring
  Resharper (http://jetbrains.com/resharper)
  CodeRush (http://devexpress.com/coderush)
DEVELOPMENT TOOLS


Refactoring
  Resharper (http://jetbrains.com/resharper)
  CodeRush (http://devexpress.com/coderush)
DEVELOPMENT TOOLS


Refactoring
  Resharper (http://jetbrains.com/resharper)
  CodeRush (http://devexpress.com/coderush)
  Built-In Tools
DEVELOPMENT TOOLS


Refactoring
  Resharper (http://jetbrains.com/resharper)
  CodeRush (http://devexpress.com/coderush)
  Built-In Tools
DEVELOPMENT TOOLS
DEVELOPMENT TOOLS


Profiling Tools
DEVELOPMENT TOOLS


Profiling Tools
  Built-In (Team Editions)
DEVELOPMENT TOOLS


Profiling Tools
  Built-In (Team Editions)
DEVELOPMENT TOOLS


Profiling Tools
  Built-In (Team Editions)
  ANTS Profiler (http://red-gate.com)
DEVELOPMENT TOOLS


Profiling Tools
  Built-In (Team Editions)
  ANTS Profiler (http://red-gate.com)
DEVELOPMENT TOOLS


Profiling Tools
  Built-In (Team Editions)
  ANTS Profiler (http://red-gate.com)
  dotTrace (http://jetbrains.com/profiler)
DEVELOPMENT TOOLS


Profiling Tools
  Built-In (Team Editions)
  ANTS Profiler (http://red-gate.com)
  dotTrace (http://jetbrains.com/profiler)
DEVELOPMENT TOOLS
DEVELOPMENT TOOLS


ORMs (Object Relational Mapping)
DEVELOPMENT TOOLS


ORMs (Object Relational Mapping)
  NHibernate
DEVELOPMENT TOOLS


ORMs (Object Relational Mapping)
  NHibernate
  Entity Framework
DEVELOPMENT TOOLS


ORMs (Object Relational Mapping)
  NHibernate
  Entity Framework
  Segregate your data access
DEVELOPMENT TOOLS
DEVELOPMENT TOOLS
 Mocking Tools / Dependency Injection
DEVELOPMENT TOOLS
 Mocking Tools / Dependency Injection
   Also called Inversion of Control
DEVELOPMENT TOOLS
 Mocking Tools / Dependency Injection
   Also called Inversion of Control
   StructureMap (structuremap.sourceforge.net)
DEVELOPMENT TOOLS
 Mocking Tools / Dependency Injection
   Also called Inversion of Control
   StructureMap (structuremap.sourceforge.net)
   Ninject (ninject.org)
DEVELOPMENT TOOLS
 Mocking Tools / Dependency Injection
   Also called Inversion of Control
   StructureMap (structuremap.sourceforge.net)
   Ninject (ninject.org)
   Spring.NET (springframework.net)
DEVELOPMENT TOOLS
 Mocking Tools / Dependency Injection
   Also called Inversion of Control
   StructureMap (structuremap.sourceforge.net)
   Ninject (ninject.org)
   Spring.NET (springframework.net)
   CastleWindsor (castleproject.org)
DEVELOPMENT TOOLS
 Mocking Tools / Dependency Injection
   Also called Inversion of Control
   StructureMap (structuremap.sourceforge.net)
   Ninject (ninject.org)
   Spring.NET (springframework.net)
   CastleWindsor (castleproject.org)
   Isolator / TypeMock (typemock.com)
AGENDA

A day in the life...
Planning Tools
Development Tools
Continuous Integration
Automated Deployment
Demo
CONTINUOUS INTEGRATION
CONTINUOUS INTEGRATION



Continuous Integration
CONTINUOUS INTEGRATION



Continuous Integration
  Build Tools
CONTINUOUS INTEGRATION



Continuous Integration
  Build Tools
    MSBuild, NAnt, Rake (Albacore)
CONTINUOUS INTEGRATION



Continuous Integration
  Build Tools
    MSBuild, NAnt, Rake (Albacore)
  C/I Tools
CONTINUOUS INTEGRATION



Continuous Integration
  Build Tools
    MSBuild, NAnt, Rake (Albacore)
  C/I Tools
    TFS, TeamCity, CruiseControl.NET, Hudson
AGENDA

A day in the life...
Planning Tools
Development Tools
Continuous Integration
Automated Deployment
Demo
AUTOMATED DEPLOY

Automated Deployment
  MSBuild, Rake, Batch Files
  Generate MSIs
  Deploy Files to Dev Servers
  Create VMs
AGENDA

A day in the life...
Planning Tools
Development Tools
Continuous Integration
Automated Deployment
Demo
PUTTING IT TOGETHER
 @cory_foy | Cory Foy | http://coryfoy.com
WRAP UP
Cory Foy
foyc at cory foy dot com
Slides at http://www.coryfoy.com
@cory_foy

Tools for Agility