Скачать презентацию Confessions of an Academic Ada Zealot Martin C Скачать презентацию Confessions of an Academic Ada Zealot Martin C

5096e146535a857645d0d70831d9e70c.ppt

  • Количество слайдов: 29

Confessions of an Academic Ada Zealot Martin C. Carlisle Associate Professor United States Air Confessions of an Academic Ada Zealot Martin C. Carlisle Associate Professor United States Air Force Academy Department of Computer Science 3 October 2001 Confessions of an Academic Ada Zealot Martin Carlisle

Disclaimer • Opinions contained herein are those of the author, and not necessarily those Disclaimer • Opinions contained herein are those of the author, and not necessarily those of the US Air Force Academy, US Air Force, or United States Government. 3 October 2001 Confessions of an Academic Ada Zealot Martin Carlisle

History (1980 s) $7600. 00 3 October 2001 $435. 00 Confessions of an Academic History (1980 s) $7600. 00 3 October 2001 $435. 00 Confessions of an Academic Ada Zealot Martin Carlisle $640. 00

Another 80 s Do. D acquisition • ANSI/MIL-STD-1815 A-1983 (the Ada programming language) • Another 80 s Do. D acquisition • ANSI/MIL-STD-1815 A-1983 (the Ada programming language) • Started in 1974. Requirements in 1978, standardized in 1983. 3 October 2001 Confessions of an Academic Ada Zealot Martin Carlisle

The Mandate • Required for all Do. D critical systems (1983) • Required for The Mandate • Required for all Do. D critical systems (1983) • Required for use in Do. D weapons systems (Deputy Sec. Of Defense, March 1987) • Required for all Do. D software (June 1, 1991) 3 October 2001 Confessions of an Academic Ada Zealot Martin Carlisle

Ada in 80 s • Compilers were expensive and slow • As an innovative Ada in 80 s • Compilers were expensive and slow • As an innovative language, hard to implement 3 October 2001 Confessions of an Academic Ada Zealot Martin Carlisle

Major Contracts • 1992: Air Force gives contract to NYU for GNAT. Ada Core Major Contracts • 1992: Air Force gives contract to NYU for GNAT. Ada Core Technologies established in 1994. • 1995: Academic Ada contract to Intermetrics 3 October 2001 Confessions of an Academic Ada Zealot Martin Carlisle

The Mandate’s Effect • In 1994, 33% of code written in Ada, 22% in The Mandate’s Effect • In 1994, 33% of code written in Ada, 22% in C, 37% in “other approved languages” • “Many projects have ignored or manipulated the policy on waivers, employing languages other than Ada without the required waiver ” (NRC) 3 October 2001 Confessions of an Academic Ada Zealot Martin Carlisle

The Mandate Destroyed • Based on the NRC report, Ada no longer mandated (March The Mandate Destroyed • Based on the NRC report, Ada no longer mandated (March 1997) • But where’s the $15 million/year? • AJPO closed Sept 1998 3 October 2001 Confessions of an Academic Ada Zealot Martin Carlisle

Why we STILL teach Ada at USAFA • Clear syntax • Supports software engineering Why we STILL teach Ada at USAFA • Clear syntax • Supports software engineering principles • Cheaper development costs – Time constraints for cadets are large! 3 October 2001 Confessions of an Academic Ada Zealot Martin Carlisle

Steelman Requirements • Ada 93% • Java 72% • C++ 68% • C 53% Steelman Requirements • Ada 93% • Java 72% • C++ 68% • C 53% "Ada, C, C++, and Java vs. The Steelman" David Wheeler, Institute for Defense Analysis, 1997 3 October 2001 Confessions of an Academic Ada Zealot Martin Carlisle

Comparing Costs (C) • Development costs of Ada were roughly half those of C, Comparing Costs (C) • Development costs of Ada were roughly half those of C, with C code having an order of magnitude greater errors. 75% of the programmers were experienced in C, while only 25% were experienced in Ada. Stephen Ziegler, Rational Corp. "Comparing Development Costs of C and Ada" 3 October 2001 Confessions of an Academic Ada Zealot Martin Carlisle

Comparing Costs (C++) • Ada error rate was approximately 50% of the norm. Cost Comparing Costs (C++) • Ada error rate was approximately 50% of the norm. Cost of delivery of Ada was lower. Reifer Consultants "Quantifying the Debate: Ada vs. C++" 3 October 2001 Confessions of an Academic Ada Zealot Martin Carlisle

Comparing Costs (C++) • Analysis of info systems and C 3 systems showed Ada Comparing Costs (C++) • Analysis of info systems and C 3 systems showed Ada had a 35% advantage in frontend development costs and a 70% advanatage in maintenance costs. "Ada and C++: A Business Case Analysis" USAF Report. (TRW) 3 October 2001 Confessions of an Academic Ada Zealot Martin Carlisle

Comparing Languages (FAA) • Evaluation included capability, efficiency, availability/reliability, maintainability/ extensibility, lifecycle cost, and Comparing Languages (FAA) • Evaluation included capability, efficiency, availability/reliability, maintainability/ extensibility, lifecycle cost, and risk. Ada 78. 8 C++ 63. 9 C 59. 5 FORTRAN 47. 0 Software Engineering Institute (for FAA) 3 October 2001 Confessions of an Academic Ada Zealot Martin Carlisle

Comparing Ada and Java • Concludes Java is more difficult to teach to intro Comparing Ada and Java • Concludes Java is more difficult to teach to intro programmers because of complex syntax for simple programs, lack of pointers, difficulties with types. http: //www. act-europe. fr/texts/papers/ada-java -teaching-comp. pdf (Brosgol) 3 October 2001 Confessions of an Academic Ada Zealot Martin Carlisle

Eliminating Bugs • Eliminating Bugs • "My Hairiest Bug War Stories" CACM April 1997. Ada compilers unaided would have caught 88% of these bugs. John Mc. Cormick ("Ada Kills Hairy Bugs") 3 October 2001 Confessions of an Academic Ada Zealot Martin Carlisle

Languages in CS 1 • Ada instructors believed their current language was best at Languages in CS 1 • Ada instructors believed their current language was best at a ratio of 3 -4 x over C and C++ instructors. http: //academic. scranton. edu/faculty/beidler/ levy/ 3 October 2001 Confessions of an Academic Ada Zealot Martin Carlisle

Nobody uses Ada • Ada is used in lots of surprising places, including the Nobody uses Ada • Ada is used in lots of surprising places, including the NYC Subway and the Hertz navigation system. http: //www. seas. gwu. edu/~mfeldman/adaproject-summary. html 3 October 2001 Confessions of an Academic Ada Zealot Martin Carlisle

Ada in Universities • Approximately 150 universities use Ada in 1 st or 2 Ada in Universities • Approximately 150 universities use Ada in 1 st or 2 nd computer science course • Number relatively constant over last couple of years • http: //www. seas. gwu. edu/~mfeldman/adafoundation. html 3 October 2001 Confessions of an Academic Ada Zealot Martin Carlisle

AP Board • Starts in Pascal (first offered 1984) • Moves to C++ in AP Board • Starts in Pascal (first offered 1984) • Moves to C++ in 1998 -1999 (despite open opposition from ACM educators) • Moves to Java in 2003 -2004 3 October 2001 Confessions of an Academic Ada Zealot Martin Carlisle

What kinds of tools are we looking for? • Cheap • Simple • Powerful What kinds of tools are we looking for? • Cheap • Simple • Powerful • Must compare favorably with Visual Studio, freely available Java tools 3 October 2001 Confessions of an Academic Ada Zealot Martin Carlisle

Tools to Support Ada in Education and Elsewhere • GNAT/Ada. GIDE 3 October 2001 Tools to Support Ada in Education and Elsewhere • GNAT/Ada. GIDE 3 October 2001 Confessions of an Academic Ada Zealot Martin Carlisle

Leveraging Technology with Ada • JGNAT Connect Four applet demo 3 October 2001 Confessions Leveraging Technology with Ada • JGNAT Connect Four applet demo 3 October 2001 Confessions of an Academic Ada Zealot Martin Carlisle

Leveraging Technology with Ada • Gtk/GLADE/GVD – Primarily Linux based, but Windows version – Leveraging Technology with Ada • Gtk/GLADE/GVD – Primarily Linux based, but Windows version – XML based GUI builder – Multi-language debugging platform 3 October 2001 Confessions of an Academic Ada Zealot Martin Carlisle

Leveraging Technology with Ada • RAPID – Multi-platform GUI builder http: //www. usafa. af. Leveraging Technology with Ada • RAPID – Multi-platform GUI builder http: //www. usafa. af. mil/dfcs/bios/carlisle. html 3 October 2001 Confessions of an Academic Ada Zealot Martin Carlisle

Leveraging Technology with Ada • CLAW – Windows GUI builder – Free demo, pay Leveraging Technology with Ada • CLAW – Windows GUI builder – Free demo, pay for full version RR software (www. rrsoftware. com) 3 October 2001 Confessions of an Academic Ada Zealot Martin Carlisle

Leveraging Technology with Ada • GWindows – Free OO Windows library – Currently no Leveraging Technology with Ada • GWindows – Free OO Windows library – Currently no GUI builder www. adapower. com 3 October 2001 Confessions of an Academic Ada Zealot Martin Carlisle

Leveraging Technology with Ada • GNATCOM – MS reusable object technology http: //www. adapower. Leveraging Technology with Ada • GNATCOM – MS reusable object technology http: //www. adapower. com 3 October 2001 Confessions of an Academic Ada Zealot Martin Carlisle