Daikon is an implementation of dynamic detection of likely invariants. An invariant is a property (such as "x=2*y+5" or "this.next.prev = this" or "myarray is sorted by <") that holds at a certain point or points in a program. Invariants are often seen in assert statements, documentation, and formal specifications. Invariants can be useful in program understanding and a host of other applications. Daikon runs a program, observes the values that the program computes, and then reports properties that were true over the observed executions. It can detect properties in Java, C, C++, Perl, and IOA programs, in spreadsheet files, and in other data sources.
Open Source Requirements Management Tool is designed to achieve full SDLC traceability for features, requirements, design, implementation, and testing. It has a UI for requirements derivation, version control, and common or custom attributes (rationale, source, risk, effort, etc.). It is suitable for product managers, developers, and analysts to collaborate with flexibility and scalability.
alph implements and analyzes historical and traditional ciphers and codes, such as polyalphabetic, substitutional, and mixed employing human-reconstructable algorithms. It provides a pipe filter interface in order to encrypt and decrypt block text to achieve transparency. The program is meant to be used in conjunction with external programs that transfer data, resulting in transparent encryption or decryption of information. The program can thus be used as a mail filter, IRC filter, IM filter, and so on.
The Spiffy Framework is a collection of well-tested and often used helper methods and utility classes. Such methods and classes solve existing and recurring practical problems, and remedy annoying features of the Java language or its frameworks. The value of this framework is not only the code, but also the ideas for solutions to the problems. The goals are to collect and centralize "utility abstractions", and to serve as a repository of knowledge/smart ideas for programmers to learn.
StoryTestIQ (a.k.a. "STIQ") is a tool for creating "Executable Requirements", which have also been known as acceptance tests or functional tests. STIQ was developed based on two other open source acceptance testing tools, Selenium and FitNesse. This combination allowed StoryTestIQ to capture the Web browser based testing facilities and elegant command language of Selenium along with the wiki based editing and pluggable Fit fixture loading of FitNesse.
JCite makes it possible to cite snippets of Java source code in your HTML documents (API documentation, for instance). The snippets are copied out of Java class source files, which should be part of the regular build. This guarantees that the cited snippets are always up-to-date. If you cite from unit tests, you even get the guarantee that they still work correctly. Finally, thanks to the excellent Java2Html library, the cited snippets get automatic syntax highlighting.
The DPML SDK is a management platform for Java-based component development, resource management, and deployment. It is composed of the Transit resource management layer, the Depot multi-project build system, the Metro component management runtime engine, and the Station application management console.
JRequisite is an agile requirement management tool, which means your requirements are defined mainly via visual tools as opposed to textual requirement tools. Also, it is independent of the process used, so you may apply any process to your development. Despite being a requirement analysis and management tool, JRequisite tools are so general that they can be used in other areas of software development and even non-software related fields.
Do178Builder is a documentation tool used throughout the software/hardware development effort, helping to produce the DO-178B/254 documentation much less painfully. A major obstacle to creating airborne products, for smaller developers, is the necessity to qualify the software per RTCA/DO-178B, or hardware per RTCA/DO-254. Without this qualification, airborne products cannot be deployed.