More Testing Means Better Debugging

posted 10:44AM Feb 08, 2007 with tags debug softwaredevelopment softwarequality test by Lars Trieloff

Cedric Beust, lead developer of TestNG writes in More testing doesn't mean less debugging
This myth that "testing means no more debugging" needs to die. Seriously. Anyone making this claim is doing a lot of damage to the software engineering world. Just as we are finally getting good IDE's, good debuggers and, more importantly, an increasingly widespread conviction in the developer community that these tools are part of a healthy software engineering process, a new vanguard of smug programmers come out of the woodwork with their superior attitude and resurrect the old mantra that only bad developers use debuggers.
Cedric continues to point out how the debugger has become an invaluable tool for software development as it allows him to verify his assumtions during development, to examine the runtime behaviour of the software, as the pure static sourcecode is just a description of a software system.

The value of unit tests in regard to debugging is that they allow more structured, repeatable debug situations. I use test cases to create situations that need further verification and can then step through the program at runtime.

What is an Open Source Project worth?

posted 07:51PM Jul 18, 2006 with tags business opensource softwarequality test by Lars Trieloff

Measuring the value of anything is a hard task, but it is much harder to measure the value of intellectual goods. And it is even harder to measure the value of something that is given away for free like Open Source Software. Or as Oscar Wilde put it:
A cynic is a man who knows the price of everything but the value of nothing.
When it comes to measuring the value of software, the most obvious approach is to calculate the cost of development by assuming a proportional correlation between lines of code and cost of development as done by koders.com. The flaws of this approach, even if it uses more sophisticated parameters like age of project and number of active developers as done by Ohloh have been described by Steve Loughran: Dubious Statistics. The salaries of developers are far-fetched, they do not include real costs for the employer or customer and there is no way to take quality into consideration.

But even if these flaws had been corrected, e.g. by adjusting salaries to average salaries for software developers in the respective contries and only tested lines of code had been counted, the main point of value is not considered: the value to the user.

Take for example JUnit. koders values this framework with 25.000 USD, Ohloh with 143.000 USD, but none of them catches the invaluable impact JUnit had on today's best practices for Java development. This little test framework created an unified way of measuring quality of software projects. It set the minimum standard for development practise and it prevented millions of bugs.

Even an automated value guessing system should try to take usage and usefulness into consideration, e.g. by estimating how many other projects are relying on the code, how many users are posting to the mailing list of a project and how many weblogs lik to it's homepage.

| Comments[5]