I think you completely miss the point of Gall’s law. It’s not about understanding individual components. Big software projects still fail, even though we understand if-statements and for-loops pretty well.
It’s about an evolution from simpler systems to more complex systems. Various design phases of the space shuttle aren’t what falsify that example. It’s the evolution of rocket propulsion, aircraft, and spacecraft, and their components.
(EDIT: Also, at no point was I suggesting that understanding of components guarantees success in designing complex systems, but that it is neccessary. For a complex system to work it must have all working components, reduced down to the level of simple machines. Big software projects would certainly fail if the engineers didn’t have knowledge of if-statements and for-loops.)
I think you completely miss the point of Gall’s law. It’s not about understanding individual components. Big software projects still fail, even though we understand if-statements and for-loops pretty well.
I know that.
It’s about an evolution from simpler systems to more complex systems. Various design phases of the space shuttle aren’t what falsify that example. It’s the evolution of rocket propulsion, aircraft, and spacecraft, and their components.
(EDIT: Also, at no point was I suggesting that understanding of components guarantees success in designing complex systems, but that it is neccessary. For a complex system to work it must have all working components, reduced down to the level of simple machines. Big software projects would certainly fail if the engineers didn’t have knowledge of if-statements and for-loops.)