EU Software Libability lawsuit: half say unit testing is the answer
52% of the .NET developers surveyed by Typemock think that unit testing can help companies avoid law suits related to the proposed EU software liability bill.
As reported by Typemock:
According to a survey held by Typemock, more than half of the developers believe that unit testing can help companies avoid law suits if the new EU software liability bill will pass.
Typemock held a survey asking .NET developers if they think that unit testing can help companies avoid law suits if the new EU software liability bill, proposed by Commissioners Viviane Reding and Meglena Kuneva, will pass. 52% of them said that it can.
Typemock asked developers this Online, in their blog, and offline, in Typemock’s Unit Testing Open Microphone event at the 2009 Norwegian Developers Conference (NDC). In this event developers took turns in voicing their opinions on Unit testing and the EU software liability bill. While the majority of them said that they shouldn't be held liable for their code, they believe that if this bill passes, unit testing will help companies to be confident in their product and avoid future law suits.
Unit testing was one of the central topics at the NDC conference, with keynote speaker Robert C. Martin (Uncle Bob) declaring that unit testing and TDD are a must for professional software developers, a whole day dedicated to unit testing sessions, and as mentioned, Typemock’s Unit testing event.
“We believe that companies should always strive to release products with the highest quality, that produce real value for the customer, and that unit testing is the most effective way to start making that happen” Says Roy Osherove, Senior Developer at Typemock, and the author of the book the Art of Unit testing.
Two questions worth considering:
- Is this mentioned EU software liability bill a good idea?
- What are the other 48% thinking, that unit testing won't help prevent defective software? Hm.
The law seems frivolous...
by
Pedro Jimenez
But let's take that a little further. Why would you want to commit to create anything that can cost you everything you own if you make a mistake? Why would I go to the trouble of starting a software company when a single bug can destroy all my hard work? Fine, we all hate the bugs in Windows, or Linux, or whatever OS we use. We hate that Word can't handle number bullets correctly after a copy and paste. We hate that there are zombie machines around the world used by spammers and government cyber-attackers alike. But this will simply open the floodgates to lawsuits, not just for the giants, but for the little guys too.
Right now the market works for smaller players more so than larger players. But it does work. Security updates are made, constantly. Will people buy your software if it causes them problems? Maybe. Will they drop you for someone doesn't cause them so many problems? Probably. Is this a perfect system? No, but better than this law.
Does unit testing not prevent defects? Only an idiot would really believe that unit testing is worthless. But reducing risk is not the same as eliminating it, and any risk here is enough to give pause. The test is only as effective as the implementer of the test; bad or incomplete tests are probable once the code goes beyond a certain size and complexity. And unit tests do not capture all defects, so by itself its no panacea.
Re: The law seems frivolous...
by
Pedro Jimenez
Re: The law seems frivolous...
by
Laszlo Török
I seriously doubt this law will get much support in the short-term
by
David Sims
> Is this mentioned EU software liability bill a good idea?
It would limit competition as probably only the bigger companies could afford to purchase the Errors & Omissions insurance that you would probably need in order to distribute software in the EU. You just couldn't risk your whole business, personal assets, or future earnings on the certainty of some lawyer somewhere in the EU deciding that he's got a case.
As a consumer or as a professional looking for software to use in your workplace, you'd end up with fewer software choices.
> What are the other 48% thinking, that unit testing won't help prevent defective software?
None of us are naive enough to think that our software lacks bugs -- unit tests or no -- and we all know it wouldn't take much for the first lawsuits to be filed, as long as the filing party thinks there is a judgment to be won.
Cheers,
David
Flux - Java Job Scheduler. File Transfer. Workflow.
Another reason (among many) I'm glad I don't live and work in the EU
by
Dan Tines
Re: Another reason (among many) I'm glad I don't live and work in the EU
by
Jonathon Vincent
Re: Another reason (among many) I'm glad I don't live and work in the EU
by
Bruce Rennie
Even if I have complete faith in my software, the risks may not be worth it.
Survey trivializes the issue
by
Bruce Rennie
To conclude that unit testing is The Answer is silly and trivializes the entire discussion about software quality. There's no One True Answer, and our first step in getting serious about quality is to stop searching for it. I still completely agree with Mr Martin that unit testing is critical, I just hate to see it pimped as a panacea for all that ails us.
Re: Another reason (among many) I'm glad I don't live and work in the EU
by
Francisco Jose Peredo Noguez
Re: Another reason (among many) I'm glad I don't live and work in the EU
by
Francisco Jose Peredo Noguez
Re: Survey trivializes the issue
by
Francisco Jose Peredo Noguez
Re: Survey trivializes the issue
by
Francisco Jose Peredo Noguez
Yes and No, and the 48%
by
Daniel Sobral
At any rate, how long we'll just wash our hands about the quality of our code? Won't we even accept being held accountable to utter lack of basic good practices, such as automated unit testing, no matter the context?
This is childish. Instead of just disparaging the very idea of accountability, we should be asking ourselves what have we learn in the past decades that can form a minimal requirement for development practices on commercial software.
Now, as for the 48%, unit testing won't give you complete code coverage except for programs with trivial cyclomatic complexity, and won't ever give you guarantees about behavior of a system. As soon as you have any sort of concurrent execution, be it parallel or not, test coverage won't scale anymore.
And, then, there's this little problem that, aside from some embedded systems, a lot of the execution of a program happens outside the program itself, on code written by others, and who will be provided by the user, not the seller of the program.
For the most simple programs, that's the operating system and shared libraries. Static libraries, while provided with the program, are also the work of third parties. But you can go much farther than that -- firefox plugins, for example, can interfere with each other.
And all that's just about CODE. Twitter, for instance, isn't about it's database model. It's about the user experience, and some "bugs" are simply unfulfilled expectations. Now, go and try to write a contract about what are the reasonable expectations for your system...
So, while I'm all for unit tests, and they certainly improve quality of software, it will do almost nothing as far as a general liability goes.
Educational Content
Managing Build Jobs for Continuous Delivery
Martin Peston May 24, 2013
Clojure in the Field
Stuart Halloway May 23, 2013
Tuning the Size of Your Thread Pool
Kirk Pepperdine May 23, 2013




Hello stranger!
You need to Register an InfoQ account or Login to post comments. But there's so much more behind being registered.Get the most out of the InfoQ experience.
Tell us what you think