Decentralized Model-Based Testing of Distributed Systems

Slides:



Advertisements
Similar presentations
Presented by: Thabet Kacem Spring Outline Contributions Introduction Proposed Approach Related Work Reconception of ADLs XTEAM Tool Chain Discussion.
Advertisements

Dagstuhl How can we avoid ….. (closing panel EVENT Conference, 2012) “Currently, software designers have no guidelines on what should be implemented.
©1998, 1999, 2000 Rational Software - All rights reserved Session VM08 Structuring Your Rational Rose Model Robert Bretall Rational Software.
Modeling State-Dependent Objects Using Colored Petri Nets
Introduction to Software Testing
Types and Techniques of Software Testing
Yaxiong Lin TestOptimalTestOptimal, LLC TestOptimal Model-based Testing Effective Test Case Design And Test Automation Twin Cities Quality Assurance Association.
- Chaitanya Krishna Pappala Enterprise Architect- a tool for Business process modelling.
Testing RAVEN Helmut Neukirchen Faculty of Industrial Engineering, Mechanical Engineering and Computer Science University of Iceland, Reykjavík, Iceland.
1 Conceptual Modeling of User Interfaces to Workflow Information Systems Conceptual Modeling of User Interfaces to Workflow Information Systems By: Josefina.
TESTING.
Copyright © Siemens AG All rights reserved. Essential Criteria on MBT to Ensure Quality of Software in Industry PVR Murthy Andreas Ulrich Siemens.
Instructor: Peter Clarke
Object Management Group (OMG) Specifies open standards for every aspect of distributed computing Multiplatform Model Driven Architecture (MDA)
CDL-Flex Empirical Research
Software Engineering Research paper presentation Ali Ahmad Formal Approaches to Software Testing Hierarchal GUI Test Case Generation Using Automated Planning.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 22 Slide 1 Software Verification, Validation and Testing.
Software Construction Lecture 18 Software Testing.
Testing Railway Interlockings with N. Ioustinova, J. van de Pol, N. Goga Centrum voor Wiskunde en Informatica Amsterdam, The Netherlands TT-Medal Review.
Toulouse, September 2003 Page 1 JOURNEE ALTARICA Airbus ESACS  ISAAC.
Architecture View Models A model is a complete, simplified description of a system from a particular perspective or viewpoint. There is no single view.
Grigore Rosu Founder, President and CEO Professor of Computer Science, University of Illinois
UML - Development Process 1 Software Development Process Using UML.
4+1 View Model of Software Architecture
Requirement Analysis SOFTWARE ENGINEERING. What are Requirements? Expression of desired behavior Deals with objects or entities, the states they can be.
1 Architectural Blueprints—The “4+1” View Model of Software Architecture (
421 Review Questions 1.Does software engineering add documentation that slows down the project? 2.Is there one software process that is better than the.
1 Testing Implementations Of Access Control Systems (New Proposal) Ammar Masood: Graduate Student Arif Ghafoor (ECE) and Aditya Mathur (CS) Purdue University,
Aspect-oriented Code Generation Approaches Abid Mehmood & Dayang N. A. Jawawi Department of Software Engineering Faculty of Computer Science and Information.
1 Process activities. 2 Software specification Software design and implementation Software validation Software evolution.
Linux Standard Base Основной современный стандарт Linux, стандарт ISO/IEC с 2005 года Определяет состав и поведение основных системных библиотек.
Building Enterprise Applications Using Visual Studio®
Introduction to UML.
CSE 219 Final exam review.
An Overview of Requirements Engineering Tools and Methodologies*
TEST AUTOMATION IN BDD WAY
TQS - Teste e Qualidade de Software (Software Testing and Quality) Test Case Design – Model Based Testing João Pascoal.
Generating Automated Tests from Behavior Models
Requirements Validation – II
421 Review Questions Does software engineering add documentation that slows down the project? Is there one software process that is better than the others.
Topic for Presentaion-2
Chapter 8 – Software Testing
Week 10: Object Modeling (1)Use Case Model
runtime verification Brief Overview Grigore Rosu
Advantages OF BDD Testing
Model-Driven Analysis Frameworks for Embedded Systems
Enterprise Service Bus (ESB) (Chapter 9)
Introduction to Software Testing
Component-Based Software Engineering
Model Checking for an Executable Subset of UML
Object-Oriented and Classical Software Engineering Fifth Edition, WCB/McGraw-Hill, 2002 Stephen R. Schach
Software Test Automation and Tools
Chapter 10 – Software Testing
Jochen Seemann Program Manager Enterprise Tools Microsoft Corporation
4+1 View Model of Software Architecture
Software Engineering System Modeling Chapter 5 (Part 1) Dr.Doaa Sami
System Construction and Implementation
Automated Analysis and Code Generation for Domain-Specific Models
Scriptless Test Automation through Graphical User Interface
Diagnosis of V2X communication via evaluation modules and textual rule sets Presented by Tim Ruß © All rights reserved.
PPT4: Requirement analysis
Software system modeling
4+1 View Model of Software Architecture
Design.
Software Development Process Using UML Recap
Rich Model Toolkit – An Infrastructure for Reliable Computer Systems
From Use Cases to Implementation
UML Design for an Automated Registration System
GGF10 Workflow Workshop Summary
On to Object Design c. 14.
Presentation transcript:

Decentralized Model-Based Testing of Distributed Systems Presented by João Pascoal Faria and Bruno Lima © All rights reserved

Advanced Automated Testing Speaker Associate Professor for Software Engineering at FEUP & researcher at INESC TEC. 15+ years of research experience in test automation. President of CS/03 – Sectorial Commission for Quality in ICT, of the Portuguese Quality Institute (IPQ) J. Pascoal Faria FEUP / INESC TEC User Conference on Advanced Automated Testing © All rights reserved

Advanced Automated Testing Outline Previous Work UML Checker Industry Survey Current Work Testing Distributed Systems Observability Analysis & Enforcement Controllability Analysis & Enforcement Looking for More Case Studies User Conference on Advanced Automated Testing © All rights reserved

Previous Work © All rights reserved

Previous Work: UML Checker[1] (1/2) What: Toolset for automatically testing OO implementations against behavior specifications given by test-ready UML sequence diagrams (SDs). How: A plug-in for the Enterprise Architect modeling tool that, with a single click, generates extended JUnit test cases from the SDs in the model, executes them on the Java implementation under test, and presents back visually in the model test results and coverage info. A runtime test library based on AspectJ, that provides significant extensions to JUnit to handle internal interaction checking (method calls), test stubs, and user interaction testing. Why: Improve the reliability of OO implementations and the consistency with design specifications. https://blogs.fe.up.pt/sdbt User Conference on Advanced Automated Testing © All rights reserved

Previous Work: UML Checker[1] (2/2) Not covered Conformance error User Conference on Advanced Automated Testing © All rights reserved

Previous Work: Industry Survey[2] (1/2) 147 valid responses by professionals attending UCAAT 2015 and Testing Portugal 2015 User Conference on Advanced Automated Testing © All rights reserved

Previous Work: Industry Survey[2] (2/2) User Conference on Advanced Automated Testing © All rights reserved

Current Work © All rights reserved

Current Work: Testing Distributed Systems Testing nowadays distributed, heterogeneous and time- constrained systems, such as IoT systems, is particularly important and challenging. Some of the challenges are: the difficulty to test the system as a whole due to the number and diversity of individual components; the difficulty to coordinate and synchronize the test participants and interactions, due to the distributed nature of the system; the difficulty to test the components individually, because of the dependencies on other components. User Conference on Advanced Automated Testing © All rights reserved

Current Work: Distributed Scenario-based Testing Approach [3] 1 Specification of test scenarios using an industry standard notation (e.g. UML SDs). Visual Modeling Environment Visual Behavioral Model (Test Scenarios (UML SD)) Pre-processing of test scenarios, to ensure readiness for decentralized testing. 2 Local Observability & Controllability Analysis & Enforcement Automatic translation of test scenarios into executable tests. Test results Test ready model 3 Decentralized Test Input Generation and Conformance Checking Engine Central Tester Distributed test execution, with local testers running close to the distributed CUTs, coordinated by a central tester, to increase test effectiveness and efficiency. Better fault detection and localization Minimal communication overhead Local Tester 1 Local Tester i Local Tester i 4 1 n i Automatic mapping of test results back onto the visual model. 5 Distributed system Under Test User Conference on Advanced Automated Testing © All rights reserved

Current Work: Observability Analysis & Enforcement [4,5] Non-locally observable User Conference on Advanced Automated Testing © All rights reserved

Non-locally observable Advanced Automated Testing Current Work: Observability Analysis & Enforcement [4,5] Non-locally observable Locally observable User Conference on Advanced Automated Testing © All rights reserved

Current Work: Observability Analysis & Enforcement [4,5] Non-locally observable Locally observable acknowledgment message User Conference on Advanced Automated Testing © All rights reserved

Current Work: Controllability Analysis & Enforcement [4,5] Non-locally controllable L2 a L1 b L3 alt c User Conference on Advanced Automated Testing © All rights reserved

Current Work: Controllability Analysis & Enforcement [4,5] Non-locally controllable L2 a L1 b L3 alt c non-local choice race User Conference on Advanced Automated Testing © All rights reserved

Current Work: Controllability Analysis & Enforcement [4,5] Non-locally controllable Locally controllable L2 a L1 b L3 alt c L2 a L1 b L3 alt c non-local choice race User Conference on Advanced Automated Testing © All rights reserved

Current Work: Controllability Analysis & Enforcement [4,5] Non-locally controllable Locally controllable L2 a L1 b L3 alt c L2 a L1 b L3 alt c non-local choice race coordination message User Conference on Advanced Automated Testing © All rights reserved

Current Work: Controllability Analysis & Enforcement [4,5] Non-locally controllable confirm? {..1} Fall Detection APP Care Receiver alt e1 e4 e2 e3 e5 e6 e7 e8 fall_signal yes {..1} notify_fall AAL4ALL Portal no {..1} e9 e10 e11 e12 notify_possible_fall {..10} User Conference on Advanced Automated Testing © All rights reserved

Current Work: Controllability Analysis & Enforcement [4,5] Non-locally controllable Locally controllable confirm? {..1} Fall Detection APP Care Receiver alt e1 e4 e2 e3 e5 e6 e7 e8 fall_signal yes {..1} notify_fall AAL4ALL Portal no {..1} e9 e10 e11 e12 notify_possible_fall {..10} confirm? {..1} Fall Detection APP Care Receiver e1 e4 e2 e3 e5 e6 e7 e8 fall_signal yes {..1} notify_fall AAL4ALL Portal no {..1} e9 e10 e11 e12 notify_possible_fall {..10} alt User Conference on Advanced Automated Testing © All rights reserved

Current Work: Controllability Analysis & Enforcement [4,5] Non-locally controllable Locally controllable confirm? {..1} Fall Detection APP Care Receiver alt e1 e4 e2 e3 e5 e6 e7 e8 fall_signal yes {..1} notify_fall AAL4ALL Portal no {..1} e9 e10 e11 e12 notify_possible_fall {..10} confirm? {..1} Fall Detection APP Care Receiver e1 e4 e2 e3 e5 e6 e7 e8 fall_signal yes {..1} notify_fall AAL4ALL Portal no {..1} e9 e10 e11 e12 notify_possible_fall {..10} {13..} alt User Conference on Advanced Automated Testing © All rights reserved

Current Work: Looking for more Case Studies What we need: Real world case studies of distributed, heterogeneous and time-constrained IoT systems that require testing. Optionally, already defined test scenarios in natural language or diagrams (otherwise, they will be collaboratively created). What you’ll get: Short term: Formalized test scenarios, already verified and improved regarding their feasibility and adequacy for decentralized test execution (pre-processing stage). Mid/long term: Infrastructure for automatic, decentralized, test execution of those scenarios. User Conference on Advanced Automated Testing © All rights reserved

Advanced Automated Testing References [1] Faria, João Pascoal, and Ana CR Paiva. "A toolset for conformance testing against UML sequence diagrams based on event-driven colored Petri nets." International Journal on Software Tools for Technology Transfer 18, no. 3 (2016): 285-304. [2] Lima, Bruno, and João Pascoal Faria. "A Survey on Testing Distributed and Heterogeneous Systems: The State of the Practice." In International Conference on Software Technologies, pp. 88-107. Springer, Cham, 2016. [3] Lima, Bruno, and João Pascoal Faria. "Automated testing of distributed and heterogeneous systems based on UML sequence diagrams." In International Conference on Software Technologies, pp. 380-396. Springer, Cham, 2015. [4] Lima, Bruno Carvalhido, and J. Faria. "Conformance Checking in Integration Testing of Time- constrained Distributed Systems based on UML Sequence Diagrams." (2017). [5] Lima, Bruno Miguel Carvalhido, and João Carlos Pascoal Faria. "Towards decentralized conformance checking in model-based testing of distributed systems." In 2017 IEEE International Conference on Software Testing, Verification and Validation Workshops (ICSTW), pp. 356-365. IEEE, 2017. User Conference on Advanced Automated Testing © All rights reserved

Advanced Automated Testing Future Events QUATIC 2019 ICST 2020 12th International Conference on the Quality of Information and Communications Technology Ciudad Real, Spain, September 10-13, 2019 13th IEEE International Conference on Software Testing, Varification and Validation Porto, Portugal, March 23-27, 2020 User Conference on Advanced Automated Testing © All rights reserved

Questions? © All rights reserved