An Introduction to the Validation Process An "Ada implementation" comprises an Ada compiler, linker, any other necessary software, its host computer (on which the compiler is run), and the target computer (on which the generated code will be run). The purpose of validation during the transition period (January 1995 March 1997) is to encourage Ada implementations that are upgraded to conform to ANSI/ISO/IEC 8652:1995. Compliance is measured only within the limits of the collection of test programs contained in the Ada Compiler Validation Capability (ACVC). Characteristics not specified by the standard, such as performance or suitability for a particular application, are outside the scope of Ada validation. The validation process is carried out by the Ada certification body. This body consists of the Ada Joint Program Office (AJPO), technical and contracting support organizations, and Ada Validation Facilities (AVFs). The AJPO, a component of the Defense Information Systems Agency, establishes policies of the Ada certification system, issues validation certificates for AVF-tested Ada implementations, and registers Ada implementations that are untested by an AVF. The Ada certification body operates in conjunction with the US Department of Commerce which has the responsibility for establishing and maintaining a certification system for the Federal Information Processing Standards (FIPS). The Ada Compiler Validation Capability The ACVC is designed to demonstrate the conformity of an Ada implementation with the standard. The ACVC is distributed as a collection of test programs, support programs that facilitate processing the tests, and an ACVC user's guide that explains the criteria for evaluating the results. During the transition period, there are three versions of the Ada Compiler Validation Capability (ACVC): ACVC 1.11, for Ada 83, and ACVC 2.0 and 2.0.1, for Ada 95. For Ada 83 compilers, ACVC 1.11 will be in use until 31 March 1997; validation certificates issued for this test suite will expire 1 April 1998. The current version of the test suite for Ada 95, ACVC 2.0, will be in use until 31 March 1996, when it is replaced with ACVC 2.0.1; validation certificates issued for these test suites will also expire on 1 April 1998. The transition period will end 1 April 1997 with the release of ACVC 2.1, which will become the only test suite for Ada validation. For Ada 95 compilers, compliance is measured only within the limits of the collection of test programs contained in the ACVC for the core language and specialized needs annexes. An Ada implementation passes a given ACVC version if 1) it processes each test of the customized test suite in accordance with criteria for individual tests and 2) the test result profile matches the passing requirements for the specific ACVC version. Although most Ada implementations tested during the transition period will exceed the passing requirements, matrices displaying the test result profiles for Core Ada 95 Test Categories and Special Needs Annexes are shown, for each compiler validated, both on a separate sheet of paper attached to the validation certificate and in the Validation Summary Report. The information contained in the matrix is reformatted and provided in the Validated Compilers List (VCL) to allow easy access for buyers and users who need to understand the levels of support provided by early Ada 95 implementations. The first matrix displays the number of tests that were Passed (designated by P in the text version of the VCL), Not Applicable (designated by N/A), Not Supported (designated by N/S), and Withdrawn (designated by W) for each of seven test categories: Ada 9X Basic, Real-Time, OOP, Type Extensions in Child Units, Child Library Units, Pre-defined Language Environment, and Mixed Features. Exhibit A shows a list of the test categories and a short description for each. The second matrix displays the number of tests that were Passed, Not Applicable, Not Supported, and Withdrawn (designated by the same letters in the text version as are used for the first matrix) for each of six Specialized Needs Annexes: System Programming, Real-Time Systems, Distributed Systems, Information Systems, Numerics, and Safety and Security. Tests allocated to these annexes are processed only when the vendor claims support. Exhibit A: Core Ada 95 Test Categories and Definitions -Ada 9X Basic: This is the subset of tests from ACVC 1.11 after removal of tests not applicable to Ada 95. These tests focus on support expected from Ada for features of Ada 83 that have been updated to be compatible with revised rules. (Note: The following subsets of tests validate features that are new to Ada 95. Each test has been allocated into exactly one of several test subsets, based upon a general categorization of Ada features used in the test. These tests are designed to reflect the features that programmers are likely to use to solve a programming problem.) -Real-Time: This subset is composed of tests for the new Ada 95 features from Section 9: Tasks and Synchronization. These features include protected objects, modifications to task types, select statements, and delay alternatives. -OOP: This subset of tests focuses on some necessary facilities for achieving object-oriented programming in Ada 95. Features validated include tagged types, class attributes, and abstract types and subprograms. Other Ada 95 facilities commonly used in object-oriented programs are included in subsequent subsets. -Type Extensions in Child Units: Tests that focus on the interaction of the two new Ada features of type extensions of tagged types and child library units. This includes the related semantics of visibility, accessibility, and calls on primitive operations of tagged types. -Child Library Units: Tests that focus on the support for the new Ada capability to provide a hierarchical organization of the compilation units of an Ada program with the associated capabilities of granting access to the contents of private declarations and of hiding selected units within subsystems. -Pre-defined Language Environment: This subset of tests include some Ada 83 facilities and some new features defined in Annex A. Annex A provides specifications for root library units for Ada, Interface, and System, character and string handling and input/output. -Mixed Features: This relatively large subset of tests focuses on the interaction of Ada features that are a mixture of familiar Ada 83 and new Ada 95 features. Validation by AVF Testing In order to obtain a validation certificate, the following six steps must be completed by the customer and the Ada certification body: 1. A formal validation agreement between the customer and an AVF is required in order to obtain validation services. 2. Pre-validation, consisting of customer testing, submission of results to the AVF, and resolution of any test issues (e.g., a missing or incomplete result to a test) must precede the actual validation. 3. Validation testing will be performed by an AVF at a site mutually agreed upon by the customer and the AVF (usually the customer's site). 4. A Declaration of Conformance must then be completed and signed by the customer no later than at the time of validation testing. 5. A Validation Summary Report (VSR) will be prepared by the AVF to document the validation. 6. A Validation Certificate (VC) will then be issued to the customer by the authority of the AJPO for a successfully tested Ada implementation. -Key to Validation Certificate (VC) Number: YYMMDDFX.XX-NNN For the certificate number above, YYMMDD marks the date (Year-Month-Day) of completion of on-site testing. F refers to the Ada Validation Facility. X.X or X.XX is the ACVC version. NNN is a unique sequence of numbers assigned by the Ada Validation Organization. For complete information on the validation process and on validation by registration for Ada 95 compilers, refer to the latest version of the Ada Compiler Validation Procedures, Version 4.0. Electronic copies of the Validation Procedures are available from the Ada Information Clearinghouse (AdaIC). Validated Compilers List The Ada 95 Validated Compilers List is a comprehensive database report of Ada 95 compilers that have been validated by the Ada Joint Program Office (AJPO). There is 1 base compiler reported at this time. Electronic copies of the Validated Compilers List are available from the Ada Information Clearinghouse (AdaIC). Contacting the AVO and the AVF Managers The Ada Validation Organization (AVO) provides the technical and administrative support required to operate the certification system. For further information on the AVFs or validation policies and procedures, contact: Ada Validation Organization Attn.: Ms. Audrey A. Hook Institute for Defense Analyses 1801 North Beauregard Street Alexandria, VA 22311 Phone: 703/845-6639 Fax: 703/845-6848 E-mail: hook@ida.org The following Ada Validation Facilities (AVFs), chartered by the Ada Joint Program Office, perform Ada Compiler Validation Capability testing and related support functions. Dr. William Dashiell National Institute of Standards and Technology Computer Systems Lab Software Standards Validation Group Building 255, Room A266 Gaithersburg, MD 20899 Phone: 301/975-2490 Fax: 301/948-6213, 301/948-1784 E-mail: dashiell@ecf.ncsl.nist.gov Mr. Dale Lange Language Control Facility 88 CG/SCSL 3810 Communications Blvd. Wright-Patterson AFB, OH 45433-5706 Phone: 513/255-4472 Fax: 513/255-4585 E-mail: langed@msrc.wpafb.af.mil Mr. Jon Leigh Mr. Dave Bamber The National Computing Centre, Ltd. Oxford Road Manchester M1 7ED ENGLAND Phone: +44 61 228 6333 Fax: +44 61 236 9877 E-mail: ncc-avf@ncc.co.uk Mr. Alphonse Philippe AFNOR Tour Europe, Cedex 7 F-92049 Paris la Defence FRANCE Phone: +33 1 42 91 5960 E-mail: Mr. Michael Tonndorf IABG, Dept ITE Einsteinstrasse 20 D-85521 Ottobrunn GERMANY Phone: +49 89 6088 2477 Fax: +49 89 6088 3418 E-mail: tonndorf@ite.iabg.de