A few weeks ago I had the chance to review an forthcoming book that from Manning Publications that is being co-written by Kyle Baley and Donald Belcham.
The focus of this book is to help developers navigate the choppy waters of Brownfield development. If you ask me the timing of this book is just about perfect. The .Net development community as at a cross roads. There are TONS of legacy code (older .net, under maintenance) out there and companies would like to start making massive changes to these applications. But there is a right way and a wrong way to do this.
In this book the authors are taking a two step approach to teaching the readers how to go about successfully enhancing/extending a Brownfield app. The first half of the book is dedicated to setting up a solid ecosystem for your application. The second half of the book targets improving the overall design of your application one step at a time.
The first chapter start off at the bottom, understanding what a Brownfield application is. It reviews how to find pain points in your current process, how to deal with and attach political situations that may be holding you back. And finally how to deal the potential moral issues that may be lingering with the developers on the applications. This chapter basically forces the readers to understand that they must know where they are, before they can move forward.
Once you have a better understanding of where you are, it is time to start working towards where you are going. Arguably the most critical component to any any software team is it version control systems. The next chapter does a review of what you should look for in an VCS (version control system) and how to evaluate your options. But the most important part of this chapter is learning the 'check-in dance' and how it plays a critical part to your teams success.
After you have a solid grasp what your VCS can do, it is time to create a build server. Here you will learn all benefits that a build system brings to a team. You will learn how to detect pain points in the build process and how to resolve them. You will also get an update on the 'check-in dance' as it needs to change because you have CI (continuous integration) in place.
After you are a CI master, you will be walked through the concepts of testing. You will learn the benefits and how to spot more possible pain points when it comes to integration tests into your Brownfield application. And finally you will learn why testing and CI go hand in hand.
Although this book is only about 30% done, I can see it is going to be a great asset to the developer community. I am really looking forward to what the future holds for this book.
Till next time,
04-24-2008 5:43 AM