Tree and Tabular Combined Notation (TTCN) is a well-established, highly structured programming language that has become the de facto standard for creating test cases used in OSI protocol conformance testing. TTCN has already gained acceptance in the wireless world as the standard for implementing GSM test cases.
As a highly abstract language, TTCN allows the implementation of very precise test cases that treat the underlying device under test as a "black box". TTCN's inherently abstract nature also enables test cases written in TTCN to provide platform independence with regard to test systems. This means that a test suite written in TTCN for any particular application can theoretically be used in any test system environment for accurately checking that specific application. In actual practice, however, the abstract TTCN code must ultimately be converted to the appropriate code for running on and controlling the target test platform (assembly, "C", etc.). Therefore the TTCN code must be viewed as a "means to an end" rather than an end in itself.
TTCN code uses a very precise low-level syntax based on symbols that are interpreted only by computer and therefore must be totally unambiguous. This means that creation of the test code requires very specific skills and rigorous disciplines. Accurate translation of prose definitions for test cases from bodies like 3GPP into abstract TTCN syntax notation is critical for ensuring consistency between the test specification and each test case. In addition, it is important that the implementers of test suites have an understanding and awareness of issues involving the ultimate target platforms that will be used for running the tests.
While TTCN is an unambiguous translation language that can provide an accurate re-creation of the prose specifications, development of TTCN code without any regard for the target hardware can potentially lead to test programs that do not make the most efficient use of available hardware resources.