It was 1959. We were building real-time systems for weather prediction, homeland security and space travel. The space mission software had to be man-rated. Not only did it have to work; it had to work the first time. Not only did the software, itself, have to be ultra-reliable, it needed to be able to perform error detection and recovery in real time. Our languages dared us to make the most subtle of errors. We were on our own to come up with rules for building software. What we learned from the errors was full of surprises. Classifying the errors led to a set of allowable patterns that led to a language together with its preventative paradigm. We have found that a system defined with such a language has properties that inherently support its own development, “before the fact”; including that which becomes no longer needed. We continue to discover new properties in these systems. Lessons learned throughout this process will be discussed in terms of both the earlier systems and the systems of today; and in terms of what is possible for systems of tomorrow.
Thu 31 MayDisplayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change
08:30 - 10:30
|Opening Session 50 years of Software engineering|
|Learning the Hard Way: A History of Software Engineering 1948-1980Keynote|
|The Language as a Software EngineerKeynote|