Extracting EFSMs of Web Applications for Formal Requirements Specification

  • Andrey Zakonov
  • Anatoly Shalyto
Part of the Lecture Notes in Computer Science book series (LNCS, volume 7612)

Abstract

Web applications have begun to be used in wide variety of areas including social networks, shopping, online banking, control systems and other critical systems. Complexity of applications have raised as well as requirements for security and traceability. Due to short delivery times and changing requirements, quality assurance of web applications is usually an informal process. Formal methods have been proven to be safe approach to the specification, verification, and testing of systems. The aim of the proposed research is to make formal methods applicable to the web applications development. A technique that could extract extended finite state model by combination of static and dynamic analysis is developed. This method supports both applications with transitions between web pages and single-page applications with AJAX requests and dynamic DOM modifications. Two different algorithms are proposed that simplify the state model by merging similar states to achieve a human readable models even for the complex real world web applications. The obtained model could be used to define formal requirements for the application and to make model checking part of the continuous integration process for web development.

Keywords

Model-based testing FSM Model Checking Web Applications 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Holmes, A., Kellogg, M.: Automating Functional Tests Using Selenium. In: AGILE 2006, pp. 270–275 (2006)Google Scholar
  2. 2.
    Web test automation tool, http://sahi.co.in/w/sahi
  3. 3.
    Alalfi, M.H., Cordy, J.R., Dean, T.R.: Modelling methods for web application verification and testing: state of the art. Softw. Test., Verif. Reliab., 265–296 (2009)Google Scholar
  4. 4.
    Hassan, A.E., Holt, R.C.: Architecture recovery of web applications. In: Proceedings of the 24th ICSE, pp. 349–359. ACM Press, New York (2002)Google Scholar
  5. 5.
    Antoniol, G., Di Penta, M., Zazzara, M.: Understanding Web Applications through Dynamic Analysis. In: Proceedings of the IWPC 2004, pp. 120–131 (2004)Google Scholar
  6. 6.
    Di Lucca, G.A., Di Penta, M.: Integrating Static and Dynamic Analysis to improve the Comprehension of Existing Web Applications. In: Proceedings 7th IEEE WSE, Washington, DC, USA, pp. 87–94 (2005)Google Scholar
  7. 7.
    Hall, S., Ettema, T., Bunch, C., Bultan, T.: Eliminating navigation errors in web applications via model checking and runtime enforcement of navigation state machines. In: ASE 2010, pp. 235–244 (2010)Google Scholar
  8. 8.
    Haydar, M.: Formal Framework for Automated Analysis and Verification of Web-Based Applications. In: ASE 2004, pp. 410–413 (2004)Google Scholar
  9. 9.
    Kubo, A., Washizaki, H., Fukazawa, Y.: Automatic Extraction and Verification of Page Transitions in a Web Application. In: APSEC 2007, pp. 350–357 (2007)Google Scholar
  10. 10.
    Marchetto, A., Tonella, P., Ricca, F.: State-Based Testing of Ajax Web Applications. In: ICST 2008, pp. 121–130 (2008)Google Scholar
  11. 11.
    Zakonov, A., Stepanov, O., Shalyto, A.A.: GA-Based and Design by Contract Approach to Test Generation for EFSMs. In: IEEE EWDTS 2010, pp. 152–155 (2010)Google Scholar
  12. 12.
    Huang, Y., Yu, F., Hang, C., Tsai, C., Lee, D.T., Kuo, S.: Verifying Web Applications Using Bounded Model Checking. In: DSN 2004, pp. 199–208 (2004)Google Scholar
  13. 13.
    Homma, K., Izumi, S., Abe, Y., Takahashi, et al.: Using the Model Checker Spin for Web Application Design. In: SAINT 2010, pp. 137–140 (2010)Google Scholar
  14. 14.
    Homma, K., Izumi, S., Takahashi, K., Togashi, A., et al.: Modeling Web Applications Design with Automata and Its Verification. In: ISADS 2011, pp. 103–112 (2011)Google Scholar
  15. 15.
    Document Object Model by the World Wide Web Consortium, http://www.w3.org/DOM/
  16. 16.
    Kaufmann, M., Wagner, D. (eds.): Drawing Graphs: Methods and Models, 326 pages. Springer (2001)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2012

Authors and Affiliations

  • Andrey Zakonov
    • 1
  • Anatoly Shalyto
    • 1
  1. 1.Mechanics and OpticsNational Research University of Information TechnologiesSaint-PetersburgRussia

Personalised recommendations