Book Reviews Tagged “book-reviews”

Strategize

Strategize

Most agile processes are empty of any advice on forming a company or product strategy. Product backlogs or featurelists are just assumed to exist or to spring spontaneously from the mind of a product owner or key stakeholder. In his new book, “Strategize,” Roman Pichler fills this void in agile thinking.

Roman is a long-time Scrum trainer based in the UK. He has…

Developer Testing: Building Quality into Software

Developer Testing: Building Quality into Software

Early in my career as a programmer, I remember coming across the phrase, “You can’t test quality in.” I read this inan article that compared 1970s and 1980s U.S. automobile manufacturing to Japanese automobile manufacturing.

The author was saying the U.S. car manufacturers were producing cars of lower quality than their Japanese counterparts because U.S. car…

Large-Scale Scrum

Large-Scale Scrum

“Large-Scale Scrum” by Craig Larman and Bas Vodde is great for anyone looking to scale Scrum up to medium and large projects. It provides a contrast to the very heavyweight Scaled Agile Framework (SAFe), and “Large-Scale Scrum” comes with its own cutesy acronym, LeSS. In fact the subtitle of the book is “More with LeSS.”

The book defines two scaling models. First is…

Scrum Shortcuts without Cutting Corners: Agile Tactics, Tools, & Tips

Scrum Shortcuts without Cutting Corners: Agile Tactics, Tools, & Tips

Rather than a conventional review, here is the foreword I was asked to write for this book.

--Mike

In the spirit of this book, I’ll take a shortcut and come right to the point: Buy this book. I assure you, you’ll find the wisdom in this collection of shortcuts extremely helpful.

However, experience tells us to be leery of shortcuts. Very few work out. Horror movies…

Just Start: Take Action, Embrace Uncertainty, Create the Future

Just Start: Take Action, Embrace Uncertainty, Create the Future

I've never been a big fan of the Shewhart or Deming cycle of Plan-Do-Check-Act. Sure, it works fine for some things. I cooked an elaborate dinner for my family last night. Plan, Do, Check and Act (or Eat) worked well for that. But for what makes up much of the rest of my life, a plan-first approach has never seemed entirely appropriate.

That Plan-Do-Check-Act is often…

The PMI-ACP Exam: How to Pass On Your First Try

The PMI-ACP Exam: How to Pass On Your First Try

I was looking forward to reading this book. I haven't paid much attention to the PMI-ACP initiative and thought this book would help me see what the test covered. The book is extremely short: there are less than 140 pages between the introduction and the glossary. The entire book is double-spaced so it is a very quick read. After the main book is a glossary and then…

Essential Scrum: A Practical Guide to the Most Popular Agile Process

Essential Scrum: A Practical Guide to the Most Popular Agile Process

The book is a comprehensive overview of Scrum. It goes from the principles of agile through the mechanics of sprints to the roles on a Scrum team and all the way up to topics like technical debt and portfolio management with Scrum. A very helpful aspect of the book is the detailed "visual language," Kenny created while writing the book. He created icons for every…

Agile Game Development with Scrum

Agile Game Development with Scrum

Scrum and game development go together as well as chocolate and peanut butter. In this book, Clinton Keith does a perfect job of showing how to put them together.

The book is split into five parts. The first part describes the crisis facing game development because of the explosion in complexity and game size. Not wanting to end on a down note, Part 1 also describes…

Coaching Agile Teams

Coaching Agile Teams

Coaching of all forms--whether of kids playing basketball or software professionals learning to ScrumMasters or other agile leaders--is difficult. The advice given often boils down to "here's how I do it..." or "you should always do..." The first style of advice fails because the coach's personal style may differ dramatically from the apprentice's style. Techniques…

Agile Product Management with Scrum

Agile Product Management with Scrum

As a project management framework, Scrum introduces many changes. One of the biggest is the role of the product owner who represents the users or customers of a product or system. The product owner is responsible for making sure the right product is being built and in the right order. This forces the product owner to think iteratively and incrementally about the…

Agile Testing: A Practical Guide for Testers and Agile Teams

Agile Testing: A Practical Guide for Testers and Agile Teams

This is an excellent book that deserves to be read by every tester on an agile project--and since agile projects largely try to do away with specific roles, everyone tests, making this a great book for almost anyone on an agile team. The book starts by laying groundwork by defining what agile testing is and describing ten principles for doing it. Part 2 touches on the…

Software Project Manager’s Bridge to Agility

Software Project Manager’s Bridge to Agility

This excellent book is targeted directly at Project Management Professionals (PMPs) but will be extremely beneficial to any project manager who is interested in agile development.

After three short chapters that introduce the general principles and activities of an agile software development project, the authors attack the meat of their subject. Each of the nine…

Enterprise and Scrum

Enterprise and Scrum

The two best things about this book are that it: (1) provides a framework for adopting Scrum across an enterprise, and (2) describes some techniques for surmounting some of the problems you will likely face as you try. Although the book is about the "enterprise and Scrum" most of the contents will be applicable to any group of teams transitioning to Scrum. A set of…

Everyday Scripting with Ruby: For Teams, Testers, and You

Everyday Scripting with Ruby: For Teams, Testers, and You

During the mid– and late–1980s I was was working in C and eventually C++. During that period I devoured any programming book I could get my hands on. My favorites were very practical books––those books that built real, working examples. Herb Schildt and Al Stevens were the best at this. I’ve often wished for such books on the newer languages as I learn them. Brian…

Implementing Lean Software Development: From Concept to Cash

Implementing Lean Software Development: From Concept to Cash

I’ve long considered Mary and Tom Poppendieck to be among the primary theoreticians in the agile software development movement. Their first book, Lean Software Development, provided insights into the theory behind agile software development. That first book has been widely praised for helping those of us doing agile software development know why what we were doing…

Innovation Games

Innovation Games

One of the challenges in new product innovation is that the process cannot be broken down into a simple sequence of steps. “Follow these six steps” is not advice that will lead to the breakthrough thinking and innovative ideas that lead to best-selling new products or enhancements to existing products.

“Innovation Games” acknowledges that innovation and creativity do…

Agile Retrospectives: Making Good Teams Great

Agile Retrospectives: Making Good Teams Great

Excellent advice for those desiring more frequent, shorter, better retrospectives.

One of the challenges facing an agile team that holds a retrospective at the end of each one– to four–week iteration is how to keep the meetings fresh. When done this often retrospectives become redundant and team members often simply go through the motions. This is an excellent book…

Agile Java Development with Spring, Hibernate and Eclipse

Agile Java Development with Spring, Hibernate and Eclipse

Agile Java Development with Spring, Hibernate and Eclipse is a very good book. Right in the preface the author states that his goals are describe how to do rapid development of enterprise Java applications using an agile process and to show how to do so using a consistent example woven throughout the book. The book achieves those goals excellently. The book is not a…

Refactoring Databases: Evolutionary Database Design

Refactoring Databases: Evolutionary Database Design

This is an excellent book that, in my opinion, serves two purposes. First, it is a compendium of well thought–out ways to evolve a database design. Each refactoring includes descriptions of why you might make this change, tradeoffs to consider before making it, how to update the schema, how to migrate the data, and how applications that access the data will need to…

Collaboration Explained

Collaboration Explained

A challenge faced by any project leader is how to lead the team without resorting to a command–and–control management style. This book’s essential premise is that the project leader can do this by fostering collaboration among team members. Jean Tabaka’s Collaboration Explained is really two books in one. The first explains the benefits of collaborating and why project…

.Net Generics

.Net Generics

Until reading this book, I had been nervous about the introduction of generics into .Net. First, I wasn’t sure how well they would be implemented equivalently across multiple languages. Second, I had been an early C++ programmer and lived through how complicated the introduction of templates made that language. This book has convinced me that generics will work equally…

JBoss at Work: A Practical Guide

JBoss at Work: A Practical Guide

The subtitle for this book is “A Practical Guide.” That subtitle is perfect. This is one of the most immediately useful and practical books I’ve read in a long time. I began using JBoss at the same time I started reading this book and I appreciated that the book started out with the relatively simple task of getting JBoss installed. However, while the book starts at an…

Fit For Developing Software: Framework for Integrated Tests

Fit For Developing Software: Framework for Integrated Tests

This is a wonderful book. I first saw Fit during its infancy and I didn’t “get it.” This book will help any reader very quickly understand how this type of testing can help any software project. And, it will help you become skilled at testing this way.

This book starts out with the very basics then progresses into a case study. The first 180 pages are meant for…

Managing Agile Projects

Managing Agile Projects

This is a very practical yet thought–provoking book. The book brings in a lot of thinking from complex adaptive systems to bear on the problem of managing agile projects. A lot of early agile thinking was that the role of the manager was to buy pizza and get out of the way. This book shows how the role of the agile project manager goes well beyond that and provides…

Extreme Project Management

Extreme Project Management

This excellent book dramatically advances the start–of–the–art in agile project management. It goes well beyond any other book on the subject, covering such new ground as how to work with stakeholders, how to assess whether projects are worth doing, how to create a useful plan, and how to work with senior management.

Unlike many agile books, this book is not…

Effective Enterprise Java

Effective Enterprise Java

This is an amazing book that does not disappoint in any way. It is full of wonderful well–written content. The book is organized as a series of 75 essays, each running from 1 to 10 pages. Each essay gives advice on what to do or not do in an enterprise Java application.

Since I’m not a fan of Enterprise JavaBeans, before I received the book I was worried that the…

Return on Software: Maximizing the Return on Your Software Investment

Return on Software: Maximizing the Return on Your Software Investment

This book is the only book of its kind. It covers everything you need to know to make intelligent financial decisions about software projects. Too many software projects are started with detailed work plans but without any plan about how the project will make money for the company. Naturally, too many of these projects then fail to return any value to the organization…

Refactoring to Patterns

Refactoring to Patterns

Based on its title alone I had high expectations for this book. It didn’t disappoint. The book takes two of the most important advances of the past decade (patterns and refactoring) and puts them together into a whole that is definitely more than the sum of its parts.

I’ve read many good patterns books and have been applying patterns to how I think and talk about…

Pragmatic Project Automation

Pragmatic Project Automation

This book will save you from hours of work and from many headaches. Mike Clark’s Pragmatic Project Automation will show you how to automate any aspect of your project that you find repetitive.

Clark starts by describing how to automate a build script using Ant. There are entire books on this subject but Pragmatic Project Automation does a great job of distilling the…

JUnit Recipes: Practical Methods for Programmer Testing

JUnit Recipes: Practical Methods for Programmer Testing

My initial uses of JUnit are probably not unique. I found it a wonderful tool and a great way to replace the main methods I used to include in some (but not enough) of my Java classes. From the start, I could tell JUnit was powerful but I couldn’t clearly see easy ways to test everything I wanted to test. Over time, and through much trial and error, I learned how to…

Agile Project Management: Creating Innovative Products

Agile Project Management: Creating Innovative Products

This is a wonderful and highly practical book. Within hours of putting it down I was already putting some of its advice into practice. A highly thought–provoking book, arguing, for instance, that agility is more attitude than process and more environment than methodology. Because of the complexity of today’s software projects, one new product development project can…

Agile Project Management with Scrum

Agile Project Management with Scrum

Agile Project Management with Scrum is a wonderful book. The author, Ken Schwaber (one of the originators of the Scrum process), informs us through case studies and anecdotes. If you like learning by example, this book is for you. Scrum is quite likely the best starting point for most companies interested in pursuing an agile development process. The readability and…

Refactoring Workbook

Refactoring Workbook

Most books about programming teach us about a specific technology or two. Right now I’m staring at some great books on my shelf that have taught me things like user interface programming in Java, templates in C++, how to work with XML files, and so on. Bill Wake’s “Refactoring Workbook” goes well beyond books like these Those books give me some fleeting insights into a…

Balancing Agility and Discipline: A Guide for the Perplexed

Balancing Agility and Discipline: A Guide for the Perplexed

This book attempts to breach a conceptual divide between developers following agile developers and developers taking what the authors call a “plan–driven” approach. The book does an excellent job of summarizing many agile methods. The main premise of the book is that agile and plan–driven methods each have a “home ground” for which they are the appropriate choice. The…

Managing Software for Growth

Managing Software for Growth

This book starts by describing how Taylor’s Scientific Management has lead us down the incorrect road of thinking software can be managed like steel manufacturing. The author does a great job of presenting these fundamentals and presenting the conclusion that a new model for thinking about software is needed.

To find an alternative model the author draws on ideas from…

UML for Java Programmers

UML for Java Programmers

This is a great book for learning or improving with UML. Topics are introduced at a level appropriate for beginners but each topic progresses at a nice pace into intermediate territory. There’s even advice in here suitable for the best programmers I know.

I love the liberal use of source code throughout this book. We model in order to write code and Bob Martin clearly…

Lean Software Development

Lean Software Development

Books written during the first phase of agile software development have been about very specific practices we should employ. There are some excellent books on the Extreme Programming, Feature–Driven Development and Scrum agile processes. These books teach us “do a, b, and c if you want to do Extreme Programming” or “do x, y and z if you want to do Scrum.”

In the last…

Software Configuration Management Patterns

Software Configuration Management Patterns

I knew this book would be different from the use of “Teamwork” in its subtitle. Many of the configuration managers with whom I’ve worked through the years demonstrated an attitude that was about anything but teamwork. They viewed their job as protecting the source code (and other assets) of a project to the point of getting in the way of the developers. So based on its…

Facts and Fallacies of Software Engineering

Facts and Fallacies of Software Engineering

How can you not like a book whose first section is called “The most important factor in software work is the quality of the programmers”?

Facts and Fallacies of Software Engineering, the latest book from prolific author and software practitioner Robert Glass, is divided into two sections: the first section presents 55 facts culled from Glass's 45 years in the software…

Testing Extreme Programming

Testing Extreme Programming

This book is fantastic. I’m only a tester to the extent that everyone doing XP is a tester but I found many valuable things in this book. There are excellent chapters about how to estimate and plan releases and iterations, including excellent tips on finding hidden assumptions in your stories. I like the book so much that I just bought a copy for a tester who works for…

Agile Software Development with Scrum

Agile Software Development with Scrum

This is the book I’ve been wanted for years. Until this book, the Scrum development process was not very well known and was documented only piecemeal in a couple of papers and websites. Finally, there’s a book a that covers everything you need to know to run your software project using Scrum.

Schwaber is the “Godfather of Scrum” and essentially invented the…