Committed to connecting the world

ai-for-good

Question 12/17

​​
Question 12/17 – Formal languages for telecommunication software and testing
(Continuation of part of Q13/17, and part of Q14/17)

Motivation

This Question supports the continued development of a variety of formal languages that are in wide-spread use in telecommunications system design and testing.

   Motivation for the work on formal languages for telecommunication software

This Question covers formal ITU system design languages to define the requirements, architecture, and behaviour of telecommunications systems: requirements languages, specification, and implementation languages. The formal languages for these areas of engineering are widely used in industry and ITU‑T and commercial tools support them. The languages can be applied collectively or individually for specification of standards and the realization of products. The ITU system design languages of concern are (in Recommendation order):

  • Specification and Description Language;
  • Message Sequence Chart language;
  • User Requirements Notation;
  • CHILL – The ITU‑T Programming Language.

The User Requirements Notation is applied for the analysis of goals and the definition of use cases, particularly at the initial stages of design. The Specification and Description Language allows the stimulus and response behaviour of entities to be specified, and can be combined with the specification of data units in ASN.1. The sequence of messages between entities can be described in a Message Sequence Chart set, which can also be used to trace the way a system behaves. CHILL - The ITU‑T Programming Language – has been used widely in the past, but in recent years alternative approaches have been used such as generating code from the Specification and Description Language.

Additional Recommendations, where needed, will be developed to accommodate advances in technology and additional requirements from users of these ITU system design languages as both telecommunication systems and the environment in which they exist evolve.

Recommendation ITU‑T Z.109 provides a UML profile for the Specification and Description Language, constrains UML models to a well-defined behaviour that avoids semantic variations inherent in the OMG standard and parts of UML not needed for behaviour covered by the Specification and Description Language. This also enables integration of UML elements with Specification and Description Language elements. In 2008 it was envisaged that profiles would be provided for other ITU system design languages, and that UML would be used as a basis for more formal integration of the ITU languages. This vision was not realized due to lack of resources and contributions, but in principle is still within the scope of the languages study.

Recommendations ITU‑T Z.111 and Z.119 are used as included references in other Recommendations (in particular the Z.100 series and Z.150 series) and provide guidelines on how any new language Recommendation should be written.

Recommendations under responsibility of this Question as of 1 December 2012: Z.100, Z.101, Z.102, Z.103, Z.104, Z.105, Z.106, Z.107, Z.109, Z.111, Z.119, Z.120, Z.121, Z.150, Z.151, and Z.200.

Texts under development: none.

   Motivation for the work on methodology using formal languages for telecommunication software

This Question covers the use of formal ITU system design languages to define the requirements, architecture, and behaviour of telecommunications systems: requirements languages, data description, behaviour specification, testing and implementation languages. The formal languages for these areas of engineering are widely used in industry and ITU‑T and commercial tools support them. The languages can be applied collectively or individually for specification of standards and the realization of products, but in all cases a framework and methodology is essential for effective use. The ITU system design languages are (in Recommendation order):

  • Abstract Syntax Notation One (ASN.1);
  • Specification and Description Language;
  • Message Sequence Chart language;
  • User Requirements Notation;
  • Testing and Test Control Notation;
  • CHILL - The ITU‑T Programming Language.

The User Requirements Notation is applied for the analysis of goals and the definition of use cases, particularly at the initial stages of design. ASN.1 has proved to be the notation-of-choice for many standardization groups for specification of information passed between entities, and with the associated encoding rules ensure the information can be passed unambiguously, securely and efficiently. The Specification and Description Language allows the stimulus and response behaviour of entities to be specified, and can be combined with the specification of data units in ASN.1. The sequence of messages between entities can be described in a Message Sequence Chart set, which can also be used to trace the way a system behaves. The Testing and Test Control Notation allows tests for functionality and interoperability of systems to be specified and generic test suites to be written. CHILL - The ITU‑T Programming Language – has been used widely in the past, but in recent years alternative approaches have been used such as generating code from the Specification and Description Language.

The need for advice and assistance to other study groups, external standards development organizations and countries on both ASN.1 notational matters and management of the OID namespace led to establishment of the highly successful ITU‑T "ASN.1 & OID Project" with an appointed project leader. One of the reasons for the success of this project is the availability of machine-readable ASN.1 validated code from the ITU‑T. Serious consideration should be given to funding resources for a similar project for other ITU system design languages such as the Specification and Description Language or the Testing and Test Control Notation, to improve the quality of published Recommendations.

Recommendations and other documents exist on the methodology and framework for application of these languages such as X.290 to X.296, Z.110, Z.450, Z.500 and Z.Supp1.

The usefulness to members of Recommendations ITU‑T Z.400, Z.600 and Z.601 is in doubt.

Recommendations and Supplements under responsibility of this Question as of 1 December 2012: Z.110, Z.400, Z.450, Z.600, Z.601, and Z.Supp1.

   Motivation for the work on testing languages

ITU‑T is producing a large number of Recommendations. To achieve interoperability, it is essential that implementations of these Recommendations conform to the Recommendations. 

Test specification languages need to be developed and maintained, which can be used in testing ITU-T Recommendations developed by the relevant ITU-T SGs and especially SG11, as the lead group on test specifications, conformance and interoperability testing

In particular it is required to address Testing and Test Control Notation, version 3 (TTCN-3) test specification language.

These Recommendations need to be maintained and updated when appropriate. New Recommendations or other documentation may be identified, to meet the needs of users in ITU, the industry, and other organizations such as OMG.

Recommendations and Supplements under responsibility of this Question as of 1 December 2012: Z.161, Z.161.1, Z.162, Z.163, Z.164, Z.165, Z.165.1, Z.166, Z.167, Z.168, Z.169 and Z.170.

Question

Study items to be considered include, but are not limited to:

Study items related to the work on formal languages for telecommunication software

  1. The definitions of existing or define new languages that are adapted to further contemporary user requirements and emerging new architectures and frameworks?

Study items related to the work on methodology using formal languages for telecommunication software

  1. Revise the definitions of existing or define new methodologies and frameworks that are adapted to further contemporary user requirements and emerging new architectures and frameworks to ensure the creation of good quality Recommendations and systems?
  2. What tutorial activity or other support is needed to support the use of the languages in a variety of environments, but in particular ITU‑T Study Groups?

Study items related to the work on testing languages

  1. What extensions or enhancements to existing Recommendations on testing languages based on formal models are required to meet evolving needs of users?
  2. What new Recommendations, Supplements or other provisions are required (if any) to define or revise the definitions of new or existing testing languages?

Tasks

Tasks include, but are not limited to:

Tasks related to the work on formal languages for telecommunication software

  1. Monitor, assist and progress publication of all approved Recommendations under this study and other work in hand under this study at the end of the last Study Period.
  2. Maintain the ITU system design languages under this Question by providing updated Recommendations and other documents throughout the study period in response to user needs, producing new editions when appropriate with direction of the effort towards relative stability of the languages but with improved usability.
  3. Resolve reports of language errors (present at the start of the Study Period and any new ones arising during the Study Period) progress corrections as necessary, and if there is a defined procedure for the language in a Recommendation (e.g. Z.100) following that procedure.
  4.  Identify and if needed adopt other relevant requirements, specification, implementation and testing languages as ITU‑T Recommendations taking into account Z.110, and review the Recommendations under study to determine if any of them are no longer needed and can be deleted.

Tasks related to the work on methodology using formal languages for telecommunication software

  1. Monitor, assist and progress publication of all approved Recommendations under this study and other work in hand under this study at the end of the last Study Period.
  2. Maintain the ITU system design methodologies and frameworks by providing updated Recommendations and other documents throughout the study period in response to user needs, producing new editions when appropriate with direction of the effort towards improved usability.
  3. Identify and if needed adopt other relevant requirements, data, specification, implementation and testing languages to be included in ITU‑T methodologies taking into account Z.110, and review the Recommendations under study to determine if any of them (in particular Z.400, Z.600 and Z.601) are no longer needed and can be deleted or need significant redrafting.
  4. Assuming that the creation of project is approved for a language or languages, under the responsibility of the Project Leader:
    i)  Provide general advice to users of the language(s), methodology(y/ies), framework(s) for the language(s) covered by the project(s);
    ii) Promote the use of the methodologies, frameworks and languages covered by the project(s) within other study groups and external SDOs;
    iii) Help the TSB to provide and maintain a web-based database of machine-readable language components defined in ITU‑T Recommendations.

Tasks related to the work on testing languages

  1. Progress work in the area of TTCN-3
  2. Maintenance of Z.161, Z.161.1, Z.162, Z.163, Z.164, Z.165, Z.165.1, Z.166, Z.167, Z.168, Z.169 and Z.170.
  3. Progress work on testing languages and conformance testing based on formal models
  4. Consider extending the TTCN-3 notation to allow expanded use of ISO/IEC 10646 characters, with the possible exception of keywords
Relationships

Recommendations:

  • H.200-series, H.323, T.120, X.400-series, X.500-series, X.680/X.690 series, X.700-series, X.880-series, X.900-series

Questions:

  •  All ITU‑T Questions related to the above Recommendations.

Study groups:

  •  SG11, the Lead Study Group on test specifications, conformance and interoperability testing, all study groups that use the ITU system design languages (SGs 2, 11, 13 and 16 in particular) or specify tests (SGs 2, 9, 11, 13, 15 and 16 in particular)

Standardization bodies:

  • All ISO/IEC JTC 1 and its sub-committees that use the ITU system design languages; ETSI; IETF; OASIS; OMG; W3C

Other bodies:

  • SDL Forum Society.

 

 

 

​​​