Business Integration Technologies © 2006 IBM Corporation Zurich Research Laboratory - BIT Validation.

Slides:



Advertisements
Similar presentations
Profiles Construction Eclipse ECESIS Project Construction of Complex UML Profiles UPM ETSI Telecomunicación Ciudad Universitaria s/n Madrid 28040,
Advertisements

PROGRESS User Committee Meeting, December 11, On the Fundamental Design Gap in Complex Systems Mark Verhappen Piet van der Putten.
Introducing Formal Methods, Module 1, Version 1.1, Oct., Formal Specification and Analytical Verification L 5.
Lecture # 2 : Process Models
Presented by: Thabet Kacem Spring Outline Contributions Introduction Proposed Approach Related Work Reconception of ADLs XTEAM Tool Chain Discussion.
Practical Business Modeling in the Unified Process Tom Morgan Software Architect, Fidelity National Information Services
This research is supported by NSF CAREER award CCF A Demonstration-based Approach to Support Live Transformations in a Model Editor Yu SunUniversity.
© Janice Regan Problem-Solving Process 1. State the Problem (Problem Specification) 2. Analyze the problem: outline solution requirements and design.
Database Planning, Design, and Administration Transparencies
Automated Analysis and Code Generation for Domain-Specific Models George Edwards Center for Systems and Software Engineering University of Southern California.
UML CASE Tool. ABSTRACT Domain analysis enables identifying families of applications and capturing their terminology in order to assist and guide system.
Functional Coverage Driven Test Generation for Validation of Pipelined Processors P. Mishra and N. Dutt Proceedings of the Design, Automation and Test.
Parameterizing Random Test Data According to Equivalence Classes Chris Murphy, Gail Kaiser, Marta Arias Columbia University.
End-to-End Design of Embedded Real-Time Systems Kang G. Shin Real-Time Computing Laboratory EECS Department The University of Michigan Ann Arbor, MI
Lecture Nine Database Planning, Design, and Administration
Romaric GUILLERM Hamid DEMMOU LAAS-CNRS Nabil SADOU SUPELEC/IETR ESM'2009, October 26-28, 2009, Holiday Inn Leicester, Leicester, United Kingdom.
Database System Development Lifecycle © Pearson Education Limited 1995, 2005.
Overview of the Database Development Process
1 Yolanda Gil Information Sciences InstituteJanuary 10, 2010 Requirements for caBIG Infrastructure to Support Semantic Workflows Yolanda.
Faculty of Informatics and Information Technologies Slovak University of Technology Peter Kajsa and Ľubomír Majtás Design.
Class Specification Implementation Graph By: Njume Njinimbam Chi-Chang Sun.
Li Yi, APSEC ‘12 Constructing Feature Models Us­­ing a Cross-Join Merging Operator.
Design Science Method By Temtim Assefa.
IST 210 Database Design Process IST 210 Todd S. Bacastow January 2005.
Mathematical Modeling and Formal Specification Languages CIS 376 Bruce R. Maxim UM-Dearborn.
Chapter 2: Software Process Omar Meqdadi SE 2730 Lecture 2 Department of Computer Science and Software Engineering University of Wisconsin-Platteville.
1 Minggu 9, Pertemuan 17 Database Planning, Design, and Administration Matakuliah: T0206-Sistem Basisdata Tahun: 2005 Versi: 1.0/0.0.
What is a Business Analyst? A Business Analyst is someone who works as a liaison among stakeholders in order to elicit, analyze, communicate and validate.
Testing Grammars For Top Down Parsers By Asma M Paracha, Frantisek F. Franek Dept. of Computing & Software McMaster University Hamilton, Ont.
Validated Model Transformation Tihamér Levendovszky Budapest University of Technology and Economics Department of Automation and Applied Informatics Applied.
Model-Driven Analysis Frameworks for Embedded Systems George Edwards USC Center for Systems and Software Engineering
University of Southern California Center for Systems and Software Engineering Model-Based Software Engineering Supannika Koolmanojwong Spring 2013.
Database Planning, Design, and Administration Transparencies
Verification and Validation in the Context of Domain-Specific Modelling Janne Merilinna.
1 Introduction to Software Engineering Lecture 1.
Review of Software Process Models Review Class 1 Software Process Models CEN 4021 Class 2 – 01/12.
Model-Driven Engineering of Behaviors in User Interfaces Efrem Mbaki & Jean Vanderdonckt Université catholique de Louvain (UCL) Louvain School of Management.
Object-Oriented Software Engineering using Java, Patterns &UML. Presented by: E.S. Mbokane Department of System Development Faculty of ICT Tshwane University.
FDT Foil no 1 On Methodology from Domain to System Descriptions by Rolv Bræk NTNU Workshop on Philosophy and Applicablitiy of Formal Languages Geneve 15.
Weaving a Debugging Aspect into Domain-Specific Language Grammars SAC ’05 PSC Track Santa Fe, New Mexico USA March 17, 2005 Hui Wu, Jeff Gray, Marjan Mernik,
® IBM Software Group © 2004 IBM Corporation Developing an SOA with RUP and UML 2.0 Giles Davies.
CPSC 873 John D. McGregor Session 9 Testing Vocabulary.
WERST – Methodology Group
Integration testing Integrate two or more module.i.e. communicate between the modules. Follow a white box testing (Testing the code)
Software Engineering Issues Software Engineering Concepts System Specifications Procedural Design Object-Oriented Design System Testing.
CPSC 871 John D. McGregor Module 8 Session 1 Testing.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 4 Slide 1 Software Processes.
Software Quality Assurance and Testing Fazal Rehman Shamil.
Concepts and Realization of a Diagram Editor Generator Based on Hypergraph Transformation Author: Mark Minas Presenter: Song Gu.
Formal Verification. Background Information Formal verification methods based on theorem proving techniques and model­checking –To prove the absence of.
CS223: Software Engineering
® IBM Software Group © 2009 IBM Corporation Essentials of Modeling with IBM Rational Software Architect V7.5 Module 13: Traceability with WebSphere Business.
Yu, et al.’s “A Model-Driven Development Framework for Enterprise Web Services” In proceedings of the 10 th IEEE Intl Enterprise Distributed Object Computing.
Testing and Evaluating Software Solutions Introduction.
R-customizers Goal: define relation between graph and its customizers, study domains of adaptive programs, merging of interface class graphs.
Abstract BPEL Candidate Use Case: Modeling for Business Understanding Wednesday, May 23, 2004 Disclaimer: These are the views of Phil Rossomando and not.
Semantic Interoperability in GIS N. L. Sarda Suman Somavarapu.
Design Pattern Support based on principles of model driven development Zihao Zhao.
Mutation Testing Laraib Zahid & Mariam Arshad. What is Mutation Testing?  Fault-based Testing: directed towards “typical” faults that could occur in.
CPSC 372 John D. McGregor Module 8 Session 1 Testing.
John D. McGregor Session 9 Testing Vocabulary
Web Ontology Language for Service (OWL-S)
John D. McGregor Session 9 Testing Vocabulary
UNIFIED PROCESS.
Software Design Methodology
Krishnakumar Balasubramanian
John D. McGregor Session 9 Testing Vocabulary
Luís Ferreira Pires Dick Quartel Remco Dijkman Marten van Sinderen
Multiple Aspect Modeling of the Synchronous Language Signal
Software Architecture & Design
Presentation transcript:

Business Integration Technologies © 2006 IBM Corporation Zurich Research Laboratory - BIT Validation of Model Transformations - First Experiences using a White Box Approach Jochen Küster 1, Mohamed Abd-El-Razik 2 1 IBM Research, 2 IBM Cairo Technology Development Center

Validation of Model Transformations © 2006 IBM Corporation 2 Zurich Research Laboratory - BIT Outline of the talk  Model Transformations for Business Process Models  Testing Techniques for Model Transformations  Conclusions

Validation of Model Transformations © 2006 IBM Corporation 3 Zurich Research Laboratory - BIT IT Solution Business Process Model Business Requirements Business Model Technology BPEL, WSDL, J2EE, WebSphere Model refinement Model transformation business process monitoring, change of strategy Business-driven development comprises:  Modeling of business processes  Transformation and refinement of business process models  Mapping of processes to Service-oriented Architecture Background: Business-Driven Development

Validation of Model Transformations © 2006 IBM Corporation 4 Zurich Research Laboratory - BIT Model Transformations on Business Process Models  Cycle Removal Transformation  Transformations for Abstraction and Refinement  Transformations into a Normal Form (Control Action To Pinset) Control Action To Pinset transformation

Validation of Model Transformations © 2006 IBM Corporation 5 Zurich Research Laboratory - BIT Conceptual Rules for Transformation Design A B1B1 BnBn A B1B1 BnBn..  Conceptual rules capture the main concepts of the transformation  Conceptual rules are refined into concrete rules by: –Replacing abstract node types with concrete ones –Replacing abstract edges with possible instantiations –Replacing abstract pin sets with possible instantiations  large meta model and elaborate OCL constraints  model transformation is implemented in Java using a transformation framework A Abstract node type: Abstract pinset: Abstract edge:

Validation of Model Transformations © 2006 IBM Corporation 6 Zurich Research Laboratory - BIT Outline of the talk  Model Transformations for Business Process Models  Testing Techniques for Model Transformations  Conclusions

Validation of Model Transformations © 2006 IBM Corporation 7 Zurich Research Laboratory - BIT Motivation for Testing Model Transformations Statement: “Model Transformations are software too.”  need to be properly tested in order to ensure their quality  have specific characteristics that require special test case generation approaches Testing challenges:  Generation of test cases from model transformation specifications  Generation of test oracles for determining expected result of test

Validation of Model Transformations © 2006 IBM Corporation 8 Zurich Research Laboratory - BIT Fault Model for Model Transformations Fault Model: what errors are we looking for?  Meta model coverage: Some input models are not transformed because conceptual rule has not been refined completely  Syntactically incorrect models: Output model is not syntactically correct (e.g. OCL constraint violated)  Semantically incorrect models: Output model is not semantically correct (e.g. Fork has been replaced by an implicit decision)  Confluence errors: Transformation produces different outputs on the same (or equivalent) input model  Correctness of transformation semantics: Transformation does not preserve a desired property

Validation of Model Transformations © 2006 IBM Corporation 9 Zurich Research Laboratory - BIT Meta model coverage testing (1) Goal: Ensure meta model coverage of a conceptual rule Approach: Convert conceptual rule into a template  Make selected abstract elements concrete  Parameterize remaining abstract elements by meta classes Conceptual rule: A B1B1 BnBn A B1B1 BnBn.. Y Z X Template(X,Y,Z): X={StartNode, Fork, Join, Decision, Merge, Task, Subprocess, LoopNode, Broadcast, AcceptSignal} Y={FinalNode, Fork, Join, Decision, Merge, Task, Subprocess, LoopNode, Broadcast, AcceptSignal, Map} Z={FinalNode, Fork, Join, Decision, Merge, Task, Subprocess, LoopNode, Broadcast, AcceptSignal, Map} Abstract pins and pin sets Concrete elements

Validation of Model Transformations © 2006 IBM Corporation 10 Zurich Research Laboratory - BIT Meta model coverage testing (2) Benefits:  can be used for ensuring meta model coverage of implemented rules  can be used for finding selected syntactic and semantic errors Drawbacks:  properties that are not restricted to one rule cannot be validated Test Cases:  Template can be used to generate test cases automatically  Test cases can be used for automated testing

Validation of Model Transformations © 2006 IBM Corporation 11 Zurich Research Laboratory - BIT Constraint-based testing Goal: Ensure that the model transformation does not violate constraints (e.g. OCL constraints) Approach:  Identify model elements changed by the transformation (automatable)  Identify constraints that may be violated (automatable)  Construct a test case for each constraint (manually) Constraint: A Loopnode has one regular output pin set Test case:

Validation of Model Transformations © 2006 IBM Corporation 12 Zurich Research Laboratory - BIT Rule Pair Testing (1) Goal: Find confluence errors by testing Background:  confluence requires that application of rules on the same model always yields the same result  rules can be analysed and verified whether they are confluent or not (see J. Küster, Definition and Validation of Model Transformations, SOSYM 5(3), September 2006 )  absence of complete specification of rules: Testing for confluence using suitable test cases

Validation of Model Transformations © 2006 IBM Corporation 13 Zurich Research Laboratory - BIT Rule Pair Testing (2) Approach:  test cases obtained by constructing models by overlapping the left sides of two rules  throw away incorrect models A B1B1 BnBn.. A2A2 C1C1 CnCn Rule r 3 Rule r 1 Possible test case obtained by overlapping: A 2 = Fork, B 1 = Decision

Validation of Model Transformations © 2006 IBM Corporation 14 Zurich Research Laboratory - BIT Conclusions and Future Work  Model transformations need appropriate testing techniques in order to ensure their quality  Testing techniques need to take into account fault model and implementation environment  Meta model coverage, constraint-based and rule pairs for test cases proposed Future work:  Automatic generation of test cases for constraints  Tool support

Validation of Model Transformations © 2006 IBM Corporation 15 Zurich Research Laboratory - BIT Business Integration Zurich Research  The Business Integration Technologies group is part of a world-wide research initiative on Model-Driven Business Transformation.  BIT focuses on technologies for business-driven development. Integrate Transform Manage Monitor Model Process modeling methodologies Reference model customization Process model quality assurance Flow-driven and state-driven modeling Process Model Refinement Top-down and Bottom-up transformations - Analysis to Design model transformations - Capturing of IT requirements & architectural mismatches