The Axioms of Software Design - Itai Mamman
Details
Abstract:
Is there a small set of rules that govern the evolution of every software?
This talk covers a set of axioms which are believed to explain most (all?) phenomenons that we, developers, are facing in our daily work. By transcending beyond the level of patterns/practices these axioms help developers to treat design as a set of informed decisions rather than just "black magic".
Axioms
Super-linearity: Complexity of programming tasks is super-linear. Discontinuity: Small changes yield non-proportional results. Entropy: Your code will become chaotic over time. The Uncertainty Principle: The more detailed the specification the more error-prone it is. The talk illustrates the practical applications of the axioms by discussing concrete cases from several projects that were held at IBM.
