Rational's field Practices underlying the later Rational Unified Process (RUP) - iterative development, component-based architecture, modelling, continuous developer-driven testing, requirements management, and automated testing-are all traceable to this experience base.
Rational provided code generators and the cross-debuggers for then-popular instruction set architectures such as the VAX, Motorola 68000, and x86 much of this was accomplished through a partnership with Tartan Labs, founded by Bill Wulf to commercialize his work on optimizing code generators semi-automatically produced from architecture descriptions (PQCC). The company's name was later changed from "Rational Machines" to Rational to avoid emphasizing this proprietary hardware. Memory was organized as a single-level store a 64-bit virtual address presented to the memory system either immediately returned data, or triggered a page fault handled by the processor's microcode. The horizontally-microprogrammed R1000 provided two independent 64-bit data paths, permitting simultaneous computation and type checking. The Rational Environment ran on custom hardware, the Rational R1000, which implemented a high-level architecture optimized for execution of Ada programs in general and the Rational Environment in particular. The Environment's Command Window mechanism made it easy to directly invoke Ada functions and procedures, which encouraged developer-driven unit testing. To overcome a conflict between strong typing and iterative development that produced recompilation times proportional to system size rather than size-of-change, the Rational Environment supported the definition of subsystems with explicit architectural imports and exports this mechanism later proved useful in protecting application architectures from inadvertent degradation. The Rational Environment was organized around a persistent intermediate representation (DIANA), providing users with syntactic and semantic completion, incremental compilation, and integrated configuration management and version control. Its goal was to provide the productivity benefits associated with academic single-user programming environments to teams of developers developing mission-critical applications that could execute on a range of computing platforms. First released in 1985, the Rational Environment was an integrated development environment for the Ada programming language, which provided good support for abstraction through strong typing.