- Testing Computer Software;
- Lessons Learned in Software Testing: A Context-driven Approach; and
- Bad Software: What To Do When Software Fails.
The main topic revolved around the consequences of delivering software that fails to perform as reasonably expected. Are software developers accountable to software customers? What if bad software actually kills people or causes nasty accidents?
He spoke about risks, material effects, the American attitude toward know-how and reverse engineering, he emphasized we can't be aware of all the emerging properties of software and he stated that most of the software problems are actually design defects.
Professor David Parnas, who acted as discussant, argued that software should not be in any law, and engineering laws should apply to software. From his perspective, complexity isn't just out there, it is something we humans create, and it shouldn't be an excuse for sloppiness.
An interesting idea that arose in the discussion was that, at some point, people become tied into using software, either because their data is in, and they are dependent on it, or - my insight- because their practices are heavily reliant on the tool, and they can't even imagine another way of performing a specific activity than the one they are familiar with.