
The first book to put the principles of World Class Manufacturing to work in the development process, Managing the Design Factory combines the powerful analytical tools of queuing, information, and system theories with the proven ideas of organization design and risk management. The result: a methodical approach to consistently hit the "sweet spot" of quality, cost, and time in developing any product. Reinertsen illustrates these concepts with concrete examples drawn from his work with many leading companies across different industries. Unlike other books that promote rules and rituals based on benchmarking "best practices," this book focuses on practical tools that account for varied situations. He breaks new ground with a disciplined, quantitative approach for making decisions on critical issues: When should we use a sequential or concurrent process? Centralized or decentralized control? Functional or team organizations? Full of practical techniques, concrete examples, and solid general principles, this is a real toolkit for product developers.
By far the best has been 'Managing the Design Factory' by Donald Reinertsen, which I strongly recommend to software engineering managers. I really appreciated the exploration of how organising teams and tasks impacts development speed, cost, performance and unit cost in different ways. Even though it was written in the 90s, I don't think I've seen as good a discussion on how architectural decisions impact corporate strategy.
Another great takeaway from it is to prioritize things by cost of delay, or even better, what he calls Weighted Shortest Job First, where you divide the cost of delay by the expected length of the task. The only problem is that the same people that want to get oddly formal and inappropriately rigorous with things like story points will want to turn cost-of-delay into an accounting exercise - or object that it's impossible because they don't have the accounting system for it - which misses the point entirely.
“Creativity Inc.” (Ed Catmull) explains how Pixar manages people & throws in a few insights from mature (post Apple firing) Steve Jobs.
“Managing the Design Factory” (Don Reinertsen) explains how to prioritize projects and analyze a business for bottlenecks in order to minimize cost of delay.
These books are not about software development, but of product development in general. The first one actually predates agile, published in 1997.
Core idea is that minimizing the size of the tasks is the best way to improve productivity. Not getting it done as quickly as possible, but to decrease the size.
Remember that product development (new, innovative, uncertainties) vs product manufacting (repeatable), is not a new problem, and not unique to the software industry. There's a lot to learn from product development in other industries.
Another interesting read is "The Toyota Product Development System: Integrating People, Process And Technology" which talks about ways of making product development predictive, and less risky.
It's interesting to see how little software is used to improve the process of software development. Other industries use a lot of software (cad/cam, visual modelling, testing, impact analysis) to improve efficiency and quality of product development. Software for product development is a huge market.