We have 3548 guests and 1 member online

Video Spotlight

Home > Articles > Columns > Featured Books > FEATURED BOOK: Software Engineering with MS Visual Studio Team System

FEATURED BOOK: Software Engineering with MS Visual Studio Team System

E-mail
Written by Brad Appleton   
Tuesday, 01 August 2006 05:47

ba0806-small

by Sam Guckenheimer with Juan Perez

I found this book to be surprisingly good (outstanding even), and not at all what I was expecting given the apparent tool/vendor-specific nature suggested by the title. The value-up paradigm and most of the other concepts and values in the book are very well aligned with agility while still meeting the needs of those in enterprise-scale companies and projects who may require more CMMI-based ceremony in their software and systems engineering efforts.  

ba0806-small

When I first saw the book, I was honestly expecting it to be some kind of "how-to" guide for Microsoft's recent Visual Studio Team System product (MS VSTS). Lo and behold, it's really not about VSTS.  It is about what Guckenheimer calls applying the "value-up" paradigm and the kind of metrics to drive and sustain it (and how Team System just happens to be able to support it). It's not about the tool as much as it's about the mind-set and how the tool supports that mind-set. (How refreshing!)

I would consider this book to be about the "next generation" of agile development. It has some things in it that pioneering agilists might reject as not agile enough. It's realistic enough for the current times of scaling to larger enterprises and programs and architectures, while still able to meet the demands of CMMI {sidebar id=1} and the needs of regulatory compliance (e.g. Sarbanes-Oxley). And, it does so by establishing the proper mind-set and an environment where the process and tools serve the practitioners instead of making them jump through hoops for the sake of process or metrics.

The back cover really does justice to what the book is all about: real software engineering to address the real-world problems that waterfall lifecycles aren't addressing and which agile methods have begun to address, but need some help integrating with and scaling upto the enterprise level.

This book discusses:

  • The role of the value-up paradigm (versus work-down) in the software development lifecycle, and the meanings and importance of "flow."
  • The use of MSF for Agile Software Development and MSF for CMMI Process Improvement.
  • Work items for planning and managing backlog in VSTS.
  • Multidimensional, daily metrics to maintain project flow and enable estimation.
  • Creating requirements using personas and scenarios.
  • Project management with iterations, trustworthy transparency and friction-free metrics.
  • Architectural design using a value-up view, service oriented architecture, constraints and qualities of service.
  • Development with unit tests, code coverage, profiling and build automation.
  • Testing for customer value with scenarios, qualities of service, configurations, data, exploration and metrics.
  • Effective bug reporting and bug assessment.
  • Troubleshooting a project: recognizing and correcting common pitfalls and anti-patterns.

Of course it does all this using the Microsoft Solutions Framework (MSF) and its much touted "MSF Agile" and "MSF CMMI." But at its core, it really and truly is a no-nonsense book about modern day scalable agility in an increasingly regulatory and SOA world with an honest look at itself and some thoughtful balancing between extremes.

I have been evangelizing agile for years in a very large corporation rooted in ISO9000, CMM/CMMI and Systems Engineering "V"-lifecycle model with a plan-based work-down mindset. I am completely sold on the notions of the value-up paradigm with trustworthy transparency and friction-free metrics. (I'm thinking of adopting them for one of my new mantras.)

The bottom line is that this book is not only worthwhile reading, but it is an eminently pragmatic and incisive book by someone who obviously "gets it" from the perspective of those of us trying to orchestrate agility across an elephantine enterprise. Two thumbs way up from me, for something I wasn't even expecting to be all that interested in from just seeing the title. What a pleasant surprise! (And from Microsoft no less Smile)

 


About the Reviewer:

 

Brad Appleton is an enterprise SCM/ALM solution architect for a Fortune 100 technology company. Currently he helps projects and teams adopt and apply agile development & SCM practices. Brad also author's the Agile CM Environments blog, and is co-author of Software Configuration Management Patterns: Effective Teamwork, Practical Integration, the "Agile SCM" column in CMCrossroads.com's CM Journal, and is a former section editor for The C++ Report. Since 1987, Brad has extensive experience using, developing, and supporting SCM environments for teams of all shapes and sizes. He holds an M.S. in Software Engineering and a B.S. in Computer Science and Mathematics.

Comments (0)Add Comment


Write comment

You must be logged in to post a comment. Please register if you do not have an account yet.

busy
Last Updated on Saturday, 20 October 2007 08:15
 

Agile Marketplace - Announcements and Special Offers

White Paper: Code Review IS an Agile Process!
Peer code review is one of the most effective ways to improve Software Quality – but is it Agile? Done correctly, it absolutely is. This white paper tells you how.
Download Today!

Virtual Conference: Collabnet Agile ALM
Stay current by attending CollabNet’s virtual conference, Agile ALM for Distributed Development, Thursday, April 15, from 7:30 am to 3:30 pm PDT. Free registration.
Register Today!

Webcast:  Moving Build and Code Quality Upstream
This interactive panel discussion moderated by Bob Aiello, Editor-in-Chief fo the CM Journal brings industry experts Anders Wallgren, CTO of Electric Cloud and Gwyn Fisher, CTO of Klocwork together for a candid discussion of the cost savings, productivity and quality benefits that can be achieved by stabilizing builds and code quality as early in the development cycle as possible.
Register Now!

Collabnet -TeamForge 5.3
CollabNet TeamForge 5.3 includes Dynamic Planning—providing flexibility to model release scope and timeline in a single view. Now, you can easily manipulate/adjust release data.
Download Your Free Trial

Requirements-based testing (RBT) can help to ensure comprehensive test coverage, reducing the risk of failure and improving software quality. This white paper details how application lifecycle management can be used to more effectively implement RBT processes, offering greater collaboration, traceability and control.can help you increase efficiency, reduce project risk, and improve overall software quality. Learn how MKS Integrity for application lifecycle management enables RBT, delivering full lifecycle traceability to help ensure that project requirements have complete test planning and execution coverage.
Download the Requirements-Based Testing whitepaper

PureCM –SCM for Agile Teams
PureCM helps you to manage development in short iterations: keeping track of changes, supporting automated builds and preserving frequent snapshots of your projects.
Get the free trial now