DDJ, August 2004
Testing & Debugging



FEATURES

Continuous Integration & .NET: Part I
by Thomas Beck
In this two-part article, Thomas introduces a complete Continuous Integration solution.

Testing Java Servlets
by Len DiMaggio
Java servlets differ from other types of programs, thereby affecting your testing strategies.

The Jpydbg Debugger
by Jean-Yves Mengant
Jpydbg, the debugger Jean-Yves presents here, is a Python plug-in for the JEdit framework.

Pseudorandom Testing
by Guy W. Lecky-Thompson
Guy examines how you can test objects by creating specific test harnesses with verifiable datasets.

Performance & System Testing
by Thomas H. Bodenheimer
When collecting performance data from dozens—if not hundreds—of computers, automation is a necessity.

Optimizing Pixomatic for x86 Processors: Part I
by Michael Abrash
In the first installment of a three-part article, Michael discusses his greatest performance challenge ever—optimizing an x86 3D software rasterizer.

HTTP Response Splitting
by Amit Klein and Steve Orrin
HTTP Response Splitting is a powerful new attack technique that enables other attacks.

Aspect-Oriented Programming & C++
by Christopher Diggins
Aspect-oriented programming isn't just about Java. Christopher presents AOP techniques for C++.

Building Callout Controls
by Thiadmer Riemersma
Thiadmer's balloon-style Windows control is configurable for many purposes.

Tracing Program Execution & NUnit
by Paul Kimmel
NUnit and .NET's TraceListeners help you eliminate bugs from code.

Synchronization Domains
by Richard Grimes
The best place to avoid deadlocks is in the design stage—and that's where synchronization domains come in.

C++ and the Perils of Double-Checked Locking: Part II
by Scott Meyers and Andrei Alexandrescu
In this installment, Scott and Andrei examine the relationship between thread safety and the volatile keyword.


When Format Strings Attack!
Herbert H. Thompson and James A. Whittaker
Format-string vulnerabilities happen when you fail to specify how user data will be formatted.

The Subversion Version-Control Program
by Jeff Machols
The Subversion version-control program provides all the benefits of CVS—along with many improvements.


EMBEDDED SYSTEMS

RunTime Monitoring & Software Verification
by Doron Drusinsky
Doron examines runtime monitoring, focusing on its application to robust system verification.


COLUMNS

Programming Paradigms
by Michael Swaine

Embedded Space
by Ed Nisley

Chaos Manor
by Jerry Pournelle

Programmer's Bookshelf
by Paul Martz


FORUM

Editorial
by Jonathan Erickson

Letters
by you

Dr. Ecco's Omniheurist Corner
by Dennis E. Shasha

News & Views
by Shannon Cochran

Of Interest
by Shannon Cochran

Swaine's Flames
by Michael Swaine