368 research outputs found

    Facilitating algorithm visualization creation and adoption in education

    Get PDF
    The research question of this thesis is: How can we develop algorithm animations (AA) and AA systems further to better facilitate the creation and adoption of AA in education? The motivation for tackling this issue is that algorithm animation has not been widely used in teaching computer science. One of the main reasons for not taking full advantage of AA in teaching is the lack of time on behalf of the instructors. Furthermore, there is a shortage of ready-made, good quality algorithm visualizations. The main contributions are as follows: Effortless Creation of Algorithm Animation. We define a Taxonomy of Effortless Creation of Algorithm Animations. In addition, we introduce a new approach for teachers to create animations by allowing effortless on-the-fly creation of algorithm animations by applying visual algorithm simulation through a simple user interface. Proposed Standard for Algorithm Animation language. We define a Taxonomy of Algorithm Animation Languages to help comparing the different AA languages. The taxonomy and work by an international working group is used to define a new algorithm animation language, eXtensible Algorithm Animation Language, XAAL. Applications of XAAL in education. We provide two different processing approaches for using and producing XAAL animations with existing algorithm animation systems. In addition, we have a framework aiding in this integration as well as prototype implementations of the processes. Furthermore, we provide a novel solution to the problem of seamlessly integrating algorithm animations with hypertext. In our approach, the algorithm animation viewer is implemented purely with JavaScript and HTML. Finally, we introduce a processing model to easily produce lecture slides for a common presentation tool of XAAL animations

    Automated assessment of programming assignments : visual feedback, assignment mobility, and assessment of students' testing skills

    Get PDF
    The main objective of this thesis is to improve the automated assessment of programming assignments from the perspective of assessment tool developers. We have developed visual feedback on functionality of students' programs and explored methods to control the level of detail in visual feedback. We have found that visual feedback does not require major changes to existing assessment platforms. Most modern platforms are web based, creating an opportunity to describe visualizations in JavaScript and HTML embedded into textual feedback. Our preliminary results on the effectiveness of automatic visual feedback indicate that students perform equally well with visual and textual feedback. However, visual feedback based on automatically extracted object graphs can take less time to prepare than textual feedback of good quality. We have also developed programming assignments that are easier to port from one server environment to another by performing assessment on the client-side. This not only makes it easier to use the same assignments in different server environments but also removes the need for sandboxing the execution of students' programs. The approach will likely become more important in the future together with interactive study materials becoming more popular. Client-side assessment is more suitable for self-studying material than for grading because assessment results sent by a client are often too easy to falsify. Testing is an important part of programming and automated assessment should also cover students' self-written tests. We have analyzed how students behave when they are rewarded for structural test coverage (e.g. line coverage) and found that this can lead students to write tests with good coverage but with poor ability to detect faulty programs. Mutation analysis, where a large number of (faulty) programs are automatically derived from the program under test, turns out to be an effective way to detect tests otherwise fooling our assessment systems. Applying mutation analysis directly for grading is problematic because some of the derived programs are equivalent with the original and some assignments or solution strategies generate more equivalent mutants than others

    Proceedings of the Second Program Visualization Workshop, 2002

    Get PDF
    The Program Visualization Workshops aim to bring together researchers who design and construct program visualizations and, above all, educators who use and evaluate visualizations in their teaching. The first workshop took place in July 2000 at Porvoo, Finland. The second workshop was held in cooperation with ACM SIGCSE and took place at HornstrupCentret, Denmark in June 2002, immediately following the ITiCSE 2002 Conference in Aarhus, Denmark

    Effects of Curved Lines on Force-Directed Graphs.

    Get PDF
    The most common methods for simplifying force-directed graphs are edge-bundling and edge routing. Both of these methods can be done with curved, rather than straight, lines which some researchers have argued. Curved lines have been offered as a solution for clarifying edge resolution. Curved lines were originally thought to be more aesthetically pleasing. 32 computer science students were surveyed and asked questions about straight and curved line graphs. Research conducted by Xu et al. and this study suggests that curved lines make a graph more difficult to understand and slower to read. Research also suggests that curved lines are no more aesthetically pleasing than straight lines. Situations may exist where curved lines are beneficial to a graph’s readability, but it is unclear due to uncontrolled variables in this study. Further study could reveal circumstances when curved lines would be beneficial

    One Ontology to Rule Them All: Corner Case Scenarios for Autonomous Driving

    Get PDF
    The core obstacle towards a large-scale deployment of autonomous vehicles currently lies in the long tail of rare events. These are extremely challenging since they do not occur often in the utilized training data for deep neural networks. To tackle this problem, we propose the generation of additional synthetic training data, covering a wide variety of corner case scenarios. As ontologies can represent human expert knowledge while enabling computational processing, we use them to describe scenarios. Our proposed master ontology is capable to model scenarios from all common corner case categories found in the literature. From this one master ontology, arbitrary scenario-describing ontologies can be derived. In an automated fashion, these can be converted into the OpenSCENARIO format and subsequently executed in simulation. This way, also challenging test and evaluation scenarios can be generated.Comment: Daniel Bogdoll and Stefani Guneshka contributed equally. Accepted for publication at ECCV 2022 SAIAD worksho

    Guidance in Business Intelligence & Analytics Systems: A Review and Research Agenda

    Get PDF
    While the data amount grows exponentially, the number of people with analytical and technical skills is only slowly increasing. This skill gap is putting pressure on the labor market and increasing the need for personnel with these skills. At the same time, companies are forced to think of alternative ways to empower their less-skilled workforce to take on Business Intelligence and Analytics (BI&A) tasks. One promising attempt to address these challenges may turn to the concept of guidance. However, the current body of research on guidance in BI&A systems is scattered and lacks a structured investigation from which future research avenues can be derived. To address this gap, this article analyzes five categories, namely BI&A phases, guidance degree, guidance generation, user roles, and interactivity form. Reviewing 82 articles, our contribution is to synopsize articles on guidance in BI&A systems and to suggest five research avenues

    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
    corecore