1 / 15

Validation of Model Transformations - First Experiences using a White Box Approach

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. Outline of the talk. Model Transformations for Business Process Models

havyn
Download Presentation

Validation of Model Transformations - First Experiences using a White Box Approach

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Validation of Model Transformations- First Experiences using a White Box Approach Jochen Küster1, Mohamed Abd-El-Razik2 1IBM Research, 2IBM Cairo Technology Development Center Zurich Research Laboratory - BIT http://bpia.zurich.ibm.com

  2. Outline of the talk • Model Transformations for Business Process Models • Testing Techniques for Model Transformations • Conclusions Zurich Research Laboratory - BIT http://bpia.zurich.ibm.com

  3. Business Requirements Background: Business-Driven Development business process monitoring, change of strategy Business Model Model refinement Business Process Model Model transformation Technology BPEL, WSDL, J2EE, WebSphere IT Solution Business-driven development comprises: • Modeling of business processes • Transformation and refinement of business process models • Mapping of processes to Service-oriented Architecture Zurich Research Laboratory - BIT http://bpia.zurich.ibm.com

  4. 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 Zurich Research Laboratory - BIT http://bpia.zurich.ibm.com

  5. Conceptual Rules for Transformation Design A B1 B1 Abstract node type: A A • 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 Abstract pinset: .. .. Abstract edge: Bn Bn Zurich Research Laboratory - BIT http://bpia.zurich.ibm.com

  6. Outline of the talk • Model Transformations for Business Process Models • Testing Techniques for Model Transformations • Conclusions Zurich Research Laboratory - BIT http://bpia.zurich.ibm.com

  7. 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 Zurich Research Laboratory - BIT http://bpia.zurich.ibm.com

  8. 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 Zurich Research Laboratory - BIT http://bpia.zurich.ibm.com

  9. B1 B1 A A Conceptual rule: .. .. Bn Bn X={StartNode, Fork, Join, Decision, Merge, Task, Subprocess, LoopNode, Broadcast, AcceptSignal} Y X Template(X,Y,Z): Y={FinalNode, Fork, Join, Decision, Merge, Task, Subprocess, LoopNode, Broadcast, AcceptSignal, Map} Z Z={FinalNode, Fork, Join, Decision, Merge, Task, Subprocess, LoopNode, Broadcast, AcceptSignal, Map} 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 Abstract pins and pin sets Concrete elements Zurich Research Laboratory - BIT http://bpia.zurich.ibm.com

  10. Meta model coverage testing (2) • Template can be used to generate test cases automatically • Test cases can be used for automated testing 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: Zurich Research Laboratory - BIT http://bpia.zurich.ibm.com

  11. 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: Zurich Research Laboratory - BIT http://bpia.zurich.ibm.com

  12. 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 Zurich Research Laboratory - BIT http://bpia.zurich.ibm.com

  13. B1 A .. Bn C1 A2 .. Cn Rule Pair Testing (2) Approach: • test cases obtained by constructing models by overlapping the left sides of two rules • throw away incorrect models Rule r1 Rule r3 Possible test case obtained by overlapping: A2 = Fork, B1 = Decision Zurich Research Laboratory - BIT http://bpia.zurich.ibm.com

  14. 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 Zurich Research Laboratory - BIT http://bpia.zurich.ibm.com

  15. 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. Model Transform Manage Integrate Monitor Business Integration Technologies @ Zurich Research 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 Zurich Research Laboratory - BIT http://bpia.zurich.ibm.com

More Related