Construction of a Taxonomy for Tools, Languages, and Environments across Computing Education

The sheer number of tools, languages, and environments (TLEs) used in computing education has proliferated in the last few years as more tools are developed to meet new demands of the growing amount of K-12 computing education that has been undertaken. However, there is little formalized language at either the K-12 or post-secondary level that provides for a way to classify these TLEs for discussing research and for classifying in databases. In this research study, we step through a formal process for building a taxonomy for TLEs. As part of the supporting research, we first discuss the importance of taxonomies and classification systems in computing education, provide a formal method for building a taxonomy, and provide working definitions of TLEs based on previous literature. This is followed by a systematic literature review using a widely-accepted methodology for finding articles that have examined TLEs in primary, secondary, and post-secondary computing education. This literature review focuses on studies that looked at multiple TLEs and specifically attempted to classify or categorize them. We then propose a new taxonomy for classifying TLEs and provide definitions and samples for each category. This is followed by a discussion of the next steps in vetting the taxonomy and the challenges and issues that need to be considered when evaluating it for classifying TLEs in computing education.

[1]  Matt Bower A taxonomy of task types in computing , 2008, ITiCSE.

[2]  Hironori Washizaki,et al.  Program learning for beginners: Survey and taxonomy of programming learning tools , 2017, 2017 IEEE 9th International Conference on Engineering Education (ICEED).

[3]  Cecile Yehezkel A taxonomy of computer architecture visualizations , 2002, ITiCSE '02.

[4]  Stephen H. Edwards,et al.  Increasing Adoption of Smart Learning Content for Computer Science Education , 2014, ITiCSE-WGR.

[5]  Lisa Tompson,et al.  Interrater Reliability in Systematic Review Methodology: Exploring Variation in Coder Decision-Making , 2018, Sociological Methods & Research.

[6]  Margaret M. Burnett,et al.  A Classification System for Visual Programming Languages , 1994, J. Vis. Lang. Comput..

[7]  Anabela Gomes,et al.  Bloom’s Taxonomy Based Approach to Learn Basic Programming Loops , 2009, 2018 IEEE Frontiers in Education Conference (FIE).

[8]  Margaret M. Burnett,et al.  Gender: An Important Factor in End-User Programming Environments? , 2004, 2004 IEEE Symposium on Visual Languages - Human Centric Computing.

[9]  Timothy W. Finin,et al.  Enabling Technology for Knowledge Sharing , 1991, AI Mag..

[10]  Adidah Lajis,et al.  Proposed Assessment Framework Based on Bloom Taxonomy Cognitive Competency: Introduction to Programming , 2018, ICSCA.

[11]  A. Schuchat DEPARTMENT OF HEALTH & HUMAN SERVICES , 2015 .

[12]  A. Nico Habermann,et al.  Software Development Environments , 1987, Computer.

[13]  Benjamin S. Bloom,et al.  Taxonomy of Educational Objectives: The Classification of Educational Goals. , 1957 .

[14]  G. Antes,et al.  Five Steps to Conducting a Systematic Review , 2003, Journal of the Royal Society of Medicine.

[15]  Lauri Malmi,et al.  A Review of Generic Program Visualization Systems for Introductory Programming Education , 2013, TOCE.

[16]  Monica M. McGill,et al.  Tools, Languages, and Environments Used in Primary and Secondary Computing Education , 2020, ITiCSE.

[17]  David D. Chen A Classification System for Metaphors about Teaching , 2003 .

[18]  Gruia-Catalin Roman,et al.  A taxonomy of program visualization systems , 1993, Computer.

[19]  David Scaradozzi,et al.  Towards a Definition of Educational Robotics: A Classification of Tools, Experiences and Assessments , 2019, Smart Learning with Educational Robotics.

[20]  Mercedes Gómez-Albarrán,et al.  The Teaching and Learning of Programming: A Survey of Supporting Software Tools , 2005, Comput. J..

[21]  Ari Korhonen,et al.  Taxonomy of effortless creation of algorithm visualizations , 2005, ICER '05.

[22]  Spiros Mancoridis A multi-dimensional taxonomy of software development environments , 1993, CASCON.

[23]  Kevin F. Collis,et al.  Evaluating the Quality of Learning: The SOLO Taxonomy , 1977 .

[24]  Kevin R. Parker,et al.  A Formal Language Selection Process for Introductory Programming Courses , 2006, J. Inf. Technol. Educ..

[25]  Ephraim P. Glinert,et al.  Visual Programming Environments: Paradigms and Systems , 1990 .

[26]  Melvil Dewey Decimal classification and relative index , 1942 .

[27]  Zacharias C. Zacharia,et al.  The Use of Computer‐based Programming Environments as Computer Modelling Tools in Early Science Education: The cases of textual and graphical program languages , 2008 .

[28]  G. Singh,et al.  Graphical support for programming: a survey and taxonomy , 1990 .

[29]  J. Stanley,et al.  Book Review: Taxonomy of Educational Objectives, The Classification of Educational Goals, Handbook I: Cognitive Domain , 1957 .

[30]  Michael Derntl,et al.  A Classification Framework for Educational Modeling Languages in Instructional Design , 2006 .

[31]  Graham Cooper,et al.  Trends in introductory programming courses in Australian universities: languages, environments and pedagogy , 2012, ACE 2012.

[32]  Cynthia J. Finelli,et al.  Development of a Taxonomy of Keywords for Engineering Education Research , 2015, IEEE Transactions on Education.

[33]  Suzanne Rivard,et al.  An Information Systems Keyword Classification Scheme , 1988, MIS Q..

[34]  M. H. Brown Perspectives on algorithm animation , 1988, CHI '88.

[35]  Fadi P. Deek,et al.  A Survey and Critical Analysis of Tools for Learning Programming , 1998, Comput. Sci. Educ..

[36]  Raymond Lister,et al.  Not seeing the forest for the trees: novice programmers and the SOLO taxonomy , 2006, ITICSE '06.

[37]  Rafi Nachmias,et al.  Taxonomy of Scientifically Oriented Educational Websites , 2001 .

[38]  John T. Stasko,et al.  Understanding and characterizing software visualization systems , 1992, Proceedings IEEE Workshop on Visual Languages.

[39]  Paul Benjamin Lowry,et al.  The Interactive Digital Entertainment (IDE) Unification Framework: Creating a Taxonomy of IDE and Lifestyle Computing , 2007, 2007 40th Annual Hawaii International Conference on System Sciences (HICSS'07).

[40]  Goran Bubaš,et al.  Taxonomy of Web 2.0 Applications with Educational Potential , 2012 .

[41]  Blaine A. Price,et al.  A Principled Taxonomy of Software Visualization , 1993, J. Vis. Lang. Comput..

[42]  Marian Petre,et al.  Usability Analysis of Visual Programming Environments: A 'Cognitive Dimensions' Framework , 1996, J. Vis. Lang. Comput..

[43]  Daniel D. Garcia,et al.  Introduction to the special issue on concurrent and parallel programming , 2013, TOCE.

[44]  Thomas L. Naps,et al.  Exploring the role of visualization and engagement in computer science education , 2003, ITiCSE-WGR '02.

[45]  YehezkelCecile A taxonomy of computer architecture visualizations , 2002 .

[46]  Merlin Dorfman,et al.  Tools And Environments , 1991 .

[47]  Timothy W. Finin,et al.  Swartout: Enabling technology for knowledge sharing , 1991 .

[48]  Brad A. Myers,et al.  Taxonomies of visual programming and program visualization , 1990, J. Vis. Lang. Comput..

[49]  Lauri Malmi,et al.  A survey of literature on the teaching of introductory programming , 2007, ITiCSE-WGR '07.

[50]  Markus Vincze,et al.  Towards a Formal Definition of Educational Robotics , 2018, Proceedings of the Austrian Robotics Workshop 2018.

[51]  Caitlin Kelleher,et al.  Lowering the barriers to programming: A taxonomy of programming environments and languages for novice programmers , 2005, CSUR.

[52]  SimonBeth,et al.  Not seeing the forest for the trees , 2006 .

[53]  Andy Cockburn,et al.  A language and task-based taxonomy of programming environments , 2003, IEEE Symposium on Human Centric Computing Languages and Environments, 2003. Proceedings. 2003.

[54]  Katrin Baumgartner,et al.  Visual Programming Environments Applications And Issues , 2016 .

[55]  Cruz Izu,et al.  A Study of Code Design Skills in Novice Programmers using the SOLO taxonomy , 2016, ICER.

[56]  Francesco Maiorana,et al.  An International Study Piloting the MEasuring TeacheR Enacted Computing Curriculum (METRECC) Instrument , 2019, ITiCSE-WGR.

[57]  D. Krathwohl A Revision of Bloom's Taxonomy: An Overview , 2002 .

[58]  Arto Kaarna,et al.  Classification of computerized learning tools for introductory programming courses: learning approach , 2004, IEEE International Conference on Advanced Learning Technologies, 2004. Proceedings..

[59]  Peter Brusilovsky,et al.  One Practical Algorithm of Creating Teaching Ontologies , 2005 .

[60]  T.R.G. Green Visual Programming, N.C. Shu. Van Nostrand Reinhold, New York (1988), 315 pp, ISBN: 0-442-28014-9 , 1991 .

[61]  Lillian N. Cassel,et al.  ACM Task Force on Data Science Education: Draft Report and Opportunity for Feedback , 2019, SIGCSE.

[62]  Monica McGill,et al.  Exploring the Enacted Computing Curriculum in K-12 Schools in South Asia: Bangladesh, Nepal, Pakistan, and Sri Lanka , 2020, ICER.

[63]  Yassine Jamoussi,et al.  Comprehensive classification of collaboration approaches in E-learning , 2017, Telematics Informatics.

[64]  Gail E. Kaiser,et al.  Models of software development environments , 1988, ICSE '88.

[65]  Charles H Calisher Taxonomy: what's in a name? Doesn't a rose by any other name smell as sweet? , 2007, Croatian medical journal.

[66]  Athanassios Jimoyiannis,et al.  Secondary education students’ difficulties in algorithmic problems with arrays: An analysis using the SOLO taxonomy , 2017 .

[67]  B. A. Myers,et al.  Visual programming, programming by example, and program visualization: a taxonomy , 1986, CHI '86.

[68]  Ursula Fuller,et al.  Developing a computer science-specific learning taxonomy , 2007, ITiCSE-WGR '07.