DDC-I, Inc. is a privately held company providing software development of real-time operating systems, software development tools, and software services for safety-critical embedded applications, headquartered in Phoenix, Arizona. It was first created in 1985 as the Danish firm DDC International A/S (also known as DDC-I A/S), a commercial outgrowth of Dansk Datamatik Center, a Danish software research and development organization of the 1980s. The American subsidiary was created in 1986. For many years, the firm specialized in language compilers for the programming language Ada.

The Danish office was closed in 2003 and all operations moved to the Phoenix location. In 2008, DDC-I entered the embedded real-time operating system market, where its major product is Deos. Aimed at avionics and military applications, Deos has a history of certifications to DO-178B/DO-178C DAL A as well as to other standards for safety-critical software in airborne systems.

Origins The origins of DDC International A/S lay in Dansk Datamatik Center, a Danish software research and development organization that was formed in 1979 to demonstrate the value of using modern techniques, especially those involving formal methods, in software design and development. Among its several projects was the creation of a compiler system for the programming language Ada. Ada was a difficult language to implement and early compiler projects for it often proved disappointments.Whitaker, "Ada—The Project", pp. 217–218. But the DDC compiler design was sound and it first passed the United States Department of Defense-sponsored Ada Compiler Validation Capability (ACVC) standardized suite of language and runtime tests on a VAX/VMS system in September 1984.Bundgaard, "The development of an Ada front end for small computers", p. 322. As such, it was the first European Ada compiler to meet this standard.Clemmensen, "Retargeting and rehosting the DDC Ada compiler system", p. 22.

Success of the Ada project led to a separate company being formed in 1985, called DDC International A/S, with the purpose of commercializing the Ada compiler system product.Bjørner, Gram, Oest, and Rystrøm, "Dansk Datamatik Center", p. 351. Like its originator, it was based in Lyngby, Denmark. Ole N. Oest was named the managing director of DDC International.Bjørner, Gram, Oest, and Rystrøm, "Dansk Datamatik Center", expanded version, p. 11. In 1986, DDC-I, Inc. was founded as the American subsidiary company. Located in Phoenix, Arizona, it focused on sales, customer support, and engineering consulting activities in the United States.

Ada compiler

DDC-I established a business in selling the Ada compiler system product, named DACS, directly to firms, both as software to develop projects in Ada with, and as source code to computer makers and others, who would rehost or retarget it to other processors and operating systems.

The first business sold both native compilers and cross compilers, with the latter more common since Ada was primarily used in the embedded systems realm. One of the first cross compilers that DDC-I developed was from VAX/VMS to the Intel 8086 and Intel 80286; the effort was already underway by early 1985.Bundgaard, "The development of an Ada front end for small computers", p. 328. It began as a joint venture with the Italian defense electronics company Selenia that would target both their MARA-860 and MARA-286 multi-microprocessor computers, based on the 8086 and 80286 architectures, and generic embedded and OS-hosting 8086 and 80286 systems.DDC Ada Compiler Retargeter's Group, Newsletter No 2, pp. 35–36. This work was the start of what would become the largest-selling product line for the firm. DDC-I developed a reputation for quality Ada cross compilers and runtime systems for Intel 80x86 processors.Rehmer, "The HADS Team", p. 300.

The second business made use of what became termed the DDC OEM Compiler Kit,Bjørner, Gram, Oest, and Rystrøm, "Dansk Datamatik Center", pp. 354. who could be using the Ada front end for compilers to other hosts or targets or for other tools such as VLSI. In a September 1985 meeting in Lund, Sweden, several of the OEM Kit customers formed the DDC Ada Compiler Retargeter's Group. It held at least three meetings over the course of 1985 and 1986. The early OEM customers included the University of Lund, Defence Materiel Administration, and Ericsson Radio Systems in Sweden; Softplan and Nokia Information Systems in Finland; Selenia and Olivetti in Italy; ICL Defence Systems and STL Ltd in the United Kingdom; Aitech Software Engineering in Israel; and Advanced Computer Techniques, Rockwell Collins, Control Data Corporation, and General Systems Group in the United States.DDC Ada Compiler Retargeter's Group, Newsletter No 1, pp. 7–8; No 2, pp. 5–7; No 3, pp. 13–15a.

Later developers were often less well versed in formal methods and did not use them in their work on the compiler.Bjørner and Havelund, "40 Years of Formal Methods", p. 48. This was even more so in the case of companies retargeting the compiler, many of which were unfamiliar with the Ada language.Rehmer, "The HADS Team", p. 306.Schilling, "Use of Ada in a Commercial, Small Company Environment", pp. 89–91.

DDC-I was in the same market as several other Ada compiler firms, including Alsys, TeleSoft, Verdix, Tartan Laboratories, and TLD Systems. (DDC-I would go on to stay in business longer than any of these others.) As with other Ada compiler vendors, much of the time of DDC-I engineers was spent in conforming to the large, difficult ACVC tests.Rehmer, "The HADS Team", pp. 305, 306, 307.Rosen, "The Ada paradox(es)", p. 29.

Starting in 1988 and continuing for several years, DDC-I consultants collaborated with Honeywell Air Transport Systems to retarget and optimize the DDC-I Ada compiler to the AMD 29050 processor.Rehmer, "The HADS Team", pp. 299, 302. This DDC-I-based cross compiler system was used to develop the primary flight software for the Boeing 777 airliner. This software, named the Airplane Information Management System, would become arguably the best-known of any Ada-in-use project, civilian or military. Also at http://delivery.acm.org/10.1145/1040000/1035608/p28-wolfe.pdf Some 550 developers at Honeywell worked on the flight system and it was publicized as a major Ada success story.

In October 1991, it was announced that DDC-I had acquired the Ada and JOVIAL language embedded systems business of InterACT, which had become a venture of Advanced Computer Techniques. This wholly owned New York-based entity was briefly named DDC-Inter before being subsumed into DDC-I proper. This brought Ada cross compilers for the MIL-STD-1750A and MIPS R3000 processors, and JOVIAL language cross compilers for the MIL-STD-1750A and Zilog Z8002 into the product line.

The MIPS R3000 product was one which DDC-I emphasized. Engineering efforts included automatic recognition by the compiler of certain optimizations regarding task rendezvous times,Schilling and Nielsen, "Automatic compiler recognition of monitor tasks", pp. 91, 100–102. which was an example of the work being done to find efficient ways to implement Ada's tasking model.Fernandez, "A Taxonomy of Coordination Mechanisms Used by Real-Time Processes", pp. 32, 39. Another effort consisted of work in the U.S. Air Force-sponsored Common Ada Runtime System (CARTS) project, which was geared towards providing standard interfaces into Ada runtime environments.Mancusi et al., "Real and Virtual Interrupt Support: The Mapping of a CARTS Feature to Two Different Architectures". By doing this, applications could exercise control of real-time features that were outside of the Ada language itself, such as asynchronous entry calls, but still retain a large degree of portability.Fergany et al., "The implementation of asynchronous entry calls on two different architectures", pp. 486, 487, 494.

At the end of 1993, the New York office was closed, and its work transferred to the Phoenix office.

By the early 1990s, DDC-I offered Ada native compilers for VAX/VMS, Sun-3 and SPARC under SunOS, and Intel 80386 under UNIX System V and OS/2, and offered cross compilers for the Motorola 680x0 and Intel i860 in addition to the abovementioned targets.

Ada 95 and explorations of other product lines

In the early 1990s, DDC-I worked on redesigning the compiler system for the wide-ranging Ada 95 revision of the language standard. They used a new object-based programming design and still adhered to a formal methods approach as well, using VDM-SL. The work was done under sponsorship of the European Community-based Open Microprocessor Initiative's Global Language and Uniform Environment -project (OMI/GLUE), where DDC-I's role was to create a compiler targeting the Architecture Neutral Distribution Format (ANDF) intermediate form, with the intention of bringing Ada 95 to more platforms quickly.Bundgaard, "An ANDF based Ada 95 compiler system", p. 436. As part of this work, DDC-I collaborated with the Defence Evaluation and Research Agency in expanding some of ANDF's abilities to express semantics of Ada and the fast-growing programming language C++. Work in Ada-specific areas, such as bounds-checking elimination, was done to get optimal run-time performance.Møller, "Run-time check elimination for Ada 9X", pp. 122, 126–128.

The Ada software environment was originally thought to be a promising market. But the Ada compiler business proved to be a difficult one to be in.Rosen, "The Ada paradox(es)", p. 34. During this time, 1987–97, a U.S. government mandate for Ada use was in effect, albeit with some waivers granted.Sward, "The rise, fall and persistence of Ada", p. 71. Many of the advantages of the language for general-purpose programming were not seen as such by the general software engineering community or by educators.Rosen, "The Ada paradox(es)", pp. 32–33. The sales situation was challenging, with periodic small layoffs. Despite consolidation among other Ada tool providers, DDC-I remained an independent company.

In any case, DDC-I was an enthusiastic advocate of the Ada language, for use in the companySchilling, "Use of Ada in a Commercial, Small Company Environment", pp. 89, 93. and externally. A paper one of its engineers published in 1993 assessed Ada 95's object-oriented features favorably to those of C++ and attracted some attention.Jorgensen, "A Comparison of the Object Oriented Features of Ada 9X and C++", pp. 140–141. Work was done in conjunction with Northrop Grumman Electronic Systems and the U.S. Air Force to improve the ability for developers to debug highly optimized Ada generated code.Tucker, Solomon, and Littlejohn, "Compiler optimization and its impact on development of real-time systems", pp. C12-2, C12-6.

At the same time, the firm attempted to expand and augment its product line. The RAISE toolset was available, as was Cedar, a design tool for real-time systems. Also offered was Beologic, a tool to develop and run state/event parts of applications, that had been licensed from Bang & Olufsen and integrated with the Ada compiler system. The biggest effort was in the direction of C++. DDC-I began offering 1st Object Exec, a C++-based real-time operating system intended for direct, object-level support of embedded applications. Despite considerable efforts during 1993–94, 1st Object Exec failed to gain traction in the marketplace.

The one area where Ada did gain a solid foothold was in real-time, high-reliability, high-integrity, safety-critical applications such as aerospace.Rosen, "The Ada paradox(es)", pp. 33–34.