{'fraction_non_alphanumeric': 0.04039851105758704, 'fraction_numerical': 0.021184585066783446, 'mean_word_length': 5.687042459736457, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 1, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
Computer science education teaching methods: An overview of the literature

There are so many teaching methods that it is difficult to keep up with them all. While there is an extensive range of standard reference works for most educational subjects containing overviews of the related methods, there is as yet no such work for computer science education in either the German-language or English-language literature addressing the application of teaching methods for school. This article is intended as a contribution toward closing that gap to the extent that it provides an overview of the available literature on computer science education teaching methods.


Introduction
Answers to the questions of which teaching methods are appropriate for school, which teaching methods should be applied in teaching specific subjects and how teaching methods support the act of learning represent challenges faced by general education and education in specific subjects. The associated literature describes a broad spectrum of teaching methods ranging from methods of conveying and acquiring knowledge to management methods for games, movement, emotions, groups, health, violence and conflicts. The few published articles on computer science education teaching methods concentrate for one on examples of teaching with methodological references to aspects such as direct instruction, inductive approaches to research-based learning and to experiment. The other focus of such articles assumes empirical standpoints related to computer science education in addressing widely varying topics of learning and teaching, e.g. constructivist teaching activities, "eXtreme teaching" and the effectiveness of two-person team programming. This article is aimed at presenting researched literature on computer science education teaching methods. It is structured as follows: Section 2 contains the applied method and the principle procedure regarding the content. Section 3 contains the identified literature, and Section 4 contains the conclusions.

Method
A systematic search for literature references was conducted for the overview of computer science education teaching methods. A three-stage procedure was applied in the search: (1) First, the important national and international magazines for the research were identified: Computer Science Education, The ACM Transactions on Computing Education (previously ACM Journal on Educational Resources in Computing), ACM SIGCSE Bulletin, International Journal of Research Studies in Computing, Journal of Educational Computing Research, and LOG IN. (2) In the second step the identified magazines published from the year 2000 onwards were searched online using the search terms instructional methods, teaching methods, and teaching tool. (3) Relevant hits from the search were then searched themselves for relevant secondary literature in the third step.

Findings
The "Findings" section is structured as follows: Teaching methods are first classified and their concepts are clarified. The next four sections address teaching methods from a general educational perspective with important teaching method standpoints in the context of educational theories, educational functions and empirical findings. The sixth section is then comprised of teaching methods for the specific subject of computer science.

Teaching Methods: Classification and Concept Clarification
Meyer (2002) is the source of the very general definition stating that teaching methods are the forms and procedures with which teachers and school pupils appropriate the natural and social reality surrounding them while observing the institutional framework conditions of the school. Meyer (2002) classifies the teaching methods as macro, meso and micro methodology depending on their scope and range. Macro methodology includes so-called large forms/basic forms of teachings such lesson, free work and project work. Meso methodology accounts for social forms (individual work, group teaching, tandem work and more), patterns of action (presentation, textual work, blackboard work and many more) and progressive aspects (entry, formulation, assuring results and more). Micro methodology is affiliated with presentation techniques such as demonstrating, alienating and speaking out loud.
There is a broad spectrum of teaching methods for the patterns of action at the level of meso methodology Computer science education teaching methods: An overview of the literature International Journal of Research Studies in Computing 5 (e.g. Meyer, 1987;Thal & Ebert, 2004;Roschitsch & Müller, 2004;Bönsch & Kaiser, 2006;Mattes, 2011;Klippert, 2012): They range from methods of conveying and acquiring knowledge to management methods for games, movement, emotions, groups, health, violence and conflicts. Franzke (2015) addresses this broad spectrum from a critical standpoint. There are so many teaching methods that it is difficult to keep up with them all. Gugel (2011) cites 2,000 methods including their variations. There are well-prepared collections of teaching methods available on the Internet, for instance from the Education Ministry of the German state of North-Rhine Westphalia (2015) or from Reich (2015).
According to the general definition of what a teaching method is (see above) there are very divergent views on precisely what is meant by "teaching methods" when they are discussed in the literature. There are also numerous synonyms depending on whether teaching methods are addressed in the context of learning forms, teaching forms as well as teaching approaches and principles. The monograph from Schröder (2004) is helpful in bringing order to the variety of concepts. A stricter definition of method (than the one formulated above) which also represents the conceptual starting point for this article comes from Huber and Hader-Popp (2007): "The word method is understood to mean a clearly defined, conceptually perceivable and independent, if also integrated, component of teaching." (Huber & Hader-Popp, 2007, p. 3). In this regard the monographs from Peterßen (2009) are of particular interest in the German-language literature due to their consistent concepts, as are those from Brenner and Brenner (2011) because of their good description scheme. It is notable in the English-language literature that the discussion is not about teaching methods, but from a technical viewpoint often addresses tools for teaching. Good teaching "tool overviews" are provided by authors such as Ginnis (2001), Davis (2009) andPetty (2009). From this technical perspective methods are the basis for the targeted application of techniques in a teaching-learning context in which the technique comprises the manner of the application of one or more instruments (cf. Austria's Federal Ministry of Education, Arts and Culture, 2015).

Teaching Methods in the Context of Educational Theories
Many theoretical learning-teaching approaches make a distinction between learning phases/processes/cycles for which teaching methodology aids are formulated; overviews of such are provided by Kron (2008) as well as Straka and Macke (2006). Roth (1970), whose educational psychology of learning approach comprises six learning phases (motivation, difficulty, solution, action and execution, retention and practice as well as provision, transfer and integration of what has been learned) recommends for his first learning phase, motivation, "…linking (it) to the interests of the individual learning, awakening new interests, moving children to act". In his theory of discovery learning Bruner (1966, p. 48;1972) emphasizes three learning processes (acquisition of new information, transformation, evaluation) in the act of learning for which Eigler, Judith, Künzel, and Schönwäldler (1973, p. 89) formulate process-oriented (e.g. analysis of the problem, production of hypotheses, testing hypotheses) and product-oriented teaching aids (e.g. directing attention, giving clues and partial solutions) (on this also refer to Straka & Macke,p. 117). The "Cognitive Apprenticeship" approach from Collins, Brown and Newman (1989), which has situated learning at its core, reveals six teaching techniques: modeling, coaching, scaffolding and fading, articulation, reflection, and exploration. Problem-oriented learning in learning cycles plays an important role in Mandl's theoretical learning position (Reinmann-Rothmeier & Mandl, 2001). The learning nine cycles are: foresight and reflection, confrontation with the introductory problem, idea production, multiple perspectives, research and improvement, self-testing and self-evaluation, public depiction, continuing intensification, reflection and review.

Learning Phases and Educational Functions
"There are numerous variations in educational literature relating teaching to learning as an action spread over time and to phases which can be distinguished during the course of learning" (Straka & Macke, 2005, p. 210). What all of the variations have in common is that learning (1) has a starting point, (2) a sequential form and (3) a (preliminary) end point. Educational literature describes this three-step pattern as the classic three-step divided into the steps labeled entry, work phase and graduation.
These three steps have particularly large distinctions in their educational functions (cf. Straka & Macke, 2005, pp. 209-215). Six educational functions can be cited for entry: identification of the learning prerequisites, the activation of prior knowledge, providing information on teaching objectives and motivate, establish, legitimize and initiate. Six educational functions can also be distinguished for graduation: conclude, secure, test, report, evaluate and open. The work phase is comprised of three educational functions: stimulating learning activity, supporting learning activity and directing learning activity. This phase is of particular interest for three processes in the act of learning. This indicates the processes in the acquisition of knowledge (build, work through), in the transformation of knowledge (apply, transfer) and in the evaluation of knowledge (assess, integrate).

Empirical Findings on Teaching Methods
There are numerous empirical findings on the effectiveness of learning. In his compilation drawing on 800 meta-analyses into which more than 50,000 studies were included Hattie (2009, dt. Hattie, Beywl, & Zierer, 2013 provides information on the influences on learning with respect to six domains: contributions of the person learning, the parental home, the school, the instructor, the curricula and teaching. In particular, the domain of teaching (Hattie. 2009, Chapter 9 and 10) provides information on the effectiveness of teaching methods/approaches. High effect sizes (d > .50) were demonstrated for microteaching (d = .88), reciprocal teaching (d = .74), feedback (d = .73), problem solving (d = .61), direct instruction (d = .59), mastery learning (d = .58), case studies (d = .57), concept mapping (d = .57), peer tutoring (d = .55), cooperative (vs. competitive) learning (d = .54) and interactive instructional videos (d = .52). In the German-language educational literature, Wellenreuther (2013) compiles important research works on the effectiveness of teaching methods, particularly on direct instruction, action-oriented teaching, open teaching and on methods of cooperative learning.

Application of Teaching Methods in the Teaching of Specific Subjects
The available educational literature provides specific information in response to the question regarding which teaching methods are to be applied in teaching specific subjects for most subjects, e.g. Spörhase and Ruppert (2010) for biology, Rabe and Mikelskis-Seifert (2010) for physics and Barzel, Büchter and Leuders (2011) for mathematics. Textbook publisher Cornelsen (2015) has published methodological manuals for 14 educational subjects in its "Methodik" ('Methodology') series, but none for the subject of computer science.

Teaching Methods for the Subject of Computer Science
There is as yet no standard reference work in either German or English for computer science education which extensively addresses the application of teaching methods for school. The German-language literature contains a few brief chapters on the application of learning assignments, group work, learning programs, discovery learning and project teaching (Hartmann, Näf, & Reichert, 2006), problem solving and project teaching (Humbert, 2006), problem-orientation along with modeling and simulation (Hubwieser, 2007), problem solving, experiments and project teaching (Schubert & Schwill, 2012). The English-language literature contains descriptions on the application of "solving problems" (Koffmann, & Brinda, 2003), "group work" (Irons, Alexander & Alexander, 2004), "rich tasks", "concept maps" (Hazzan, Lapidot, & Ragonis, 2011) and "visualizations" (Fincher & Petre, 2004;Agneli, Kadijevich, & Schulte, 2013).
The roots of computer science -Computer science has its roots in mathematics on the one hand and in technical and engineering sciences on the other (Biglan, 1973;Becher, 1989;Becher & Trowler, 2001). It therefore makes sense to look for teaching methodology recommendations in the educational subjects of mathematics and technology. Approaches to problem solving, modeling and microteaching are teaching methods that are highly valued in mathematics (Leuders, 2003;Zech, 1998). Important methodological approaches in engineering and technology teaching include experimenting, learning supported by learning guidelines, moderation, case study and role-play (Hüttner, 2009;Schmayl, 2013).
Computer science education teaching methods: An overview of the literature

Magazines and conference reports on computer science education -
The search through the English-language magazines and conference reports on computer science education (Journal of Educational Computing Research, Computer Science Education, ACM Transaction on Computing Education, Special Interest Group Computer Science Education Bulletin) provided findings related to computer science education in regard to constructivist teaching activities (Gorp, van, & Grissom, 2001), the "eXtreme teaching" approach (Andersson & Bendix, 2006), holistic teaching and learning (Thota, & Whitfield 2010), the influence of teaching methods on the design of computer programs (Hung, 2012), the effect of games on motivation in teaching (Freitas, de, & Freitas, de 2013), the reduction of learning content (Kilpeläinen, 2010), the application of formal modeling (Carro, Herranz, & Mariño, 2013), the effectiveness of two-person team programming (Braught, Wahlks, & Eby, 2011) and the application of the experiment (Schulte, 2012).
Curricula for computer science education -Whereas the curricula from ACM (2003,2008,2013) contains no statements regarding teaching methods, the "Bildungsstandards Informatik für die Sekundarstufe I" ('Computer Science Educational Standards for Lower Secondary Education') (GI, 2008) recommend various teaching methods (e.g. direct instruction, project, group and free work) and learning forms (e.g. subject-related, interdisciplinary, self-directed learning) against the backdrop of the theses by Weinert (1997) and the demand for context-oriented computer science education.
Educational neuroscience in computer science education -Educational neuroscience can be understood as an interdisciplinary approach with recommendations for mnemonic teaching and learning (cf. Herrmann, 2009;Howard-Jones, 2010;Cozolino, 2013;Grein, 2013) on the basis of neurobiological findings (cf. Thompson, 2010). In view of twelve educational teaching-learning principles (e.g. the brain is a living system, the brain/mind is designed for social conduct, the search for meaning takes place through the formation of neuronal patterns -(cf. Arnold, 2002Arnold, , 2009) and additional neuro-educational principles (e.g. school pupils should structure material to be learned by themselves; teachers should provide an overview at the beginning of the teaching; demands should be reduced during the absorption of new content -(cf. Brand & Markowitsch, 2009), Sabitzer (2010 presents three teaching units (on hardware components, databases and spreadsheets, EDP in a small business) with methodological grounds and explicit neuro-educational references such as priming, activating prior knowledge, personal relation, relation to actual practice, learning through teaching, re-encoding, networking.

Conclusions
This article assesses the availability of teaching methods in the national and international context, applies both literature on teaching methods within the framework of educational theories and articles as well as empirical findings from magazines and conferences on computer science education, from the computer science educational magazine LOG IN, from computer science education curricula and from neuro-educational assertions. The few published articles on computer science education teaching methods concentrate for one on examples of teaching with methodological references. The other focus of such articles assumes empirical standpoints related to computer science education in addressing widely varying topics of learning and teaching, e.g. constructivist teaching activities, "eXtreme teaching" and the effectiveness of two-person team programming.
In light of the fact that there is little approved material on computer science education teaching methods, it is necessary in a research project to initially pursue three objectives: (1) Taking stock of teaching methods in the subject of computer science: What teaching methods are currently applied in computer science education? (2) Teaching methods for the subject of computer science: What teaching methods are suitable for computer science education? (3) The specific application of teaching methods for the subject of computer science: To what extent do teaching methods support the act of learning in computer science education?
When these questions are clarified in the context of empirical computer science education, comparative studies should be conducted under the application of the experimental paradigm on the effectiveness of teaching methods in computer science education at school.