TouchGuru
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. [Download PDF] [Download BIB] - 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. [Download PDF] [Download BIB] - P. Ferrara and D. Schweizer and L. Brutschy: TouchCost: Cost Analysis of TouchDevelop Scripts
Fundamental Approaches to Software Engineering (FASE), 2014. [Download PDF] [Download BIB]
Acknowledgments
TouchGuru is a collaboration with the external page TouchDevelop team at Microsoft Research and our former team member Pietro Ferrara.