An automatic off-line feature interaction detection method by static analysis of specifications. Hélène Jouve, Pascale Le Gall and Sophie Coudert

Similar documents
Observability and Controllability Issues in Conformance Testing of Web Service Compositions

Observability and Controllability Issues in Conformance Testing of Web Service Compositions

ETSI TS V1.1.1 ( )

Wanderbox & Com.X. Customer product identification. The complete communications solution in a box. Installation Auditor.

Blazo Nastov. Journée des doctorant, Nîmes, France 19 June 2014

Online Detection of Feature Interactions of CPL Services

Automated Test Design with TTCN-3

TS V6.0.0 ( )

Action URL and Active URI specification

SIP Session Initiation Protocol

FreePascal changes: user documentation

ETSI TS V ( ) Technical Specification

ETSI TS V8.0.0 ( ) Technical Specification

IPNext NGN IP-PBX High-performance Next Generation IP-PBX Solution

Content Overlays. Nick Feamster CS 7260 March 12, 2007

Cisco Implementing Cisco Collaboration Devices (CICD)

Revision History Date Revision # Summary of Changes

Existing model. Existing model. Conceptual Model. Logical constraints. Temporal constraints

The EXTender/PBXgateway Product Suite Simplified Voice Networking for Distributed Enterprises

3G TS V3.1.0 ( )

A distributed mechanism to resolve dynamically Feature Interaction in the UMTS IP Multimedia Subsystem

SIP driver configuration in ALERT

fanvil file, forbidden to steal!

The Declarative Language STR (State Transition Rule)

Special Topics: Programming Languages

ETSI TS V5.0.0 ( )

ETSI TS V4.0.0 ( )

ETSI TS V7.4.0 ( )

Controlling Overload in Networks of SIP Servers

A Causality-Based Runtime Check for (Rollback) Atomicity

Multi-Service Access and Next Generation Voice Service

On Search Strategies for Constraint-Based Bounded Model Checking. Michel RUEHER

control4 GSM Gateway Setup

AT&T Collaborate. February, 2018

From Alexander Graham Bell to SIP. Russ Clark August 24, 2009

G Programming Languages - Fall 2012

Saturated Throughput Analysis of IEEE e EDCA

ScopTEL TM IP PBX Software. Managing Incoming Lines

Cisco ATA 191 Analog Telephone Adapter Overview

ETERNITY NE. The Next Generation IP-PBX for Small Businesses

Problems on Voice over IP (VoIP)

3GPP TS V ( )

Applications of Pointers (1A) Young Won Lim 4/11/18

Chapter 9 Subprograms

Step 3 - How to Configure Basic System Settings

CSE 105 THEORY OF COMPUTATION

11/29/17. Outline. Subprograms. Subroutine. Subroutine. Parameters. Characteristics of Subroutines/ Subprograms

T3main. Powering comprehensive unified communications solutions.

Fast Prototyping from Assertions: a Pragmatic Approach

Trickle: Automated Infeasible Path

3GPP TS V8.7.0 ( )

CSE 105 THEORY OF COMPUTATION

PASS4TEST. IT Certification Guaranteed, The Easy Way! We offer free update service for one year

Secure Telephony Enabled Middle-box (STEM)

Partner: Biamp Model: Tesira Device Type: Digital Signal Processor

atl IP Telephone SIP Compatibility

Cisco Cisco Voice over IP (CVOICE) Practice Test. Version QQ:

JP-3GA (R99) Call Forwarding (CF) Supplementary Services; Stage 1

3GPP TS V8.9.0 ( )

Avaya Solution & Interoperability Test Lab Application Notes for configuring Ascom Myco V9.3 with Avaya IP Office Server Edition R Issue 1.

Lecture 5 - Axiomatic semantics

Technical Specification Intelligent Transport Systems (ITS); OSI cross-layer topics; Part 1: Architecture and addressing schemes

B. Answers to follow-up questions received by 5 PM on October 19, 2018

Cisco Converged Services Platform


Application Notes for Configuring Avaya Distributed Office with the Ascom i75 VoWiFi SIP Handset using the Aruba Networks Wireless Network - Issue 1.

Chapter 5 Names, Binding, Type Checking and Scopes

Using Multi-Level Graphs for Timetable Information. Frank Schulz, Dorothea Wagner, and Christos Zaroliagis

Avaya Solution & Interoperability Test Lab Application Notes for Configuring Ascom Myco Wireless Smartphones with Avaya IP Office 10 - Issue 1.

3GPP TS V7.6.0 ( )

Basic FXO Gateway Configuration

ETSI TS V9.0.0 ( ) Technical Specification

FREUND SIP SW - V SIP-server setup

BUILD DEFINITION EXTENSION

Generating Small Countermodels. Andrew Reynolds Intel August 30, 2012

Spectrum Enterprise SIP Trunking Service ShoreTel 14.2 IP PBX Configuration Guide

Interactive Refinement of Hierarchical Object Graphs

CSC 7101: Programming Language Structures 1. Operational Semantics. Winskel, Ch. 2 Slonneger and Kurtz Ch 8.4, 8.5, 8.6. Operational vs.

3GPP TS V ( )

XO SIP Service Customer Configuration Guide for Avaya IP Office Version 6.0 with XO SIP

ETSI TS V2.1.1 ( ) Technical Specification

3GPP TS V ( )

Quick Edition Release 4.0 GA Release Notes

Certificates for incremental type checking

Programming Languages: Lecture 11

Call: Hyperion Planning Course Content:35-40hours Course Outline Planning Overview

Smartphone Business Communication System

Type Inference for Scripting languages with Implicit Extension

Avaya IP Office SIP Endpoint Configuration Guide

ETSI TS V ( )

Atollic TrueINSPECTOR. Improve software quality with static source code inspection!

SARVAM UMG The High-density Universal Media Gateway

VHDL Symbolic simulator in OCaml

Broadband Loop Carrier Ethernet Protection Switching Using Ethernet to Create a Reliable B roadband Access Network F A Q

Call Transfer Options

Table of Contents. Yealink Solution Guide

From Alexander Graham Bell to SIP. Russ Clark August 27, 2008

Testing, Debugging, and Verification

A Study of Issues and Considerations of Service Interaction Management in IMS Architecture

Review -Chapter 4. Review -Chapter 5

Transcription:

An automatic off-line feature interaction detection method by static analysis of specifications Hélène Jouve, Pascale Le Gall and Sophie Coudert ICFI 05 Leicester France Telecom R&D Université d Évry - LaMI ENST - Laboratoire SoC

Introduction Service : extension of a basic system Exemple : POTS, CFB, TCS, CW, etc. Separately designed but integrated on the same network => interactions Solve or prevent interactions => detect them before integration of services of at runtime New challenges : internet telephony

Our objectives 1. Detect interactions, 2. At the earliest, from graphical specifications minimize impact of conflicts graphical is easily readable 3. Automatically without supplementary knowledge than the specifications 4. Give an explanation of detected conflict Helps solving conflicts or modify specification

Plan 1. Our method for phone services 2. Current and futur works : SIP

Our choices operational and graphical specifications compromise between expressiveness and feasibility of computations user point of view, abstraction of the network simple properties formulas such as emitting(a, ringingtone) idle(a) No integration, combination choices, no computed model static method

Example of specification : focus on CFB VAR A:POTS dialing(a) VAR B:CFB(C) VAR C:POTS A.call(B) idle(b) idle(b) idle(c) start( rbtone).a idle(b) start(rbtone).a start(rgtone).b idle(c) start(rgtone).c A.onhook start(lbtone).a idle(a) POTS,5,(A,B) POTS,5,(A,C) POTS,10,(A) Aliases Subscriptions and variables declarations Determinism of transitions Invariant properties

Main steps of our method diagram of POTS Trigger information of f diagram of f Computation of trigger information Trigger information of f Computation of interactions Interactions between f et f

Computing and modelling trigger information Step 1: supress aliases (except loops) Step 2: pair branches and extract non paired branches (trigger) Step 3: annotate non paired branches with intentions

Computing trigger information: pairing diagrams VAR A:POTS idle(a) dialing(a) VAR A:POTS dialing(a) VAR B:POTS A.call(B) A.onhook VAR B:CFB(C) VAR C:POTS A.call(B) A.call(B) A.onhook idle(b) start(rbtone).a start(rgtone).b 5 emitting(a,rbtone) emitting(b,rgtone) idle(b) start(lbtone ).A emitting(a, lbtone ) 6 7 idle(a) idle(b) idle(b) idle(c) start( rbtone).a start(rgtone).b idle(b) idle(c) start(rbtone).a start(rgtone).c start(lbtone).a

Computing trigger information: intentions VAR A:POTS dialing(a) VAR B:CFB(C) VAR C:POTS idle(b) start( rbtone).a start(rgtone).b A.call(B) A.call(B) idle(b) idle(c) A.call(C) idle(c) idle(b) idle(c) start(rbtone).a start(rgtone).c A.onhook start(lbtone).a A.call(C) idle(c)

Computing interactions: direct and indirect at trigger Path A C m S m i C i σ m S C A 1. direct interactions: If Compat σ (C, C ) Subs. σ(a) A Cond. σ(c) C Msg. σ(m) = m Conflict σ(s) ou S D Trigger information of f Trigger information of f D 2. indirect interactions using intentional message

Computing interactions : generalization Path C m m C A S mi ci S A Path σ C f mf A f S f m i C i D D Trigger information of f Trigger information of f

Example of computed interactions (RBF vs TM et RBF vs CW) A : RBF X : TM S A : RBF B : TM C dialing(a) idle(b) m A.call(B) startplaying(rbfmsg).a startplaying(tmaccueilmsg).a A : RBF B : CW C : POTS S A : RBF B : CW C:POTS C dialing(a) talking(b,c) m A.call(B) startplaying(rbfmsg).a start(cwtone).b

RBF vs CW VAR A:RBF dialing(a) A.call(B) VAR B:POTS idle(b) startplaying(rbfmsg).a playing(a,rbfmsg) VAR B:CW VAR C:POTS VAR A:POTS talking(b,c) A.call(B) => idle(b) start(ringbacktone).a start(cwtone).b emitting(b,cwtone) emitting(a,ringbacktone) talking(c,b) {dialing(a), idle(b)}, and {talking(b, C)}) are compatible Trigger match messages Network answers are different

Conclusion for this technique number and expressiveness of computed interactions rapidity of computations simplicity of use run on 23 services (FIW contests)

Plan 1. Our method for phone services 2. Current and futur works : SIP

SIP and VoIP services Services deployed on devices, proxies, etc End systems are more intelligent than phones Work in progress at France Telecom formalism to be adapted algorithms to be adapted Intellectual property issues...

CFB and Auto Redial Asip : AutoRedial Aip.invite(Bsip, Asip,Bsip, Asip,(i,invite)) Bsip : CFB(Bsip ) Aip.invite(Bsip, Asip,Bsip, Asip,(i,invite)) 100trying(Asip,Bsip, (i,invite)).aip 100trying(Asip,Bsip, (i,invite)).aip 486busyhere(Asip,Bsip, (i,invite)).aip 180ringing(Asip,Bsip,Bsip, (i,invite)).aip Aip.ack(Bsip, Asip, Bsip, (j, ack)) Asip.subscribe(Bsip, Asip, Bsip, Asip,(k,subscribe))

Interactions (by hand) Configuration Bsip : CBF(Bsip ) Asip : AutoRedial Path Aip.invite(... ) 100trying(... ).Aip Trigger request Aip.invite(... ) Conflicting answers 180ringing(... ).Aip 486busyhere(... ).Aip

Conclusion Graphic and formal specifications adapted to the domain Fully automatic method automatic computation of problematic configurations no integration Quality and number of found interactions Adaptation of formalism and algorithms : in progress