1 TestDescription Schema Implementation in SAMe ATE ATML Meeting – Boston, MA October 2006
2 / 18 SAMe Description The implementation was developed on the SAMe System, by Indra Sistemas SAMe is currently the system selected by the Spanish MoD for the maintenance of all systems Designed to be functionally compatible with other ATS currently in use in the Armed Forces, such as HTE or CASS Working Test System now maintaining EF Typhoon (GPATE version), F18, AV8B+, and Tornado Aircrafts, Leopard2 tank and Tiger Helicopter Test System already installed in Spain (7xRack Version and 3xDeployable version), Italy (2xRack Version for Italian TORNADO and 4xDeployable version for EF Typhoon) and UK (2xDeployable Version for EF Typhoon) TESTDESCRIPTION SCHEMA IMPLEMENTATION IN SAMe ATE
3 / 18 SAMe Hardware – Deployable Configuration TESTDESCRIPTION SCHEMA IMPLEMENTATION IN SAMe ATE
4 / 18 SAMe Hardware – Deployable Configuration(operating) TESTDESCRIPTION SCHEMA IMPLEMENTATION IN SAMe ATE
5 / 18 SAMe Hardware – Rack Mounted Version TESTDESCRIPTION SCHEMA IMPLEMENTATION IN SAMe ATE
6 / 18 SAMe Software Use of international and industrial standards: COM, XML, ODBC, VISA. Use of COTS hardware and software SAMe Software made up of a series of different subsystems and components linked at run-time via defined interfaces Using COM, software components can be changed, upgraded or even replaced without affecting the rest of the software SAMe Software expandability and reconfigurability is enhanced in the following areas: Test Program Source Language and Execution Environment Test Results Reporting Instrumentation Configuration TESTDESCRIPTION SCHEMA IMPLEMENTATION IN SAMe ATE SAMe Open Architecture Software
7 / 18 Software Architecture TESTDESCRIPTION SCHEMA IMPLEMENTATION IN SAMe ATE Areas for future extension already identified and addressed
8 / 18 Experimenting with ATML At the present stage, two ATML schemas have been assessed: TestResults TestDescription Both schemas are mature enough for implementation in a real system. TestResults.xsd is in Candidate status, and TestDescription.xsd is close to Candidate Closely related to execution of Test Programs Test Results schema defines how test results are stored in XML documents Test Description schema describes the internal components of a Test Program TESTDESCRIPTION SCHEMA IMPLEMENTATION IN SAMe ATE SAMe Experiment With ATML
9 / 18 Experimenting with TestDescription Schema The SAMe Software is able to provide debugging capabilities at the target platform, independent of the test programming language The communication with the operator is not directly handled by the TPS, but by the SAMe Software (user input, messages to operator, test reporting, …) The operator may establish halt conditions, define loops and breakpoints, select the Test Modules to run, … These features are available for Test Programs that follow certain rules: Tests programmed as separate procedures (no GOTO’s between Tests) Sequence information and other data in a separate data file (database) TESTDESCRIPTION SCHEMA IMPLEMENTATION IN SAMe ATE Using the TestDescription Schema
10 / 18 Experimenting with TestDescription Schema Identifies the Test Modules (Test Groups) and Tests that comprise the Test Program Establishes the entry point (Test Module) of the Test Program and the entry point (Test) of each Test Module Identifies the possible results of each Test and Test Module and defines the sequence of execution (test flow) Identifies the measurements performed in each Test and specifies the expected value Stores the value of Test Parameters Identifies the ATE assets needed to execute each Test Module Stores user message data TESTDESCRIPTION SCHEMA IMPLEMENTATION IN SAMe ATE The Test Program Data File
11 / 18 Experimenting with TestDescription Schema TESTDESCRIPTION SCHEMA IMPLEMENTATION IN SAMe ATE ATLAS Main Module. Execution Loop (1/2) PERFORM, 'GetNextTest' RESULT ('module_name', 'test_name') $ WHILE, 'module_name' NE C'END_TAP', THEN $... IF, 'module_name' EQ C'PWR_CHECK', THEN $ IF, 'test_name' EQ C'Test_0010', THEN $ PERFORM, 'Test_0010' $ LEAVE, WHILE $ END, IF $.... END, IF $... PERFORM, 'GetNextTest' RESULT ('module_name', 'test_name') $ END, WHILE $
12 / 18 Experimenting with TestDescription Schema TESTDESCRIPTION SCHEMA IMPLEMENTATION IN SAMe ATE ATLAS Main Module. Execution Loop (2/2) Test Program Control Software (TPCS) Test Program Control Software (TPCS) NAM_APEC.exe MAIN.ATL M1.ATL M2.ATL SAMe Software TPS GetNextTestContext APEC_GetNextTest TAP Data File
13 / 18 Experimenting with TestDescription Schema TESTDESCRIPTION SCHEMA IMPLEMENTATION IN SAMe ATE ATLAS Module. Measurements (1/2) DEFINE, 'Test_0010', PROCEDURE $... MEASURE, (RES INTO 'imp_measure'), IMPEDANCE USING 'DMM1_RES_4W', RES RANGE 0.01 OHM TO 1E8 OHM, CNX HI RESLD-HI LO RESLD-LO SENSE-HI RESLD-HI SENSE-LO RESLD-LO $ PERFORM, 'EvalMeasDec'( C'Resistance', 'imp_measure', C'FAIL' ) $... IF, NOGO, THEN $... END, IF $... END, 'Test_0010' $
14 / 18 Experimenting with TestDescription Schema TESTDESCRIPTION SCHEMA IMPLEMENTATION IN SAMe ATE ATLAS Module. Measurements (2/2) DEFINE, 'Test_0010', PROCEDURE $... MEASURE, (RES INTO 'imp_measure'), IMPEDANCE USING 'DMM1_RES_4W', RES RANGE 0.01 OHM TO 1E8 OHM, CNX HI RESLD-HI LO RESLD-LO SENSE-HI RESLD-HI SENSE-LO RESLD-LO $ PERFORM, 'EvalMeasDec'( C'Resistance', 'imp_measure', C'FAIL' ) $... IF, NOGO, THEN $... END, IF $... END, 'Test_0010' $ DEFINE, 'Test_0010', PROCEDURE $... MEASURE, (RES INTO 'imp_measure'), IMPEDANCE USING 'DMM1_RES_4W', RES RANGE 0.01 OHM TO 1E8 OHM, CNX HI RESLD-HI LO RESLD-LO SENSE-HI RESLD-HI SENSE-LO RESLD-LO $ PERFORM, 'EvalMeasDec'( C'Resistance', 'imp_measure', C'FAIL' ) $... IF, NOGO, THEN $... END, IF $... END, 'Test_0010' $ NAM_APEC.exe TPCS TAP Data File EvalMeasurement meas. name meas. value meas. name meas. value GO/NOGO eval.res meas. data eval. result range
15 / 18 Experimenting with TestDescription Schema Very similar in many aspects: The Test Program is identified The Tests and Test Groups that compose the Test Program are identified The test flow is defined The measurements that are performed in each test are identified and defined Stores Test parameters The Test Program Data File generated i.a.w. the TestDescription schema can be delivered as a valid ATML document TESTDESCRIPTION SCHEMA IMPLEMENTATION IN SAMe ATE The Test Program Data File and the TestDescription schema
16 / 18 Experimenting with TestDescription Schema TESTDESCRIPTION SCHEMA IMPLEMENTATION IN SAMe ATE Test Description Document (excerpt) Tree 1 is closed and checked for continuity
17 / 18 Conclusions The test elements and associated data handled by the SAMe Test Programs could be properly expressed using the schema The structure of a multi-layered Test Program can be captured The static test flow of a Test Program can be properly represented Other data, like Measurements and Test Parameters, were easily expressed The schema provides an adequate extension mechanism to cover particular use cases. A “SAMeSW.xsd” schema was created to validate the extensions The experiment did not exploit all the capabilities provided by the schema TESTDESCRIPTION SCHEMA IMPLEMENTATION IN SAMe ATE TestDescription schema
18 / 18 Next Steps Continue to experiment with more complex test scenarios Include description of test actions (measure, setup, etc) inside a Test, based on IEEE 1641 (Signal and Test Definition) Control the test flow using Pre-conditions and Post-conditions Upgrade Indra’s proprietary tool, used to automatically produce Test Programs in a variety of languages (ATLAS -716/89, CASS-, C/C++), to generate TestDescription documents Build real Test Programs using tools that take the TestDescription and ATE/UUT descriptive schemas as input TESTDESCRIPTION SCHEMA IMPLEMENTATION IN SAMe ATE What’s next?
19 / 18 El valor de la anticipación José Manuel González Pascual Sistemas Automáticos de Medida