SlideShare a Scribd company logo
1 of 61
Download to read offline
Competence Center MOTION                      Fraunhofer FOKUS




     Recent Developments on TTCN-3


     Ina Schieferdecker, Axel Rennoch
                       ,
     TAROT Summer School, Schloß Laubegg, 25th June 2010


TAROT2010, Slide 1
Competence Center MOTION                           Fraunhofer FOKUS


       Contents


      TTCN
            Introduction
            History


      Status
            Concepts and tools
            Applications:
               Industrial domains, MBT


      Future
            Latest releases, extension packages
            Outlook: Embedded TTCN-3


      Conclusion



TAROT2010, Slide 2
Competence Center MOTION                           Fraunhofer FOKUS


       Contents


      TTCN
         Introduction
         History

      Status
            Concepts and tools
            Applications:
               Industrial domains, MBT


      Future
            Latest releases, extension packages
            Outlook: Embedded TTCN-3


      Conclusion


TAROT2010, Slide 3
Competence Center MOTION                        Fraunhofer FOKUS


The T ti
Th Testing and Test Control Notation
             d T t C t l N t ti
Idea and design Principles of TTCN-3

 One test technology for different tests
   – Distributed platform independent testing
     Distributed, platform-independent
   – Integrated graphical test development,
     -documentation and –analysis
   – Ad t bl open t t environment
     Adaptable,         test   i      t

 Areas of Testing
   – Regression Testing
   – Conformance and Functionality Testing
   – Interoperability and Integration Testing
   – Load/ Stress Testing
Competence Center MOTION                                       Fraunhofer FOKUS


                History (1)


        1984                     TTCN (1992)
                                    – Published as an ISO standard
                                    – Tree and Tabular Combined Notation
                                    – Used for protocol testing only
        1992                            GSM, N-ISDN, B-ISDN

                     TTCN
                                 TTCN-2/2++ (1997)
        1994                        – Concurrent tests
                                    – Modularization
                     TTCN-2
                                    – Manipulate external data
        1997                        – Rather for conformance testing
                     TTCN-2++       – Developed by ETSI MTS



TAROT2010, Slide 5
Competence Center MOTION                                          Fraunhofer FOKUS


                History (2)


                               TTCN-3 (2000)
                                  – Testing and Test Control Notation
                                  – Developed by ETSI MTS
        1998                      – Proper language
                                      Well defined syntax and semantics
        2000
                                  – Enhanced communication,
                                    configuration and control
                                 – Standard test specification
                                      SIP/IMS, SCTP, HiperLan, HiperAccess, IPv6 ...




        2010




TAROT2010, Slide 6
Competence Center MOTION                                      Fraunhofer FOKUS


                TTCN-3 Multipart-Standard
                TTCN 3 Multipart Standard


     ETSI ES 201 873-1 TTCN-3 Core Language (CL)
     ETSI ES 201 873-2 TTCN-3 Tabular Presentation Format (TFT)
     ETSI ES 201 873-3 TTCN-3 Graphical Presentation Format (GFT)
     ETSI ES 201 873-4 TTCN-3 Operational Semantics
     ETSI ES 201 873-5 TTCN-3 Runtime Interface (TRI)
     ETSI ES 201 873-6 TTCN-3 Control Interfaces (TCI)
     ETSI ES 201 873-7 Integration of ASN.1
     ETSI ES 201 873-8 Integration of IDL
     ETSI ES 201 873-9 Integration of XML
     ETSI ES 201 873-10T3Doc

  Standard available for download at http://www.ttcn-3.org
  Also standardized by the ITU-T as ITU-T Z.140

  NEW: TTCN-3 Extension packages ETSI ES 202 78x!


TAROT2010, Slide 7
Competence Center MOTION                           Fraunhofer FOKUS


       Contents


      TTCN
            Introduction
            History


      Status
         Concepts and tools
            Applications:
               Industrial domains, MBT


      Future
            latest releases, extension packages
            Outlook: Embedded TTCN-3


      Conclusion



TAROT2010, Slide 8
Competence Center MOTION                                                              Fraunhofer FOKUS


       TTCN-3:
       TTCN 3: Testing and Test Control Notation



   A standardized alternative to proprietary test systems
     – Developed by a large group of testing experts
                                                             TTCN-3 Test System
                                                               CN        Sy
     – U d b a growing community
         Used by        i            it
                                                                   Test Management (TM) + Logging (TLI)
   Enabling a testing middleware,
     – unifying methods,
        tools, test infrastructure,                            Component           TTCN-3           Coding
        documentation and training                              Handling          Executable       Decoding
                                                                 (CH)               (TE)             (CD)
     – domain-specific extensions

   TTCN-3 is more than a notation: TTCN-3 test system         System Adapter (SA)       Platform Adapter (PA)


   The only international standard for
     – Test specification and implementation                                  System under Test




TAROT2010, Slide 9
Competence Center MOTION                               Fraunhofer FOKUS



            TTCN-3 is designed for Black-Box Testing


     TTCN-3 Test Case

      Port.send(Stimulus)
      P t     d(Sti l )            Port.receive(Response)
                                   P t      i (R        )
                                                   • Assignment
                                                     of a
                                                     Test Verdict
                               Port



                        System Under Test


TAROT2010, Slide 10
Competence Center MOTION                                Fraunhofer FOKUS


                TTCN-3
                TTCN 3 Test Configuration may change dynamically



                                   SUT

       TTCN-3 Test Case
                                               start
                                               create


                          TC         MTC                TCs



                      start
                       create              start
                                           create
                                TC


TAROT2010, Slide 11
Competence Center MOTION                                  Fraunhofer FOKUS


                      TTCN-3
                      TTCN 3 Module
                                  •   The top level entity of TTCN-3 is
                                      module.
       Module                     •   A module can import definitions
                                      from other modules.
                                  •   A module contains a definition part
               Module                 and a control part.
              Definitions
                                  module MyModule {
                                     // definition part

                                      control {
          Module Control              // test execution logic
                                      }
                                  }


TAROT2010, Slide 12
Competence Center MOTION                                       Fraunhofer FOKUS


                Major language elements of TTCN 3 notation
                                           TTCN-3

      module definitions
                                Importing definitions from other modules
                 Imports        defined in TTCN-3 or other languages

                                User defined data types (messages, PDUs,
             Data Types         information elements, …)

                                Test data transmitted/expected during test
               Test Data        execution (templates, values)

                                Definition of the test components and
       Test Configuration       communication ports

                                Specification of the dynamic test behavior
           Test Behavior

TAROT2010, Slide 13
Competence Center MOTION                                   Fraunhofer FOKUS




        Message-Based Ports


         • For sending and receiving messages of given type


                        send                         receive


                      PTC1     P1 (out)
                                  ( )      P2 (in)
                                              ( )       PTC2
                P1.send(Msg)                            P2.receive(Msg)




TAROT2010, Slide 14
Competence Center MOTION                                       Fraunhofer FOKUS


          Procedure-Based Ports

         • For invoking operations, receiving operation calls, replying, raising
           exceptions as well as for receiving replies and catching exceptions



                      call                       getcall


                 PTC1                                          PTC2


          getreply    or                          reply     or
          catch exception                         raise exception


TAROT2010, Slide 15
Competence Center MOTION                                     Fraunhofer FOKUS


     Test Verdicts


  Test verdicts: none < pass < inconc < fail < error
  Each test component has its own local verdict, which can be set
   (setverdict) and read (getverdict)
                         (getverdict).
  A test case returns a global verdict


        Verdict returned by the test
        case when it terminates

                      P
                      F
                      I

                      MTC           F    PTC1          P    PTCN           I

                      setverdict(fail)   setverdict(pass)   setverdict(inconc)


TAROT2010, Slide 16
Competence Center MOTION                                     Fraunhofer FOKUS


     Test Verdicts


  Test verdicts: none < pass < inconc < fail < error
  Each test component has its own local verdict, which can be set
   (setverdict) and read (getverdict).
                         (getverdict)
  A test case returns a global verdict


        Verdict returned by the test
        case when it terminates

                      P
                      F
                      I

                      MTC           F    PTC1          P    PTCN           I

                      setverdict(fail)   setverdict(pass)   setverdict(inconc)


TAROT2010, Slide 17
Competence Center MOTION                             Fraunhofer FOKUS




   Sample: Test Configuration




                          Test Component (MTC)

                          UA                    LA


                      System Under
                       Test (SUT)


                               Medium Service


TAROT2010, Slide 18
Competence Center MOTION                                            Fraunhofer FOKUS

  Time Sequence Diagram for a Simple Behavour Example

    msc Example

                      UA                 SUT                LA
         loop<100>
                            DATreq("data")
                                             DATind(DT,nr,"data")



                                             DATind(RE,nr, resp )
                                             DATind(RE nr “resp")

                           DATind()




TAROT2010, Slide 19
Competence Center MOTION                                          Fraunhofer FOKUS


    Same Example in TTCN 3 Core Language
                    TTCN-3

    testcase Example( ) runs on MTC Type {
                                  MTC_Type
              var default mydefault := activate (DefaultDef());
              T1.start;
              for (integer i:=1; i<=100; i:=i+1) {
                          UA.send (DATreq:{"data"});
                          LA.receive (DATind:{DT, nr, "data"});
                                                       data });
                          LA.send (DATind:{RE,nr, “resp”});
                          UA.receive (DATind :{});
                }
                setverdict(pass);
                T1.stop;
    }



TAROT2010, Slide 20
Competence Center MOTION                                               Fraunhofer FOKUS


 Typical language elements:
type definitions:
 b l
   boolean, i t
             integer, fl t bit t i
                      float, bitstring, charstring, octectstring, h
                                         h ti         t t ti      hexstring
                                                                      ti
 record, set, enumeration, union

programming constucts:
 message: send/receive
 procedure: call/getcall reply/getreply raise/catch
              call/getcall, reply/getreply,
 if-then-else, loops: for, while, do-while
 functions, alternatives
 component/port/timer control

Predefined functions:
 type conversion, lengthof (string), sizeof (records), …

Overview: e.g. TTCN 3 Q i k R f
O    i         TTCN-3 Quick Reference C d
                                      Card
TAROT2010, Slide 21
Competence Center MOTION                                  Fraunhofer FOKUS


       TTCN-3
       TTCN 3 is an „open“ standard
                     open“



                  ASN.1
                                TTCN-3
                                           Tabular
                                Core       Format
                                Language
                  IDL


                                           Graphical
                                           Format
                  XML




                  Other Types              Presentation
                  & Values n               Format n




TAROT2010, Slide 22
Competence Center MOTION                                     Fraunhofer FOKUS


 Openness for other data types: Example

                      XML to TTCN-3 Mapping
                                      pp g


 Mapping of XML to TTCN-3
    pp g
  – defined by the ETSI
  – Part 9 of the TTCN-3 multipart-standard
  – restricted to XML data t
        ti t dt       d t types (XSD ttypes) only
                                            ) l

 Type import:
   – uses the import mechanism of TTCN-3 for immediate use
   – import from XSD language "XML1.1" all;
      – language identifiers:
             "XML" or "XML1.0" for W3C XML 1.0
             "XML1.1" for W3C XML 1.1


TAROT2010, Slide 23
Competence Center MOTION                               Fraunhofer FOKUS


       Technical conversion of XSD to TTCN-3
                                      TTCN 3

  16 identifier name conversion rules
  3 rules to specify the order of mapping

       – XSD component
           <complexType name="e15">
             <sequence minOccurs="5" maxOccurs="10">
               <element name="foo" type="integer"/>
               <element name="bar" type="float"/>
             </sequence>
           </complexType>

       – corresponding TTCN-3
           type record E15 {
             record length(5 .. 10) of record {
                XSD.Integer foo,
                XSD.Float bar } sequence_list
           } with {variant "name as uncapitalized "}




TAROT2010, Slide 24
Competence Center MOTION                             Fraunhofer FOKUS


       More than a notation:   Test system implementation


          ATS                          Test System parts



                                 TE   +




               SUT    Communication
                      C     i ti



TAROT2010, Slide 25
Competence Center MOTION                                                   Fraunhofer FOKUS


Test System Architecture
                        Test System User

                      TM: Management                        TLI: Logging
             TCI
                               Standardized data interfaces
                                  control                behaviour
                    nent


                               adapting to the test platform and SUT
                    ing




                                                                              ec
              Compon
               Handli




                                                                           Code
                                                                            CD:
                 CH:




                               components TE types / data
                               defined in IDL
                               (mappings to Java, C and C# exists)
              C




                                    ports                timer

             TRI
                      SA: System Adaptor
                      SA S t Ad t                      PA: Platform Ad t
                                                       PA Pl tf     Adaptor

                                 SUT: System Under Test
TAROT2010, Slide 26
Competence Center MOTION                                                           Fraunhofer FOKUS


Sample interface: TE - CD


                                  Test System User

              TM: Management                   TL: Logging
   TCI
                     mponent




                                                          CD: Codec
                     dling




                                                                      TE – TTCN-3 Executable
               CH: Com




                                         TE
                  Hand




                                                              C
                                                                      CD – Codec

    TRI
             SA: System Adapter            PA: Platform Adapter

                               System Under Test (SUT)


      ETSI ES 201 873-5 TTCN-3 Runtime Interface (TRI)
      ETSI ES 201 873-6 TTCN-3 Control Interfaces (TCI)


TAROT2010, Slide 27
                                                                                                  27
Competence Center MOTION                                        Fraunhofer FOKUS


The Codec and Value Interface


                      TciCD Required   TciCD Provided

                                                        Codec translates
                                                        between
                                           CD:          abstract and
                                          Codec
                                                        concrete
                                                              t
                                                        presentation


      Complete set of provided (TciCDProvided) operations
           – TriMessageType encode (in Value value)
           – Value decode (in TriMessageType message, in Type hyp)


TAROT2010, Slide 28
Competence Center MOTION                                             Fraunhofer FOKUS


 Commercial TTCN 3 tools (source: www ttcn 3 org)
            TTCN-3                www.ttcn-3.org)
TTCN-3 Compilers and Interpreters
 Exhaustif/TTCN: compiler (C++) produced by Métodos y Tecnología (MTP), Spain.
 OpenTTCN: interpreter (C, Java, C# interfaces) produced by OpenTTCN Ltd, Finland.
 MessageMagic: compiler (C/C++, Java, C#) produced by ELVIOR, Estonia.
 Real Time Developer Studio: modelling tool including TTCN-3 compiler by
                   p                    g            g            p     y
   PragmaDev, France.
 TAU Tester: compiler (C) by IBM.
 TTCN-3 toolbox: compiler (C) by Danet Group, Germany.
 TTCN-3 Express: compiler (C#) by Fraunhofer FIRST and Metarga GmbH, Germany.
 TTworkbench: compiler (C, Java) by Testing Technologies, Germany.

TTCN-3 Generators
 Qtronic by Conformiq OY, Finland. generate complete TTCN-3 test suites from e.g.,
   UML, Java, or C# models.
 MaTeLo by All4Tec, France (TTCN-3 test suites from usage models specified using
   Markov chains).
 MOTES by ELVIOR, Estonia (from the state model of the SUT)


TAROT2010, Slide 31
Competence Center MOTION                                                Fraunhofer FOKUS


 Open source TTCN-3 tools (source: www ttcn 3 org)
             TTCN 3                www.ttcn-3.org)

    LoongTesting testing platform including TTCN-3 compiler and integrated
     development environment by Information Processing Center of USTC , China.
    BBT TTCN-3 Compiler, by BroadBit, Hungary.
    TRex: by University of Göttingen to provide IDE functionality for TTCN-3 core
     notation, and to support assessment and automatic restructuring of TTCN-3 test
     suites. (open-source Eclipse plug-in).
    T3doc by Federico Engler and further developed by ETSI. for generating HTML
     documentation via tagged TTCN-3 comments
                                 TTCN 3 comments.
    Codec generator by IRISA as part of T3DevKit. It automatically generates a
     codec based on TTCN-3 type module(s), C++ codec functions.
    T3DevLib by IRISA as part of T3DevKit It allows the development or integration
                                   T3DevKit.
     of Codec, SUT and Platform Adapter implementations written in C++.


... and more academic prototype/research tools
    (guideline checking, quality analysis, ...)


TAROT2010, Slide 32
Competence Center MOTION             Fraunhofer FOKUS


The seemless chain of TTCN-3 Tools
                      TTCN 3




        Developers
       Perspective
   for Modification                         Result
                                            Analyzer

    Test Execution


                                           Test Report
    Test Campaign
          Designer
 (Test Automation)


                                           Online Logging,
             Test
             T                             Filter, Reporting
   Parametrization




TAROT2010, Slide 33
Competence Center MOTION                           Fraunhofer FOKUS


       Contents


      TTCN
            Introduction
            History


      Status
            Concepts and tools
         Applications:
            Industrial domains, MBT

      Future
            latest releases, Extension packages
            Outlook: Embedded TTCN-3


      Conclusion


TAROT2010, Slide 34
Competence Center MOTION                                                            Fraunhofer FOKUS


       TTCN-3
       TTCN 3 applications: various industrial domains
       Objective:
       • To develop an efficient test platform fulfilling industrial testing requirements
                  p                   p                 g                  g q
       • To execute high-level test models, e.g. UML2 test profile


                          Industrial Testing                    Approach
                                                                 pp
                           Requirements

                                 Embedded                     UML 2.0              System Design
                                  Systems                   Testing Profile

                                 Automotive


                                  Mobile
                               Communication
                                                           TTCN-3                    Test Design




                                  Avionics
                                                                                     Test
                                                   An efficient test platform        Results
                              Railway Systems
                                                      Methods, Tools, Guidelines

                                  ...
TAROT2010, Slide 35
Competence Center MOTION                                     Fraunhofer FOKUS


       TTCN-3
       TTCN 3 domains: Telecom

 Industrial use
   – Big companies with hundreds of TTCN-3 engineers: Ericson, Nokia,
     Siemens, Motorola
   – large distribution among SME

 Standardization bodies
   – standardized test suites:
     ETSI / 3GPP / OMA / TETRA and its members
   – IMS performance benchmark project:
     Intel, HP, BT, FOKUS and others

 Test tool manufacturer:
   – Commercial Tektronix, Catapult, Nexus, R&S, …
                          ,    p ,        ,    ,
   – Open source community projects

 Certification program based on TTCN-3: WiMax forum
                                 TTCN 3:

TAROT2010, Slide 36
Competence Center MOTION                                                                   Fraunhofer FOKUS


       Telecom example: Performance Benchmarking

   Sample SUT: IMS components
        p               p
   Test IMS components separately and in different configurations



  Definitions using TTCN-3:
  • standard call scenarios
    (e.g.
    (e g voice call conference call
                 call,            call,
    application call, push-to-talk call)
                                                            SuT reference
  • traffic set as an                                      Implementation
                                                                                I-CSCF


    aggregation of call scenarios
      gg g

  Performance:
                                              ...




                                                                                                          ...
  • 5.000 - 10.000 IMS subscribers                          P-CSCF                               HSS

   (per server)                                                                      S-CSCF

  • Up to 250 requests per second
   (per server)                                                       control and coordination
                                           UE emulations                                               UE emulations
                                                                     Benchmark Test Platform




TAROT2010, Slide 37
Competence Center MOTION                                               Fraunhofer FOKUS


       TTCN-3
       TTCN 3 domains: Automotive
   Car communication systems                                     Telematics Applications
     – Daimler, Volkswagen, SiemensVDO                                 in the Cockpit
                                                                 • Audio (CD / Radio), Video
     – edutainment bus system (test suite)                       • Telephone, SMS
                                                                 • Navigation
                                                                        g
   Standardization groups:
                                                                 • Speech recognition
     – AUTOSAR consortium                                        • User interface for
                                                                   body electronic
     – MOST cooperation
   Car-to-car communication                                       CD Changer

                                                     Head Unit
                                                     H d U it                      Amplifier /
                                                                                    Tuner
                                   Tester                  MOST Bus

                                             Test case:
                                             loudness
                                             playCDTitle
                                                                               Speaker
TAROT2010, Slide 38
Competence Center MOTION                                      Fraunhofer FOKUS


       TTCN-3
       TTCN 3 domains: other domains


   Medicine
     – SiemensMED (image processing)
     – HL7 eHealth protocols (Interoperability)


   Power transmission and distribution:
     – SiemensPTD (safe and reliable energy system)
   Financial data warehouse:
     – International bank (functional / regression testing)
   Avionics
     – European Space Agency
   Railways
     – Dutch railways (www.tt-medal.org)


TAROT2010, Slide 39
Competence Center MOTION                          Fraunhofer FOKUS



  TTCN-3 in MBT

 TTCN 3 i used i several d
  TTCN-3 is   d in        l domains as bi di li k
                                i      binding link
  between modelling and execution

 Commercial tools like Qtronic (Conformiq) and
  TTmodeler (TestingTech) do generate
  TTCN-3 code for test execution

 lots of academic prototype tools

 selection of industrial case studies:
  see e.g. European D-MINT project www.d-mint.org
                      D MINT           www.d mint.org
TAROT2010, Slide 41                                             41
Competence Center MOTION                                 Fraunhofer FOKUS


MBT example 1: Trimek/Datapixel production engineering
case study

• SUT: Coordinates Measuring Machines (CMM) control software (CDMS)
         for controlling a measuring system
 Focus: test case derivation from UML models
• Models in use: UML class, sequence, state diagrams



     SUT




TAROT2010, Slide 42
Competence Center MOTION                                         Fraunhofer FOKUS


 MBT example 2: City street lights case study

 • SUT: Eliko street lighting control system feeder box control unit (FBCU)
 • Models for the SUT: UML state charts, produced with tool Poseidon

  Elvior test generator derives TTCN-3 test cases from state charts

                                                                       SUT




TAROT2010, Slide 43
Competence Center MOTION                                     Fraunhofer FOKUS



  Status: further activities

 Establishment of a TTCN 3 syllabus and certificate
                       TTCN-3
   – Cooperation of ETSI, GTB and iSQI
   – accredited TTCN-3 training providers
   – lots of certificates issued

 Improvement of TTCN-3 tool interoperability
                 TTCN 3
   – Development of a TTCN-3 reference test suite
   – 1st TTCN-3 Plugtest evnt with commercial tools at ETSI (2009)

 TTCN-3 user conferences
   – Europe: since 2004 (F, D, E, S), next: 2011 (SLO)
   – Asia: 2007 (China), 2009 (India), 2010 (China)




TAROT2010, Slide 44                                                        44
Competence Center MOTION                        Fraunhofer FOKUS


       Contents


      TTCN
            Introduction
            History


      Status
            Concepts and tools
            Applications:
               Industrial domains, MBT


      Future
         latest releases, Extension packages
         O tl k Embedded TTCN 3
          Outlook: E b dd d TTCN-3

      Conclusion


TAROT2010, Slide 45
Competence Center MOTION                                                         Fraunhofer FOKUS


       Maintenance of TTCN 3
                      TTCN-3

         Standard is constantly maintained
           – Through Change Requests (CRs)
           – Extension proposals
           – Active contributions in the TTCN-3 community
                                         TTCN 3
                  TTCN-3 mailing list, TTCN-3 users conference


         ETSI STFs (Specialist Task Force)

         Change requests result in new editions of the standard
           – 2000: Edition 1
           – 2003: Edition 2
           – 2005: Edition 3
           – 2009: Edition 4 1
                           4.1
           – 2010: Edition 4.2
                  Completed in Febr. 2010, all documents to be published soon



TAROT2010, Slide 46
Competence Center MOTION                                             Fraunhofer FOKUS


New in ES 201 873 v4 2 1
              873, v4.2.1

 TTCN-3 language
  TTCN 3
    Import of import statements
    Special real values (infinity, -infinity, not_a_number)
    Exclusive bounds for range subtyping
    ispresent(), str2hex(), testcase.stop
    Several smaller additions (template arguments for superset, allows templates
     of all types, __BFILE__ macro)
                     BFILE

 TRI/TCI
    C# mapping
          pp g

 Language mappings
    Unambiguous mapping of real/float types from XSD and ASN.1
    Full support of mapping ASN.1 (2008)




TAROT2010, Slide 48
Competence Center MOTION                                          Fraunhofer FOKUS


New in ES 201 873 (contd)

  Language mappings (contd)
     Parts are re-structured to be “package-style”
      (e.g. TRI support for ASN.1->TTCN-3 is moved to Part-7)

  S
   Source code d
            d documentation
                      t ti
     New tags added (@priority, @requirement and @reference)
     Documentation block for local definitions of component types

  Several clarifications, amendments and editorial corrections




TAROT2010, Slide 49
Competence Center MOTION                                                         Fraunhofer FOKUS

TTCN-3 multipart standard overview:                              2010 extensions
Language
mappings
                      ASN.1           IDL             XSD            …

                                     Advanced
                 Documentation                       Behaviour      Static        Real-time
                                    parameteri-
Extensions           t3doc
                                      zation
                                                      Types      configuration     support
                                                                                     …


                           TTCN-3 Structuring:
                         Imports, Groups,
                         Imports Groups Attributes


 Core                         TTCN-3…
                                    Behaviour
 language


                                 TTCN-3 Data



TRI/TCI
mapping
                      Java             C              C++         XML              C#


TAROT2010, Slide 50
Competence Center MOTION                                                  Fraunhofer FOKUS


  Extension packages #1: Advanced Parameterization

      ETSI ES 202 784 V1.1.1 available since July 2009, new draft V1.2.1 (2010-03)
      Formal parameters of kind “type” for: type, template, and behaviour defintions

      Effects ES 201 873 parts: -1 (core), -4 (semantics), -6 (TCI), -7 (ASN1), -10 (T3DOC)
                          p         (    )     (         )     (   )     (    )      (     )

      Examples:

        type record Data <in type p_PayloadType> {
             Header hdr,
             p_PayloadType payload}


        function f_myfunction <in type p_myType >
                      (in MyList<p_myType> p_list, in p_myType p_elem) return p_myType
            {return p_list[0] + p_elem)}

        f_myfunction <integer> ({1,2,3,4}, 5)


TAROT2010, Slide 51
Competence Center MOTION                                                  Fraunhofer FOKUS


  Extension packages #1: Advanced Parameterization

 Allows
     – Static value parameterization of types
     – Static type parameterization of types, templates, functions, altsteps and testcases
     – Default type is allowed for type parameters like default values/templates for value
                                        parameters,
       parameters


 Example use cases
     – Message types, where e.g. the payload (field) can be a structured data as well as
       an octetstring/charstring etc.
     – Message templates supporting both positive and negative testing in one
                  templates,
       parameterized definition
     – Port types with parameterized in/out/inout lists
     – Component types where the type(s) of port(s) are parameterized
                      types,
     – Functions that executes some kind of user-defined actions on data of different types
       (e.g. inserting extra fields into encoded messages for negative testing)
     – Functions with parameterized runs on clauses
                        p

TAROT2010, Slide 52
Competence Center MOTION                                                      Fraunhofer FOKUS


       Extension packages #2: Behaviour types


      ETSI ES 202 785 V1.1.1 Available since Jan. 2010
      More flexibility: variables may carry “behaviour” (functions/altsteps etc.)

      Effects ES 201 873 parts: -1 (core), -4 (semantics), -6 (TCI), -10 (T3DOC)

      Example:
       E    l

        type function MyFuncType ( in integer p1 );         // formal type definition (w/o body)
        function f myFunc1 ( in integer p1 ) {…};
                 f_myFunc1                   { };              // concrete behaviour
        …
        var MyFuncType v_func;
        v_func f_myFunc1;
        v func := f myFunc1;
        apply (v_func(0));




TAROT2010, Slide 53
Competence Center MOTION                                                   Fraunhofer FOKUS


       Extension packages #2: Behaviour types


 Allows
     – Defining types of function, altstep and testcase (FAT) “prototypes”
     – Defining module parameters, constants, variables and templates of FAT types and
       storing references to “real” FATs in them
                               real
     – References to FATs can be stored, passed as parameters and sent to another
       component
     – Calling FATs via their references (
             g                            (including starting PTC behaviours)
                                                   g        g               )
     – “runs on self”: specific runs on compatibility checking rules and cannot be sent to
       another component

 Example use cases
     – Efficient handling of state machines; the actual state is an integer number that – in
       case of an event - allows calling the function executing the action from an array of
       function references instead of using e g select case to determine the actual state;
                 references,                  e.g.
       also allows easy dynamic changing of the FSM
     – Using dynamically registrable callback functions in TTCN-3 SW libraries
     – Flexible test configuration by e.g. passing PTC behaviour function references to
       MTC configuration functions

TAROT2010, Slide 54
Competence Center MOTION                                                  Fraunhofer FOKUS


Extension packages #3: Configuration and Deployment Support

    ETSI ES 202781 V1.1.1 release planned for summer 2010
                       V1 1 1
    Introduces predefined static test components/configuration independent of a testcase
     (save time for testcase setup)
    Effects ES 201 873 parts: -1 (core) -4 (semantics) -5 (TRI) -6 (TCI)
                                   (core), (semantics), (TRI),

      Example:
        configuration f StaticConfig() runs on MyMtcType system MySystemType {
                      f_StaticConfig()
              myComponent := MyPTCType.create static;
              map (myComponent :PCO, system:PCO1) static;…
        }

        testcase TC_test1 () execute on f_StaticConfig {…}
        control {
             var configuration myStaticConfig;
             myStaticConfig := f_StaticConfig(); // configuration setup
             execute(TC_test1);
             myStaticConfig.kill;…
        }
TAROT2010, Slide 55
Competence Center MOTION                                                   Fraunhofer FOKUS


Extension packages #3: Configuration and Deployment Support


   Allows
     – Defining special “static” test configurations, creating and destroying them from the
        control part
     – Testcases (identified by execute on) may be called on a created static test
        configuration sequentially
     – Testcases may add “dynamic” PTCs and connections to the test configuration but
        shall not destroy any part of the static test configuration

   Example use cases
     – S i t
       Semi-automatic (i t
                   ti (interactive) execution of test cases, where the SUT state may
                              ti )       ti    ft t           h    th       t t
       change due to loosing connections and/or missing keep-alive signals for a long time
     – Keep configuration setup: Automatic test execution, where loosing connections
       may raise unwanted alarm signals and/or blockings/resets




TAROT2010, Slide 56
Competence Center MOTION                                               Fraunhofer FOKUS


Extension packages #4: Real time and performance testing support

        ETSI ES 202782 V1.1.1 planned for summer 2010

        Introduces system time progress (since start of a testcase), delays and timestamps
        Effects ES 201 873 parts: -1 (core), -4 (semantics), -5 (TRI)

        Examples:

          module MyModule {...
               type port myPort message [realtime] {...};
               var float v_specified_send_time, v_sendTimePoint, v_myTime;
               ...
               myPort .receive(t)-> timestamp v_myTime;
               …
               wait (v_specified_send_time);
                     ( _ p       _      _    )
               myPort.send(m_out);
               v_sendTimePoint:= now;
          } with {stepsize “0.001”}; // precision of a milisecond


  TAROT2010, Slide 57
Competence Center MOTION                                                Fraunhofer FOKUS


Extension packages #4: Real time and performance testing support


     Allows
       – Identifying the required precision of the system time
       – now: getting the actual system time (from starting the test case)
       – wait: suspends the execution of a component until a given point in time (from
         starting the test case)
       – Identifying ports with real-time requirements; timestamp of entering messages in
         the TSI shall be stored and sent to the TE
       – Retrieving the timestamp of the receiving in the TTCN-3 code

     Example use cases
       – Set the required system preciseness by the writer of a TTCN-3 module (e.g. by a
         SW library module)
       – More precise time measurements, e.g. round-trip delays
       – More precise and convenient handling of timing-related actions




  TAROT2010, Slide 58
Competence Center MOTION                                                  Fraunhofer FOKUS


   Outlook: TTCN 3 embedded
            TTCN-3

 Extensions for testing
   – real time systems (RT-TTCN-3)
   – continuous systems (Continuous TTCN-3)



 RT TTCN-3 Concepts
     – clock as a common basis for time measurement
                                          measurement.
     – timestamp redirection for exact time measurement of message interaction.


 Continuous TTCN 3 Concepts
             TTCN-3
     – sampled clock as a common basis for discretization and stream definitions.
     – sampled streams that provide a data structure to define, access and
       manipulate discretized signal values and their history in time
                                                                 time.
     – hybrid automata that provides a control flow structure to enable and control the
       simultaneous stimulation and evaluation of stream ports.



TAROT2010, Slide 61
Competence Center MOTION                                       Fraunhofer FOKUS



        TTCN-3 embedded: Hybrid Behavior Specification

        cont{
          var integer x :=0;
          onentry{Brake.value := 0.0}
          inv{ Brake value <= 0 1 }
               Brake.value    0.1                                   Cont. Test
          Throttle.value := duration * 2.0;                          Behavior
          assert(EngineSpeed.value < 4000.0);
          onexit{Throttle.value := 0.0}
        } until (duration >= 10.0)
                                                                          [g1]

 M d represent the macro state of the test system
  Modes          t th         t t f th t t      t
 Repetitive execution of the mode’s content (micro states)
     – onentry and onexit are executed once
     – inv, until, assertions and assignments are executed continuously


 Parallel and sequential composition (using par and seq)

TAROT2010, Slide 62
Competence Center MOTION                          Fraunhofer FOKUS



        TTCN-3 embedded sample: vehicle passing




TAROT2010, Slide 63
Competence Center MOTION                           Fraunhofer FOKUS


       Contents


      TTCN
            Introduction
            History


      Status
            Concepts and tools
            Applications:
               Industrial domains, MBT


      Future
            latest releases, extension packages
            Outlook: Embedded TTCN-3


    Conclusions


TAROT2010, Slide 64
Competence Center MOTION                                    Fraunhofer FOKUS


       Major technical innovations / benefits

         TTCN 3 as standardized test language and implementation
          TTCN-3

         Easy (human readable) description of test scenarios
           – free from programming issues,
             (transparent framework for end-customers)
           – platform and tool vendor independence
             p                             p
           – different presentation formats

         Clear separation of testing issues:
           – test configuration, data and behaviour
           – SUT specific adaptation and codec




TAROT2010, Slide 65
Competence Center MOTION                                     Fraunhofer FOKUS


       Conclusions


         1980s – today long history and value
                  today,

         Wide range of applicability
          – different communication paradigms, testing types
          – domains: Telecom, Automotive, Medicine, Finance, Railways,
             Avionics…
             Avionics
          – used in research and industry

         C
          Creates IInternational community, expertise, commercial and open
                           i   l       i          i           i l d
          source tools

         TTCN-3 is established and in progress for the future



TAROT2010, Slide 66
Competence Center MOTION                Fraunhofer FOKUS




                        Thank you
                    for
                    f your attention!
                             tt ti !

More Related Content

Similar to TTCN-3 Recent Developments and Applications

project introduction
project introductionproject introduction
project introductionstinmon
 
USING TDL FOR STANDARDISED TEST PURPOSE DEFINITIONS
USING TDL FOR STANDARDISED TEST PURPOSE DEFINITIONSUSING TDL FOR STANDARDISED TEST PURPOSE DEFINITIONS
USING TDL FOR STANDARDISED TEST PURPOSE DEFINITIONSAxel Rennoch
 
Cisco TIP Presentation
Cisco TIP PresentationCisco TIP Presentation
Cisco TIP PresentationIMTC
 
Functional and non-functional testing with IoT-Testware
Functional and non-functional testing with IoT-TestwareFunctional and non-functional testing with IoT-Testware
Functional and non-functional testing with IoT-TestwareAxel Rennoch
 
T3UC_PresentationT3UC2012_Rajesh_2
T3UC_PresentationT3UC2012_Rajesh_2T3UC_PresentationT3UC2012_Rajesh_2
T3UC_PresentationT3UC2012_Rajesh_2Rajesh Kumar Bathina
 
25990 300 vocabulary for utran
25990 300 vocabulary for utran25990 300 vocabulary for utran
25990 300 vocabulary for utranadelekejare
 
Design and development of automated tests for the IoT
Design and development of automated tests for the IoTDesign and development of automated tests for the IoT
Design and development of automated tests for the IoTAxel Rennoch
 
Ferrato_ Alenia
Ferrato_ AleniaFerrato_ Alenia
Ferrato_ AleniaGoWireless
 
CAN and TTP are the two wired network protocols used for distributed .pdf
CAN and TTP are the two wired network protocols used for distributed .pdfCAN and TTP are the two wired network protocols used for distributed .pdf
CAN and TTP are the two wired network protocols used for distributed .pdfssuserc77a341
 
The Path to Open, Interoperable Optical Networking - "T-API Update"
The Path to Open, Interoperable Optical Networking - "T-API Update"The Path to Open, Interoperable Optical Networking - "T-API Update"
The Path to Open, Interoperable Optical Networking - "T-API Update"Leah Wilkinson
 
Ecet 380 Enthusiastic Study / snaptutorial.com
Ecet 380 Enthusiastic Study / snaptutorial.comEcet 380 Enthusiastic Study / snaptutorial.com
Ecet 380 Enthusiastic Study / snaptutorial.comStephenson60
 
Ecet 380 Massive Success / snaptutorial.com
Ecet 380 Massive Success / snaptutorial.comEcet 380 Massive Success / snaptutorial.com
Ecet 380 Massive Success / snaptutorial.comHarrisGeorgx
 
ts_ETSI_101154v010901p
ts_ETSI_101154v010901pts_ETSI_101154v010901p
ts_ETSI_101154v010901paniruddh Tyagi
 
ts_ETSI_101154v010901p
ts_ETSI_101154v010901pts_ETSI_101154v010901p
ts_ETSI_101154v010901paniruddh Tyagi
 
ts_ETSI_101154v010901p
ts_ETSI_101154v010901pts_ETSI_101154v010901p
ts_ETSI_101154v010901pAniruddh Tyagi
 
Elvior Company Introduction T3UC Beijing 2010
Elvior Company Introduction T3UC Beijing 2010Elvior Company Introduction T3UC Beijing 2010
Elvior Company Introduction T3UC Beijing 2010ELVIOR
 
Protocols for multimedia multiparty conferencing
Protocols for multimedia multiparty conferencingProtocols for multimedia multiparty conferencing
Protocols for multimedia multiparty conferencingVideoguy
 

Similar to TTCN-3 Recent Developments and Applications (20)

project introduction
project introductionproject introduction
project introduction
 
USING TDL FOR STANDARDISED TEST PURPOSE DEFINITIONS
USING TDL FOR STANDARDISED TEST PURPOSE DEFINITIONSUSING TDL FOR STANDARDISED TEST PURPOSE DEFINITIONS
USING TDL FOR STANDARDISED TEST PURPOSE DEFINITIONS
 
MET3 Model
MET3 ModelMET3 Model
MET3 Model
 
Cisco TIP Presentation
Cisco TIP PresentationCisco TIP Presentation
Cisco TIP Presentation
 
Functional and non-functional testing with IoT-Testware
Functional and non-functional testing with IoT-TestwareFunctional and non-functional testing with IoT-Testware
Functional and non-functional testing with IoT-Testware
 
The IEEE 1149.1 Boundary-scan test standard
The IEEE 1149.1 Boundary-scan test standardThe IEEE 1149.1 Boundary-scan test standard
The IEEE 1149.1 Boundary-scan test standard
 
T3UC_PresentationT3UC2012_Rajesh_2
T3UC_PresentationT3UC2012_Rajesh_2T3UC_PresentationT3UC2012_Rajesh_2
T3UC_PresentationT3UC2012_Rajesh_2
 
25990 300 vocabulary for utran
25990 300 vocabulary for utran25990 300 vocabulary for utran
25990 300 vocabulary for utran
 
Design and development of automated tests for the IoT
Design and development of automated tests for the IoTDesign and development of automated tests for the IoT
Design and development of automated tests for the IoT
 
Ferrato_ Alenia
Ferrato_ AleniaFerrato_ Alenia
Ferrato_ Alenia
 
CAN and TTP are the two wired network protocols used for distributed .pdf
CAN and TTP are the two wired network protocols used for distributed .pdfCAN and TTP are the two wired network protocols used for distributed .pdf
CAN and TTP are the two wired network protocols used for distributed .pdf
 
The Path to Open, Interoperable Optical Networking - "T-API Update"
The Path to Open, Interoperable Optical Networking - "T-API Update"The Path to Open, Interoperable Optical Networking - "T-API Update"
The Path to Open, Interoperable Optical Networking - "T-API Update"
 
Ecet 380 Enthusiastic Study / snaptutorial.com
Ecet 380 Enthusiastic Study / snaptutorial.comEcet 380 Enthusiastic Study / snaptutorial.com
Ecet 380 Enthusiastic Study / snaptutorial.com
 
Ecet 380 Massive Success / snaptutorial.com
Ecet 380 Massive Success / snaptutorial.comEcet 380 Massive Success / snaptutorial.com
Ecet 380 Massive Success / snaptutorial.com
 
Fire Demos
Fire DemosFire Demos
Fire Demos
 
ts_ETSI_101154v010901p
ts_ETSI_101154v010901pts_ETSI_101154v010901p
ts_ETSI_101154v010901p
 
ts_ETSI_101154v010901p
ts_ETSI_101154v010901pts_ETSI_101154v010901p
ts_ETSI_101154v010901p
 
ts_ETSI_101154v010901p
ts_ETSI_101154v010901pts_ETSI_101154v010901p
ts_ETSI_101154v010901p
 
Elvior Company Introduction T3UC Beijing 2010
Elvior Company Introduction T3UC Beijing 2010Elvior Company Introduction T3UC Beijing 2010
Elvior Company Introduction T3UC Beijing 2010
 
Protocols for multimedia multiparty conferencing
Protocols for multimedia multiparty conferencingProtocols for multimedia multiparty conferencing
Protocols for multimedia multiparty conferencing
 

More from Axel Rennoch

ETSI TC MTS Contribution to Testing in IoT and Edge Computing
ETSI TC MTS Contribution to Testing in IoT and Edge ComputingETSI TC MTS Contribution to Testing in IoT and Edge Computing
ETSI TC MTS Contribution to Testing in IoT and Edge ComputingAxel Rennoch
 
Towards a certification scheme for IoT security evaluation
Towards a certification scheme for IoT security evaluationTowards a certification scheme for IoT security evaluation
Towards a certification scheme for IoT security evaluationAxel Rennoch
 
Testing Challenges and Approaches in Edge Computing
Testing Challenges and Approaches in Edge ComputingTesting Challenges and Approaches in Edge Computing
Testing Challenges and Approaches in Edge ComputingAxel Rennoch
 
Edge Computing Standardisation and Initiatives
Edge Computing Standardisation and InitiativesEdge Computing Standardisation and Initiatives
Edge Computing Standardisation and InitiativesAxel Rennoch
 
Test Execution Infrastructure for IoT Quality analysis
Test Execution Infrastructure for IoT Quality analysisTest Execution Infrastructure for IoT Quality analysis
Test Execution Infrastructure for IoT Quality analysisAxel Rennoch
 
Model-based security testing
Model-based security testingModel-based security testing
Model-based security testingAxel Rennoch
 

More from Axel Rennoch (6)

ETSI TC MTS Contribution to Testing in IoT and Edge Computing
ETSI TC MTS Contribution to Testing in IoT and Edge ComputingETSI TC MTS Contribution to Testing in IoT and Edge Computing
ETSI TC MTS Contribution to Testing in IoT and Edge Computing
 
Towards a certification scheme for IoT security evaluation
Towards a certification scheme for IoT security evaluationTowards a certification scheme for IoT security evaluation
Towards a certification scheme for IoT security evaluation
 
Testing Challenges and Approaches in Edge Computing
Testing Challenges and Approaches in Edge ComputingTesting Challenges and Approaches in Edge Computing
Testing Challenges and Approaches in Edge Computing
 
Edge Computing Standardisation and Initiatives
Edge Computing Standardisation and InitiativesEdge Computing Standardisation and Initiatives
Edge Computing Standardisation and Initiatives
 
Test Execution Infrastructure for IoT Quality analysis
Test Execution Infrastructure for IoT Quality analysisTest Execution Infrastructure for IoT Quality analysis
Test Execution Infrastructure for IoT Quality analysis
 
Model-based security testing
Model-based security testingModel-based security testing
Model-based security testing
 

Recently uploaded

React Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App FrameworkReact Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App FrameworkPixlogix Infotech
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfNeo4j
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesMuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesManik S Magar
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...Wes McKinney
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersNicole Novielli
 
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality AssuranceInflectra
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxLoriGlavin3
 
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical InfrastructureVarsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructureitnewsafrica
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfIngrid Airi González
 
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Alkin Tezuysal
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxLoriGlavin3
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Strongerpanagenda
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 
Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesTesting tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesKari Kakkonen
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterMydbops
 

Recently uploaded (20)

React Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App FrameworkReact Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App Framework
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdf
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesMuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software Developers
 
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
 
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical InfrastructureVarsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdf
 
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
Unleashing Real-time Insights with ClickHouse_ Navigating the Landscape in 20...
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 
Testing tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examplesTesting tools and AI - ideas what to try with some tool examples
Testing tools and AI - ideas what to try with some tool examples
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL Router
 

TTCN-3 Recent Developments and Applications

  • 1. Competence Center MOTION Fraunhofer FOKUS Recent Developments on TTCN-3 Ina Schieferdecker, Axel Rennoch , TAROT Summer School, Schloß Laubegg, 25th June 2010 TAROT2010, Slide 1
  • 2. Competence Center MOTION Fraunhofer FOKUS Contents  TTCN  Introduction  History  Status  Concepts and tools  Applications:  Industrial domains, MBT  Future  Latest releases, extension packages  Outlook: Embedded TTCN-3  Conclusion TAROT2010, Slide 2
  • 3. Competence Center MOTION Fraunhofer FOKUS Contents  TTCN  Introduction  History  Status  Concepts and tools  Applications:  Industrial domains, MBT  Future  Latest releases, extension packages  Outlook: Embedded TTCN-3  Conclusion TAROT2010, Slide 3
  • 4. Competence Center MOTION Fraunhofer FOKUS The T ti Th Testing and Test Control Notation d T t C t l N t ti Idea and design Principles of TTCN-3  One test technology for different tests – Distributed platform independent testing Distributed, platform-independent – Integrated graphical test development, -documentation and –analysis – Ad t bl open t t environment Adaptable, test i t  Areas of Testing – Regression Testing – Conformance and Functionality Testing – Interoperability and Integration Testing – Load/ Stress Testing
  • 5. Competence Center MOTION Fraunhofer FOKUS History (1) 1984  TTCN (1992) – Published as an ISO standard – Tree and Tabular Combined Notation – Used for protocol testing only 1992  GSM, N-ISDN, B-ISDN TTCN  TTCN-2/2++ (1997) 1994 – Concurrent tests – Modularization TTCN-2 – Manipulate external data 1997 – Rather for conformance testing TTCN-2++ – Developed by ETSI MTS TAROT2010, Slide 5
  • 6. Competence Center MOTION Fraunhofer FOKUS History (2)  TTCN-3 (2000) – Testing and Test Control Notation – Developed by ETSI MTS 1998 – Proper language  Well defined syntax and semantics 2000 – Enhanced communication, configuration and control  – Standard test specification  SIP/IMS, SCTP, HiperLan, HiperAccess, IPv6 ... 2010 TAROT2010, Slide 6
  • 7. Competence Center MOTION Fraunhofer FOKUS TTCN-3 Multipart-Standard TTCN 3 Multipart Standard  ETSI ES 201 873-1 TTCN-3 Core Language (CL)  ETSI ES 201 873-2 TTCN-3 Tabular Presentation Format (TFT)  ETSI ES 201 873-3 TTCN-3 Graphical Presentation Format (GFT)  ETSI ES 201 873-4 TTCN-3 Operational Semantics  ETSI ES 201 873-5 TTCN-3 Runtime Interface (TRI)  ETSI ES 201 873-6 TTCN-3 Control Interfaces (TCI)  ETSI ES 201 873-7 Integration of ASN.1  ETSI ES 201 873-8 Integration of IDL  ETSI ES 201 873-9 Integration of XML  ETSI ES 201 873-10T3Doc  Standard available for download at http://www.ttcn-3.org  Also standardized by the ITU-T as ITU-T Z.140  NEW: TTCN-3 Extension packages ETSI ES 202 78x! TAROT2010, Slide 7
  • 8. Competence Center MOTION Fraunhofer FOKUS Contents  TTCN  Introduction  History  Status  Concepts and tools  Applications:  Industrial domains, MBT  Future  latest releases, extension packages  Outlook: Embedded TTCN-3  Conclusion TAROT2010, Slide 8
  • 9. Competence Center MOTION Fraunhofer FOKUS TTCN-3: TTCN 3: Testing and Test Control Notation  A standardized alternative to proprietary test systems – Developed by a large group of testing experts TTCN-3 Test System CN Sy – U d b a growing community Used by i it Test Management (TM) + Logging (TLI)  Enabling a testing middleware, – unifying methods, tools, test infrastructure, Component TTCN-3 Coding documentation and training Handling Executable Decoding (CH) (TE) (CD) – domain-specific extensions  TTCN-3 is more than a notation: TTCN-3 test system System Adapter (SA) Platform Adapter (PA)  The only international standard for – Test specification and implementation System under Test TAROT2010, Slide 9
  • 10. Competence Center MOTION Fraunhofer FOKUS TTCN-3 is designed for Black-Box Testing TTCN-3 Test Case Port.send(Stimulus) P t d(Sti l ) Port.receive(Response) P t i (R ) • Assignment of a Test Verdict Port System Under Test TAROT2010, Slide 10
  • 11. Competence Center MOTION Fraunhofer FOKUS TTCN-3 TTCN 3 Test Configuration may change dynamically SUT TTCN-3 Test Case start create TC MTC TCs start create start create TC TAROT2010, Slide 11
  • 12. Competence Center MOTION Fraunhofer FOKUS TTCN-3 TTCN 3 Module • The top level entity of TTCN-3 is module. Module • A module can import definitions from other modules. • A module contains a definition part Module and a control part. Definitions module MyModule { // definition part control { Module Control // test execution logic } } TAROT2010, Slide 12
  • 13. Competence Center MOTION Fraunhofer FOKUS Major language elements of TTCN 3 notation TTCN-3 module definitions Importing definitions from other modules Imports defined in TTCN-3 or other languages User defined data types (messages, PDUs, Data Types information elements, …) Test data transmitted/expected during test Test Data execution (templates, values) Definition of the test components and Test Configuration communication ports Specification of the dynamic test behavior Test Behavior TAROT2010, Slide 13
  • 14. Competence Center MOTION Fraunhofer FOKUS Message-Based Ports • For sending and receiving messages of given type send receive PTC1 P1 (out) ( ) P2 (in) ( ) PTC2 P1.send(Msg) P2.receive(Msg) TAROT2010, Slide 14
  • 15. Competence Center MOTION Fraunhofer FOKUS Procedure-Based Ports • For invoking operations, receiving operation calls, replying, raising exceptions as well as for receiving replies and catching exceptions call getcall PTC1 PTC2 getreply or reply or catch exception raise exception TAROT2010, Slide 15
  • 16. Competence Center MOTION Fraunhofer FOKUS Test Verdicts  Test verdicts: none < pass < inconc < fail < error  Each test component has its own local verdict, which can be set (setverdict) and read (getverdict) (getverdict).  A test case returns a global verdict Verdict returned by the test case when it terminates P F I MTC F PTC1 P PTCN I setverdict(fail) setverdict(pass) setverdict(inconc) TAROT2010, Slide 16
  • 17. Competence Center MOTION Fraunhofer FOKUS Test Verdicts  Test verdicts: none < pass < inconc < fail < error  Each test component has its own local verdict, which can be set (setverdict) and read (getverdict). (getverdict)  A test case returns a global verdict Verdict returned by the test case when it terminates P F I MTC F PTC1 P PTCN I setverdict(fail) setverdict(pass) setverdict(inconc) TAROT2010, Slide 17
  • 18. Competence Center MOTION Fraunhofer FOKUS Sample: Test Configuration Test Component (MTC) UA LA System Under Test (SUT) Medium Service TAROT2010, Slide 18
  • 19. Competence Center MOTION Fraunhofer FOKUS Time Sequence Diagram for a Simple Behavour Example msc Example UA SUT LA loop<100> DATreq("data") DATind(DT,nr,"data") DATind(RE,nr, resp ) DATind(RE nr “resp") DATind() TAROT2010, Slide 19
  • 20. Competence Center MOTION Fraunhofer FOKUS Same Example in TTCN 3 Core Language TTCN-3 testcase Example( ) runs on MTC Type { MTC_Type var default mydefault := activate (DefaultDef()); T1.start; for (integer i:=1; i<=100; i:=i+1) { UA.send (DATreq:{"data"}); LA.receive (DATind:{DT, nr, "data"}); data }); LA.send (DATind:{RE,nr, “resp”}); UA.receive (DATind :{}); } setverdict(pass); T1.stop; } TAROT2010, Slide 20
  • 21. Competence Center MOTION Fraunhofer FOKUS Typical language elements: type definitions:  b l boolean, i t integer, fl t bit t i float, bitstring, charstring, octectstring, h h ti t t ti hexstring ti  record, set, enumeration, union programming constucts:  message: send/receive  procedure: call/getcall reply/getreply raise/catch call/getcall, reply/getreply,  if-then-else, loops: for, while, do-while  functions, alternatives  component/port/timer control Predefined functions:  type conversion, lengthof (string), sizeof (records), … Overview: e.g. TTCN 3 Q i k R f O i TTCN-3 Quick Reference C d Card TAROT2010, Slide 21
  • 22. Competence Center MOTION Fraunhofer FOKUS TTCN-3 TTCN 3 is an „open“ standard open“ ASN.1 TTCN-3 Tabular Core Format Language IDL Graphical Format XML Other Types Presentation & Values n Format n TAROT2010, Slide 22
  • 23. Competence Center MOTION Fraunhofer FOKUS Openness for other data types: Example XML to TTCN-3 Mapping pp g  Mapping of XML to TTCN-3 pp g – defined by the ETSI – Part 9 of the TTCN-3 multipart-standard – restricted to XML data t ti t dt d t types (XSD ttypes) only ) l  Type import: – uses the import mechanism of TTCN-3 for immediate use – import from XSD language "XML1.1" all; – language identifiers:  "XML" or "XML1.0" for W3C XML 1.0  "XML1.1" for W3C XML 1.1 TAROT2010, Slide 23
  • 24. Competence Center MOTION Fraunhofer FOKUS Technical conversion of XSD to TTCN-3 TTCN 3  16 identifier name conversion rules  3 rules to specify the order of mapping – XSD component <complexType name="e15"> <sequence minOccurs="5" maxOccurs="10"> <element name="foo" type="integer"/> <element name="bar" type="float"/> </sequence> </complexType> – corresponding TTCN-3 type record E15 { record length(5 .. 10) of record { XSD.Integer foo, XSD.Float bar } sequence_list } with {variant "name as uncapitalized "} TAROT2010, Slide 24
  • 25. Competence Center MOTION Fraunhofer FOKUS More than a notation: Test system implementation ATS Test System parts TE + SUT Communication C i ti TAROT2010, Slide 25
  • 26. Competence Center MOTION Fraunhofer FOKUS Test System Architecture Test System User TM: Management TLI: Logging TCI Standardized data interfaces control behaviour nent adapting to the test platform and SUT ing ec Compon Handli Code CD: CH: components TE types / data defined in IDL (mappings to Java, C and C# exists) C ports timer TRI SA: System Adaptor SA S t Ad t PA: Platform Ad t PA Pl tf Adaptor SUT: System Under Test TAROT2010, Slide 26
  • 27. Competence Center MOTION Fraunhofer FOKUS Sample interface: TE - CD Test System User TM: Management TL: Logging TCI mponent CD: Codec dling TE – TTCN-3 Executable CH: Com TE Hand C CD – Codec TRI SA: System Adapter PA: Platform Adapter System Under Test (SUT) ETSI ES 201 873-5 TTCN-3 Runtime Interface (TRI) ETSI ES 201 873-6 TTCN-3 Control Interfaces (TCI) TAROT2010, Slide 27 27
  • 28. Competence Center MOTION Fraunhofer FOKUS The Codec and Value Interface TciCD Required TciCD Provided Codec translates between CD: abstract and Codec concrete t presentation  Complete set of provided (TciCDProvided) operations – TriMessageType encode (in Value value) – Value decode (in TriMessageType message, in Type hyp) TAROT2010, Slide 28
  • 29. Competence Center MOTION Fraunhofer FOKUS Commercial TTCN 3 tools (source: www ttcn 3 org) TTCN-3 www.ttcn-3.org) TTCN-3 Compilers and Interpreters  Exhaustif/TTCN: compiler (C++) produced by Métodos y Tecnología (MTP), Spain.  OpenTTCN: interpreter (C, Java, C# interfaces) produced by OpenTTCN Ltd, Finland.  MessageMagic: compiler (C/C++, Java, C#) produced by ELVIOR, Estonia.  Real Time Developer Studio: modelling tool including TTCN-3 compiler by p g g p y PragmaDev, France.  TAU Tester: compiler (C) by IBM.  TTCN-3 toolbox: compiler (C) by Danet Group, Germany.  TTCN-3 Express: compiler (C#) by Fraunhofer FIRST and Metarga GmbH, Germany.  TTworkbench: compiler (C, Java) by Testing Technologies, Germany. TTCN-3 Generators  Qtronic by Conformiq OY, Finland. generate complete TTCN-3 test suites from e.g., UML, Java, or C# models.  MaTeLo by All4Tec, France (TTCN-3 test suites from usage models specified using Markov chains).  MOTES by ELVIOR, Estonia (from the state model of the SUT) TAROT2010, Slide 31
  • 30. Competence Center MOTION Fraunhofer FOKUS Open source TTCN-3 tools (source: www ttcn 3 org) TTCN 3 www.ttcn-3.org)  LoongTesting testing platform including TTCN-3 compiler and integrated development environment by Information Processing Center of USTC , China.  BBT TTCN-3 Compiler, by BroadBit, Hungary.  TRex: by University of Göttingen to provide IDE functionality for TTCN-3 core notation, and to support assessment and automatic restructuring of TTCN-3 test suites. (open-source Eclipse plug-in).  T3doc by Federico Engler and further developed by ETSI. for generating HTML documentation via tagged TTCN-3 comments TTCN 3 comments.  Codec generator by IRISA as part of T3DevKit. It automatically generates a codec based on TTCN-3 type module(s), C++ codec functions.  T3DevLib by IRISA as part of T3DevKit It allows the development or integration T3DevKit. of Codec, SUT and Platform Adapter implementations written in C++. ... and more academic prototype/research tools (guideline checking, quality analysis, ...) TAROT2010, Slide 32
  • 31. Competence Center MOTION Fraunhofer FOKUS The seemless chain of TTCN-3 Tools TTCN 3 Developers Perspective for Modification Result Analyzer Test Execution Test Report Test Campaign Designer (Test Automation) Online Logging, Test T Filter, Reporting Parametrization TAROT2010, Slide 33
  • 32. Competence Center MOTION Fraunhofer FOKUS Contents  TTCN  Introduction  History  Status  Concepts and tools  Applications:  Industrial domains, MBT  Future  latest releases, Extension packages  Outlook: Embedded TTCN-3  Conclusion TAROT2010, Slide 34
  • 33. Competence Center MOTION Fraunhofer FOKUS TTCN-3 TTCN 3 applications: various industrial domains Objective: • To develop an efficient test platform fulfilling industrial testing requirements p p g g q • To execute high-level test models, e.g. UML2 test profile Industrial Testing Approach pp  Requirements Embedded UML 2.0 System Design Systems Testing Profile Automotive Mobile Communication TTCN-3 Test Design Avionics Test An efficient test platform Results Railway Systems Methods, Tools, Guidelines ... TAROT2010, Slide 35
  • 34. Competence Center MOTION Fraunhofer FOKUS TTCN-3 TTCN 3 domains: Telecom  Industrial use – Big companies with hundreds of TTCN-3 engineers: Ericson, Nokia, Siemens, Motorola – large distribution among SME  Standardization bodies – standardized test suites: ETSI / 3GPP / OMA / TETRA and its members – IMS performance benchmark project: Intel, HP, BT, FOKUS and others  Test tool manufacturer: – Commercial Tektronix, Catapult, Nexus, R&S, … , p , , , – Open source community projects  Certification program based on TTCN-3: WiMax forum TTCN 3: TAROT2010, Slide 36
  • 35. Competence Center MOTION Fraunhofer FOKUS Telecom example: Performance Benchmarking Sample SUT: IMS components p p Test IMS components separately and in different configurations Definitions using TTCN-3: • standard call scenarios (e.g. (e g voice call conference call call, call, application call, push-to-talk call) SuT reference • traffic set as an Implementation I-CSCF aggregation of call scenarios gg g Performance: ... ... • 5.000 - 10.000 IMS subscribers P-CSCF HSS (per server) S-CSCF • Up to 250 requests per second (per server) control and coordination UE emulations UE emulations Benchmark Test Platform TAROT2010, Slide 37
  • 36. Competence Center MOTION Fraunhofer FOKUS TTCN-3 TTCN 3 domains: Automotive  Car communication systems Telematics Applications – Daimler, Volkswagen, SiemensVDO in the Cockpit • Audio (CD / Radio), Video – edutainment bus system (test suite) • Telephone, SMS • Navigation g  Standardization groups: • Speech recognition – AUTOSAR consortium • User interface for body electronic – MOST cooperation  Car-to-car communication CD Changer Head Unit H d U it Amplifier / Tuner Tester MOST Bus Test case: loudness playCDTitle Speaker TAROT2010, Slide 38
  • 37. Competence Center MOTION Fraunhofer FOKUS TTCN-3 TTCN 3 domains: other domains  Medicine – SiemensMED (image processing) – HL7 eHealth protocols (Interoperability)  Power transmission and distribution: – SiemensPTD (safe and reliable energy system)  Financial data warehouse: – International bank (functional / regression testing)  Avionics – European Space Agency  Railways – Dutch railways (www.tt-medal.org) TAROT2010, Slide 39
  • 38. Competence Center MOTION Fraunhofer FOKUS TTCN-3 in MBT  TTCN 3 i used i several d TTCN-3 is d in l domains as bi di li k i binding link between modelling and execution  Commercial tools like Qtronic (Conformiq) and TTmodeler (TestingTech) do generate TTCN-3 code for test execution  lots of academic prototype tools  selection of industrial case studies: see e.g. European D-MINT project www.d-mint.org D MINT www.d mint.org TAROT2010, Slide 41 41
  • 39. Competence Center MOTION Fraunhofer FOKUS MBT example 1: Trimek/Datapixel production engineering case study • SUT: Coordinates Measuring Machines (CMM) control software (CDMS) for controlling a measuring system  Focus: test case derivation from UML models • Models in use: UML class, sequence, state diagrams SUT TAROT2010, Slide 42
  • 40. Competence Center MOTION Fraunhofer FOKUS MBT example 2: City street lights case study • SUT: Eliko street lighting control system feeder box control unit (FBCU) • Models for the SUT: UML state charts, produced with tool Poseidon  Elvior test generator derives TTCN-3 test cases from state charts SUT TAROT2010, Slide 43
  • 41. Competence Center MOTION Fraunhofer FOKUS Status: further activities  Establishment of a TTCN 3 syllabus and certificate TTCN-3 – Cooperation of ETSI, GTB and iSQI – accredited TTCN-3 training providers – lots of certificates issued  Improvement of TTCN-3 tool interoperability TTCN 3 – Development of a TTCN-3 reference test suite – 1st TTCN-3 Plugtest evnt with commercial tools at ETSI (2009)  TTCN-3 user conferences – Europe: since 2004 (F, D, E, S), next: 2011 (SLO) – Asia: 2007 (China), 2009 (India), 2010 (China) TAROT2010, Slide 44 44
  • 42. Competence Center MOTION Fraunhofer FOKUS Contents  TTCN  Introduction  History  Status  Concepts and tools  Applications:  Industrial domains, MBT  Future  latest releases, Extension packages  O tl k Embedded TTCN 3 Outlook: E b dd d TTCN-3  Conclusion TAROT2010, Slide 45
  • 43. Competence Center MOTION Fraunhofer FOKUS Maintenance of TTCN 3 TTCN-3  Standard is constantly maintained – Through Change Requests (CRs) – Extension proposals – Active contributions in the TTCN-3 community TTCN 3  TTCN-3 mailing list, TTCN-3 users conference  ETSI STFs (Specialist Task Force)  Change requests result in new editions of the standard – 2000: Edition 1 – 2003: Edition 2 – 2005: Edition 3 – 2009: Edition 4 1 4.1 – 2010: Edition 4.2  Completed in Febr. 2010, all documents to be published soon TAROT2010, Slide 46
  • 44. Competence Center MOTION Fraunhofer FOKUS New in ES 201 873 v4 2 1 873, v4.2.1  TTCN-3 language TTCN 3  Import of import statements  Special real values (infinity, -infinity, not_a_number)  Exclusive bounds for range subtyping  ispresent(), str2hex(), testcase.stop  Several smaller additions (template arguments for superset, allows templates of all types, __BFILE__ macro) BFILE  TRI/TCI  C# mapping pp g  Language mappings  Unambiguous mapping of real/float types from XSD and ASN.1  Full support of mapping ASN.1 (2008) TAROT2010, Slide 48
  • 45. Competence Center MOTION Fraunhofer FOKUS New in ES 201 873 (contd)  Language mappings (contd)  Parts are re-structured to be “package-style” (e.g. TRI support for ASN.1->TTCN-3 is moved to Part-7)  S Source code d d documentation t ti  New tags added (@priority, @requirement and @reference)  Documentation block for local definitions of component types  Several clarifications, amendments and editorial corrections TAROT2010, Slide 49
  • 46. Competence Center MOTION Fraunhofer FOKUS TTCN-3 multipart standard overview: 2010 extensions Language mappings ASN.1 IDL XSD … Advanced Documentation Behaviour Static Real-time parameteri- Extensions t3doc zation Types configuration support … TTCN-3 Structuring: Imports, Groups, Imports Groups Attributes Core TTCN-3… Behaviour language TTCN-3 Data TRI/TCI mapping Java C C++ XML C# TAROT2010, Slide 50
  • 47. Competence Center MOTION Fraunhofer FOKUS Extension packages #1: Advanced Parameterization  ETSI ES 202 784 V1.1.1 available since July 2009, new draft V1.2.1 (2010-03)  Formal parameters of kind “type” for: type, template, and behaviour defintions  Effects ES 201 873 parts: -1 (core), -4 (semantics), -6 (TCI), -7 (ASN1), -10 (T3DOC) p ( ) ( ) ( ) ( ) ( )  Examples: type record Data <in type p_PayloadType> { Header hdr, p_PayloadType payload} function f_myfunction <in type p_myType > (in MyList<p_myType> p_list, in p_myType p_elem) return p_myType {return p_list[0] + p_elem)} f_myfunction <integer> ({1,2,3,4}, 5) TAROT2010, Slide 51
  • 48. Competence Center MOTION Fraunhofer FOKUS Extension packages #1: Advanced Parameterization  Allows – Static value parameterization of types – Static type parameterization of types, templates, functions, altsteps and testcases – Default type is allowed for type parameters like default values/templates for value parameters, parameters  Example use cases – Message types, where e.g. the payload (field) can be a structured data as well as an octetstring/charstring etc. – Message templates supporting both positive and negative testing in one templates, parameterized definition – Port types with parameterized in/out/inout lists – Component types where the type(s) of port(s) are parameterized types, – Functions that executes some kind of user-defined actions on data of different types (e.g. inserting extra fields into encoded messages for negative testing) – Functions with parameterized runs on clauses p TAROT2010, Slide 52
  • 49. Competence Center MOTION Fraunhofer FOKUS Extension packages #2: Behaviour types  ETSI ES 202 785 V1.1.1 Available since Jan. 2010  More flexibility: variables may carry “behaviour” (functions/altsteps etc.)  Effects ES 201 873 parts: -1 (core), -4 (semantics), -6 (TCI), -10 (T3DOC)  Example: E l type function MyFuncType ( in integer p1 ); // formal type definition (w/o body) function f myFunc1 ( in integer p1 ) {…}; f_myFunc1 { }; // concrete behaviour … var MyFuncType v_func; v_func f_myFunc1; v func := f myFunc1; apply (v_func(0)); TAROT2010, Slide 53
  • 50. Competence Center MOTION Fraunhofer FOKUS Extension packages #2: Behaviour types  Allows – Defining types of function, altstep and testcase (FAT) “prototypes” – Defining module parameters, constants, variables and templates of FAT types and storing references to “real” FATs in them real – References to FATs can be stored, passed as parameters and sent to another component – Calling FATs via their references ( g (including starting PTC behaviours) g g ) – “runs on self”: specific runs on compatibility checking rules and cannot be sent to another component  Example use cases – Efficient handling of state machines; the actual state is an integer number that – in case of an event - allows calling the function executing the action from an array of function references instead of using e g select case to determine the actual state; references, e.g. also allows easy dynamic changing of the FSM – Using dynamically registrable callback functions in TTCN-3 SW libraries – Flexible test configuration by e.g. passing PTC behaviour function references to MTC configuration functions TAROT2010, Slide 54
  • 51. Competence Center MOTION Fraunhofer FOKUS Extension packages #3: Configuration and Deployment Support  ETSI ES 202781 V1.1.1 release planned for summer 2010 V1 1 1  Introduces predefined static test components/configuration independent of a testcase (save time for testcase setup)  Effects ES 201 873 parts: -1 (core) -4 (semantics) -5 (TRI) -6 (TCI) (core), (semantics), (TRI),  Example: configuration f StaticConfig() runs on MyMtcType system MySystemType { f_StaticConfig() myComponent := MyPTCType.create static; map (myComponent :PCO, system:PCO1) static;… } testcase TC_test1 () execute on f_StaticConfig {…} control { var configuration myStaticConfig; myStaticConfig := f_StaticConfig(); // configuration setup execute(TC_test1); myStaticConfig.kill;… } TAROT2010, Slide 55
  • 52. Competence Center MOTION Fraunhofer FOKUS Extension packages #3: Configuration and Deployment Support  Allows – Defining special “static” test configurations, creating and destroying them from the control part – Testcases (identified by execute on) may be called on a created static test configuration sequentially – Testcases may add “dynamic” PTCs and connections to the test configuration but shall not destroy any part of the static test configuration  Example use cases – S i t Semi-automatic (i t ti (interactive) execution of test cases, where the SUT state may ti ) ti ft t h th t t change due to loosing connections and/or missing keep-alive signals for a long time – Keep configuration setup: Automatic test execution, where loosing connections may raise unwanted alarm signals and/or blockings/resets TAROT2010, Slide 56
  • 53. Competence Center MOTION Fraunhofer FOKUS Extension packages #4: Real time and performance testing support  ETSI ES 202782 V1.1.1 planned for summer 2010  Introduces system time progress (since start of a testcase), delays and timestamps  Effects ES 201 873 parts: -1 (core), -4 (semantics), -5 (TRI)  Examples: module MyModule {... type port myPort message [realtime] {...}; var float v_specified_send_time, v_sendTimePoint, v_myTime; ... myPort .receive(t)-> timestamp v_myTime; … wait (v_specified_send_time); ( _ p _ _ ) myPort.send(m_out); v_sendTimePoint:= now; } with {stepsize “0.001”}; // precision of a milisecond TAROT2010, Slide 57
  • 54. Competence Center MOTION Fraunhofer FOKUS Extension packages #4: Real time and performance testing support  Allows – Identifying the required precision of the system time – now: getting the actual system time (from starting the test case) – wait: suspends the execution of a component until a given point in time (from starting the test case) – Identifying ports with real-time requirements; timestamp of entering messages in the TSI shall be stored and sent to the TE – Retrieving the timestamp of the receiving in the TTCN-3 code  Example use cases – Set the required system preciseness by the writer of a TTCN-3 module (e.g. by a SW library module) – More precise time measurements, e.g. round-trip delays – More precise and convenient handling of timing-related actions TAROT2010, Slide 58
  • 55. Competence Center MOTION Fraunhofer FOKUS Outlook: TTCN 3 embedded TTCN-3  Extensions for testing – real time systems (RT-TTCN-3) – continuous systems (Continuous TTCN-3)  RT TTCN-3 Concepts – clock as a common basis for time measurement measurement. – timestamp redirection for exact time measurement of message interaction.  Continuous TTCN 3 Concepts TTCN-3 – sampled clock as a common basis for discretization and stream definitions. – sampled streams that provide a data structure to define, access and manipulate discretized signal values and their history in time time. – hybrid automata that provides a control flow structure to enable and control the simultaneous stimulation and evaluation of stream ports. TAROT2010, Slide 61
  • 56. Competence Center MOTION Fraunhofer FOKUS TTCN-3 embedded: Hybrid Behavior Specification cont{ var integer x :=0; onentry{Brake.value := 0.0} inv{ Brake value <= 0 1 } Brake.value 0.1 Cont. Test Throttle.value := duration * 2.0; Behavior assert(EngineSpeed.value < 4000.0); onexit{Throttle.value := 0.0} } until (duration >= 10.0) [g1]  M d represent the macro state of the test system Modes t th t t f th t t t  Repetitive execution of the mode’s content (micro states) – onentry and onexit are executed once – inv, until, assertions and assignments are executed continuously  Parallel and sequential composition (using par and seq) TAROT2010, Slide 62
  • 57. Competence Center MOTION Fraunhofer FOKUS TTCN-3 embedded sample: vehicle passing TAROT2010, Slide 63
  • 58. Competence Center MOTION Fraunhofer FOKUS Contents  TTCN  Introduction  History  Status  Concepts and tools  Applications:  Industrial domains, MBT  Future  latest releases, extension packages  Outlook: Embedded TTCN-3  Conclusions TAROT2010, Slide 64
  • 59. Competence Center MOTION Fraunhofer FOKUS Major technical innovations / benefits  TTCN 3 as standardized test language and implementation TTCN-3  Easy (human readable) description of test scenarios – free from programming issues, (transparent framework for end-customers) – platform and tool vendor independence p p – different presentation formats  Clear separation of testing issues: – test configuration, data and behaviour – SUT specific adaptation and codec TAROT2010, Slide 65
  • 60. Competence Center MOTION Fraunhofer FOKUS Conclusions  1980s – today long history and value today,  Wide range of applicability – different communication paradigms, testing types – domains: Telecom, Automotive, Medicine, Finance, Railways, Avionics… Avionics – used in research and industry  C Creates IInternational community, expertise, commercial and open i l i i i l d source tools  TTCN-3 is established and in progress for the future TAROT2010, Slide 66
  • 61. Competence Center MOTION Fraunhofer FOKUS Thank you for f your attention! tt ti !