Collaborative, programmable intelligent agents
Communications of the ACM
What we know about spreadsheet errors
Journal of End User Computing - End User Development
WYSIWYT testing in the spreadsheet paradigm: an empirical evaluation
Proceedings of the 22nd international conference on Software engineering
SWYN: a visual representation for regular expressions
Your wish is my command
Outlier finding: focusing user attention on possible errors
Proceedings of the 14th annual ACM symposium on User interface software and technology
Types and programming languages
Types and programming languages
End-user software engineering with assertions in the spreadsheet paradigm
Proceedings of the 25th International Conference on Software Engineering
A Risk and Control Oriented Study of the Practices of Spreadsheet Application Developers
HICSS '96 Proceedings of the 29th Hawaii International Conference on System Sciences Volume 2: Decision Support and Knowledge-Based Systems
Estimating the Numbers of End Users and End User Programmers
VLHCC '05 Proceedings of the 2005 IEEE Symposium on Visual Languages and Human-Centric Computing
Koala: capture, share, automate, personalize business processes on the web
Proceedings of the SIGCHI Conference on Human Factors in Computing Systems
Scenario-Based Requirements for Web Macro Tools
VLHCC '07 Proceedings of the IEEE Symposium on Visual Languages and Human-Centric Computing
Toped: enabling end-user programmers to validate data
CHI '08 Extended Abstracts on Human Factors in Computing Systems
Topes: reusable abstractions for validating data
Proceedings of the 30th international conference on Software engineering
Accommodating data heterogeneity in ULS systems
Proceedings of the 2nd international workshop on Ultra-large-scale software-intensive systems
Using scenario-based requirements to direct research on web macro tools
Journal of Visual Languages and Computing
Fast, Accurate Creation of Data Validation Formats by End-User Developers
IS-EUD '09 Proceedings of the 2nd International Symposium on End-User Development
Debugging support for end user mashup programming
Proceedings of the SIGCHI Conference on Human Factors in Computing Systems
Hi-index | 0.00 |
End-user programming tools offer no data types except "string" for many categories of data, such as person names and street addresses. Consequently, these tools cannot automatically validate or reformat these data. To address this problem, we have developed a user-extensible model for string-like data. Each "tope" in this model is a user-defined abstraction that guides the interpretation of strings as a particular kind of data. Specifically, each tope implementation contains software functions for recognizing and reformatting instances of that tope's kind of data. This makes it possible at runtime to distinguish between invalid data, valid data, and questionable data that could be valid or invalid. Once identified, questionable and/or invalid data can be double-checked and possibly corrected, thereby increasing the overall reliability of the data. Valid data can be automatically reformatted to any of the formats appropriate for that kind of data. To show the general applicability of topes, we describe new features that topes have enabled us to provide in four tools.