|
ABSTRACT
Service computing has increasingly been adopted by the industry, developing business applications by means of orchestration and choreography. Choreography specifies how services collaborate with one another by defining, say, the message exchange, rather than via the process flow as in the case of orchestration. Messages sent from one service to another may require the use of different XPaths to manipulate or extract message contents. Mismatches in XML manipulations through XPaths (such as to relate incoming and outgoing messages in choreography specifications) may result in failures. In this paper, we propose to associate XPath Rewriting Graphs (XRGs), a structure that relates XPath and XML schema, with actions of choreography applications that are skeletally modeled as labeled transition systems. We develop the notion of XRG patterns to capture how different XRGs are related even though they may refer to different XML schemas or their tags. By applying XRG patterns, we successfully identify new data flow associations in choreography applications and develop new data flow testing criteria. Finally, we report an empirical case study that evaluates our techniques. The result shows our techniques are promising in detecting failures in choreography applications.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
| |
1
|
C. Bartolini, A. Bertolino, E. Marchetti, and I. Parissis. Data flow-based validation of web services compositions: perspectives and examples. In Architecting Dependable Systems V, pages 298--325, 2008.
|
| |
2
|
M. Brambilla, S. Ceri, P. Fraternali, and I. Manolescu. Process modeling in web applications. ACM Transactions on Software Engineering and Methodology (TOSEM), 15 (4): 360--409, 2006.
|
| |
3
|
M. Broy, I. H. Krüger, and M. Meisinger. A formal model of services. ACM TOSEM, 16 (1): Article No. 5, 2007.
|
| |
4
|
W. K. Chan, S. C. Cheung, and K. R. P. H. Leung. Towards a metamorphic testing methodology for service-oriented software applications. In Proceedings of QSIC 2005, pages 470--476, 2005.
|
| |
5
|
H. Y. Chen, T. H. Tse, and T. Y. Chen. TACCLE: a methodology for object-oriented software testing at the class and cluster levels. ACM TOSEM, 10 (1): 56--109, 2001.
|
| |
6
|
H. Foster, W. Emmerich, J. Kramer, J. Magee, D. Rosenblum, and S. Uchitel. Model checking service compositions under resource constraints. In Proceedings of ESEC/FSE 2007, pages 225--234, 2007.
|
| |
7
|
H. Foster, S. Uchitel, J. Magee, and J. Kramer. Model-based verification of web service compositions. In Proceedings ASE 2003, pages 152--161, 2003.
|
| |
8
|
P. G. Frankl and E. J. Weyuker. An applicable family of data flow testing criteria. IEEE Transactions on Software Engineering, 14 (10): 1483--1498, 1988.
|
| |
9
|
X. Fu, T. Bultan, and J. Su. Analysis of interacting BPEL web services. In Proceedings of WWW 2004, pages 621--630, 2004.
|
| |
10
|
Z. Li, W. Sun, Z. B. Jiang, and X. Zhang. BPEL4WS unit testing: framework and implementation. In Proceedings of ICWS 2005, pages 103--110, 2005.
|
| |
11
|
H. Lu, W. K. Chan, and T. H. Tse. Testing context-aware middleware-centric programs: a data flow approach and an RFID-based experimentation. In Proceedings of SIGSOFT 2006/FSE-14, pages 242--252, 2006.
|
| |
12
|
L. Mariani, S. Papagiannakis, and M. Pezzè. Compatibility and regression testing of COTS-component-based software. In Proceedings of ICSE 2007, pages 85--95, 2007.
|
| |
13
|
L. Mei. A context-aware orchestrating and choreographic test framework for service-oriented applications. In Proceedings of ICSE Companion 2009 (Doctoral Symposium), pages 371--374, 2009.
|
| |
14
|
L. Mei, W. K. Chan, and T. H. Tse. Data flow testing of service-oriented workflow applications. In Proceedings of ICSE 2008, pages 371--380, 2008.
|
| |
15
|
L. Mei, Z. Zhang, W. K. Chan, and T. H. Tse. Test case prioritization for regression testing of service-oriented business applications. In Proceedings of WWW 2009, pages 901--910, 2009.
|
| |
16
|
G. Miklau and D. Suciu. Containment and equivalence for a fragment of XPath. Journal of the ACM, 51 (1): 2--45, 2004.
|
| |
17
|
C. Peltz. Web services orchestration and choreography. IEEE Computer, 36 (10): 46--52, 2003.
|
| |
18
|
D. Roman and M. Kifer. Semantic web service choreography: contracting and enactment. In The Semantic Web-ISWC 2008, pages 550--566, 2008.
|
| |
19
|
State Transition System. Wikipedia. Available at http://en.wikipedia. org/wiki/State_transition_system. (Last access on June 16, 2009.)
|
| |
20
|
S. Uchitel, J. Kramer, and J. Magee. Detecting implied scenarios in message sequence chart specifications. In Proceedings of ESEC 2001 / FSE-9, pages 74--82, 2001.
|
| |
21
|
S. Uchitel, J. Kramer, and J. Magee. Negative scenarios for implied scenario elicitation. In Proceedings of SIGSOFT 2002 / FSE-10, pages 109--118, 2002.
|
| |
22
|
Web Services Choreography Description Language Version 1.0. W3C, 2005. Available at http://www.w3.org/TR/ws-cdl-10/.
|
| |
23
|
Web Services Choreography in Practice. IBM, 2005. Available at http://www.ibm.com/developerworks/xml/library/ws-choreography/.
|
| |
24
|
Web Services Description Language (WSDL) 2.0. W3C, 2007. Available at http://www.w3.org/TR/wsdl20.
|
| |
25
|
WS-CDL Eclipse (with Examples). Sourceforce.net, 2005. Available at http://sourceforge.net/project/showfiles.php?group_id=138675.
|
| |
26
|
XML Path Language (XPath) Recommendation. W3C, 2007. Available at http://www.w3.org/TR/xpath20/.
|
| |
27
|
C. Ye, S. C. Cheung, W. K. Chan, and C. Xu. Detection and resolution of atomicity violation in service composition. In Proceedings of ESEC/FSE 2007, pages 235--244, 2007.
|
|