SlideShare a Scribd company logo
1 of 22
A Business Protocol Unit Testing
Framework for Web Service Composition
Jian Yu, Jun Han, Steven Gunarso, Steve Versteeg
Faculty of ICT
Swinburne University of Technology
Melbourne, Victoria, Australia
 Background and research issues
 Contribution overview
 The PROPOLS protocol specification language
 The unit testing approach and the framework
 Conclusion
Agenda
2 - CAISE 2013 @ Valencia, Spain
Web of Pages
- text, manually created links
- extensive navigation
2007
1997
Web of Resources
- dynamically generated pages
- data, services, mashups
- web query interfaces
Web of People
- social networks, user-created casual
content
- Facebook, Renren, Linkedin....
Web of Things
2009 - physical objects connect and
interact over the Internet
- RFID, 2D barcode, sensors, SOA
- Smart cities/homes, object
tracking/recalling, environment
monitoring….
The Evolution of the Web
3 - CAISE 2013 @ Valencia, Spain
Web services
4 - CAISE 2013 @ Valencia, Spain
Service Service
WSDL/SOAP/HTTP
Service
BPEL process
(encapsulated as a
service)
 Unit: the smallest testable parts of a software system
 A unit needs to have clearly defined interface
 Testing is conducted around the interface
Unit testing
5 - CAISE 2013 @ Valencia, Spain
http://sourcemaking.com/refactoring/extract-interface
Business protocol as part of the interface
6 - CAISE 2013 @ Valencia, Spain
Customer Manufacturer (PUT) Bank
Place Order Check Order
Confirm Order
Reject Orderxor
Deposit Payment
Notify Payment Arrival
Process OrderNotify Order
Fulfilled
Login (max 3 tries)
Notify Payment
Order Received
 How to facilitate the testing of business protocols between
units (Web services)?
 Primitive approach: hard code the protocol in programs: rigid,
time-consuming, error-prone
Research issue
7 - CAISE 2013 @ Valencia, Spain
PUT: Process-Under-Test
 How to test a service unit if
its partner services are not
available?
 Declarative specification of protocol interface between
services, and a framework to support the unit testing of
defined protocol interface
Contribution overview
8 - CAISE 2013 @ Valencia, Spain
 PROPOLS: Property Specification Pattern Ontology
Language for Service Composition
 A light-weight, declarative, temporal and causal dependency
specification language
 Based on Dwyer et al’s Property Specification Patterns (PSP)
 has a FSA-based semantics
 Encoded in Web Ontology Language
The protocol interface specification language:
PROPOLS
9 - CAISE 2013 @ Valencia, Spain
PROPOLS basic expressions
pattern scope
10 - CAISE 2013 @ Valencia, Spain
Scenario & PROPOLS Examples
Order
Validate
Confirm
Cancel
xor
Deposit
Deposited
Process
Fulfilled
Pay
Paid
Hard Credit Rule
1. The received order must be validated:
Manufacturer.ReceiveOrder
Leads to
Manufacturer.ValidateOrder Globally
2. Payment must be deposited before order
processing starts
Bank.Deposit
Precedes
Manufacturer.StartOrderProcessing
Globally
11 - CAISE 2013 @ Valencia, Spain
PROPOLS composite expressions
isa
(Customer.getConfirmNotification Exists Globally
Xor Customer.getCancelNotifcation Exists Globally)
12 - CAISE 2013 @ Valencia, Spain
 S is the Cartesian product A.S × B.S,
 s0 is the tuple (A.s0, B.s0),
 L is the union A.L ∪ B.L,
 δ is {((a1, b1), l, (a2, b2)) | (a1,l,a2)∈A.δ ∧ (b1,l,b2)∈b.δ},
 F is {(s1, s2) ∈S | s1∈A.F ∧ s2∈B.F}.
Composite expression semantics
13 - CAISE 2013 @ Valencia, Spain
The PROPOLS Ontology
14
 Error detection
 Error state reached in a defined FSA
 Any FSA in a non-final state when testing sequence finishes
Error detection condition
15 - CAISE 2013 @ Valencia, Spain
P: Manfacturer.Login
Q: Manufacturer.PlaceOrder
 A composite partner service and the mock of partner
services
A preliminary solution to the 2nd
issue
16 - CAISE 2013 @ Valencia, Spain
Approach revisit
17 - CAISE 2013 @ Valencia, Spain
Step 1 (specification) tool support
18 - CAISE 2013 @ Valencia, Spain
 1. PUT to Java mapping
 2. Mock object setup
 Manually define the
request message
 3. Test case definition
 Manually done
Step 2 (testing framework setup)
19 - CAISE 2013 @ Valencia, Spain
Test case definition GUI
20 - CAISE 2013 @ Valencia, Spain
Testing results GUI
21 - CAISE 2013 @ Valencia, Spain
 As far as we know, it’s the first testing framework to
facilitate the unit testing of protocol interface between web
services. All the other frameworks focus on test case
programming
 An approach to declaratively specify the service protocol
interface between services and its associated framework
software
 Future work
 Integrating automatic test case generation techniques
 Partner service behavior emulation
Conclusion
22 - CAISE 2013 @ Valencia, Spain

More Related Content

Viewers also liked

Keynote baezayates
Keynote baezayatesKeynote baezayates
Keynote baezayates
caise2013vlc
 
Baryannis c ai-se2013_wssl_
Baryannis c ai-se2013_wssl_Baryannis c ai-se2013_wssl_
Baryannis c ai-se2013_wssl_
caise2013vlc
 
Ramezani taghiabadi temporal compliance checking 2
Ramezani taghiabadi   temporal compliance checking 2Ramezani taghiabadi   temporal compliance checking 2
Ramezani taghiabadi temporal compliance checking 2
caise2013vlc
 
Henning agt talk-caise-semnet
Henning agt   talk-caise-semnetHenning agt   talk-caise-semnet
Henning agt talk-caise-semnet
caise2013vlc
 
Christian gierds 2013-06-20-c ai-se
Christian gierds 2013-06-20-c ai-seChristian gierds 2013-06-20-c ai-se
Christian gierds 2013-06-20-c ai-se
caise2013vlc
 
David aguilera presentation
David aguilera   presentationDavid aguilera   presentation
David aguilera presentation
caise2013vlc
 
Malinda scalability c_ai_se_2013_v3
Malinda scalability c_ai_se_2013_v3Malinda scalability c_ai_se_2013_v3
Malinda scalability c_ai_se_2013_v3
caise2013vlc
 
Maurino andrea coopetitivecaise2013
Maurino andrea   coopetitivecaise2013Maurino andrea   coopetitivecaise2013
Maurino andrea coopetitivecaise2013
caise2013vlc
 
Amin beheshti c ai-se13
Amin beheshti   c ai-se13Amin beheshti   c ai-se13
Amin beheshti c ai-se13
caise2013vlc
 
Canovas cabot topublish-caise2013-
Canovas cabot topublish-caise2013-Canovas cabot topublish-caise2013-
Canovas cabot topublish-caise2013-
caise2013vlc
 
Sonja kabicher fuchs presentation-caise13_final
Sonja kabicher fuchs presentation-caise13_finalSonja kabicher fuchs presentation-caise13_final
Sonja kabicher fuchs presentation-caise13_final
caise2013vlc
 
Miguel goulao 2013 c-aise
Miguel goulao 2013 c-aiseMiguel goulao 2013 c-aise
Miguel goulao 2013 c-aise
caise2013vlc
 
NOVETATS DE TARDOR - NOVEL·LA
NOVETATS DE TARDOR - NOVEL·LANOVETATS DE TARDOR - NOVEL·LA
NOVETATS DE TARDOR - NOVEL·LA
Biblioteca Almenar
 

Viewers also liked (18)

Keynote baezayates
Keynote baezayatesKeynote baezayates
Keynote baezayates
 
Baryannis c ai-se2013_wssl_
Baryannis c ai-se2013_wssl_Baryannis c ai-se2013_wssl_
Baryannis c ai-se2013_wssl_
 
Ramezani taghiabadi temporal compliance checking 2
Ramezani taghiabadi   temporal compliance checking 2Ramezani taghiabadi   temporal compliance checking 2
Ramezani taghiabadi temporal compliance checking 2
 
Henning agt talk-caise-semnet
Henning agt   talk-caise-semnetHenning agt   talk-caise-semnet
Henning agt talk-caise-semnet
 
Christian gierds 2013-06-20-c ai-se
Christian gierds 2013-06-20-c ai-seChristian gierds 2013-06-20-c ai-se
Christian gierds 2013-06-20-c ai-se
 
David aguilera presentation
David aguilera   presentationDavid aguilera   presentation
David aguilera presentation
 
Ashes and Snow
Ashes and SnowAshes and Snow
Ashes and Snow
 
Malinda scalability c_ai_se_2013_v3
Malinda scalability c_ai_se_2013_v3Malinda scalability c_ai_se_2013_v3
Malinda scalability c_ai_se_2013_v3
 
Maurino andrea coopetitivecaise2013
Maurino andrea   coopetitivecaise2013Maurino andrea   coopetitivecaise2013
Maurino andrea coopetitivecaise2013
 
Amin beheshti c ai-se13
Amin beheshti   c ai-se13Amin beheshti   c ai-se13
Amin beheshti c ai-se13
 
Canovas cabot topublish-caise2013-
Canovas cabot topublish-caise2013-Canovas cabot topublish-caise2013-
Canovas cabot topublish-caise2013-
 
Caise panel
Caise panelCaise panel
Caise panel
 
Abbasi et al
Abbasi et alAbbasi et al
Abbasi et al
 
Sonja kabicher fuchs presentation-caise13_final
Sonja kabicher fuchs presentation-caise13_finalSonja kabicher fuchs presentation-caise13_final
Sonja kabicher fuchs presentation-caise13_final
 
Miguel goulao 2013 c-aise
Miguel goulao 2013 c-aiseMiguel goulao 2013 c-aise
Miguel goulao 2013 c-aise
 
Keynote pohl
Keynote pohlKeynote pohl
Keynote pohl
 
NOVETATS DE TARDOR - NOVEL·LA
NOVETATS DE TARDOR - NOVEL·LANOVETATS DE TARDOR - NOVEL·LA
NOVETATS DE TARDOR - NOVEL·LA
 
Web 2.0 Development with IBM DB2
Web 2.0 Development with IBM DB2Web 2.0 Development with IBM DB2
Web 2.0 Development with IBM DB2
 

Similar to Jian yu caise13-

Resume_Gowdhaman_23102016
Resume_Gowdhaman_23102016Resume_Gowdhaman_23102016
Resume_Gowdhaman_23102016
Gowdhaman U
 
Neha Arora_Resume
Neha Arora_ResumeNeha Arora_Resume
Neha Arora_Resume
Neha Arora
 
Resume_QA Analyst_Projects__VurukutiNarasingaRao
Resume_QA Analyst_Projects__VurukutiNarasingaRaoResume_QA Analyst_Projects__VurukutiNarasingaRao
Resume_QA Analyst_Projects__VurukutiNarasingaRao
NARASINGA RAO VURUKUTI
 
Sandesh cv_Test Engineer
Sandesh cv_Test EngineerSandesh cv_Test Engineer
Sandesh cv_Test Engineer
Sandesh Satpute
 
bhaskar new Resume_Updated
bhaskar new Resume_Updatedbhaskar new Resume_Updated
bhaskar new Resume_Updated
Bhaskar Verma
 

Similar to Jian yu caise13- (20)

Resume_Gowdhaman_23102016
Resume_Gowdhaman_23102016Resume_Gowdhaman_23102016
Resume_Gowdhaman_23102016
 
Neha Arora_Resume
Neha Arora_ResumeNeha Arora_Resume
Neha Arora_Resume
 
Shuvam dutta | Performance tester
Shuvam dutta | Performance testerShuvam dutta | Performance tester
Shuvam dutta | Performance tester
 
Resume_QA Analyst_Projects__VurukutiNarasingaRao
Resume_QA Analyst_Projects__VurukutiNarasingaRaoResume_QA Analyst_Projects__VurukutiNarasingaRao
Resume_QA Analyst_Projects__VurukutiNarasingaRao
 
Shuvam dutta
Shuvam duttaShuvam dutta
Shuvam dutta
 
Sandesh cv_Test Engineer
Sandesh cv_Test EngineerSandesh cv_Test Engineer
Sandesh cv_Test Engineer
 
2014 Asdenca - Capability-driven development of a soa platform, a case study
2014 Asdenca - Capability-driven development of a soa platform, a case study2014 Asdenca - Capability-driven development of a soa platform, a case study
2014 Asdenca - Capability-driven development of a soa platform, a case study
 
bhaskar new Resume_Updated
bhaskar new Resume_Updatedbhaskar new Resume_Updated
bhaskar new Resume_Updated
 
Shuvam dutta
Shuvam duttaShuvam dutta
Shuvam dutta
 
Shuvam Dutta | Performance analyst
Shuvam Dutta | Performance analystShuvam Dutta | Performance analyst
Shuvam Dutta | Performance analyst
 
Pavan.R_resume
Pavan.R_resumePavan.R_resume
Pavan.R_resume
 
Harish
HarishHarish
Harish
 
CV_Snehal_Parate
CV_Snehal_ParateCV_Snehal_Parate
CV_Snehal_Parate
 
Shruti Kulkarni (1)
Shruti Kulkarni (1)Shruti Kulkarni (1)
Shruti Kulkarni (1)
 
CV
CVCV
CV
 
Giri_WCS
Giri_WCSGiri_WCS
Giri_WCS
 
Mallikarjuna_Resume
Mallikarjuna_ResumeMallikarjuna_Resume
Mallikarjuna_Resume
 
PSA Presentation on Rail Projects
PSA Presentation on Rail ProjectsPSA Presentation on Rail Projects
PSA Presentation on Rail Projects
 
Dharmendra sharma qa_profile
Dharmendra sharma qa_profile Dharmendra sharma qa_profile
Dharmendra sharma qa_profile
 
Dharmendra sharma qa_profile
Dharmendra sharma qa_profile Dharmendra sharma qa_profile
Dharmendra sharma qa_profile
 

More from caise2013vlc

Markus keuneke partial data-models
Markus keuneke   partial data-modelsMarkus keuneke   partial data-models
Markus keuneke partial data-models
caise2013vlc
 
Jelena zdravkovic c ai-se 2013 capability caas
Jelena zdravkovic  c ai-se 2013 capability caasJelena zdravkovic  c ai-se 2013 capability caas
Jelena zdravkovic c ai-se 2013 capability caas
caise2013vlc
 
Sagar sen caise2013final
Sagar sen caise2013finalSagar sen caise2013final
Sagar sen caise2013final
caise2013vlc
 
Suriadi caise2013 slides
Suriadi caise2013 slidesSuriadi caise2013 slides
Suriadi caise2013 slides
caise2013vlc
 
Fadila caise2013 vf
Fadila caise2013 vfFadila caise2013 vf
Fadila caise2013 vf
caise2013vlc
 
Michael mrissa c aise
Michael mrissa c aiseMichael mrissa c aise
Michael mrissa c aise
caise2013vlc
 
Razvan petrusel presentation caise 2013
Razvan petrusel   presentation caise 2013Razvan petrusel   presentation caise 2013
Razvan petrusel presentation caise 2013
caise2013vlc
 
Ferreira c ai-se2013-final-handouts
Ferreira   c ai-se2013-final-handoutsFerreira   c ai-se2013-final-handouts
Ferreira c ai-se2013-final-handouts
caise2013vlc
 
Sonja meyer caise 2013
Sonja meyer caise 2013Sonja meyer caise 2013
Sonja meyer caise 2013
caise2013vlc
 
Tony clark caise 13-presentation
Tony clark  caise 13-presentationTony clark  caise 13-presentation
Tony clark caise 13-presentation
caise2013vlc
 
Jorge cardoso caise-usdl-tosca-2013-06-18c
Jorge cardoso   caise-usdl-tosca-2013-06-18cJorge cardoso   caise-usdl-tosca-2013-06-18c
Jorge cardoso caise-usdl-tosca-2013-06-18c
caise2013vlc
 
Kerrstin klemishc c-aise2013_
Kerrstin klemishc c-aise2013_Kerrstin klemishc c-aise2013_
Kerrstin klemishc c-aise2013_
caise2013vlc
 
Peter sawyer caise
Peter sawyer  caisePeter sawyer  caise
Peter sawyer caise
caise2013vlc
 
Moe wynn caise13 presentation
Moe wynn   caise13 presentationMoe wynn   caise13 presentation
Moe wynn caise13 presentation
caise2013vlc
 
Christoph scuetz caise bmo-olap_2013
Christoph scuetz caise bmo-olap_2013Christoph scuetz caise bmo-olap_2013
Christoph scuetz caise bmo-olap_2013
caise2013vlc
 
D. vandic caise 2013
D. vandic caise 2013D. vandic caise 2013
D. vandic caise 2013
caise2013vlc
 

More from caise2013vlc (18)

Markus keuneke partial data-models
Markus keuneke   partial data-modelsMarkus keuneke   partial data-models
Markus keuneke partial data-models
 
Jelena zdravkovic c ai-se 2013 capability caas
Jelena zdravkovic  c ai-se 2013 capability caasJelena zdravkovic  c ai-se 2013 capability caas
Jelena zdravkovic c ai-se 2013 capability caas
 
Sagar sen caise2013final
Sagar sen caise2013finalSagar sen caise2013final
Sagar sen caise2013final
 
Suriadi caise2013 slides
Suriadi caise2013 slidesSuriadi caise2013 slides
Suriadi caise2013 slides
 
Fadila caise2013 vf
Fadila caise2013 vfFadila caise2013 vf
Fadila caise2013 vf
 
Michael mrissa c aise
Michael mrissa c aiseMichael mrissa c aise
Michael mrissa c aise
 
Razvan petrusel presentation caise 2013
Razvan petrusel   presentation caise 2013Razvan petrusel   presentation caise 2013
Razvan petrusel presentation caise 2013
 
Ferreira c ai-se2013-final-handouts
Ferreira   c ai-se2013-final-handoutsFerreira   c ai-se2013-final-handouts
Ferreira c ai-se2013-final-handouts
 
Sonja meyer caise 2013
Sonja meyer caise 2013Sonja meyer caise 2013
Sonja meyer caise 2013
 
Tony clark caise 13-presentation
Tony clark  caise 13-presentationTony clark  caise 13-presentation
Tony clark caise 13-presentation
 
Jorge cardoso caise-usdl-tosca-2013-06-18c
Jorge cardoso   caise-usdl-tosca-2013-06-18cJorge cardoso   caise-usdl-tosca-2013-06-18c
Jorge cardoso caise-usdl-tosca-2013-06-18c
 
Kerrstin klemishc c-aise2013_
Kerrstin klemishc c-aise2013_Kerrstin klemishc c-aise2013_
Kerrstin klemishc c-aise2013_
 
Peter sawyer caise
Peter sawyer  caisePeter sawyer  caise
Peter sawyer caise
 
Scekic caise13-
Scekic caise13-Scekic caise13-
Scekic caise13-
 
Moe wynn caise13 presentation
Moe wynn   caise13 presentationMoe wynn   caise13 presentation
Moe wynn caise13 presentation
 
Jian yu caise13-
Jian yu caise13-Jian yu caise13-
Jian yu caise13-
 
Christoph scuetz caise bmo-olap_2013
Christoph scuetz caise bmo-olap_2013Christoph scuetz caise bmo-olap_2013
Christoph scuetz caise bmo-olap_2013
 
D. vandic caise 2013
D. vandic caise 2013D. vandic caise 2013
D. vandic caise 2013
 

Recently uploaded

CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
giselly40
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
Enterprise Knowledge
 

Recently uploaded (20)

What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 

Jian yu caise13-

  • 1. A Business Protocol Unit Testing Framework for Web Service Composition Jian Yu, Jun Han, Steven Gunarso, Steve Versteeg Faculty of ICT Swinburne University of Technology Melbourne, Victoria, Australia
  • 2.  Background and research issues  Contribution overview  The PROPOLS protocol specification language  The unit testing approach and the framework  Conclusion Agenda 2 - CAISE 2013 @ Valencia, Spain
  • 3. Web of Pages - text, manually created links - extensive navigation 2007 1997 Web of Resources - dynamically generated pages - data, services, mashups - web query interfaces Web of People - social networks, user-created casual content - Facebook, Renren, Linkedin.... Web of Things 2009 - physical objects connect and interact over the Internet - RFID, 2D barcode, sensors, SOA - Smart cities/homes, object tracking/recalling, environment monitoring…. The Evolution of the Web 3 - CAISE 2013 @ Valencia, Spain
  • 4. Web services 4 - CAISE 2013 @ Valencia, Spain Service Service WSDL/SOAP/HTTP Service BPEL process (encapsulated as a service)
  • 5.  Unit: the smallest testable parts of a software system  A unit needs to have clearly defined interface  Testing is conducted around the interface Unit testing 5 - CAISE 2013 @ Valencia, Spain http://sourcemaking.com/refactoring/extract-interface
  • 6. Business protocol as part of the interface 6 - CAISE 2013 @ Valencia, Spain Customer Manufacturer (PUT) Bank Place Order Check Order Confirm Order Reject Orderxor Deposit Payment Notify Payment Arrival Process OrderNotify Order Fulfilled Login (max 3 tries) Notify Payment Order Received
  • 7.  How to facilitate the testing of business protocols between units (Web services)?  Primitive approach: hard code the protocol in programs: rigid, time-consuming, error-prone Research issue 7 - CAISE 2013 @ Valencia, Spain PUT: Process-Under-Test  How to test a service unit if its partner services are not available?
  • 8.  Declarative specification of protocol interface between services, and a framework to support the unit testing of defined protocol interface Contribution overview 8 - CAISE 2013 @ Valencia, Spain
  • 9.  PROPOLS: Property Specification Pattern Ontology Language for Service Composition  A light-weight, declarative, temporal and causal dependency specification language  Based on Dwyer et al’s Property Specification Patterns (PSP)  has a FSA-based semantics  Encoded in Web Ontology Language The protocol interface specification language: PROPOLS 9 - CAISE 2013 @ Valencia, Spain
  • 10. PROPOLS basic expressions pattern scope 10 - CAISE 2013 @ Valencia, Spain
  • 11. Scenario & PROPOLS Examples Order Validate Confirm Cancel xor Deposit Deposited Process Fulfilled Pay Paid Hard Credit Rule 1. The received order must be validated: Manufacturer.ReceiveOrder Leads to Manufacturer.ValidateOrder Globally 2. Payment must be deposited before order processing starts Bank.Deposit Precedes Manufacturer.StartOrderProcessing Globally 11 - CAISE 2013 @ Valencia, Spain
  • 12. PROPOLS composite expressions isa (Customer.getConfirmNotification Exists Globally Xor Customer.getCancelNotifcation Exists Globally) 12 - CAISE 2013 @ Valencia, Spain
  • 13.  S is the Cartesian product A.S × B.S,  s0 is the tuple (A.s0, B.s0),  L is the union A.L ∪ B.L,  δ is {((a1, b1), l, (a2, b2)) | (a1,l,a2)∈A.δ ∧ (b1,l,b2)∈b.δ},  F is {(s1, s2) ∈S | s1∈A.F ∧ s2∈B.F}. Composite expression semantics 13 - CAISE 2013 @ Valencia, Spain
  • 15.  Error detection  Error state reached in a defined FSA  Any FSA in a non-final state when testing sequence finishes Error detection condition 15 - CAISE 2013 @ Valencia, Spain P: Manfacturer.Login Q: Manufacturer.PlaceOrder
  • 16.  A composite partner service and the mock of partner services A preliminary solution to the 2nd issue 16 - CAISE 2013 @ Valencia, Spain
  • 17. Approach revisit 17 - CAISE 2013 @ Valencia, Spain
  • 18. Step 1 (specification) tool support 18 - CAISE 2013 @ Valencia, Spain
  • 19.  1. PUT to Java mapping  2. Mock object setup  Manually define the request message  3. Test case definition  Manually done Step 2 (testing framework setup) 19 - CAISE 2013 @ Valencia, Spain
  • 20. Test case definition GUI 20 - CAISE 2013 @ Valencia, Spain
  • 21. Testing results GUI 21 - CAISE 2013 @ Valencia, Spain
  • 22.  As far as we know, it’s the first testing framework to facilitate the unit testing of protocol interface between web services. All the other frameworks focus on test case programming  An approach to declaratively specify the service protocol interface between services and its associated framework software  Future work  Integrating automatic test case generation techniques  Partner service behavior emulation Conclusion 22 - CAISE 2013 @ Valencia, Spain

Editor's Notes

  1. © Swinburne University of Technology
  2. A pattern property specification consists of a pattern and a scope. The pattern specifies what must occur and the scope specifies when the pattern must hold.