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 DAY IN THE LIFE...

                                                        What we really need is
                     ...
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




                                       ...
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 T...
PLANNING TOOLS
Lots of good tools
  VersionOne
  Rally
  Team Foundation Server
  Serena Agile on Demand
  Zen
  Pivotal T...
PLANNING TOOLS
Lots of good tools
  VersionOne
  Rally
  Team Foundation Server
  Serena Agile on Demand
  Zen
  Pivotal T...
PLANNING TOOLS
Lots of good tools
  VersionOne
  Rally
  Team Foundation Server
  Serena Agile on Demand
  Zen
  Pivotal T...
PLANNING TOOLS
Lots of good tools
  VersionOne
  Rally
  Team Foundation Server
  Serena Agile on Demand
  Zen
  Pivotal T...
PLANNING TOOLS
Lots of good tools
  VersionOne
  Rally
  Team Foundation Server
  Serena Agile on Demand
  Zen
  Pivotal T...
PLANNING TOOLS
Lots of good tools
  VersionOne
  Rally
  Team Foundation Server
  Serena Agile on Demand
  Zen
  Pivotal T...
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://...
PLANNING TOOLS


Customer Communication
 FitNesse (http://fitnesse.org)
 Cucumber (http://cukes.info)
 StoryTeller (http://...
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...
DEVELOPMENT TOOLS

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

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

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

Unit Testing
  NUnit (http://nunit.org)
  xUnit.NET (http://codeplex.com/xunit)
  MbUnit (http://mbunit...
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)
 ...
DEVELOPMENT TOOLS


Refactoring
  Resharper (http://jetbrains.com/resharper)
  CodeRush (http://devexpress.com/coderush)
 ...
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://jetb...
DEVELOPMENT TOOLS


Profiling Tools
  Built-In (Team Editions)
  ANTS Profiler (http://red-gate.com)
  dotTrace (http://jetb...
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....
DEVELOPMENT TOOLS
 Mocking Tools / Dependency Injection
   Also called Inversion of Control
   StructureMap (structuremap....
DEVELOPMENT TOOLS
 Mocking Tools / Dependency Injection
   Also called Inversion of Control
   StructureMap (structuremap....
DEVELOPMENT TOOLS
 Mocking Tools / Dependency Injection
   Also called Inversion of Control
   StructureMap (structuremap....
DEVELOPMENT TOOLS
 Mocking Tools / Dependency Injection
   Also called Inversion of Control
   StructureMap (structuremap....
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, Tea...
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...
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
Upcoming SlideShare
Loading in …5
×

Tools for Agility

2,437 views
2,314 views

Published on

A presentation covering various tools used throughout an agile development lifecycle including NUnit, FitNesse, TeamCity and others. This was given at the South Florida Code Camp in March 2010.

Published in: Technology, Business

Tools for Agility

  1. 1. TOOLS FOR AGILITY @cory_foy | Cory Foy | http://coryfoy.com
  2. 2. AGENDA A day in the life... Planning Tools Development Tools Continuous Integration Automated Deployment Demo
  3. 3. AGENDA A day in the life... Planning Tools Development Tools Continuous Integration Automated Deployment Demo
  4. 4. A DAY IN THE LIFE...
  5. 5. A DAY IN THE LIFE... Credit: http://www.flickr.com/photos/pietel/3409462244
  6. 6. A DAY IN THE LIFE... What we really need is a widget Credit: http://www.flickr.com/photos/pietel/3409462244
  7. 7. 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
  8. 8. A DAY IN THE LIFE Credit: http://www.flickr.com/photos/mattgrommes/2977325638
  9. 9. A DAY IN THE LIFE Credit: http://www.flickr.com/photos/improveit/1683673971 Credit: http://www.flickr.com/photos/gkirk/3351962087
  10. 10. A DAY IN THE LIFE
  11. 11. A DAY IN THE LIFE
  12. 12. A DAY IN THE LIFE
  13. 13. A DAY IN THE LIFE
  14. 14. A DAY IN THE LIFE
  15. 15. A DAY IN THE LIFE
  16. 16. A DAY IN THE LIFE
  17. 17. A DAY IN THE LIFE Credit: http://www.flickr.com/photos/turtlemom_nancy/1914397629
  18. 18. A DAY IN THE LIFE Credit: http://www.flickr.com/photos/warzauwynn/2173383575
  19. 19. AGENDA A day in the life... Planning Tools Development Tools Continuous Integration Automated Deployment Demo
  20. 20. PLANNING TOOLS Lots of good tools VersionOne Rally Team Foundation Server Serena Agile on Demand Zen Pivotal Tracker
  21. 21. PLANNING TOOLS Lots of good tools VersionOne Rally Team Foundation Server Serena Agile on Demand Zen Pivotal Tracker
  22. 22. PLANNING TOOLS Lots of good tools VersionOne Rally Team Foundation Server Serena Agile on Demand Zen Pivotal Tracker
  23. 23. PLANNING TOOLS Lots of good tools VersionOne Rally Team Foundation Server Serena Agile on Demand Zen Pivotal Tracker
  24. 24. PLANNING TOOLS Lots of good tools VersionOne Rally Team Foundation Server Serena Agile on Demand Zen Pivotal Tracker
  25. 25. PLANNING TOOLS Lots of good tools VersionOne Rally Team Foundation Server Serena Agile on Demand Zen Pivotal Tracker
  26. 26. PLANNING TOOLS Lots of good tools VersionOne Rally Team Foundation Server Serena Agile on Demand Zen Pivotal Tracker
  27. 27. PLANNING TOOLS
  28. 28. PLANNING TOOLS Go back to something simpler
  29. 29. PLANNING TOOLS Go back to something simpler Index Cards
  30. 30. PLANNING TOOLS Go back to something simpler Index Cards
  31. 31. PLANNING TOOLS Go back to something simpler Index Cards Kanban Boards
  32. 32. PLANNING TOOLS Go back to something simpler Index Cards Kanban Boards
  33. 33. PLANNING TOOLS Go back to something simpler Index Cards Kanban Boards Planning Poker / Team Estimation
  34. 34. PLANNING TOOLS Go back to something simpler Index Cards Kanban Boards Planning Poker / Team Estimation
  35. 35. ESTIMATION DEMO @cory_foy | Cory Foy | http://coryfoy.com
  36. 36. PLANNING TOOLS
  37. 37. PLANNING TOOLS Customer Communication
  38. 38. PLANNING TOOLS Customer Communication FitNesse (http://fitnesse.org)
  39. 39. PLANNING TOOLS Customer Communication FitNesse (http://fitnesse.org)
  40. 40. PLANNING TOOLS Customer Communication FitNesse (http://fitnesse.org) Cucumber (http://cukes.info)
  41. 41. PLANNING TOOLS Customer Communication FitNesse (http://fitnesse.org) Cucumber (http://cukes.info)
  42. 42. PLANNING TOOLS Customer Communication FitNesse (http://fitnesse.org) Cucumber (http://cukes.info) StoryTeller (http://storyteller.tigris.org)
  43. 43. PLANNING TOOLS Customer Communication FitNesse (http://fitnesse.org) Cucumber (http://cukes.info) StoryTeller (http://storyteller.tigris.org)
  44. 44. AGENDA A day in the life... Planning Tools Development Tools Continuous Integration Automated Deployment Demo
  45. 45. DEVELOPMENT TOOLS Development Tools Unit Testing Refactoring Profiling ORMs Mocking Tools
  46. 46. DEVELOPMENT TOOLS
  47. 47. DEVELOPMENT TOOLS Unit Testing
  48. 48. DEVELOPMENT TOOLS Unit Testing NUnit (http://nunit.org)
  49. 49. DEVELOPMENT TOOLS Unit Testing NUnit (http://nunit.org)
  50. 50. DEVELOPMENT TOOLS Unit Testing NUnit (http://nunit.org) xUnit.NET (http://codeplex.com/xunit)
  51. 51. DEVELOPMENT TOOLS Unit Testing NUnit (http://nunit.org) xUnit.NET (http://codeplex.com/xunit)
  52. 52. DEVELOPMENT TOOLS Unit Testing NUnit (http://nunit.org) xUnit.NET (http://codeplex.com/xunit) MbUnit (http://mbunit.com)
  53. 53. DEVELOPMENT TOOLS Unit Testing NUnit (http://nunit.org) xUnit.NET (http://codeplex.com/xunit) MbUnit (http://mbunit.com)
  54. 54. DEVELOPMENT TOOLS Unit Testing NUnit (http://nunit.org) xUnit.NET (http://codeplex.com/xunit) MbUnit (http://mbunit.com) MSTest (http://microsoft.com)
  55. 55. DEVELOPMENT TOOLS Unit Testing NUnit (http://nunit.org) xUnit.NET (http://codeplex.com/xunit) MbUnit (http://mbunit.com) MSTest (http://microsoft.com)
  56. 56. DEVELOPMENT TOOLS Unit Testing NUnit (http://nunit.org) xUnit.NET (http://codeplex.com/xunit) MbUnit (http://mbunit.com) MSTest (http://microsoft.com)
  57. 57. DEVELOPMENT TOOLS
  58. 58. DEVELOPMENT TOOLS Refactoring
  59. 59. DEVELOPMENT TOOLS Refactoring Resharper (http://jetbrains.com/resharper)
  60. 60. DEVELOPMENT TOOLS Refactoring Resharper (http://jetbrains.com/resharper)
  61. 61. DEVELOPMENT TOOLS Refactoring Resharper (http://jetbrains.com/resharper) CodeRush (http://devexpress.com/coderush)
  62. 62. DEVELOPMENT TOOLS Refactoring Resharper (http://jetbrains.com/resharper) CodeRush (http://devexpress.com/coderush)
  63. 63. DEVELOPMENT TOOLS Refactoring Resharper (http://jetbrains.com/resharper) CodeRush (http://devexpress.com/coderush) Built-In Tools
  64. 64. DEVELOPMENT TOOLS Refactoring Resharper (http://jetbrains.com/resharper) CodeRush (http://devexpress.com/coderush) Built-In Tools
  65. 65. DEVELOPMENT TOOLS
  66. 66. DEVELOPMENT TOOLS Profiling Tools
  67. 67. DEVELOPMENT TOOLS Profiling Tools Built-In (Team Editions)
  68. 68. DEVELOPMENT TOOLS Profiling Tools Built-In (Team Editions)
  69. 69. DEVELOPMENT TOOLS Profiling Tools Built-In (Team Editions) ANTS Profiler (http://red-gate.com)
  70. 70. DEVELOPMENT TOOLS Profiling Tools Built-In (Team Editions) ANTS Profiler (http://red-gate.com)
  71. 71. DEVELOPMENT TOOLS Profiling Tools Built-In (Team Editions) ANTS Profiler (http://red-gate.com) dotTrace (http://jetbrains.com/profiler)
  72. 72. DEVELOPMENT TOOLS Profiling Tools Built-In (Team Editions) ANTS Profiler (http://red-gate.com) dotTrace (http://jetbrains.com/profiler)
  73. 73. DEVELOPMENT TOOLS
  74. 74. DEVELOPMENT TOOLS ORMs (Object Relational Mapping)
  75. 75. DEVELOPMENT TOOLS ORMs (Object Relational Mapping) NHibernate
  76. 76. DEVELOPMENT TOOLS ORMs (Object Relational Mapping) NHibernate Entity Framework
  77. 77. DEVELOPMENT TOOLS ORMs (Object Relational Mapping) NHibernate Entity Framework Segregate your data access
  78. 78. DEVELOPMENT TOOLS
  79. 79. DEVELOPMENT TOOLS Mocking Tools / Dependency Injection
  80. 80. DEVELOPMENT TOOLS Mocking Tools / Dependency Injection Also called Inversion of Control
  81. 81. DEVELOPMENT TOOLS Mocking Tools / Dependency Injection Also called Inversion of Control StructureMap (structuremap.sourceforge.net)
  82. 82. DEVELOPMENT TOOLS Mocking Tools / Dependency Injection Also called Inversion of Control StructureMap (structuremap.sourceforge.net) Ninject (ninject.org)
  83. 83. DEVELOPMENT TOOLS Mocking Tools / Dependency Injection Also called Inversion of Control StructureMap (structuremap.sourceforge.net) Ninject (ninject.org) Spring.NET (springframework.net)
  84. 84. 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)
  85. 85. 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)
  86. 86. AGENDA A day in the life... Planning Tools Development Tools Continuous Integration Automated Deployment Demo
  87. 87. CONTINUOUS INTEGRATION
  88. 88. CONTINUOUS INTEGRATION Continuous Integration
  89. 89. CONTINUOUS INTEGRATION Continuous Integration Build Tools
  90. 90. CONTINUOUS INTEGRATION Continuous Integration Build Tools MSBuild, NAnt, Rake (Albacore)
  91. 91. CONTINUOUS INTEGRATION Continuous Integration Build Tools MSBuild, NAnt, Rake (Albacore) C/I Tools
  92. 92. CONTINUOUS INTEGRATION Continuous Integration Build Tools MSBuild, NAnt, Rake (Albacore) C/I Tools TFS, TeamCity, CruiseControl.NET, Hudson
  93. 93. AGENDA A day in the life... Planning Tools Development Tools Continuous Integration Automated Deployment Demo
  94. 94. AUTOMATED DEPLOY Automated Deployment MSBuild, Rake, Batch Files Generate MSIs Deploy Files to Dev Servers Create VMs
  95. 95. AGENDA A day in the life... Planning Tools Development Tools Continuous Integration Automated Deployment Demo
  96. 96. PUTTING IT TOGETHER @cory_foy | Cory Foy | http://coryfoy.com
  97. 97. WRAP UP Cory Foy foyc at cory foy dot com Slides at http://www.coryfoy.com @cory_foy

×