Leading Lean Software Development – Results are not the Point
Published March 9th, 2010 Under Books | 1 Comment
What fascinates me the most in the Lean software development approach is the quality of the people that support it. The Poppendieck are not an exception to this rule. Their book achieves the seemingly contradictory goals of being very insightful but still easy and captivating to read. It might be however easier to have the right flow when you are a Lean adept ;o)
The book starts with a chapter on systems thinking that takes also examples outside the software development world like Southwest Airlines. The next chapter on technical excellence is dedicated to a panorama of the software development approaches. Chapter 3 is kind of my favorite part of the book, extracting process management knowledge from the history of the construction of the Empire State Building, a project that took only one year to be completed. Chapter four presents the tools for improvement. Finally, the last part of the book is dedicated the people and leadership aspects of Lean.
The structure of the book makes it very pleasant to read, mixing the presentation of lean concepts with case studies and short personal stories. It is definitively a book that I will recommend to every software developer and manager…. and wish that every software developer and manager had read. Even if you think that Lean is not for you or you are a Toyota owner, this book provides a mind-opening text about what the values of software development and organizations should be.
Reference: “Leading Lean Software Development – Results are not the Point”, Mary and Tom Poppendieck, Addison-Wesley, 278 pages, IBSN 978-0-321-62070-5
Get more details on this book or buy it on amazon.com
Get more details on this book or buy it on amazon.co.uk
Debug It!
Published February 17th, 2010 Under Books | Leave a Comment
This book provides a structured approach that will help programmers to identify and remove bugs in code. It is based on a four steps process: Reproduce, Diagnose, Fix, Reflect. For each activity, the author provides practical material on how perform it. The second part gives a higher vision of the debugging process and deal with topics like communicating with users or prioritizing bugs treatment. Finally, the book discusses special situations and the relationship between bugs and other areas of software development (source control, build, etc.).
The book is easy to read and the material is presented in a very structured way with different “viewpoints” that help to understand the content. Besides the main text where important concepts are put in evidence, real life cases shows how things happen in the real world. There are also some “Joe asks…” sections where the author answer pertinent questions on the current topic.
With my many years of experience in supporting and debugging large existing enterprise systems, I have to say that Paul Butcher summarize and structure all the knowledge (and more) that I have, sometimes painfully, accumulated during this activity. This is therefore an excellent book that I will recommend to everybody that is involved in software development in general and maintenance activities specifically.
Reference: “Debug It!”, Paul Butcher, Pragmatic Bookshelf, 214 pages, ISBN 978-1934356289
Get more details on this book or buy it on amazon.com
Get more details on this book or buy it on amazon.co.uk
Agile Project Management
Published January 19th, 2010 Under Books | Leave a Comment
The fact that this book is already at his second edition after a first publication in 2004 says something about its value. In one of his definition of Agile, Jim Highsmith says, “Agility is the ability to balance flexibility and stability”. I will say that his book balances nicely high level thinking and a pragmatic approach. The book provides a framework for running agile projects and gives also insight in some more neglected related topics like managing projects portfolios or measuring the success of Agile projects.
The author starts by defining what Agility is and emphasizes that Agile is about “delivering value over meeting constraints”. The book describes the Agile Project Management (APM) framework, discussing its values and presenting the phases (Envision, Speculate, Explore, Adapt, and Close). The core values of the APM are:
* Delivering Value over Meeting Constraints
* Leading the Team over Managing Tasks
* Adapting to Change over Conforming to Plans.
All these aspects are covered with both a high level vision (after all values are values), but also by describing daily project activities: Key points that will help you understand the author message are put in evidence. Example: A coaching leader’s attitude is reflected in the question “How can I help you deliver results?” The micro-manager’s attitude is reflected in the question, “Why isn’t task 412 done yet?”
The final parts of the book deal with topics related to Agile project management: scaling, project portfolio management, measuring performance and fostering innovation. This is definitely a book that I will recommend to every people involved in project management, agile or not. I always think that learning Agile practices should be preceded by understanding Agile values. This book provides insightful material for values and practices.
Related web sites:
* Jim Highsmith Web site
* Agile Project Leadership Network
Reference: “Agile Project Management”, Second Edition, Jim Highsmith, Addison-Wesley, 392 pages
Get more details on this book or buy it on amazon.com
Get more details on this book or buy it on amazon.co.uk
The Process of Software Architecting
Published December 1st, 2009 Under Books | Leave a Comment
This book presents the influence of architecture in the software development process. The interesting aspect of this book is that is it a thoroughly presentation of the architecture role in the software development activities, not only at initial analytic stage but also at the subsequent tasks like software testing or configuration management. The book is very well structured and is certainly an excellent text book for students or for developers that are interested in getting an extensive presentation of software architecture. What I missed in the book is the presence of more “real life user stories” examples that could relate the different topics presented in the book. There is a case study used to implementing the practices, but it remains abstract to me. People looking to have more insight of what is “enough architecture” will not find some ideas on how to get the answer in this book.
Website of the book: http://www.processofsoftwarearchitecting.com/
Reference: “The Process of Software Architecting”, Peter Eeles and Peter Cripps, Addison-Wesley, 405 pages,
Get more details on this book or buy it on amazon.com
Get more details on this book or buy it on amazon.co.uk
Domain-Specific Modeling
Published October 28th, 2009 Under Books | Leave a Comment
Domain-specific modeling (DSM) is an approach articulated around three elements: a specific modeling language, code generation and a domain framework. The book authors work for a company that has been proposing a DSM tool since the last century. This make them first-hand experts on the topic, but you have also to remind which side they are when they talk about DSM compared to other approaches. The authors are conscious of this and discuss it openly, so that the reader can be aware of the situation. This being said, this book is an excellent and convincing presentation of what is domain-specific modeling, what it is not and how it relates to generic modeling approaches like UML. It contains more than 100 pages of real case studies showing how you can use DSM in different contexts (embedded software, insurance, etc). Finally, a final part guides you in details through the different steps needed to create a DSM solution. This part contains an important decision guide that will allow you to evaluate if your domain is suited for a DSM effort.
The book is very well written and is certainly a must read for every software developer who could be involved in the development of software that has some “product” attributes, that is software projects that involve repeated development efforts based on a common domain knowledge. It will also allow you to think and understand more deeply what is modeling and how you can reuse the initial investments in understanding the domain and creating the first products.
The website of the book is http://www.dsmbook.com/
Reference: “Domain-Specific Modeling – Enabling Full Code Generation”, Steven Kelly and Juha-Pekka Tolvanen, John Wiley & Sons, 427 pages
Get more details on this book or buy it on amazon.com
Get more details on this book or buy it on amazon.co.uk