Orna Muller - Academia.edu (original) (raw)
Papers by Orna Muller
2015 IEEE Frontiers in Education Conference (FIE), 2015
2011 Frontiers in Education Conference (FIE), 2011
Undergraduate students often start their academic course of studies with inadequate learning and ... more Undergraduate students often start their academic course of studies with inadequate learning and thinking skills. Our college has a policy of setting high standards, while supporting students' learning in a variety of ways. In this paper we present two distinctive courses designed to aid students develop logical and algorithmic thinking, essential for coping with software engineering studies. The courses are taught independently from but in parallel to Introduction to Computer Science and Math courses of first semester. Courses elaborate on algorithmic thinking, logical reasoning and argumentation while explicating abstract ideas which are often hidden in a loaded curriculum of the disciplinary courses. At the same time, connections are made to the application of the abstract ideas in the disciplinary courses. Feedback from participants in the two courses demonstrates an increased awareness and appreciation of abstract ideas beyond mathematical and programming knowledge, improved problem-solving skills and deeper understanding of concepts and principles.
Lecture Notes in Computer Science, 2000
ABSTRACT Instructional design has a significant influence on the construction of knowledge, espec... more ABSTRACT Instructional design has a significant influence on the construction of knowledge, especially for novices. Specifically, the way the instruction of algorithmic problem solving is designed has a significant effect on the development of the student’s capabilities to analyze and solve problems. We present a pedagogical approach regarding teaching algorithmic problem solving, which is based on the assimilation of a new concept by demonstrating its different facets through a variety of relevant examples. The approach aims to support multi-facet problem comprehension, as well as to enhance the student’s ability to utilize algorithmic ideas in different contexts. The approach was introduced to computer science teachers through a workshop activity aimed at discussing the topic of evaluating the complexity level of problems and their challenging characteristics. We think that an activity of this kind is beneficial for raising teachers’ awareness of the way they select problems in order to develop students’ problem-solving skills.
2012 Frontiers in Education Conference Proceedings, 2012
ABSTRACT Colleges of engineering increase accessibility to higher education in the Science, Techn... more ABSTRACT Colleges of engineering increase accessibility to higher education in the Science, Technology, Engineering and Mathematics (STEM) fields. There is often a need to promote students' learning and thinking skills in order to maintain high academic standards and at the same time avoid high rates of failure and dropout. In addition, academic staff with high pedagogical qualifications is an essential requirement. Establishing a Teaching and Learning Center (TLC) is an increasingly frequent process for achieving these goals. Such centers offer various programs for the promotion of teaching and learning in academic institutions. This article examines the factors that influence the significant role played by TLC in an institution, and the effectiveness of its curricula. The literature refers to several factors, such as the initiation of innovative programs and participation in the institutional strategy plan. In our college, the tight linkage between teaching and learning and the involvement of faculty members in TLC programs are highly influential factors.
2012 Frontiers in Education Conference Proceedings, 2012
2014 IEEE Frontiers in Education Conference (FIE) Proceedings, 2014
2008 38th Annual Frontiers in Education Conference, 2008
Abstraction is taught to computer-science students as part of a comprehensive curriculum. The stu... more Abstraction is taught to computer-science students as part of a comprehensive curriculum. The students encounter the concept of abstraction in various contexts while learning the different modules, each of which emphasizes some specific aspects of the concept. In this paper we present two instructional approaches, both related to utilizing abstraction in problem-solving processes: (1) pattern-oriented instruction (POI), and (2) abstract data type (ADT)-oriented instruction. We present these methods with respect to their employment in teaching problem solving to novices, and elaborate on abstraction processes.
ACM SIGCSE Bulletin, 2004
Importing design patterns from software engineering to the computer science education (CSE) field... more Importing design patterns from software engineering to the computer science education (CSE) field was followed by defining patterns and pattern languages suitable for CS courses. The main goal of incorporating patterns in CSE was to enhance students' programming abilities, as well as their design and problem-solving skills. Accordingly, various instructional materials were suggested for using patterns in classroom learning activities, such as collections of patterns and related programming assignments. However, the existing pattern-based materials seem to be insufficient for implementation in the classroom, especially when teaching introductory courses that emphasize syntax and programming language features. Therefore, alternative methods using applicative models for pattern-based instruction, which emphasize problem solving and program design issues rather than specific language features and syntax, should be developed and assimilated within the CS teaching community. We believe that successful implementation of such models should be accompanied by appropriate teachertraining.
ACM SIGCSE Bulletin, 2005
ABSTRACT Over the years educators have been debating about the most appropriate paradigm for teac... more ABSTRACT Over the years educators have been debating about the most appropriate paradigm for teaching an introductory course in computer science (CS). Specifically, the pedagogical approach known as "objects early" or "objects first" is controversial [2,3,4]. One important reason for educators to argue against the objects early approach is their concern that starting with objects results in the learning of algorithmic problem-solving to be neglected [4]. In this poster we present a pedagogical framework for an introductory multiple-goal course in OOP based on weaving algorithmic pattern-based problem solving activities into OOD/P instruction [5].
2010 IEEE Frontiers in Education Conference (FIE), 2010
Solving algorithmic problems and implementing them in code is a major theme in introductory compu... more Solving algorithmic problems and implementing them in code is a major theme in introductory computer science courses. Problems related to string manipulation are common and of great importance in various domains. In the context of computer science education, solving algorithmic problems of this type may be very challenging for novices, even for the more competent students. Analysis of novice students' solutions to a specific class of problems dealing with string manipulation revealed that a widespread intuitive and non-linear approach was used to solve these problems, which led to cumbersome and erroneous solutions. On the other hand, a straightforward linear approach that leads to shorter and more elegant solutions is uncommon. Uncovering students' common and unsatisfactory approaches in problem solving have significant implications on instruction.
ACM SIGCSE Bulletin, 2007
Undergraduate students often start their academic course of studies with inadequate learning and ... more Undergraduate students often start their academic course of studies with inadequate learning and thinking skills. Our college has a policy of setting high standards and demands, while supporting students' learning in a variety of ways. In this paper we present a distinctive course designed to aid students develop algorithmic problem-solving skills. The course is taught in parallel to a CS1 course and elaborates on activities such as analogical reasoning, prototyping problems, comparison between alternative solutions and reflection on problem-solving processes. It is one of the courses offered at our institution aimed at strengthening general learning and thinking skills, in addition to the regular disciplinary curriculum. Feedback from participants in the course demonstrates a developed awareness and appreciation of abstract ideas beyond programming knowledge. Students report on acquiring problem-solving skills that enable them to cope with compound problems. Additionally, stud...
Computer Science Education, 2008
ABSTRACT Abstraction is a major concept in computer science and serves as a powerful tool in soft... more ABSTRACT Abstraction is a major concept in computer science and serves as a powerful tool in software development. Pattern-oriented instruction (POI) is a pedagogical approach that incorporates patterns in an introductory computer science course in order to structure the learning of algorithmic problem solving. This paper examines abstraction processes in the course of solving an algorithmic problem and highlights three distinct, although interrelated, facets of abstraction: pattern recognition, black-boxing, and structure identification. A study that examined the influence of the POI approach on students' abstraction skills is described; students who learned according to the POI approach were compared with students who learned in a traditional manner with regard to analogical reasoning and problem decomposition and solution, as well as verbal expression. The three facets of abstraction were used to analyze students' abstraction skills and their competency in algorithmic problem solving.
2015 IEEE Frontiers in Education Conference (FIE), 2015
2011 Frontiers in Education Conference (FIE), 2011
Undergraduate students often start their academic course of studies with inadequate learning and ... more Undergraduate students often start their academic course of studies with inadequate learning and thinking skills. Our college has a policy of setting high standards, while supporting students' learning in a variety of ways. In this paper we present two distinctive courses designed to aid students develop logical and algorithmic thinking, essential for coping with software engineering studies. The courses are taught independently from but in parallel to Introduction to Computer Science and Math courses of first semester. Courses elaborate on algorithmic thinking, logical reasoning and argumentation while explicating abstract ideas which are often hidden in a loaded curriculum of the disciplinary courses. At the same time, connections are made to the application of the abstract ideas in the disciplinary courses. Feedback from participants in the two courses demonstrates an increased awareness and appreciation of abstract ideas beyond mathematical and programming knowledge, improved problem-solving skills and deeper understanding of concepts and principles.
Lecture Notes in Computer Science, 2000
ABSTRACT Instructional design has a significant influence on the construction of knowledge, espec... more ABSTRACT Instructional design has a significant influence on the construction of knowledge, especially for novices. Specifically, the way the instruction of algorithmic problem solving is designed has a significant effect on the development of the student’s capabilities to analyze and solve problems. We present a pedagogical approach regarding teaching algorithmic problem solving, which is based on the assimilation of a new concept by demonstrating its different facets through a variety of relevant examples. The approach aims to support multi-facet problem comprehension, as well as to enhance the student’s ability to utilize algorithmic ideas in different contexts. The approach was introduced to computer science teachers through a workshop activity aimed at discussing the topic of evaluating the complexity level of problems and their challenging characteristics. We think that an activity of this kind is beneficial for raising teachers’ awareness of the way they select problems in order to develop students’ problem-solving skills.
2012 Frontiers in Education Conference Proceedings, 2012
ABSTRACT Colleges of engineering increase accessibility to higher education in the Science, Techn... more ABSTRACT Colleges of engineering increase accessibility to higher education in the Science, Technology, Engineering and Mathematics (STEM) fields. There is often a need to promote students' learning and thinking skills in order to maintain high academic standards and at the same time avoid high rates of failure and dropout. In addition, academic staff with high pedagogical qualifications is an essential requirement. Establishing a Teaching and Learning Center (TLC) is an increasingly frequent process for achieving these goals. Such centers offer various programs for the promotion of teaching and learning in academic institutions. This article examines the factors that influence the significant role played by TLC in an institution, and the effectiveness of its curricula. The literature refers to several factors, such as the initiation of innovative programs and participation in the institutional strategy plan. In our college, the tight linkage between teaching and learning and the involvement of faculty members in TLC programs are highly influential factors.
2012 Frontiers in Education Conference Proceedings, 2012
2014 IEEE Frontiers in Education Conference (FIE) Proceedings, 2014
2008 38th Annual Frontiers in Education Conference, 2008
Abstraction is taught to computer-science students as part of a comprehensive curriculum. The stu... more Abstraction is taught to computer-science students as part of a comprehensive curriculum. The students encounter the concept of abstraction in various contexts while learning the different modules, each of which emphasizes some specific aspects of the concept. In this paper we present two instructional approaches, both related to utilizing abstraction in problem-solving processes: (1) pattern-oriented instruction (POI), and (2) abstract data type (ADT)-oriented instruction. We present these methods with respect to their employment in teaching problem solving to novices, and elaborate on abstraction processes.
ACM SIGCSE Bulletin, 2004
Importing design patterns from software engineering to the computer science education (CSE) field... more Importing design patterns from software engineering to the computer science education (CSE) field was followed by defining patterns and pattern languages suitable for CS courses. The main goal of incorporating patterns in CSE was to enhance students' programming abilities, as well as their design and problem-solving skills. Accordingly, various instructional materials were suggested for using patterns in classroom learning activities, such as collections of patterns and related programming assignments. However, the existing pattern-based materials seem to be insufficient for implementation in the classroom, especially when teaching introductory courses that emphasize syntax and programming language features. Therefore, alternative methods using applicative models for pattern-based instruction, which emphasize problem solving and program design issues rather than specific language features and syntax, should be developed and assimilated within the CS teaching community. We believe that successful implementation of such models should be accompanied by appropriate teachertraining.
ACM SIGCSE Bulletin, 2005
ABSTRACT Over the years educators have been debating about the most appropriate paradigm for teac... more ABSTRACT Over the years educators have been debating about the most appropriate paradigm for teaching an introductory course in computer science (CS). Specifically, the pedagogical approach known as "objects early" or "objects first" is controversial [2,3,4]. One important reason for educators to argue against the objects early approach is their concern that starting with objects results in the learning of algorithmic problem-solving to be neglected [4]. In this poster we present a pedagogical framework for an introductory multiple-goal course in OOP based on weaving algorithmic pattern-based problem solving activities into OOD/P instruction [5].
2010 IEEE Frontiers in Education Conference (FIE), 2010
Solving algorithmic problems and implementing them in code is a major theme in introductory compu... more Solving algorithmic problems and implementing them in code is a major theme in introductory computer science courses. Problems related to string manipulation are common and of great importance in various domains. In the context of computer science education, solving algorithmic problems of this type may be very challenging for novices, even for the more competent students. Analysis of novice students' solutions to a specific class of problems dealing with string manipulation revealed that a widespread intuitive and non-linear approach was used to solve these problems, which led to cumbersome and erroneous solutions. On the other hand, a straightforward linear approach that leads to shorter and more elegant solutions is uncommon. Uncovering students' common and unsatisfactory approaches in problem solving have significant implications on instruction.
ACM SIGCSE Bulletin, 2007
Undergraduate students often start their academic course of studies with inadequate learning and ... more Undergraduate students often start their academic course of studies with inadequate learning and thinking skills. Our college has a policy of setting high standards and demands, while supporting students' learning in a variety of ways. In this paper we present a distinctive course designed to aid students develop algorithmic problem-solving skills. The course is taught in parallel to a CS1 course and elaborates on activities such as analogical reasoning, prototyping problems, comparison between alternative solutions and reflection on problem-solving processes. It is one of the courses offered at our institution aimed at strengthening general learning and thinking skills, in addition to the regular disciplinary curriculum. Feedback from participants in the course demonstrates a developed awareness and appreciation of abstract ideas beyond programming knowledge. Students report on acquiring problem-solving skills that enable them to cope with compound problems. Additionally, stud...
Computer Science Education, 2008
ABSTRACT Abstraction is a major concept in computer science and serves as a powerful tool in soft... more ABSTRACT Abstraction is a major concept in computer science and serves as a powerful tool in software development. Pattern-oriented instruction (POI) is a pedagogical approach that incorporates patterns in an introductory computer science course in order to structure the learning of algorithmic problem solving. This paper examines abstraction processes in the course of solving an algorithmic problem and highlights three distinct, although interrelated, facets of abstraction: pattern recognition, black-boxing, and structure identification. A study that examined the influence of the POI approach on students' abstraction skills is described; students who learned according to the POI approach were compared with students who learned in a traditional manner with regard to analogical reasoning and problem decomposition and solution, as well as verbal expression. The three facets of abstraction were used to analyze students' abstraction skills and their competency in algorithmic problem solving.