We have 4270 guests and 4 members online

Video Spotlight

Home > Articles > Columns > Featured Books > FEATURED BOOK: The Software Development Edge: Essays on Managing Successful Projects by Joe Marasco

FEATURED BOOK: The Software Development Edge: Essays on Managing Successful Projects by Joe Marasco

E-mail
Written by Brad Appleton   
Thursday, 08 March 2007 15:25
ba0307bookReviewed by Brad Appleton 


The Software Development Edge is a collection of insightful and entertaining essays about project management and leadership by Joe Marasco. Marasco has ingeniously and thoughtfully woven together the fabric of true-to-life experience with some fabricated personas, proven practices, lessons learned, and some common sense measurement that should both connect with and enlighten any reader who has lived on a real world software development endeavor.

 
Many (if not most) of the essays in the book appeared in some earlier version as part of the "Franklin's Kite" column in The Rational Edge from December 2000 to December 2002 while Marasco was a Senior VP at IBM Rational. These days, Marasco is CEO of RavenFlow Software and started writing again for the Rational Edge sometime in 2004.

The book is split up into 6 parts each containing 4-5 essays:

Part 1 - General Management:
Beginning at the Beginning; Computational Roots; Mountaineering; Managing

Part 2 - Software Differences:
The Most Important Thing; Modeling; Coding; Getting It Out the Door

Part 3 - The Project-Management View:
Trade-offs; Estimating; Scheduling; Rhythm

Part 4 - The Human Element:
Politics; Negotiating; Signing Up; Compensation

Part 5 - Thinking Laterally:
History Lesson; Bad Analogies; The Refresh Problem; Not So Random Numbers


Part 6 - Advanced Topics:

Crisis; Growth; Culture; Putting It All Together;

Each chapter in each section is a complete and (mostly) concise exposition of a topic that is intimately relevant to both software projects in the trenches and agility in the organization. Many of the chapters use a fictitious character named "Roscoe Leroy" to cut through all the jargon and get to the bottom-line. Among those, my favorite is the one entitled Estimating ("What if we used common sense?") {sidebar id=1} followed closely by Scheduling ("How late are you gonna be?"), both of which to this day embody a basic approach I use to determine the approximate length iterations and milestones in a software project. The chapters that cover iterative development ("The Most Important Thing") are easy to read, providing a gentle yet thorough introduction for those who have never trodden that path before (or have been wary of doing so). The essays about Rhythm ("A Physicist Looks at Project Progress"), Trade-Offs ("The Project Pyramid"), and Signing-Up ("Commitment") really hit home in describing the reality of many software projects while also describing common cures (and pitfalls) for such ailments.

At the same time, the chapters on leadership and communication (most from the "Human Element" section) are unforgettably inspiring and insightful. The chapter on "Politics in Technical Organizations" came at a very appropriate time for me when I first read it. It helped me deal with several non-technical issues with people and managers I'd been struggling with to try and turnaround a failing project. I found the chapters on Culture and Values and Putting it All Together ("The Three Phases of Life") to be equally illuminating for me at that time. It's not that I hadn't heard of or read about these things before - I had. It was the way they were discussed so realistically and pragmatically the connected with me and my then responsibilities.

Even though the book doesn't portend to be directly about agility, it is directly about the in-the-trenches realities of software projects, and what has been shown to work again and again over time, along with the pragmatic choices and lessons that we make and take away. I would heartily recommend this book to any agilista or non-agile software project survivor, and especially to those of the budding project manager/leader persuasion. The essays in this book bridge the gap between theory and practice by injecting the levity and reality of human experience in a concise, entertaining manner that is both practical and memorable.


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.


{mos_sb_discuss:8} 

 

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 03:33
 

Agile Marketplace - Announcements and Special Offers

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