Book Review: Professional Application Lifecycle Management with Visual Studio 2010 By Mickey Gousset et al.

Ever since it was announced, Professional Application Lifecycle Management with Visual Studio 2010 was high on my list of books to read. I've been using Visual Studio, and team Foundation Server since the first releases of the products, but really needed to dig a little deeper in some of the core concepts. Because the Visual Studio 2010 release is quite large with lots of new features, especially in terms of ALM and TFS, I was on the lookout for a book that showed me what's new, and how to use it. It turned out that this book, by Mickey Gousset and others, is an excellent guide to many of the new features in Visual Studio 2010 and Team Foundation Server 2010.


About the Book

The book is split in five parts (totaling 26 Chapters and over 630 pages), each targeting a different key user. Being a consultant and developer in a small company, pretty much each part applied to me as I play all kinds of roles in different projects. Depending on your role in the company or project you work for, your mileage may vary, but I think you can get a lot of value from each section, regardless your current role.

Part one targets the Software Architect and shows you many of the new and existing diagramming tools found in Visual Studio 2010. You'll see how to create UML diagrams such as Use Case, Activity and Sequence diagrams. Additionally you'll see how to create Component diagrams and how to create Class Diagrams that also generate the code skeleton for object models. Chapter 4 and 5 dig into the Architecture Explorer and Layer diagrams. These are new in Visual Studio 2010 and I found them to be very useful. Using the Architecture Explorer and Layer diagrams, you can quickly analyze existing applications, giving you a real quick and visual insight in how they are designed. Additionally, you see how to apply and check validation in these diagrams, making it clearly visible where your own rules are broken and how your software components are used. For example, you can easily see if your UI layer directly calls into a data layer, something that it shouldn't be allowed to do if you have a business logic layer in between.

Part two targets the developer. It focuses on core concepts such as unit testing, code analysis and code metrics, performance profiling and debugging with the all new IntelliTrace feature that lets you load existing debug information in a project to do historical debugging.

I found the chapter on database development to be very useful. I worked with the database features of Visual Studio in the past, but found them lacking too much in too many areas and thus hardly ever used them. Lots of improvements have been made in Visual Studio 2010 and this chapter covers many of these features in a clear and concise way.

The third section of the book targets testers. This section digs quite deep into web performance, load and manual testing. Additionally, it shows you how to do Coded UI Testing and how to use the new Lab Management features.

In part 4 Team Foundation Server is covered. You'll learn a lot about TFS and its architecture in the first few chapters. The last three chapters discuss Version Control, Branching and Merging and Team Foundation Build, respectively. If you're working in larger teams, or on large projects, you'll find the chapter on merging and branching very useful. The chapter contains a number of walkthroughs for different branching and merging strategies, each showing the different choices you have to make, and how to configure and use TFS to fulfill your requirements.

The final part of the book is called Project / Process Management and discusses topics such as project management, the different process templates that ship with TFS to meet your project structure and team development style and show you how to get data in and out of TFS using Excel and the various reporting and dashboard tools. The book ends with a chapter that explains how to customize the available process templates to further tweak them to match your team's development style.

All in all, I think Professional Application Lifecycle Management with Visual Studio 2010 is an excellent book showing many of the existing and new features of Visual Studio 2010 and Team Foundation Server 2010. For me, the book has a good balance between providing a high-level overview and detailed walkthroughs for some key scenarios. Clearly, it can't dig too deep in each and every topic, but those topics that were discussed in detail (such as the database tools and the merging and branching strategies) were carefully chosen, and done really well.

Final judgment: 5/5 stars

Where to Next?

Wonder where to go next? You can post a comment on this article.

Doc ID 553
Full URL
Short cut
Written by Imar Spaanjaars
Date Posted 08/01/2010 16:33


Talk Back! Comment on Imar.Spaanjaars.Com

I am interested in what you have to say about this article. Feel free to post any comments, remarks or questions you may have about this article. The Talk Back feature is not meant for technical questions that are not directly related to this article. So, a post like "Hey, can you tell me how I can upload files to a MySQL database in PHP?" is likely to be removed. Also spam and unrealistic job offers will be deleted immediately.

When you post a comment, you have to provide your name and the comment. Your e-mail address is optional and you only need to provide it if you want me to contact you. It will not be displayed along with your comment. I got sick and tired of the comment spam I was receiving, so I have protected this page with a simple calculation exercise. This means that if you want to leave a comment, you'll need to complete the calculation before you hit the Post Comment button.

If you want to object to a comment made by another visitor, be sure to contact me and I'll look into it ASAP. Don't forget to mention the page link, or the Doc ID of the document.

(Plain text only; no HTML or code that looks like HTML or XML. In other words, don't use < and >. Also no links allowed.