Best of open source software awards: Development tools

Bossie winners for object database, version control, Web client library, parallel programming, business rule management, rich Internet applications, JavaScript framework, and Web services testing

The InfoWorld Bossies are chosen annually by Test Center editors, analysts, and reviewers. The winners represent the best free and open source software we've used. In application development, our choices were spearheaded by contributing editors Rick Grehan and Martin Heller.

Got an open source favorite we missed? Please send us a note.

Object Database


db4o began life as a Java database library, but its designers have since created parallel editions for the .NET languages. In 2005, db4o implemented Native Queries, which allow you to express queries as Java (or .NET) methods. Recent additions to the library include Transparent Update and Transparent Activation, which more completely automate object persistence. The engine itself deduces how much of a persistent object's members must be read from and written to storage, simplifying coding and providing better memory management. Also new in db4o is support for Microsoft LINQ. Version Control


Distributed version control has become a major need as development teams have become more geographically distributed. Originally the brainchild of Linus Torvalds and currently maintained by Junio Hamano, Git is the revision management tool of choice for several prominent open source projects, including the Linux kernel, Server, One Laptop per Child (OLPC) core development, and the Ruby on Rails Web framework. The Git engine is at least an order of magnitude faster than other revision control systems for large projects, and it has strong support for branching and merging. Web Client Library


HttpClient is an open-source Java HTTP client library begun in 2001. Formerly a component of Jakarta Commons, it is now being maintained by the HttpComponents project. Though there's nothing earth-shatteringly new about HttpClient, it is as useful as ever. Particularly helpful are property settings that let you configure HttpClient to dump detailed 'on the wire' data to System.out. If you're a Java programmer with a complex application staring at you, swing by the HttpClient-3.x site and you'll have your client application done in no time. Parallel Programming

Intel Threaded Building Blocks

The effective use of multi-core processors is one of the more difficult and pressing problems facing software developers today. Over the years, there have been many proposals to address parallelization, many of which involved new languages. Intel Threaded Building Blocks (TBB) is a portable template-based C++ library that implements a higher-level, task-based parallelism that abstracts platform details and threading mechanism for performance and scalability. The very interesting Microsoft Parallel Extensions to the .NET Framework, which implement task-based parallelism through a class library, are not open source. Business Rule Management System

JBoss Drools

Drools is a worthy rival to leading enterprise competitors Blaze Advisor and JRules, but is available free under the Apache open source license. It combines a very fast runtime engine, a full-featured rule repository, excellent Eclipse-based developer tools, and support for Excel-based decision tables, allowing rules to be written and maintained by business analysts. The developer group is large, and the project moves fast. Drools even has one feature the market leaders lack: the ability to import rules from almost any other BRMS. Rich Internet Applications

Open Flex

InfoWorld has given high marks to Adobe Flex Builder 3.0, which is a commercial product. We would also like to honor Adobe for open sourcing the Flex SDK (although not the Flex Builder IDE) under the MPL model. This opens the door for open source tools and applications targeting the Flex framework, which in turn is one of our favorite ways of producing Rich Internet Applications. Competitors to Flex include OpenLazlo and better performers such as Curl and Silverlight 2.0, but those last two products are not open source, even though they may be used for free in some scenarios. JavaScript Framework


Prototype, originally the work of Sam Stephenson, is the foundation on which several of the other open source Ajax frameworks, including Scriptaculous and Open Rico, have been built. In turn, the popular Ruby on Rails server framework uses Prototype and Scriptaculous in its Ajax layer. Using Prototype makes writing JavaScript more object-oriented and flexible than “bare” JavaScript, and makes manipulating the Document Object Model (DOM) considerably easier and less prone to breakage. Prototype also adds concise, powerful methods to JavaScript while insulating your own JavaScript code from browser dependencies. Web Services Test Tool


Few SOAP testing tools are as easy and powerful as soapUI. It is available either as a standalone product or as a plug-in for Eclipse, IntelliJ, and NetBeans. Install soapUI's Eclipse plug-in into the Eclipse IDE, and you have a powerful SOAP debugging and testing toolkit. All you need to do is import the WSDL from the target server, ask soapUI to build test SOAP requests, and turn it loose. Various views let you dig into the wire transactions of the SOAP requests and responses, modify test requests, examine responses, and quickly isolate the SOAP server's problems.