TL;DR
There is a lack of objective metrics in software engineering debates, making it difficult to determine the best practices. Unlike physical engineering, which relies on empirical testing, software design often operates in a realm of mathematical models that are not bound to physical laws.
✦ Why It Matters
Engineers should recognize that software methodologies are often interchangeable and focus on model consistency rather than absolute superiority.
Key Takeaways
Full Summary
Software engineering debates often stem from the absence of objective metrics to evaluate different methodologies. While physical engineering, such as bridge design, relies on empirical testing against the laws of physics, software design primarily operates within mathematical frameworks.
These frameworks allow for the creation of models that can simulate various scenarios, but they do not necessarily adhere to physical constraints. Most software techniques are 'Turing equivalent,' meaning they can implement any algorithm given sufficient resources, which complicates the evaluation of their effectiveness.
The findings suggest that software design may be more akin to mathematics than engineering, as it allows for the exploration of alternative models and realities. This understanding implies that software engineers should focus on the internal consistency of their models rather than seeking a singular 'best' method.
Related