Skip to main content

Testing of Execution of Concurrent Processes

  • Conference paper
  • First Online:
Databases and Information Systems (DB&IS 2020)

Part of the book series: Communications in Computer and Information Science ((CCIS,volume 1243))

Included in the following conference series:

Abstract

Authors propose an algorithm for analysis of business processes to detect potentially incorrect results of concurrent processes execution. Our novel approach is to conclude necessary database isolation level from business process description. If traditional languages with loops and arithmetic operations (two-way counters) are used for business process descriptions, the problem of detecting incorrect execution of concurrent processes cannot be algorithmically solved. This paper introduces a simplified business processes description language CPL-1, a transaction mechanism and an algorithm that supports detection of incorrect results during the concurrent execution of business processes. Business processes are often run concurrently in real world tasks like billing systems, ticket distribution, hotel reservations, etc. Currently there are some popular solutions preventing incorrect execution of concurrent business processes by using built-in transaction mechanisms and/or resource reservations in database management systems (DBMS). The proposed solution is an alternative, which can be used when resource locking or DBMS transaction mechanisms cannot be applied.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

References

  1. Mcdowell, C., Helmold, D.: Debugging concurrent programs. ACM Comput. Surv. 21(4), 593–622 (1989)

    Article  Google Scholar 

  2. Tai, K., Carver, R.: Testing of distributed programs (chap. 33). In: Zomaya, A. (ed.) Parallel and Distributed Computing Handbook. McGraw-Hill, New York (1996)

    Google Scholar 

  3. Auziņš, A., Bārzdiņš, J., Bičevskis, J., Čerāns, K., Kalniņš, A.: Automatic construction of test sets: theoretical approach. In: Bārzdinš, J., Bjørner, D. (eds.) Baltic Computer Science. LNCS, vol. 502, pp. 286–359. Springer, Heidelberg (1991). https://doi.org/10.1007/BFb0019362

    Chapter  Google Scholar 

  4. Barzdin, J.M., Bičevskis, J.J., Kalninsh, A.A.: Construction of complete sample system for correctness testing. In: Bečvář, J. (ed.) MFCS 1975. LNCS, vol. 32, pp. 1–12. Springer, Heidelberg (1975). https://doi.org/10.1007/3-540-07389-2_178

    Chapter  Google Scholar 

  5. Cadar, C., Koushnik, S.: Symbolic execution for software testing: three decades later. Commun. ACM 56, 82–90 (2013)

    Article  Google Scholar 

  6. Bianchi, F., Margara, A., Pezz, M.: A survey of recent trends in testing concurrent software systems. IEEE Trans. Softw. Eng. 44(8), 747–783 (2018)

    Article  Google Scholar 

  7. Jia, Y., Harman, M.: An analysis and survey of the development of mutation testing. IEEE Trans. Softw. Eng. 37(5), 649–678 (2011)

    Article  Google Scholar 

  8. Musuvathi, M., Qadeer, C., Ball, T.: CHESS: a systematic testing tool for concurrent software. In: Microsoft Research Technical Report MSR-TR-2007-149 (2007)

    Google Scholar 

  9. Deng, Y., Frankl, P., Chen, Z.: Testing database transaction concurrency. In: Automated Software Engineering. Proceedings of the 18th IEEE International Conference, pp. 184–193. IEEE (2003)

    Google Scholar 

  10. Fu, H., Wang, Z., Chen, X., Fan, X.: A systematic survey on automated concurrency bug detection, exposing, avoidance, and fixing techniques. Softw. Qual. J. 26, 855–889 (2017). https://doi.org/10.1007/s11219-017-9385-3

    Article  Google Scholar 

  11. Cai, S., Gallina, B., Nyström, D., Seceleanu, C.: Effective test suite design for detecting concurrency control faults in distributed transaction systems. In: Margaria, T., Steffen, B. (eds.) ISoLA 2018. LNCS, vol. 11246, pp. 355–374. Springer, Cham (2018). https://doi.org/10.1007/978-3-030-03424-5_24

    Chapter  Google Scholar 

  12. Chays, D., Deng, Y., Frankl, P.G., Dan, S., Vokolos, F., Weyuker, E.: An AGENDA for testing relational database applications. J. Softw.: Test. Verif. Reliab. 14, 17–44 (2004)

    Google Scholar 

  13. Hwang, G.H., Chang, S.J., Chu, H.D.: Technology for testing nondeterministic client/server database applications. IEEE Trans. Software Eng. 30(1), 2004 (2004)

    Google Scholar 

  14. Lin, C.S., Hwang, G.H.: State-cover testing for nondeterministic terminating concurrent programs with an infinite number of synchronization sequences. Sci. Comput. Program. 78, 1294–1323 (2013)

    Article  Google Scholar 

  15. Li, C., Csallner, C.: Dynamic symbolic database application testing. In: DBTest 2010, 7 June 2010 (2010)

    Google Scholar 

  16. Marinescu, R., Seceleanu, C., Le Guen, H., Pettersson, P.: A research overview of tool supported model-based testing of requirements-based designs. In: Advances in Computers, vol. 98, pp 89–140 (2015)

    Google Scholar 

Download references

Acknowledgments

The research leading to these results has received funding from the research project “Competence Centre of Information and Communication Technologies” of EU Structural funds, contract No. 1.2.1.1/18/A/003 signed between IT Competence Centre and Central Finance and Contracting Agency, Research No. 1.6 “Concurrence analysis in business process models”.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Girts Karnitis .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2020 Springer Nature Switzerland AG

About this paper

Check for updates. Verify currency and authenticity via CrossMark

Cite this paper

Bicevskis, J., Karnitis, G. (2020). Testing of Execution of Concurrent Processes. In: Robal, T., Haav, HM., Penjam, J., Matulevičius, R. (eds) Databases and Information Systems. DB&IS 2020. Communications in Computer and Information Science, vol 1243. Springer, Cham. https://doi.org/10.1007/978-3-030-57672-1_20

Download citation

  • DOI: https://doi.org/10.1007/978-3-030-57672-1_20

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-030-57671-4

  • Online ISBN: 978-3-030-57672-1

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics