1 A model-based validation framework for web services V. Pretre, F. Bouquet, C. Lang Laboratoire dinformatique de luniversité de Franche-Comté Besançon,

Slides:



Advertisements
Similar presentations
You have been given a mission and a code. Use the code to complete the mission and you will save the world from obliteration…
Advertisements

Final Project Instructor: Nguyen Anh Tu Students: Tran Tien Tai Tran Tien Tai Tran Ngoc Mai Tran Ngoc Mai Tu Kim Tuan Tu Kim Tuan Nguyen Ngoc Phuong Nguyen.
Info to Enterprise Migration Implementation Case Study: SBC Corporation Presented to the Crystal Decisions Regional Users Group for the Bay Area on October.
Zhongxing Telecom Pakistan (Pvt.) Ltd
Design Patterns.
Chapter 1: The Database Environment
1 Copyright © 2010, Elsevier Inc. All rights Reserved Fig 2.1 Chapter 2.
(2)(2) APNOMS 2003 Introduction Web-Service –A software application identified by a URI –Its public interfaces and bindings are defined and described.
SDI Business Phases and derived INSPIRE Horizontal Services Relates to INSPIRE DT Network Services, DT Sharing Relates to OGC GeoDRM WG, Price & Order.
Cultural Heritage in REGional NETworks REGNET T1.4: Development of the system specification.
HL7 V2 Implementation Guide Authoring Tool Proposal
Oct, 26 th, 2010 OGF 30, NSI-WG: Network Service Interface working group Web Services Overview Web Services for NSI protocol implementation
19 Copyright © 2005, Oracle. All rights reserved. Distributing Modular Applications: Developing Web Services.
18 Copyright © 2005, Oracle. All rights reserved. Distributing Modular Applications: Introduction to Web Services.
1 Copyright © 2005, Oracle. All rights reserved. Introducing the Java and Oracle Platforms.
Presented to: By: Date: Federal Aviation Administration Registry/Repository in a SOA Environment SOA Brown Bag #5 SWIM Team March 9, 2011.
Jeopardy Q 1 Q 6 Q 11 Q 16 Q 21 Q 2 Q 7 Q 12 Q 17 Q 22 Q 3 Q 8 Q 13
Jeopardy Q 1 Q 6 Q 11 Q 16 Q 21 Q 2 Q 7 Q 12 Q 17 Q 22 Q 3 Q 8 Q 13
Determine Eligibility Chapter 4. Determine Eligibility 4-2 Objectives Search for Customer on database Enter application signed date and eligibility determination.
0 - 0.
DIVIDING INTEGERS 1. IF THE SIGNS ARE THE SAME THE ANSWER IS POSITIVE 2. IF THE SIGNS ARE DIFFERENT THE ANSWER IS NEGATIVE.
MULT. INTEGERS 1. IF THE SIGNS ARE THE SAME THE ANSWER IS POSITIVE 2. IF THE SIGNS ARE DIFFERENT THE ANSWER IS NEGATIVE.
Addition Facts
Year 6 mental test 5 second questions
Relational data integrity
ZMQS ZMQS
Introduction Lesson 1 Microsoft Office 2010 and the Internet
Yammer Technical Solutions Overview
Configuration management
Software change management
Table 22.1 Stakeholder summary for the Odd Shoe Company
Managing Web server performance with AutoTune agents by Y. Diao, J. L. Hellerstein, S. Parekh, J. P. Bigu Jangwon Han Seongwon Park
1 The phone in the cloud Utilizing resources hosted anywhere Claes Nilsson.
Acceptance Testing vs. Unit Testing: A Developers Perspective Owen Rogers Rob Styles
How To Use Google Forms to Create A Test Quick Easy Self-Graded!! Instant Reports.
1 A Test Automation Tool For Java Applets Testing of Web Applications TATJA Program Demonstration Conclusions By Matthew Xuereb.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 31 Slide 1 Service-centric Software Engineering.
Chapter 19 – Service-oriented Architecture
© 2011 TIBCO Software Inc. All Rights Reserved. Confidential and Proprietary. Towards a Model-Based Characterization of Data and Services Integration Paul.
Campaign Overview Mailers Mailing Lists
ABC Technology Project
Copyright 2007, Information Builders. Slide 1 Introduction to Web Services Efrem Litwin Director, WebFOCUS Integration Products Information Builders.
Software Testing and Quality Assurance
HORIZONT TWS/WebAdmin TWS/WebAdmin for Distributed
Squares and Square Root WALK. Solve each problem REVIEW:
31242/32549 Advanced Internet Programming Advanced Java Programming
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software processes 2.
Lecture 8: Testing, Verification and Validation
Chapter 10 Software Testing
Executional Architecture
Addition 1’s to 20.
Requirements Analysis 1. 1 Introduction b501.ppt © Copyright De Montfort University 2000 All Rights Reserved INFO2005 Requirements Analysis Introduction.
25 seconds left…...
© Paradigm Publishing Inc Chapter 10 Information Systems.
Week 1.
Chapter 10: The Traditional Approach to Design
Systems Analysis and Design in a Changing World, Fifth Edition
We will resume in: 25 Minutes.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 31 Slide 1 Service-centric Software Engineering 1.
Web Service Ahmed Gamal Ahmed Nile University Bioinformatics Group
Benchmark Series Microsoft Excel 2013 Level 2
Modeling Main issues: What do we want to build How do we write this down.
University of Rostock 1 CADUI' June FUNDP Namur Automatic user interface generation from declarative models Egbert Schlungbaum & Thomas.
RSS RSS is a method that uses XML to distribute web content on one web site, to many other web sites. RSS allows fast browsing for news and updates.
Slide 1 Service-centric Software Engineering. Slide 2 Objectives To explain the notion of a reusable service, based on web service standards, that provides.
Introduction to Web Services Presented by Sarath Chandra Dorbala.
Software Architecture Patterns (3) Service Oriented & Web Oriented Architecture source: microsoft.
WEB SERVICES.
Distributed web based systems
Service-centric Software Engineering
Presentation transcript:

1 A model-based validation framework for web services V. Pretre, F. Bouquet, C. Lang Laboratoire dinformatique de luniversité de Franche-Comté Besançon, France STV07 - Paris, december 5, 2007

2 Table of contents Web services quality WS overview / Relations between WS / Quality of WS A theoritical solution Modeling / Testing / Certifying quality The validation framework Relations discovery / Pool generation / Tests execution … Conclusion & future work

3 Table of contents Web services quality A web services overview Relations between web services Quality of web services A theoritical solution The validation framework Conclusion & future work

4 Web services quality An overview of web services Principles: client-server application XML messages In practice: SOAP encapsulation http[s] Linked technologies: WSDL UDDI … customer UDDI declaration searchXML messages Internet Web service

5 Web services quality Relations between operations Compositions A web service operation acts as a client of another one Several kind of compositions: local/distributed synchronous/asynchronous static/dynamic travel agency customer bankhotelairline company

6 Web services quality Relations between operations Temporal dependencies An operation can be called only if another one has been called previously Due to shared datas: server side (database …) client side Two types: each time at least once database insertionreading Customer resultsreuse

7 Web services quality Quality of web services Many definitions: quality of service (accessibility, response time …) confidentiality of datas quality of results Sources of the problem: quality of development hosting network relations between operations

8 Table of contents Web services quality A theoritical solution Modeling web services behaviour Test generation and execution Certification of quality The validation framework Conclusion & future work

9 A theoritical solution Modeling WS - data used & interface Done in the class diagram Two types of classes: datas used by web services web services interface Methods used in tests have to be accessible for tester operations

10 A theoritical solution Modeling WS - behaviour of operations Written in OCL Defensive modeling: no pre-conditions errors raised in post- conditions allows security testing All behaviours must be modeled Pre-condition: self.mission.status = waitingValidation and self.mission.employee != self.user Post-condition: if answer then self.mission.status = validated else self.mission.status = refused endif ifthen ifthen result = ok else result = autoValidation endif else result = unvalidableMission endif

11 A theoritical solution Modeling WS - temporal evolution State-chart diagram Visual representation of temporal evolution Complets OCL userLoggedIn wsDeployed validateOk errorType1errorType6 errorType2errorType5 errorType3errorType4 errorType7 granted

12 A theoritical solution Modeling WS - initial state Instance diagram At least one instance for each class Data chosen to: help test generation cover all possible cases be representative Real data needed Mission::mission1 status = waitingValidation Mission::mission2 status = empty Mission::mission3 status = empty Employee::fakeEmployee level=0 Employee::blueLeader level=3 Group::blue Employee::blueMember1 level=4 ValidationRight::blue

13 A theoritical solution Test generation and execution Tests generated from the model Tests executed in normal conditions of use Who executes tests ? customers: many test execution, quality ensured vendor: only one test execution, customers may not trust in test results third party: tests results easily shared with customers, but their trust must be obtained

14 A theoritical solution Certification of quality Two solutions known: only web services that have passed tests are published The audition framework for testing web services interoperability (Bertolino, Polini ) a mark is given according to tests results Quality attribute for a component quality model (Alvaro, Santana de Almeida, Romero) We chose the second solution: one mark by operation represents the percentage of passed tests

15 Table of contents Web services quality A theoritical solution The validation framework Overview Discovering dependencies from model Computing pools of dependencies Tests execution Certification to customers Conclusion & future work

16 The validation framework Overview 2 - declaration 3 - treatments of model 4 - test generation 5 - creation of test agents 6 - execution 7 - mark computation 8 - WS search 1 - modeling 9 - results & marks Agent creator

17 The validation framework Discovering dependencies Needed for pools computing Composition: found in OCL code only synchronous Temporal dependencies: can not be automatically discovered no common patterns in the state-chart creation of sequence diagram to describe them serviceStarted userLoggedIn userRegistered register() login() opened open()save() create() Client Self 1: register 2: login

18 The validation framework Pools of dependencies One pool by operation all operations on which it depends Used to: compute marks planify test execution Produced in three steps creation of the dependency graph computation of transitive enclosure each neighbour of an operation belongs to its pool opentagcategorizepublish save prePublish create login registerping opentagcategorizepublish save prePublish create login registerping

19 The validation framework Tests execution Tests splitted into waves: 1. operations without dependencies 2. operations depending on previously tested operations 3. …. Possible because dependency graph is a DAG Executed by agents dispatched on the Internet opentagcategorizepublish save prePublish create login registerping opentagcategorizepublish save prePublish create login registerping

20 The validation framework Mark computing A temporary mark obtained from tests Final mark based on pools of dependencies (lowest mark of the pool) shows problems not raised by tests quick update of mark with new versions opentagcategorizepublish save prePublish create login registerping opentagcategorizepublish save prePublish create login registerping

21 Table of contents Web services quality A theoritical solution The validation framework Conclusion & future work Conclusion Known issues

22 Conclusion The theoritical approach: based on an UML modeling solution (wide spread language) unique model for behaviour, compositions & temporal dependencies The framework : Concrete application of the theoritical approach easy to use for vendors and customers: based on a norm (UDDI) marks easy to understand no modification for the web services or deploiment framework any kind of web service can be found on the UDDI server

23 Known issues & future work The framework is not completly implemented: missing links between UDDI server and test generator tool for model merging in case of distributed composition The mark may not be fully representative 3 tests and one fail => 66% 100 tests and 34 fails => 66% All web services can not be tested and certified