TouchGuru

Logo

Mobile apps often expose bugs only under specific environment conditions or after specific interactions, making it hard to detect them via testing. By approximating the program behavior under all possible conditions, static analysis is able to fill this gap. TouchGuru is a research project to develop a static analyzer for Microsoft TouchDevelop scripts.

In the context of this project, we also study the analysis of programs that operate on weakly consistent data stores, such as TouchDevelop's cloud types or distributed databases. For more information, see the ECRacer website.

Project Members

The project has been completed. Please contact Peter Müller in case of questions or comments.

Key Publications

  • L. Brutschy and D. Dimitrov and P. Müller and M. Vechev: Static Serializability Analysis for Causal Consistency
    Programming Language Design and Implementation (PLDI), 2018. To appear. [PDF] [BIB]
  • L. Brutschy and D. Dimitrov and P. Müller and M. Vechev: Serializability for Eventual Consistency: Criterion, Analysis, and Applications
    Principles of Programming Languages (POPL), 2017. [PDF] [BIB]
  • L. Brutschy, P. Ferrara, and P. Müller: Static Analysis for Independent App Developers
    Object-Oriented Programming Systems, Languages, and Applications (OOPSLA), 2014. [DownloadPDF] [DownloadBIB]   
  • L. Brutschy, P. Ferrara, and P. Müller: TouchGuru: Integrating Static Analysis with a Mobile Development Environment
    Second International Workshop on Mobile Development Lifecycle, 2014. [DownloadPDF] [DownloadBIB]
  • P. Ferrara and D. Schweizer and L. Brutschy: TouchCost: Cost Analysis of TouchDevelop Scripts
    Fundamental Approaches to Software Engineering (FASE), 2014. [DownloadPDF] [DownloadBIB]

Acknowledgments

TouchGuru is a collaboration with  the external pageTouchDevelop team at Microsoft Research and our former team member Pietro Ferrara.

JavaScript has been disabled in your browser