Skip to Main Content
Conventional engineering disciplines use engineering models which allow the practising engineer to avoid the intricacies and complications of conventional mathematics. These models underpin the everyday work of the engineer and have solid foundations in science and the underlying mathematical theory. We discuss whether software engineering has developed corresponding engineering models and come to the conclusion that this has not yet happened. The reasons turn out to be different for programming in the small and programming in the large. The issue is of crucial importance in redirecting the efforts of researchers and practitioners interested in software engineering joining the brotherhood of mature engineering disciplines.