Backward Compatibility, Interoperability and Testing May 2010 Green Valley Ranch - Las Vegas, NV Ales Gornjec, Hermes SoftLab How to speed up the implementation.

Slides:



Advertisements
Similar presentations
1 Data Link Protocols By Erik Reeber. 2 Goals Use SPIN to model-check successively more complex protocols Using the protocols in Tannenbaums 3 rd Edition.
Advertisements

Chapter 11 user support. Issues –different types of support at different times –implementation and presentation both important –all need careful design.
Module 4: Configuring Network Connectivity
PROTOCOL VERIFICATION & PROTOCOL VALIDATION. Protocol Verification Communication Protocols should be checked for correctness, robustness and performance,
Multi-Mode Survey Management An Approach to Addressing its Challenges
The Web Warrior Guide to Web Design Technologies
MP IP Strategy Stateye-GUI Provided by Edotronik Munich, May 05, 2006.
15.1 © 2004 Pearson Education, Inc. Exam Managing and Maintaining a Microsoft® Windows® Server 2003 Environment Lesson 15: Configuring a Windows.
NETOP REMOTE CONTROL What’s new in version 9.5? DECEMBER 09 NETOP REMOTE CONTROL1.
© 2011 Adobe Systems Incorporated. All Rights Reserved. Adobe Confidential. Kiran Kaja | Accessibility Engineer Ensuring Accessibility in Document Conversion.
Chapter 19: Network Management Business Data Communications, 4e.
Software Engineering COMP 201
70-290: MCSE Guide to Managing a Microsoft Windows Server 2003 Environment Chapter 8: Implementing and Managing Printers.
Cambodia-India Entrepreneurship Development Centre - : :.... :-:-
Check Disk. Disk Defragmenter Using Disk Defragmenter Effectively Run Disk Defragmenter when the computer will receive the least usage. Educate users.
Hands-On Microsoft Windows Server 2008 Chapter 11 Server and Network Monitoring.
Windows Server 2008 Chapter 11 Last Update
Microsoft Office Word 2013 Expert Microsoft Office Word 2013 Expert Courseware # 3251 Lesson 4: Working with Forms.
CVSQL 2 The Design. System Overview System Components CVSQL Server –Three network interfaces –Modular data source provider framework –Decoupled SQL parsing.
Automatic Software Testing Tool for Computer Networks ARD Presentation Adi Shachar Yaniv Cohen Dudi Patimer
Students: Nadia Goshmir, Yulia Koretsky Supervisor: Shai Rozenrauch Industrial Project Advanced Tool for Automatic Testing Final Presentation.
This presentation will guide you though the initial stages of installation, through to producing your first report Click your mouse to advance the presentation.
Overview of Mini-Edit and other Tools Access DB Oracle DB You Need to Send Entries From Your Std To the Registry You Need to Get Back Updated Entries From.
INTRODUCTION TO WEB DATABASE PROGRAMMING
Account Service Contacts Service Contacts Service Client.
March 7, 2005MOBIKE WG, IETF 621 Mobility Protocol Options for IKEv2 (MOPO-IKE) Pasi Eronen.
® IBM Software Group © 2009 IBM Corporation Rational Publishing Engine RQM Multi Level Report Tutorial David Rennie, IBM Rational Services A/NZ
Fault Tolerance via the State Machine Replication Approach Favian Contreras.
1 The following presentation is from the Oracle Webcast “What’s New in P6 EPPM Release 8.1.” As a partner, you may not use the Oracle Power Point template,
London April 2005 London April 2005 Creating Eyeblaster Ads The Rich Media Platform The Rich Media Platform Eyeblaster.
CNIT 133 Interactive Web Pags – JavaScript and AJAX JavaScript Environment.
BoD Meeting - Feb 2008 GSA Committee Technical Update For Engineers.
Using Business Scenarios for Active Loss Prevention Terry Blevins t
Module 14: Configuring Server Security Compliance
Section 1: Introducing Group Policy What Is Group Policy? Group Policy Scenarios New Group Policy Features Introduced with Windows Server 2008 and Windows.
1 Quality Center 10.0 NOTE: Uninstall the current version of QC before downloading QC All QC 10.0 documents can be located on the BI Shared Services.
EMI INFSO-RI SA2 - Quality Assurance Alberto Aimar (CERN) SA2 Leader EMI First EC Review 22 June 2011, Brussels.
MP Online Data Entry Project Update WMS / ROS August 2013 Troy Anderson.
CoFM: An Environment for Collaborative Feature Modeling Li Yi Institute of Software, School of EECS, Peking University Key Laboratory of High Confidence.
Computer Emergency Notification System (CENS)
(Business) Process Centric Exchanges
FIMS v1.1 Version numbers in schema Richard Cartwright Quantel July 2013.
The Year of Implementation and Value Creation!Gaming Technology Summit The Power of One Solution.
CasinoFest3: GSA's S2S Protocol GSA’s System to System Protocol: Making your system connections better! Russ Ristine – Radical Blue Gaming.
Who’s watching your network The Certificate Authority In a Public Key Infrastructure, the CA component is responsible for issuing certificates. A certificate.
XML Engr. Faisal ur Rehman CE-105T Spring Definition XML-EXTENSIBLE MARKUP LANGUAGE: provides a format for describing data. Facilitates the Precise.
Agile SOA Agile EAI How do we achieve agility in Enterprise Integration?
Web Technologies Lecture 4 XML and XHTML. XML Extensible Markup Language Set of rules for encoding a document in a format readable – By humans, and –
Computer Simulation of Networks ECE/CSC 777: Telecommunications Network Design Fall, 2013, Rudra Dutta.
ASP-2-1 SERVER AND CLIENT SIDE SCRITPING Colorado Technical University IT420 Tim Peterson.
Forms Manager. What is Forms Manager? Forms Manager is a completely new online form creation and form data management tool.
Institute for the Protection and Security of the Citizen HAZAS – Hazard Assessment ECCAIRS Technical Course Provided by the Joint Research Centre - Ispra.
Using Workflow With Dataforms Tim Borntreger, Director of Client Services.
Interactions & Automations
Active-HDL Server Farm Course 11. All materials updated on: September 30, 2004 Outline 1.Introduction 2.Advantages 3.Requirements 4.Installation 5.Architecture.
Integrating and Extending Workflow 8 AA301 Carl Sykes Ed Heaney.
Toward a New ATM Software Safety Assessment Methodology dott. Francesca Matarese.
Web Server Administration Chapter 11 Monitoring and Analyzing the Web Environment.
Standards Certification Education & Training Publishing Conferences & Exhibits Automation Connections ISA EXPO 2006 Wed, 1:00 Oct 18.
Sergi Rubio Manrique “Archiving System at ALBA”. Tango Meeting. ALBA. October 16 th, MMVIII 1 Archiving ALBA Sergi Rubio Manrique.
This has been created by QA InfoTech. Choose QA InfoTech as your Automated testing partner. Visit for more information.
Human Computer Interaction Lecture 21 User Support
Project Management: Messages
CIM Modeling for E&U - (Short Version)
CARA 3.10 Major New Features
Hands-On Microsoft Windows Server 2008
Value Proposition.
Implementation of the INFOD System using AOP
Chapter 13 Quality Management
Course: Module: Lesson # & Name Instructional Material 1 of 32 Lesson Delivery Mode: Lesson Duration: Document Name: 1. Professional Diploma in ERP Systems.
Presentation transcript:

Backward Compatibility, Interoperability and Testing May 2010 Green Valley Ranch - Las Vegas, NV Ales Gornjec, Hermes SoftLab How to speed up the implementation of GSA standards into new products

Slide 2 Agenda  G2S and S2S versions and impacts  Surviving with multiple versions of protocol  Interoperability  Changes introduced through clarifications in G2S 2.0  Strategies in solving and avoiding interoperability issues  Compliance with protocol specifications

Slide 3 Protocol versions  G2S  First released in 2006  Since we have seen one major release and several updates /clarifications  S2S  First release in 2004  Several updates and new releases were published  Multiple versions already implemented and deployed  New (major) versions are released every second year  New functionalities (integrated extensions)  Rearranged classes  Clarifications in gray areas  Support for multiple versions needed in both EGMs and systems  Strategy needed to keep interoperability at reasonable level

Slide 4 Multiple version requirements  EGMs  Costly to implement support for multiple versions of G2S to work simultaneously  Multiple versions could be supported and treated as separate protocols  EGM must be configured to start with particular version  Host systems  Reasonable to expect not all EGMs on floor support the same G2S version  Support for multiple simultaneous versions is needed  Extensions add complexity for multiple version support  Not a clear way to detect what peer supports  G2S has optional support for namespace negotiation (from v2.0)

Slide 5 G2S Multi-version support strategy  EGMs  Must stick with protocol and extension specification as much as possible  Avoid shortcuts in implementation  Detect and process errors correctly  Hard to hot fix due to certification constraints  Host  Should be able to support different versions and  Different collections of extensions  Use fall-back strategy (ask for cabinet instead of device meters)  Be tolerant to inconsistencies (when processing EGM messages)  Be compliant to specifications (when composing own messages)  More possibilities to deploy hot fixes  Field effect

Slide 6 Near future situation

Slide 7 Interoperability problems  Possible impacts  No communication – few or none messages exchanged  Messages exchanged, but lots of errors reported  Some functionality not usable (some G2S classes not operable)  Consistency and quality of delivered data  Several steps needed to resolve the issue  Examine communication logs  Scan communication and analyse messages (more complicated with encrypted communication)  Analyze message flow  Deduce problem location and nature  Plan how to fix and resolve the issue

Slide 8 Interoperability testing and validation  Scope:  Usually starts with single entities on both sides (EGM & system)  The goal for both sides is to work with multiple products  Interoperability LABs needed to tests such combinations  Common test tools help in pre-system test phases  Possible directions:  Follow the leader (first adopter)  Establish community agreement for common interoperability testing  Strong push from one major operator

Slide 9 G2S to G2S 2.0  Some classes changed significantly like communications class  Additional request-response pairs  Additional functionality (namespace negotiation)  Additional (optional) attributes  Several clarifications on how some functionalities must be implemented  Some gray areas removed  Portions of protocol stack needed rework  Major products still based on 1.0.3

Slide 10 G2S 2.0  Some changes in specification urged to change the implementation of stack and way of integration  Examples:  Generation of event transactionIds changed (auto-generated in 1.0.3; derived from context in 2.0)  Implementation changed: eventLogEntry.transactionId must be set by the device that reports the event. EventLog will not create and assign transactionId any more.  Relation between G2S device states (lock, disable) and EGM global state changed.

Slide 11 Testing  GSA certification checks protocol implementation and integration on message level  To remove interoperability issues, more complex scenarios are needed:  Complex real life interaction  EGM state machine changes (service, menus, configuration)  Test automation is crucial for:  Keeping cost reasonable  Efficient regression testing  Performance testing (hosts testing)  Duration testing

Slide 12 HSL test automation based on WWF  G2S Host simulator  Allows test automation;  Test scripts are based on Windows Workflows Foundation (WWF)  Windows Workflows Foundation (WWF)  Provides displaying, editing and creating of workflows  Alternative text editors for scripts creation  Tracks the execution of workflow scripts

Slide 13 G2S Host simulator’s WWF script Workflow designer enables:  displaying,  editing and  creating of various test scenarios based on the Embedded Windows Workflow Foundation Script Editor

Slide 14 G2S Host simulator’s WWF script Workflow tracker allows test automation and tracks the execution of workflow scripts

Slide 15 G2S Workflow Activities  Send: sending messages to the EGM  Receive: receiving messages from the EGM and filtering for individual classes and devices  ReceiveEventReport: filtering messages to different events  Validation: validating messages received by the EGM. It can validate a single or multiple attributes  Transform:  various transformations of XML messages  setting sesssionIDs, commandIDs,  setting date and /or time,  etc. before the messages are sent

Slide 16

Slide 17 Step 1: Drag and drop appropriate activities on workflow designer Steps to create Workflow

Slide 18 Steps to create Workflow Step 2: Fill Property grid for each activity – bind property to another property or insert text (class, command, elements, attributes)

Slide 19 Testing time comparison phasemanual testingautomated testing designand documentation (1-2 h) automatic test creation and verification 8 h single cycle execution20 minutes1 min total execution time per 100 test cycles 2045 minutes625 minutes errors in execution (need to repeat the test) 501

Slide 20 Workflow execution tracking - example To execute the workflow:  Select desired workflow when communication between host and EGM is established. To track the worklfow  Tracking of the workflow can be done via Workflow tracker’s Tracking Channel (in text form) or Tracking Viewer (graphic form).

Slide 21 Interoperability: XML name prefix usage  Problem:  W3C XML specification allows strings for namespace prefixes to be chosen by the implementation.  W3C XML allows global namespace to be defined without explicit prefix  XML generators may use predefined or auto generated prefixes.  XML parser should handle any prefix that was used by sender.  Expecting prefixes to be used in particular way in receiver will cause interoperability problems.  Impact:  High: Protocol stacks are not interoperable.  Strategy/Solution:  Simple: By default use auto generated prefixes (optimized for size)  Medium: Possibility to configure prefixes (if not auto-generated)  Medium: Tweak your XML generator to emit prefixes in particular way

Slide 22 Example of valid XMLs  One system might send: <s2sAck xmlns:v1=" v1:dateTimeSent=" T12:21: :00" v1:fromSystem=" v1:messageId="78" v1:toSystem="  Another might expect: <v1:s2sAck v1:dateTimeSent=" T12:21: :00" v1:fromSystem=" v1:messageId="78" v1:toSystem="

Slide 23 Interoperability: response to setCabinetState  G2S specification allows EGM to respond immediately or when actual change of state occurs  Problem:  Such flexibility in EGM implementation can complicate host implementation significantly  Impact:  Medium: Inconsistency of cabinetState information at host side  Strategy/Solution:  Complex: Implement more complex state machine on host side and subscribe to events.

Slide 24 Interoperability: S2S Wildcard behaviour  S2S allows to use wildcards for selecting meters  In accountingMeter subscriptions  In event subscriptions  In on demand requests  Problem:  Host/server might not have enough information for S2S client requests  Impact:  High: inconsistent data may be delivered  Strategy/Solution:  Complex: Upgrade implementation to newer (latest) version  Medium: follow explanation from latest version on existing product  Host (edge) implementation and data collection strategy from EGM is adjusted to satisfy S2S needs

Slide 25 Questions?