Analyzing a software failure






More than once I have emphasized here [1] [2] the urgency of rules requiring systematic a posteriori analysis of software mishaps that have led to disasters. I have a feeling that many more posts will be necessary before the idea registers. Some researchers are showing the way. In a June 2009 article [4], Tetsuo Tamai … Read more




From programming to software engineering: ICSE keynote slides available






In response to many requests, I have made available [1] the slides of my education keynote at ICSE earlier this month. The theme was “From programming to software engineering: notes of an accidental teacher”. Some of the material has been presented before, notably at the Informatics Education Europe conference in Venice in 2009. (In research you can … Read more




The other impediment to software engineering research






In the decades since structured programming, many of the advances in software engineering have come out of non-university sources, mostly of four kinds: Start-up technology companies  (who played a large role, for example, in the development of object technology). Industrial research labs, starting with Xerox PARC and Bell Labs. Independent (non-university-based) author-consultants.  Independent programmer-innovators, who start open-source communities … Read more




Barbie to the rescue






Efforts to attract more women to computer science evoke C. Northcote Parkinson’s analysis of the progression of the British Navy after World War I: ever more admirals, ever fewer ships [1]. There have been some successes, notably at Carnegie Mellon [2], but mostly we tear our hair in despair while percentages of female informatics students … Read more




Programming on the cloud?






I am blogging live from the “Cloud Futures” conference organized by Microsoft in Redmond [1]. We had two excellent keynotes today, by Ed Lazowska [1] and David Patterson. Lazowska emphasized the emergence of a new kind of science — eScience — based on analysis of enormous amounts of data. His key point was that this … Read more




Verification As a Matter Of Course






At the ACM Symposium on Applied Computing (SAC) in Sierre last week, I gave a talk entitled “How you will be programming in 10 years”, describing a number of efforts by various people, with a special emphasis on our work at both ETH and Eiffel Software, which I think point to the future of software … Read more




A couple of loop examples






(This entry originated as a post on the EiffelStudio user group mailing list.)  Here are a couple of actual examples of the new loop variants discussed in the blog entry immediately preceding this one. They came out of my current work; I started updating a program to take advantage of the new facility. As a typical example, … Read more




More expressive loops for Eiffel






New variants of the loop construct have been introduced into Eiffel, allowing a safer, more concise and more abstract style of programming. The challenge was to remain compatible with the basic loop concept, in particular correctness concerns (loop invariant and loop variant), to provide a flexible mechanism that would cover many different cases of iteration, … Read more