6 research outputs found

    Programlama Öğretimi için Bir Model Önerisi: Yedi Adımda Programlama

    Get PDF
    There are a number of studies in the literature revealing that programming instruction has positive effects on development of different cognitive skills. However, there are scarcely any studies suggesting pedagogical approaches to how programming should be done. Therefore, this study focused on how to do programming instruction that target developing students’ cognitive skills. In this study, it was aimed to suggest a model for teaching in order to develop various cognitive skills of students. Within the scope of the study, a programming instruction model was created, and it was called Programming in Seven Steps (PSS) model. As research design, special case study was used from qualitative research methods. The research team consisted of two groups: design team (1 faculty member from the department of Computer Education and Intructional Technologies (CEIT), 2 master’s degree students, and 2 PhD students) and a Design Evaluation Team (DET) (10 IT and Software teachers who work in secondary schools affiliated to the Ministry of National Education) in the process of constructing the PSS model. During the research, the documents and interviews with the design evaluation team were analyzed with the purpose of determining the steps of the PSS model. The study elaborates the process followed to create the model, the features of the proposed model, and interviews with the design evaluation team. This article details the overall path to designing of the model, the features of the model, and DET interviews. It is aimed that the model introduced in this study will become a guide for educators who want to teach programming at secondary school level.Alanyazında programlama öğretiminin pek çok bilişsel beceriye olumlu etkilerini ortaya koyan çalışmalar yer almaktadır. Buna karşın programlama öğretiminin sistematik bir şekilde gerçekleştirilebilmesi amacıyla pedagojiye yönelik çalışmalar oldukça sınırlı sayıdadır. Bu nedenle çalışmada, öğrencilerin bilişsel becerilerinin gelişimine yönelik bir programlama öğretiminin nasıl yapılması gerektiği üzerine odaklanılmıştır. Çalışmanın amacı; Programlama öğretimi sürecinde öğrencilerin çeşitli bilişsel becerilerinin gelişimini sağlamak amacıyla kullanılabilecek bir öğretim modeli önerisinde bulunmaktır. Çalışma kapsamında, oluşturulan programlama öğretimi modeline Yedi Adımda Programlama (YAP) modeli adı verilmiştir. Araştırma deseni olarak nitel araştırma yöntemlerinden özel durum çalışması kullanılmıştır. Araştırmanın, YAP modelinin oluşturulması aşamasında araştırma grubunu tasarım ekibi (1 BÖTE öğretim üyesi ile 2 yüksek lisans, 2 doktora öğrencisi) ve tasarım değerlendirme ekibi (MEB’e bağlı ortaokullarda görevli 10 Bilişim Teknolojileri ve Yazılım Dersi öğretmeni) oluşturmaktadır. Araştırma süreci boyunca YAP modeli adımlarının belirlenmesi amacıyla doküman analizi ve tasarım değerlendirme ekibi ile yapılan görüşmelerin analizi gerçekleştirilmiştir. Bu çalışmada, modelin oluşturulması için izlenen süreç, oluşturulan modelin özellikleri ve tasarım değerlendirme ekibi ile yapılan görüşmelere yer verilmiştir. Bu çalışma ile ortaya konulan modelin, ortaokul düzeyinde programlama öğretimi yapmak isteyen eğitimciler için yol gösterici olması hedeflenmektedir

    Identifying evidences of computer programming skills through automatic source code evaluation

    Get PDF
    Orientador: Roberto PereiraCoorientador: Eleandro MaschioTese (doutorado) - Universidade Federal do Paraná, Setor de Ciências Exatas, Programa de Pós-Graduação em Informática. Defesa : Curitiba, 27/03/2020Inclui referências: p. 98-106Área de concentração: Ciência da ComputaçãoResumo: Esta tese e contextualizada no ensino de programacao de computadores em cursos de Computacao e investiga aspectos e estrategias para avaliacao automatica e continua de codigos fonte desenvolvidos pelos alunos. O estado da arte foi identificado por meio de revisao sistematica de literatura e revelou que as pesquisas anteriores tendem a realizar avaliacoes baseadas em aspectos tecnicos de codigos fonte, como a avaliacao de corretude funcional e a deteccao de erros. Avaliacoes baseadas em habilidades, por outro lado, sao pouco exploradas e possuem potencial para fornecer detalhes a respeito de habilidades representadas por conceitos de alto nivel, como desvios condicionais e estruturas de repeticao. Um metodo de identificacao automatica de evidencias de aprendizado e entao proposto como uma abordagem baseada em habilidades para a avaliacao automatica de codigos fonte de programacao. O metodo e caracterizado pela implementacao de diferentes estrategias para avaliacao de codigos fonte, identificacao de evidencias de habilidades de programacao, e representacao destas habilidades em um modelo do aluno. Experimentos realizados em ambientes controlados (bases de dados artificiais) mostraram que estrategias automaticas de avaliacao de codigo fonte sao viaveis. Experimentos conduzidos em ambientes reais (codigos fonte produzidos por alunos) produziram resultados semelhantes aos ambientes controlados, entretanto revelaram limitacoes relacionadas a implementacao das estrategias, como vulnerabilidades a sintaxes inesperadas e falhas em expressoes regulares. Um conjunto de habilidades foi selecionado para compor o modelo do aluno, representado por uma rede bayesiana dinamica. Por meio de experimentos foi demonstrado que a alimentacao do modelo com evidencias resultantes da avaliacao automatica de codigos fonte permite o acompanhamento do progresso das habilidades dos alunos. Finalmente, as estrategias automaticas em conjunto com os recursos do modelo do aluno permitiram a demonstracao da avaliacao baseada em habilidades, que se mostrou um recurso valioso para identificacao de solucoes funcionalmente corretas, porem conceitualmente incorretas; quando o programa e funcionalmente correto, retornando resultados esperados a determinadas entradas, porem foi construido com recursos e conceitos incorretos. Palavras-chave: Programacao de Computadores, Avaliacao Automatica, Avaliacao Baseada em HabilidadesAbstract: This thesis is contextualized in the teaching of computer programming in Computing courses and investigates aspects and strategies for automatic and continuous evaluation of student developed source codes. The state of the art was identified through systematic literature review and revealed previous research tends to perform evaluations based on source codes technical aspects, such as functional correctness assessment and error detection. Skills-based assessments, in turn, are less explored although having potential to provide details of skills represented by high-level concepts, such as conditionals and repetition structures. A method for automatic identification of learning evidences is then proposed as a skills-based approach to automatic evaluation of programming source codes. The method is characterized by implementing different strategies for source code evaluation, identifying evidences of programming skills, and representing these skills in a student model. Experiments conducted in controlled scenarios (testing datasets) have shown automatic source code evaluation strategies are viable. Experiments conducted in real scenarios (student-made source codes) produced results similar to controlled scenarios, however, implementation-related limitations were revealed for some strategies, such as vulnerabilities to unexpected syntax and flaws in regular expressions. A skill set was selected to compose our student model, represented by a Dynamic Bayesian Network. Experiments have shown feeding the model with evidences resulting from source codes automatic evaluation allows monitoring students' skills progress. Finally, automatic strategies coupled with student model capabilities enabled demonstrating skills-based assessment, which showed a valuable resource for identifying functionally correct source codes, but conceptually incorrect; when a program is correct functionally, returning expected results to specific inputs, but it was built with erroneous concepts and resources. Keywords: Computer Programming, Automatic Evaluation, Skills-Based Assessmen

    Utilizing educational technology in computer science and programming courses : theory and practice

    Get PDF
    There is one thing the Computer Science Education researchers seem to agree: programming is a difficult skill to learn. Educational technology can potentially solve a number of difficulties associated with programming and computer science education by automating assessment, providing immediate feedback and by gamifying the learning process. Still, there are two very important issues to solve regarding the use of technology: what tools to use, and how to apply them? In this thesis, I present a model for successfully adapting educational technology to computer science and programming courses. The model is based on several years of studies conducted while developing and utilizing an exercise-based educational tool in various courses. The focus of the model is in improving student performance, measured by two easily quantifiable factors: the pass rate of the course and the average grade obtained from the course. The final model consists of five features that need to be considered in order to adapt technology effectively into a computer science course: active learning and continuous assessment, heterogeneous exercise types, electronic examination, tutorial-based learning, and continuous feedback cycle. Additionally, I recommend that student mentoring is provided and cognitive load of adapting the tools considered when applying the model. The features are classified as core components, supportive components or evaluation components based on their role in the complete model. Based on the results, it seems that adapting the complete model can increase the pass rate statistically significantly and provide higher grades when compared with a “traditional” programming course. The results also indicate that although adapting the model partially can create some improvements to the performance, all features are required for the full effect to take place. Naturally, there are some limits in the model. First, I do not consider it as the only possible model for adapting educational technology into programming or computer science courses. Second, there are various other factors in addition to students’ performance for creating a satisfying learning experience that need to be considered when refactoring courses. Still, the model presented can provide significantly better results, and as such, it works as a base for future improvements in computer science education.Ohjelmoinnin oppimisen vaikeus on yksi harvoja asioita, joista lähes kaikki tietojenkäsittelyn opetuksen tutkijat ovat jokseenkin yksimielisiä. Opetusteknologian avulla on mahdollista ratkaista useita ohjelmoinnin oppimiseen liittyviä ongelmia esimerkiksi hyödyntämällä automaattista arviointia, välitöntä palautetta ja pelillisyyttä. Teknologiaan liittyy kuitenkin kaksi olennaista kysymystä: mitä työkaluja käyttää ja miten ottaa ne kursseilla tehokkaasti käyttöön? Tässä väitöskirjassa esitellään malli opetusteknologian tehokkaaseen hyödyntämiseen tietojenkäsittelyn ja ohjelmoinnin kursseilla. Malli perustuu tehtäväpohjaisen oppimisjärjestelmän runsaan vuosikymmenen pituiseen kehitys- ja tutkimusprosessiin. Mallin painopiste on opiskelijoiden suoriutumisen parantamisessa. Tätä arvioidaan kahdella kvantitatiivisella mittarilla: kurssin läpäisyprosentilla ja arvosanojen keskiarvolla. Malli koostuu viidestä tekijästä, jotka on otettava huomioon tuotaessa opetusteknologiaa ohjelmoinnin kursseille. Näitä ovat aktiivinen oppiminen ja jatkuva arviointi, heterogeeniset tehtävätyypit, sähköinen tentti, tutoriaalipohjainen oppiminen sekä jatkuva palautesykli. Lisäksi opiskelijamentoroinnin järjestäminen kursseilla ja järjestelmän käyttöönottoon liittyvän kognitiivisen kuorman arviointi tukevat mallin käyttöä. Malliin liittyvät tekijät on tässä työssä lajiteltu kolmeen kategoriaan: ydinkomponentteihin, tukikomponentteihin ja arviontiin liittyviin komponentteihin. Tulosten perusteella vaikuttaa siltä, että mallin käyttöönotto parantaa kurssien läpäisyprosenttia tilastollisesti merkittävästi ja nostaa arvosanojen keskiarvoa ”perinteiseen” kurssimalliin verrattuna. Vaikka mallin yksittäistenkin ominaisuuksien käyttöönotto voi sinällään parantaa kurssin tuloksia, väitöskirjaan kuuluvien tutkimusten perusteella näyttää siltä, että parhaat tulokset saavutetaan ottamalla malli käyttöön kokonaisuudessaan. On selvää, että malli ei ratkaise kaikkia opetusteknologian käyttöönottoon liittyviä kysymyksiä. Ensinnäkään esitetyn mallin ei ole tarkoituskaan olla ainoa mahdollinen tapa hyödyntää opetusteknologiaa ohjelmoinnin ja tietojenkäsittelyn kursseilla. Toiseksi tyydyttävään oppimiskokemukseen liittyy opiskelijoiden suoriutumisen lisäksi paljon muitakin tekijöitä, jotka tulee huomioida kurssien uudelleensuunnittelussa. Esitetty malli mahdollistaa kuitenkin merkittävästi parempien tulosten saavuttamisen kursseilla ja tarjoaa sellaisena perustan entistä parempaan opetukseen

    Aprendizagem da programação no Ensino Superior: a adoção de cursos "online" gamificados

    Get PDF
    A temática da aprendizagem da programação tem sido objeto de estudo crescente nos últimos anos. Como forma de mitigar as dificuldades de aprendizagem da programação diversas soluções foram propostas. Procura-se assim motivar e criar experiências de aprendizagem ricas e envolventes, centrar o estudante na aprendizagem, contribuindo assim para que o estudante não desista na primeira dificuldade encontrada. A presente tese estuda em primeiro lugar os diferentes tipos de problemas, percecionados por alunos e professores, na aprendizagem da programação, e a aplicação de soluções que possam criar um maior envolvimento por parte dos estudantes. Baseado em diversas teorias nomeadamente na teoria da gamificação e do "flow" é aqui proposta e validada uma "framework" teórica de cursos "online" no contexto da aprendizagem de programação. Neste sentido, foi desenvolvido numa plataforma "online" um curso gamificado para operacionalização da "framework" teórica. Foi realizado um estudo com estudantes de diversos cursos de ensino superior das áreas de engenharia, para aferir dos resultados percecionados acerca do curso "online". Nesta tese foi também desenvolvido, um modelo teórico de adoção tecnológica de cursos "online" para a aprendizagem da programação, no qual se identificam os principais determinantes dessa adoção. Este modelo foi objeto de estudo e foi realizado um inquérito para validação das hipóteses aqui definidas. Como dimensões determinantes dessa adoção estão: fatores de personalidade dos estudantes, a facilidade de utilização da plataforma e do curso de aprendizagem de programação, o prazer na utilização do curso, a utilidade percebida do curso e o "flow". Os vários estudos conduzidos no âmbito desta tese, demonstram que o desenho de cursos gamificados e os fatores de personalidade dos estudantes são fatores chave na aprendizagem da programação e na adoção de cursos "online" realizados para o efeito

    Enhancing comprehension in open distance learning computer programming education with visualization

    Get PDF
    This thesis describes a research project aimed at improving the tracing skills of first-year programming students enrolled for an introductory C++ course at an open distance learning institution by means of a tutorial in the form of a program visualization tool to teach the students to draw variable diagrams. The research was based on the findings from the BRACElet project (Clear, Whalley, Robbins, Philpott, Eckerdal, Laakso & Lister, 2011). A design-based research methodology was followed. To guide the process of developing the tutorial, a framework of 26 guidelines for developing and using visualization tools to teach programming was synthesized from the literature on computing education research CER, educational psychology and computer graphics. Guidelines were supplemented with reasons or explanations for their recommendation and considerations to be taken into account when using a guideline. The framework was enhanced by lessons learnt during the development and testing of the tutorial. The tutorial was tested and refined during two implementation cycles. Both cycles included quantitative and qualitative investigations. All students registered for the introductory module received the tool with their study material. For the quantitative investigations, students completed a questionnaire after using the tutorial. Through the questionnaire biographical data was acquired, the manner in which students used the tutorial and how they experienced using it. The responses to the questionnaires were statistically analysed in combination with respondents’ final marks. The statistical modelling indicated that the students’ biographical properties (a combination of level of programming experience, marks obtained for Mathematics and English in matric and first-time registration for COS1511 or not), had the biggest impact on their final marks by far. During the qualitative investigations students were eye tracked in a Human-Computer Interaction laboratory. The gaze replays in both cycles revealed that students’ reading skills impacted largely on their success, connecting with the findings from the quantitative investigations. Reflections on why the tutorial did not achieve its purpose; and why poor reading skills may have such a strong effect on learning to program, contribute some theoretical understanding as to how novices learn to program.Computer ScienceD. Phil. (Computer Science

    Cognitive Foundations for Visual Analytics

    Get PDF
    In this report, we provide an overview of scientific/technical literature on information visualization and VA. Topics discussed include an update and overview of the extensive literature search conducted for this study, the nature and purpose of the field, major research thrusts, and scientific foundations. We review methodologies for evaluating and measuring the impact of VA technologies as well as taxonomies that have been proposed for various purposes to support the VA community. A cognitive science perspective underlies each of these discussions
    corecore