skip to main content
article

Explaining spreadsheets with spreadsheets (short paper)

Published:07 April 2020Publication History
Skip Abstract Section

Abstract

Based on the concept of explanation sheets, we present an approach to make spreadsheets easier to understand and thus easier to use and maintain. We identify the notion of explanation soundness and show that explanation sheets which conform to simple rules of formula coverage provide sound explanations. We also present a practical evaluation of explanation sheets based on samples drawn from widely used spreadsheet corpora and based on a small user study.

In addition to supporting spreadsheet understanding and maintenance, our work on explanation sheets has also uncovered several general principles of explanation languages that can help guide the design of explanations for other programming and domain-specific languages.

References

  1. R. Abraham and M. Erwig. 2004. Header and Unit Inference for Spreadsheets Through Spatial Analyses. In IEEE Int. Symp. on Visual Languages and Human-Centric Computing. 165-172. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. R. Abraham and M. Erwig. 2006. Inferring Templates from Spreadsheets. In 28th IEEE Int. Conf. on Software Engineering. 182-191. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. R. Abraham and M. Erwig. 2007. UCheck: A Spreadsheet Unit Checker for End Users. Journal of Visual Languages and Computing 18, 1 (2007), 71-95. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. R. Abraham, M. Erwig, and S. Andrew. 2007. A Type System Based on End-User Vocabulary. In IEEE Int. Symp. on Visual Languages and Human-Centric Computing. 215-222. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Sorin Adam and Ulrik Pagh Schultz. 2015. Towards Tool Support for Spreadsheet-based Domain-specific Languages. SIGPLAN Not. 51, 3 (Oct. 2015), 95-98. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Domenico Amalfitano, Vincenzo De Simone, Anna Rita Fasolino, and Porfirio Tramontana. 2016. EXACT: A tool for comprehending VBA-based Excel spreadsheet applications. Journal of Software: Evolution and Process 28, 6 (2016), 483-505. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Domenico Amalfitano, Anna Rita Fasolino, Porfirio Tramontana, Vincenzo De Simone, Giancarlo Di Mare, and Stefano Scala. 2015. A Reverse Engineering Process for Inferring Data Models from Spreadsheet-based Information Systems: An Automotive Industrial Experience. In Data Management Technologies and Applications. 136-153.Google ScholarGoogle ScholarCross RefCross Ref
  8. Brian Bishop and Kevin McDaid. 2008. An Empirical Study of End-User Behaviour in Spreadsheet Error Detection & Correction. CoRR abs/0802.3479 (2008).Google ScholarGoogle Scholar
  9. Diogo Canteiro and Jácome Cunha. 2015. SpreadsheetDoc: An Excel Add-in for Documenting Spreadsheets. In Proceedings of the 6th National Symposium of Informatics.Google ScholarGoogle Scholar
  10. C. Chambers and M. Erwig. 2010. Reasoning about Spreadsheets with Labels and Dimensions. Journal of Visual Languages and Computing 21, 5 (2010), 249-262. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Zhe Chen and Michael Cafarella. 2013. Automatic Web Spreadsheet Data Extraction. In 3rd InternationalWorkshop on Semantic Search Over the Web. Article 1, 8 pages. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. J. Cuna, M. Erwig, and J. Saraiva. 2010. Automatically Inferring ClassSheet Models from Spreadsheets. In IEEE Int. Symp. on Visual Languages and Human-Centric Computing. 93-100. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Jácome Cunha, Martin Erwig, Jorge Mendes, and João Saraiva. 2016. Model inference for spreadsheets. Automated Software Engineering 23, 3 (2016), 361-392. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. Jácome Cunha, João Saraiva, and Joost Visser. 2009. From Spreadsheets to Relational Databases and Back. In 2009 ACM SIGPLAN Symposium on Partial Evaluation and Semantics-based Program Manipulation. 179-188. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Wensheng Dou, Shi Han, Liang Xu, Dongmei Zhang, and Jun Wei. 2018. Expandable Group Identification in Spreadsheets. In 33rd ACM/IEEE Int. Conf. on Automated Software Engineering. 498-508. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. G. Engels and M. Erwig. 2005. ClassSheets: Automatic Generation of Spreadsheet Applications from Object-Oriented Specifications. In 20th IEEE/ACM Int. Conf. on Automated Software Engineering. 124-133. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. M. Erwig, R. Abraham, I. Cooperstein, and S. Kollmansberger. 2005. Automatic Generation and Maintenance of Correct Spreadsheets. In 27th IEEE Int. Conf. on Software Engineering. 136-145. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. M. Erwig, R. Abraham, S. Kollmansberger, and I. Cooperstein. 2006. Gencel-A Program Generator for Correct Spreadsheets. Journal of Functional Programming 16, 3 (2006), 293-325. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. M. Erwig and M. M. Burnett. 2002. Adding Apples and Oranges. In 4th Int. Symp. on Practical Aspects of Declarative Languages (LNCS 2257). 173-191. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. M. Erwig and E. Walkingshaw. 2013. A Visual Language for Explaining Probabilistic Reasoning. Journal of Visual Languages and Computing 24, 2 (2013), 88-109. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. Marc Fisher and Gregg Rothermel. 2005. The EUSES Spreadsheet Corpus: A Shared Resource for Supporting Experimentation with Spreadsheet Dependability Mechanisms. SIGSOFT Softw. Eng. Notes 30, 4 (May 2005), 1-5. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. Felienne Hermans and Emerson Murphy-Hill. 2015. Enron's Spreadsheets and Related Emails: A Dataset and Analysis. In 37th Int. Conf. on Software Engineering. 7-16. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. Felienne Hermans, Martin Pinzger, and Arie van Deursen. 2010. Automatically Extracting Class Diagrams from Spreadsheets. In European Conference on Object-Oriented Programming 2010. 52-75. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. Felienne Hermans, Martin Pinzger, and Arie van Deursen. 2011. Breviz: Visualizing Spreadsheets using Dataflow Diagrams. CoRR abs/1111.6895 (2011).Google ScholarGoogle Scholar
  25. Felienne Hermans, Martin Pinzger, and Arie van Deursen. 2011. Supporting Professional Spreadsheet Users by Generating Leveled Dataflow Diagrams. In 33rd Int. Conf. on Software Engineering. 451-460. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. B. Kankuzi and J. Sajaniemi. 2014. Visualizing the problem domain for spreadsheet users: A mental model perspective. In IEEE Symp. on Visual Languages and Human-Centric Computing. 157-160.Google ScholarGoogle Scholar
  27. Bennett Kankuzi and Jorma Sajaniemi. 2016. A mental model perspective for tool development and paradigm shift in spreadsheets. International Journal of Human-Computer Studies 86 (2016), 149-163. Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. Ruth McKeever, Kevin McDaid, and Brian Bishop. 2009. An Exploratory Analysis of the Impact of Named Ranges on the Debugging Performance of Novice Users. CoRR abs/0908.0935 (2009).Google ScholarGoogle Scholar
  29. B. A. Nardi and J. R. Miller. 1991. Int. Journal of Man-Machine Studies. (1991), 161-184. Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. Santanu Paul, Atul Prakash, Erich Buss, and John Henshaw. 1991. Theories and Techniques of Program Understanding. In Conf. of the Centre for Advanced Studies on Collaborative Research. 37-53. Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. Stephen G. Powell and Kenneth R. Baker. 2003. The Art of Modeling with Spreadsheets. John Wiley & Sons, Inc., New York, NY, USA. Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. R. Pressman. 2001. Software Engineering: A Practitioner's Approach (5th ed.). McGraw-Hill, New York, NY. Google ScholarGoogle ScholarDigital LibraryDigital Library
  33. C. Verhoef. 2000. How to Implement the Future. In 26th Euromicro Conference. 32-47.Google ScholarGoogle ScholarCross RefCross Ref
  34. A. von Mayrhauser, M. Vans, and A. Howe. 1997. Understanding Behaviour During Enhancement of Large-scale Software. Journal on Software Maintenance: Research and Practice 9, 5 (1997), 299-327. Google ScholarGoogle ScholarDigital LibraryDigital Library
  35. E. Walkingshaw and M. Erwig. 2011. A DSEL for Studying and Explaining Causation. In IFIP Working Conference on Domain-Specific Languages. 143-167.Google ScholarGoogle Scholar

Index Terms

  1. Explaining spreadsheets with spreadsheets (short paper)

      Recommendations

      Comments

      Login options

      Check if you have access through your login credentials or your institution to get full access on this article.

      Sign in

      Full Access

      • Published in

        cover image ACM SIGPLAN Notices
        ACM SIGPLAN Notices  Volume 53, Issue 9
        GPCE '18
        September 2018
        214 pages
        ISSN:0362-1340
        EISSN:1558-1160
        DOI:10.1145/3393934
        Issue’s Table of Contents
        • cover image ACM Conferences
          GPCE 2018: Proceedings of the 17th ACM SIGPLAN International Conference on Generative Programming: Concepts and Experiences
          November 2018
          214 pages
          ISBN:9781450360456
          DOI:10.1145/3278122

        Copyright © 2018 ACM

        Publisher

        Association for Computing Machinery

        New York, NY, United States

        Publication History

        • Published: 7 April 2020

        Check for updates

        Qualifiers

        • article
      • Article Metrics

        • Downloads (Last 12 months)17
        • Downloads (Last 6 weeks)4

        Other Metrics

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader
      About Cookies On This Site

      We use cookies to ensure that we give you the best experience on our website.

      Learn more

      Got it!