10.5. The Last Word

We don't know everything there is to know about software development. Quite the contrary, software development is a complex blend of specific business requirements, technical knowledge, hardware interaction, communications, creativity, aesthetics, usability, cost considerations, market forces, future needs, and team dynamics. Furthermore, it changes rapidly, forcing us to adapt, learn new strategies, and unlearn old ones with every new technology. I said earlier that software science isn't really science. But in many ways we have it much tougher. Imagine trying to get a handle on the laws of the universe if those laws kept changing by the day!

Software development is still in its infancy. It is difficult to even imagine how ...

Get Planning Smarter: Creating Blueprint-Quality Software Specifications now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.