AccuRev is a fast, powerful, and easy-to-use Software Configuration Management (SCM) tool with integrated issue tracking based on "Streams" that more efficiently manages complex parallel and global development. Streams are a combination and superset of branches and labels that are first class objects instead of being file-by-file attributes. AccuRev records all merges and patches, so you never have to re-merge the same code. It supports file and directory renaming and merging, follows a client/server model, and is transaction-based. It includes an integrated graphical 3-way diff and merge tool. AccuRev provides an Open API (and SDK) to integrate with any third-party development tool (IBM/Rational ClearQuest, Serena TeamTrack, and more out of the box). It also integrates with Eclipse, the MS SCC API (MS Visual Studio), Sun Java Studio, any diff/merge tool with a command line interface, and more.
Alma is a software workshop for modeling and analyzing. It reads several sources (languages, models, etc.), helps you design for object-oriented modeling (definition of classes, relations, patterns, etc.), modifies the structure and the code, and outputs new sources, documentation, diagrams, etc. It is designed for object-oriented modeling (definition of classes and relations) and for migrating code in older languages. It meets two needs, offering a simplified software modeling workshop for small projects and making it easier to do rewrites, ports, and encapsulation of non-OO code.
Bugzilla is the leading open-source/free software bug tracking system, with high-profile installations at mozilla.org, GNOME, Red Hat, and NASA, among others. It features a comprehensive set of fields, attachment management, inter-bug dependencies, email notification of changes, a powerful query interface, reporting, and Web, XML, email, and console interfaces. It can be managed entirely using a Web-based UI. The user UI is customizable using templates.
Ciao is a complete Prolog system subsuming ISO-Prolog with a novel modular design which allows both restricting and extending the language. Ciao extensions currently include feature terms (records), higher-order, functions, constraints, objects, persistent predicates, a good base for distributed execution (agents), and concurrency. Libraries also support WWW programming, sockets, and external interfaces (C, Java, TCL/Tk, relational databases, etc.). An Emacs-based environment, a stand-alone compiler, and a toplevel shell are also provided.
Dynamic Probes (Dprobes) is a generic and pervasive system debugging facility that will operate under the most extreme software conditions such as debugging a deep-rooted operating system problem in a live environment. Dprobes allows the insertion of fully automated breakpoints or probepoints anywhere in the system and user space. Each probepoint has an associated set of probe instructions that are interpreted when the probe fires. These instructions allow memory and CPU registers to be examined and altered using conditional logic. When the probe command terminates, prior to returning to the probed code, a syslog record may be optionally generated.
GNATS is a portable incident/bug report/help request-tracking system which runs on UNIX-like operating systems. It easily handles thousands of problem reports, has been in wide use since the early 90s, and can do most of its operations over e-mail. Several front end interfaces exist, including command line, emacs, and Tcl/Tk interfaces. There are also a number of Web (CGI) interfaces written in scripting languages like Perl and Python.
Hammerhead is a stress testing tool for Web sites. It initiates connections from multiple IP aliases and simulates a user from each alias. It is fully configurable, and there are numerous other options for creating problems with a site. Extensive data collection is also available.
IDebug is an advanced debugging framework for Java. It provides the standard core debugging and specification constructs such as assertions, debug levels and categories, stack traces, and specialized exceptions. Debugging functionality can be fine-tuned to a per-thread and/or a per-class basis, debugging contexts can be stored and recovered from persistent store, and several aspects of the debugging run-time are configurable at the meta-level.