Tools for Agility

2,538 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

×