skip to main content
10.1145/2774225.2774840acmconferencesArticle/Chapter ViewAbstractPublication PageseicsConference Proceedingsconference-collections
research-article

Creating models of interactive systems with the support of lightweight reverse-engineering tools

Published: 23 June 2015 Publication History

Abstract

Creating formal models of interactive systems is an important step in the development process, particularly for safety-critical interactive systems. Such models can be used for a variety of software engineering purposes such as model-checking, verification, testing, refinement etc. While the use of such models at the beginning of the implementation cycle is important, it is often the case that we are interested in performing many of the same activities (particularly safety verification and testing) on systems which have been built without the use of formal methods or modelling. In order to do this we need to somehow reverse-engineer the system to generate the models post-implementation. In this paper we describe an approach we have developed to support the reverse-engineering of interactive systems and tools which support this. The tools perform partial reverse-engineering and act as a guide to the developer of the models rather than providing a fully automated solution. We motivate this by discussing the importance of what we describe as 'light-weight' tools in the engineering process.

References

[1]
Bowen, J., and Reeves, S. Formal models for user interface design artefacts. Innovations in Systems and Software Engineering 4, 2 (2008), 125--141.
[2]
Bowen, J., and Reeves, S. Refinement for user interface designs. Electron. Notes Theor. Comput. Sci. 208 (Apr. 2008), 5--22.
[3]
Bowen, J., and Reeves, S. Modelling safety properties of interactive medical systems. In Proceedings of the 5th ACM SIGCHI Symposium on Engineering Interactive Computing Systems, EICS '13, ACM (New York, NY, USA, 2013), 91--100.
[4]
Bowen, J., and Reeves, S. Ui-design driven model-based testing. ISSE 9, 3 (2013), 201--215.
[5]
Corbett, J. C., Dwyer, M. B., Hatcliff, J., Laubach, S., Pasareanu, C. S., Robby, and Zheng, H. Bandera: Extracting Finite-State Models from Java Source Code. In International Conference on Software Engineering, IEEE Computer Society Press (Limerick, Ireland, June 2000), 439--448.
[6]
Dwyer, M. B., Robby, Tkachuk, O., and Visser, W. Analyzing interaction orderings with model checking. In ASE, IEEE Computer Society (2004), 154--163.
[7]
Gimblett, A., and Thimbleby, H. W. User interface model discovery: towards a generic approach. In EICS, N. Sukaviriya, J. Vanderdonckt, and M. Harrison, Eds., ACM (2010), 145--154.
[8]
Memon, A., Banerjee, I., and Nagarajan, A. Gui ripping: Reverse engineering of graphical user interfaces for testing. In Proceedings of the 10th Working Conference on Reverse Engineering, WCRE '03, IEEE Computer Society (Washington, DC, USA, 2003), 260.
[9]
Mitchell, A., and Power, J. An approach to quantifying the run-time behaviour of java GUI applications. In Winter International Symposium on Information and Communication Technologies, Cancun, Mexico (2004), 1--6.
[10]
Morgado, I., Paiva, A., and Faria, J. Reverse engineering of graphical user interfaces. In Proceedings of Sixth International Conference on Software Engineering Advances (ICSEA 2011), IARIA (2011), 293--298.
[11]
Nguyen, B. N., Robbins, B., Banerjee, I., and Memon, A. GUITAR: An innovative tool for automated testing of gui-driven software. Automated Software Engg. 21, 1 (Mar. 2014), 65--105.
[12]
Schweer, A., and Hinze, A. The digital parrot: Combining context-awareness and semantics to augment memory. In Proceedings of the Workshop on Supporting Human Memory with Interactive Systems (MeMos 2007)at the 2007 British HCI International Conference, 2007 (2007).
[13]
Silva, C. E., and Campos, J. C. Combining static and dynamic analysis for the reverse engineering of web applications. In ACM SIGCHI Symposium on Engineering Interactive Computing Systems, EICS'13, London, United Kingdom - June 24-27, 2013 (2013), 107--112.
[14]
Silva, J. a. C., Silva, C., Gonçalo, R. D., Saraiva, J. a., and Campos, J. C. The guisurfer tool: Towards a language independent approach to reverse engineering gui code. In Proceedings of the 2Nd ACM SIGCHI Symposium on Engineering Interactive Computing Systems, EICS '10, ACM (New York, NY, USA, 2010), 181--186.
[15]
Silva, J. C., Campos, J. C., and Saraiva, J. Combining formal methods and functional strategies regarding the reverse engineering of interactive applications. In DSV-IS, G. J. Doherty and A. Blandford, Eds., vol. 4323 of Lecture Notes in Computer Science, Springer (2006), 137--150.
[16]
Staiger, S. Reverse engineering of graphical user interfaces using static analyses. In 14th Working Conference on Reverse Engineering (WCRE 2007), 28--31 October 2007, Vancouver, BC, Canada (2007), 189--198.
[17]
Tempero, E., Anslow, C., Dietrich, J., Han, T., Li, J., Lumpe, M., Melton, H., and Noble, J. Qualitas corpus: A curated collection of java code for empirical studies. In 2010 Asia Pacific Software Engineering Conference (APSEC2010) (Dec. 2010), 336--345.
[18]
Vanderdonckt, J., Bouillon, L., and Souchon, N. Flexible reverse engineering of web pages with VAQUITA. In Proceedings of the Eighth Working Conference on Reverse Engineering, WCRE'01, Stuttgart, Germany, October 2--5, 2001 (2001), 241--248.

Cited By

View all
  • (2017)State of the Art on Formal Methods for Interactive SystemsThe Handbook of Formal Methods in Human-Computer Interaction10.1007/978-3-319-51838-1_1(3-55)Online publication date: 25-Apr-2017

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
EICS '15: Proceedings of the 7th ACM SIGCHI Symposium on Engineering Interactive Computing Systems
June 2015
316 pages
ISBN:9781450336468
DOI:10.1145/2774225
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 23 June 2015

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. formal models
  2. interactive systems
  3. reverse-engineering

Qualifiers

  • Research-article

Conference

EICS'15
Sponsor:

Acceptance Rates

EICS '15 Paper Acceptance Rate 19 of 64 submissions, 30%;
Overall Acceptance Rate 73 of 299 submissions, 24%

Upcoming Conference

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)3
  • Downloads (Last 6 weeks)0
Reflects downloads up to 15 Sep 2024

Other Metrics

Citations

Cited By

View all
  • (2017)State of the Art on Formal Methods for Interactive SystemsThe Handbook of Formal Methods in Human-Computer Interaction10.1007/978-3-319-51838-1_1(3-55)Online publication date: 25-Apr-2017

View Options

Get Access

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media