Nowadays, few professionals understand the techniques and testing criteria to systematize the software testing activity in the software industry. Towards shedding some light on such problems and promoting software testing, professors in the area have established Massive Open Online Courses as educational initiatives. However, the main limitation is the professor’s lack of supervision of students. A conversation agent called TOB-STT has been defined in trying to avoid the problem. A previous study introduced TOB-STT; however, it did not analyze its efficacy. This article addresses a controlled experiment that analyzed its efficacy and revealed it was not expressive in its current version. Therefore, we conducted an in-depth analysis to find what caused this result and provided a detailed discussion. The findings contribute to the TOB-STT since the experimental results show that improvements need to be made in the conversational agent before we use it in Massive Open Online Courses.
Teaching algorithmic thinking enables students to use their knowledge in various contexts to reuse existing solutions to algorithmic problems. The aim of this study is to examine how students recognize which algorithmic concepts can be used in a new situation. We developed a card sorting task and investigated the ways in which secondary school students arranged algorithmic problems (Bebras tasks) into groups using algorithm as a criterion. Furthermore, we examined the students’ explanations for their groupings. The results of this qualitative study indicate that students may recognize underlying algorithmic concepts directly or by identifying similarities with a previously solved problem; however, the direct recognition was more successful. Our findings also include the factors that play a role in students’ recognition of algorithmic concepts, such as the degree of similarity to problems discussed during lessons. Our study highlights the significance of teaching students how to recognize the structure of algorithmic problems.
Source code plagiarism is an emerging issue in computer science education. As a result, a number of techniques have been proposed to handle this issue. However, comparing these techniques may be challenging, since they are evaluated with their own private dataset(s). This paper contributes in providing a public dataset for comparing these techniques. Specifically, the dataset is designed for evaluation with an Information Retrieval (IR) perspective. The dataset consists of 467 source code files, covering seven introductory programming assessment tasks. Unique to this dataset, both intention to plagiarise and advanced plagiarism attacks are considered in its construction. The dataset's characteristics were observed by comparing three IR-based detection techniques, and it is clear that most IR-based techniques are less effective than a baseline technique which relies on Running-Karp-Rabin Greedy-String-Tiling, even though some of them are far more time-efficient.
In this study, effectiveness of a computer science course at the secondary school level is investigated through a holistic approach addressing the dimensions of instructional content design, development, implementation and evaluation framed according to ADDIE instructional design model where evaluation part constituted the research process for the current study. The process has initiated when the computer science curriculum had major revisions in order to provide in-service teachers with necessary support and guidance. The study is carried through as a project, which lasted more than one year and both quantitative and qualitative measures were used through a sequential explanatory method approach. The intention was to investigate the whole process in detail in order to reveal the effectiveness of the process and the products. In this regard, not only teachers' perceptions but also students' developments in their perceptions of academic achievement and computational thinking, as well as correlations between the computational thinking sub-factors were investigated. The findings showed that the instructional materials and activities developed within the scope of the study, positively affected the computational thinking and academic achievement of students aged 10 and 12 years old. The teachers' weekly feedbacks regarding application structures and implementation processes were also supported the findings and revealed some more details that will be useful both for instructional designers and teachers.
Pair programming is one of the important practices of a lightweight development methodology namely eXtreme Programming (XP). It emphasizes the practice of two persons working together at a single computer terminal, to design, code and test computer programs. The effects of pair programming on software development in industrial organizations were studied and it was found that pair programming increases the productivity by 15%. This evidence created an interest in amongst community of computer science educators to apply pair programming in educational settings.
We have conducted an experiment with the students of computer science courses to compare the learning efficiency of students when they adopt pair programming with that of students using traditional method to do laboratory exercises of short duration. The learning efficiency was measured by evaluating design documents, completion time, and marks obtained in a written test that was conducted after every exercise. Our research confirms that the adoption of pair programming improves the design ability, reduces time taken to do a laboratory exercise and increases the knowledge and programming skill.