Projects have been the main working mode of software development activities since the beginning of computers. According to Allan Kelly, it is however not the best mode to develop software. He fosters the #noproject movement to fight project myopia that he defines as the “belief that the project model is the only way of managing business change and development.”
Books on Scrum and Agile Project Management
As Agile has become a mainstream approach in software development, there are many books and discussions about its concepts and how to implement them. The book “Environment for Agile Teams” by Andy Brandt provides a different, and very interesting, perspective as it discusses the practical details of the everyday life of a Scrum team.
A Coach’s Guide to Release Planning is part of the nice series proposed to Agile coaches by Samantha Laing and Karen Greaves. This book provides a complete plan to run a workshop where people can learn how to plan their release in an Agile way, a topic that should interest the whole Scrum team.
User stories can be considered as the most used form to manage requirements in Agile. However, as often with agile concepts Agile that look simple in theory, using them in practice generates many questions: What should user stories contain? When should they be ready to be developed? What is an optimal backlog size? This is the type of issues that Allan Kelly discusses in his interesting Little Book about Requirements and User Stories.
If the title of this book is a clear reference to the current trendy approach in software development, readers should be aware the that most important part is maybe in the subtitle “Systems Thinking and Organizational Legacy”. Not that Agile minds will be disappointed by reading it, but this book discusses the more important fact that from time to time software developers tries to adopt a new set of best practices and most of the time they fail.
The ScrumMaster role is certainly the Scrum role that differs the most from what organizations might have known in the past. The Scrum Guide defines the Scrum Master as “a servant-leader for the Scrum Team. The Scrum Master helps those outside the Scrum Team understand which of their interactions with the Scrum Team are helpful and which aren’t. The Scrum Master helps everyone change these interactions to maximize the value created by the Scrum Team.”
If one of the first aim of Scrum was to break the silos between business analysis, development and testing, you can consider that improving the cooperation with the operation side of IT as the next frontier in this journey. What is the point to produce potentially shippable software increment in two weeks if your database administrator doesn’t want more than three new releases windows for the production database?