The perils of feature interaction






One of the most delicate aspects of design is feature interaction. As users, we suffer daily from systems offering features that individually make sense but clash with each other. In my agile book [1] I explained in detail, building on the work of Pamela Zave, why this very problem makes one of the key ideas … Read more




The mythical Brooks law






(First published on the CACM blog.) A book by Laurent Bossavit [1] lists what he calls “leprechauns” of software engineering: pearls of conventional wisdom that do not necessarily survive objective analysis. Whether or not we agree with him on every specific example, his insights are fruitful and the general approach commendable: it is healthy to … Read more




Understanding and assessing Agile: free ACM webinar next Wednesday






ACM is offering this coming Wednesday a one-hour webinar entitled Agile Methods: The Good, the Hype and the Ugly. It will air on February 18 at 1 PM New York time (10 AM West Coast, 18 London, 19 Paris, see here for more cities). The event is free and the registration link is here. The … Read more




Awareness and merge conflicts in distributed development (new paper)






How can we make sure that people are aware of each other’s changes to a shared software base? Iin particular, can we avoid the dreaded case of a merge conflict: you and I are working on the same piece of code, but we find out too late, and we have to undergo the painful process of reconciling our conflicting changes.







The Eiffel Documentation Drive






EiffelStudio releases are semi-annual, end of May and end of November. Release 14-05 just came out. The next release (14-11) is entirely devoted to documentation. We are hoping for extensive community involvement in this first-time Eiffel Documentation Drive. Many people regularly comment that there is not enough Eiffel and EiffelStudio documentation, and some of what … Read more




Accurately Analyzing Agility






  Book announcement: Agile! The Good, the Hype and the Ugly Bertrand Meyer Springer, 2014 (just appeared) Book page: here. Amazon page: here. Publisher’s page: here A few years ago I became fascinated with agile methods: with the unique insights they include; with the obvious exaggerations and plainly wrong advice they also promote; and perhaps most … Read more




New article: contracts in practice






For almost anyone programming in Eiffel, contracts are just a standard part of daily life; Patrice Chalin’s pioneering study of a few years ago [1] confirmed this impression. A larger empirical study is now available to understand how developers actually use contracts when available. The study, to published at FM 2014 [2] covers 21 programs, … Read more




The laws of branching (part 2): Tichy and Joy






Recently I mentioned the first law of branching (see earlier article) to Walter Tichy, famed creator of RCS, the system that established modern configuration management. He replied with the following anecdote, which is worth reproducing in its entirety (in his own words): I started work on RCS in 1980, because I needed an alternative for … Read more




New course partners sought: a DOSE of software engineering education






The project consists of building a significant software system collaboratively, using techniques of distributed software development. Each university contributes a number of “teams”, typically of two or three students each; then “groups”, each made up of three teams from different universities, produce a version of the project.