Rickard Nilsson

  • Blog
  • Archive
  • About
  • Contact
Sign in

Welcome to rickardnilsson.net

rickardnilsson.net is a weblog and the online home of web developer and father of three, Rickard Nilsson... More

Rickard blogs about creating software solutions using ASP.NET and agile practices.

Follow @rickardn

Top Posts

  • Applying stylesheets dynamically with jQuery
  • ASP.NET MVC 2 Framework and Unity 2.0 Dependency Injection Container
  • Code Kata Cast
  • Isolate your code from ASP.NET with Moles Isolation Framework
  • ReSharper User tip #2: Refactor rename namespace
  • Dependency injection in ASP.NET MVC with Unity IoC Container

Categories

  • .NET
  • Agile
  • ASP.NET 2.0
  • ASP.NET 3.5
  • ASP.NET 4
  • ASP.NET MVC
  • BlogEngine.NET
  • C# 2.0
  • C# 3.0
  • C# 4.0
  • Continuous Integration
  • CSS
  • Design by Contract
  • Design Patterns
  • iPhone
  • JavaScript
  • Kata
  • Moles
  • Open source
  • Personal
  • Review
  • Social media
  • Software development
  • TDD
  • Testing
  • Umbraco
  • Unit testing
  • Unity
  • User tip
  • Web development

Five most recent posts

  • C# REPL and Interactive interpreter
  • TDD Kata 2 - Interaction based testing
  • Reflections from day 3 - Umbraco Codegarden 11 in Copenhagen
  • Reflections from day 2 - Umbraco Codegarden 11 in Copenhagen
  • Reflections from day 1 - Umbraco Codegarden 11 in Copenhagen

Tag cloud

  • agile
  • blogengine.net
  • c#
  • code kata
  • codegarden11
  • continuous integration
  • css
  • dependency injection
  • fakes
  • iso 8601
  • javascript
  • jquery
  • refactoring
  • resharper
  • tdd
  • testing
  • umbraco
  • unit test

Continuous Integration in .NET - Book review

Thursday, 10 March 2011 22:20 by rickard

kawalerowicz_cover150A while ago Manning Publications contacted me through this blog asking for my thoughts on a book that was about to get published. The title of the book was “Continuous Integration in .NET”. Obviously I was honored and this is my review.

I’ve been a Continuous Integration practitioner and evangelist for about a year and it’s been a fun ride. I’ve implemented the practice in my own team as well as helped other teams getting started with the process. I’ve also held a talk at work before 20+ developers about Continuous Integration, written blog posts, and answered questions on Stack overflow.

Make it happen

Are you a .NET developer who finds yourself in projects where releasing software is painful and takes forever? Then Continuous Integration in .NET is the book for you. I’ve been there over and over and thus started researching Continuous Integration tools for .NET about a year ago and found many of which are covered in great detail in the book by Marcin Kawalerowicz and Craig Berntson. The authors are both developers, bloggers, and have vast knowledge and experience with Continuous Integration.

Tools

The book is extremely rich when it comes to tools and in under three hundred pages these are some of the tools that are covered; Version control tools like SVN and TFS, unit testing and mocking tools like NUnit and Rhino Mocks, automation tools like NAnt and MSBuild, CI servers like Team City and TFS 2010, UI testing tools, acceptance testing tools, code analysis tools, document generation tools, deployment and delivery tools, and database automation tools. Flavor samples of all the tools you need to automate anything you can think of, and beyond.

Extend the process

In my experience starting with version control, a CI server and Unit testing goes a long way when you’re first starting out on the journey towards Continuous Integration. This is also the message [Kawalerowicz and Berntson] sends throughout the book. However, there are quite a bit of content for experienced CI teams as well, e.g. how to take the process even further with automated deployment, database rollouts or how to deal with speed and scalability issues in your build.

Development practice

In my mind Continuous Integration is so much more than just the tooling and process automation, it is a complete development practice that dictates some of the team’s behavior. For instance, to get the rapid and repeated feedback that we strive after all team members need to commit working and tested source code at least daily.

I was a bit disappointed that the book didn’t cover any of this aspect. In the early chapters the CI concept is redefined by the authors for the scope of the book to exclude the development practice parts.

Summary

Continuous Integration in .NET is a very good and well-worked book and I can recommend it to anyone wanting to get started with CI in .NET but don’t know how, as well as more experienced CI developers looking to extend and fine tune their process.

If you’re interested in the development practice side of CI I recommend you read Martin Fowler’s article as well as the ground breaking book Continuous Integration: Improving Software Quality and Reducing Risk by Paul Duvall.

Tags:   continuous integration, manning, book review
Categories:   .NET | Continuous Integration | Review
Actions:  
 
Disclaimer: The opinions expressed herein are my own personal opinions and do not represent my employer's view in any way.
© 2008-2011 rickardnilsson.net
Creative Commons-licens