• CelsiusTech, Swedish defense contractor (corvette class)

  • - On the verge of bankrupcy in 1988; switched to Ada
    - $350M profit in 1992; key to profitability is reuse
    - POC Ulf Olsson

  • Eleven real-time combat system applications delivered in Ada

  • - VME-based shared memory compute nodes (non-UNIX)
    - Processing distributed over 20 nodes via Ethernet & TCP/IP
    - Designed to minimize network traffic; high frequency operations allocated within individual nodes
    - Ada tasks communicate asynchronously

  • Total code base: approximately 3M SLOC Ada

  • - Ada required significant initial investment
    - Swedish & Danish ships shared only one interface; had 65% reuse
    - Ported 500K+ SLOC from 68000 to RS/6000; changed 0.6% of code

Previous slide Contents Next slide

From the Script: SLIDE 56 - CelsiusTech

More information on the activities of CelsiusTech can be found in a monograph distributed by Rational, Inc.

CelsiusTech was formerly known as NobelTech.

A summary of this information can be found in the article from "Ada-Europe News," October 1994, No. 19, pp. 22-23] or on the web at: http://sw-eng.falls-church.va.us/AdaIC/docs/flyers/ship.shtml and http://sw-eng.falls-church.va.us/AdaIC/docs/flyers/stric.shtml

It can also be found in the 1/95 issue of "The Rational Watch", Rational Software Corporation.

CelsiusTech, a Swedish defense contractor, was on the verge of bankruptcy when they made the decision to switch to Ada. They attribute their $350M profit in 1992 to reuse. This reuse was enabled by, but not limited to, Ada.

They delivered 11 real-time combat systems in Ada. Much of what CelsiusTech has done is often referred to as "Product Line Engineering." In order to facilitate this process, a single, common, programming language is useful.

Although Ada did require a significant initial investment, they currently have an Ada code base of 3 million SLOC.

They were able to achieve 65 percent reuse on an interface between Swedish and Danish ships. They also were able to port 500,000 SLOC from one hardware platform to another, changing only 0.6% of the code.