AHEAD (Algebraic Hierarchical Equations for Application Design) is an architectural model for feature oriented programming (FOP) and a basis for large-scale compositional programming. Features are the building blocks of systems; they are incremental units of program functionality that encapsulate "crosscuts" or fragments of many classes. Feature modules are similar to object-oriented frameworks in that they extend well-known methods of existing classes. Unlike aspects of aspect oriented programming (AOP), there is no quantification other than that used in traditional object-oriented design.
An AHEAD model of a domain is an algebra, where an operation corresponds to a feature module. Programs in a domain are represented by unique compositions of these operations, much like query evaluation programs have unique expressions as compositions of relational algebra operations in database systems. The advance of AHEAD is scalability: both code and non-code representations of programs can be synthesized using algebraic models. Further, systems can be suites of different programs; such systems can also be synthesized in AHEAD.
The AHEAD Tool Suite (ATS) is a collection of Java-based tools that allow you to:
To download ATS, click the entry below.
To view a (reasonably current) draft of AHEAD documentation, click here. The current draft of AHEAD documentation is bundled with ATS downloads.
ATS is protected by the standard GNU License.