76 research outputs found

    Code Complexity in Introductory Programming Courses

    Get PDF
    Instructors of introductory programming courses would benefit from having a metric for evaluating the sophistication of student code. Since introductory programming courses pack a wide spectrum of topics in a short timeframe, student code changes quickly, raising questions of whether existing software complexity metrics effectively reflect student growth as reflected in their code. We investigate code produced by over 800 students in two different Python-based CS1 courses to determine if frequently used code quality and complexity metrics (e.g., cyclomatic and Halstead complexities) or metrics based on length and syntactic complexity are more effective as a heuristic for gauging students' progress through a course. We conclude that the traditional metrics do not correlate well with time passed in the course. In contrast, metrics based on syntactic complexity and solution size correlate strongly with time in the course, suggesting that they may be more appropriate for evaluating how student code evolves in a course context.Instructors of introductory programming courses would benefit from having a metric for evaluating the sophistication of student code. Since introductory programming courses pack a wide spectrum of topics in a short timeframe, student code changes quickly, raising questions of whether existing software complexity metrics effectively reflect student growth as reflected in their code. We investigate code produced by over 800 students in two different Python-based CS1 courses to determine if frequently used code quality and complexity metrics (e.g., cyclomatic and Halstead complexities) or metrics based on length and syntactic complexity are more effective as a heuristic for gauging students' progress through a course. We conclude that the traditional metrics do not correlate well with time passed in the course. In contrast, metrics based on syntactic complexity and solution size correlate strongly with time in the course, suggesting that they may be more appropriate for evaluating how student code evolves in a course context.Peer reviewe

    Introductory programming: a systematic literature review

    Get PDF
    As computing becomes a mainstream discipline embedded in the school curriculum and acts as an enabler for an increasing range of academic disciplines in higher education, the literature on introductory programming is growing. Although there have been several reviews that focus on specific aspects of introductory programming, there has been no broad overview of the literature exploring recent trends across the breadth of introductory programming. This paper is the report of an ITiCSE working group that conducted a systematic review in order to gain an overview of the introductory programming literature. Partitioning the literature into papers addressing the student, teaching, the curriculum, and assessment, we explore trends, highlight advances in knowledge over the past 15 years, and indicate possible directions for future research

    Computer Science Concept Inventories: Past and Future

    Get PDF
    Concept Inventories (CIs) are assessments designed to measure student learning of core concepts. CIs have become well known for their major impact on pedagogical techniques in other sciences, especially physics. Presently, there are no widely used, validated CIs for computer science. However, considerable groundwork has been performed in the form of identifying core concepts, analyzing student misconceptions, and developing CI assessment questions. Although much of the work has been focused on CS1 and a CI has been developed for digital logic, some preliminary work on CIs is underway for other courses. This literature review examines CI work in other STEM disciplines, discusses the preliminary development of CIs in computer science, and outlines related research in computer science education that contributes to CI development

    Computer Science Concept Inventories: Past and Future

    Get PDF
    Concept Inventories (CIs) are assessments designed to measure student learning of core concepts. CIs have become well known for their major impact on pedagogical techniques in other sciences, especially physics. Presently, there are no widely used, validated CIs for computer science. However, considerable groundwork has been performed in the form of identifying core concepts, analyzing student misconceptions, and developing CI assessment questions. Although much of the work has been focused on CS1 and a CI has been developed for digital logic, some preliminary work on CIs is underway for other courses. This literature review examines CI work in other STEM disciplines, discusses the preliminary development of CIs in computer science, and outlines related research in computer science education that contributes to CI development

    Assessment in textbooks: Exploring cognitive demand in first-year accounting textbooks

    Get PDF
    The South African higher education program expects to develop graduates with high cognitive skills.  This is endorsed further by the expectations of high cognitive attributes for entry level members from the Accounting professional bodies. Although learning is largely driven by assessment, relatively few studies have investigated assessments in Accounting textbooks. Furthermore, most used Bloom’s taxonomy as their sole analytical lens. Using a hybrid framework of Revised Bloom’s taxonomy and Leong’s levels of difficulty, this paper examines the cognitive demand of assessment tasks in selected level-one Financial Accounting textbooks used in South Africa and Kenya.  The findings reveal the dominance of the Apply-Task-Hybrid and the possibility of enabling higher cognitive attributes within lower levels of cognition. The article provides new insight for accounting academics who seek to enhance their pedagogical engagement, as well as textbook producers, curriculum developers and professional accounting bodies. It also offers the Layered Analytical Framework as an alternative approach to examining cognitive demand across diverse fields of study, but specifically within the discipline of Accounting

    A LTIHub for Composite Assignments

    Get PDF
    Learning management systems (LMS) such as Canvas and Blackboard use Learning Tool Interoperability (LTI) as their main integration point for external learning tools. Each external tool provider has to implement LTI specifications or follow LTI standards that is a time consuming and complex process as there is no easy to follow specification available. Through this project, I have developed a system that follows the LTI specifications and integrates the CodeCheck autograder and interactive exercises with any LMS. I developed a Java based web app named LTIHub that acts as a mediator between LMS and any Learning Tool Provider. The LTIHub takes care of the LTI specification. The Learning Tool Provider needs to provide URL for each problem and a callback URL. This application stores the information related to the status of assignments and passes the information back to the LMS when all problems of an assignment are done by a student. I have prepared this report on the architecture of the software and analysis of students data during a semester of deployment

    An Exploration of Student Reasoning about Undergraduate Computer Science Concepts: An Active Learning Technique to Address Misconceptions

    Get PDF
    Computer science (CS) is a popular but often challenging major for undergraduates. As the importance of computing in the US and world economies continues to grow, the demand for successful CS majors grows accordingly. However, retention rates are low, particularly for under-represented groups such as women and racial minorities. Computing education researchers have begun to investigate causes and explore interventions to improve the success of CS students, from K-12 through higher education. In the undergraduate CS context, for example; student difficulties with pointers, functions, loops, and control flow have been observed. We and others have utilized student responses to multiple choice questions aimed at determining misconceptions, engaged in retroactive examination of code samples and design artifacts, and conducted interviews in an attempt to understand the nature of these problems. Interventions to address these problems often apply evidenced-based active learning techniques in CS classrooms as a way to engage students and improve learning.In this work, I employ a human-centered approach, one in which the focus of data collection is on the student thought processes as evidenced in their speech and writing. I seek to determine what students are thinking not only through what can be surmised in retrospect from the artifacts they create, but also to gain insight into their thoughts as they engage in the design, implementation,and analysis of those artifacts and as they reflect on those processes and artifacts shortly after. For my dissertation work, I have conducted four studies: 1. a conceptual assessment survey asking students to “Please explain your reasoning” after each answer to code tracing/execution questions followed by task-based interviews with a smaller, different group of students 2. a “coding in the wild” think aloud study that recorded the screen and audio of students as they implemented a simple program and explained their thought process 3. interview analyses of student design diagrams/documentation in a software engineering course, tasking students to explain their designs and comparing what they believed they had designed with what is actually shown from their submitted documentation. These first three studies were formative, leading to some key insights including the benefits students can gain from feedback, students’ tendencies to avoid complexity when programming or encountering concepts they do not fully grasp, the nature of student struggles with the planning stages of problem solving, and insight into the fragile understanding of some key CS concepts that students form. I leverage the benefits of feedback with guided prompts using the misconceptions uncovered in my formative studies to conduct a final, evaluative study. This study seeks to evaluate the benefits that can be gained from a guided feedback intervention for learning introductory programming concepts and compare those benefits and the effort and resource costs associated with each variation, comparing the costs and benefits associated with two forms of feedback. The first is an active learning technique I developed and deem misconception-based feedback (MBF), which has peers working in pairs use prompts based on misconceptions to guide their discussion of a recently completed coding assignment. The second is a human autograder (HAG) group acting as a control. HAG simulates typical autograders, supplying test cases and correct solutions, but utilizes a human stand-in for a computer. In both conditions, one student uses provided prompts to guide the discussion. The other student responds/interacts with their code based on the prompts. I captured screen and audio recordings of these discussions. Participants completed conceptual pre-tests and post-tests that asked them to explain their reasoning. I hypothesized that the MBF intervention will offer avaluable way to increase learning, address misconceptions, and get students more engaged that will be feasible in CS courses of any size and have benefits over the HAG intervention. Results show that for questions involving parameter passing with regards to pass by reference versus pass by value semantics, particularly with pointers, there were significant improvements in learning outcomes for the MBF group but not the HAG group

    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

    Intercultural communication and critical pedagogy: deconstructing stereotypes for the development of critical cultural awareness in language education

    Get PDF
    This study researches the problem of gender stereotypes that Spanish language undergraduates uphold against Hispanics and develops critical pedagogical approaches through the reading of a literary text for the deconstruction of such stereotypes so that students can think and act in less biased and prejudiced ways. This thesis develops the argument that stereotyping is a form of oppression, and through empirical research in three case studies, this research demonstrates that stereotypical oppression can be addressed by Critical Pedagogyfor the development of „critical cultural awareness‟. This thesis provides answers to three operational sub-questions addressed in each of the three case studies, which contribute to answering the main overarching question in this study of how can Critical Pedagogy help in the deconstruction of stereotypes for the development of „critical cultural awareness‟. This study found that a literary text can bring stereotypical thinking out to the fore for analysis and reflection, and that a reader-response approach to literature can trigger past experiences that reveal essentialising discourses of otherness. The research reviews the effectiveness of the use of an „identity-focused‟ critical pedagogical intervention for the development of a „self-regulation strategy‟ as a mental reasoning exercise to control bias and stereotyping. The results indicate that students tend to transpose stereotypical binaries and create new ones, whilst developing further views of cultural realities as being fluid, dynamic and contradictory, constantly being reconstructed and renegotiated. However, the findings indicate that a „self-regulation strategy‟ may be insufficient to appreciate the oppressive nature of stereotyping. Therefore, a Critical „Pedagogy-of-the-Oppressed‟ intervention is implemented, whereby students describe and „name‟ their own experiences of suffering stereotyping during their year-abroad experiences with narratives of stigmatisation, discrimination, exclusion and marginalisation. A tentative pedagogical model, a teaching tool and a „grammar of interculture‟ emerge from this study for the deconstruction of stereotypes in the development of „critical cultural awareness‟ for practical teaching practice and classroom use

    A lot going on: the links between going missing, forced marriage and child sexual exploitation

    Get PDF
    “A thesis submitted to the University of Bedfordshire, in partial fulfilment of the requirements for the degree of Professional Doctorate”.An extensive review of research and policy literature revealed that links are made between: going missing and forced marriage; going missing and child sexual exploitation; and forced marriage and child sexual exploitation. However, despite these overlaps, no links are made between all three issues. Given that some South Asian young women will run away from home in order to avoid being forced into marriage and that young people who run away or go missing from home are at risk of, or abused, through child sexual exploitation a research proposition was developed on the basis that a three way link was theoretically possible. A case study methodology was developed to test the research proposition. Eight cases were identified in which South Asian young people (under 18 years of age) had experienced some combination of all three issues. However, the pattern identified within the research proposition was not the ‘final explanation’. Analysis of the research findings revealed that variation existed within the pattern proposed. Moreover, a second pattern was identified in which forced marriage emerged as a parental response to young people who were already being sexually exploited and going missing in this context. The patterns identified were confirmed through analysis of interviews undertaken with twelve subject experts (key informants) and resonated with a specifically selected group of nine young people who were presented with a composite case study during focus group discussion. I argue that awareness of patterns linking all three issues will help practitioners to identify and respond appropriately to cases where the issues of going missing, forced marriage and child sexual exploitation overlap. That said the complexity of the cases highlighted risks associated with overlooking diversities: social divisions related to age, gender, ethnicity, class, sexuality and disability were explored to see how they shaped the young people’s experiences. This process revealed that they were located within complex axes of power which then intersected with social systems, including family, community and public institutions. As a consequence, young people lacked relational support and had limited access to safe accommodation and economic resources. This resulted in some young people making attempts to try and self-manage the competing harms that they were facing. The practitioners who supported the young people highlighted the challenges involved in working with them. Analysis of practitioners’ accounts further revealed how power dynamics within multi-agency working arrangements also impacted their efforts to respond to the needs of young people. Through testing the research proposition, I addressed a recognised need for more focused research into the issue of going missing as it relates to young people from different ethnic backgrounds (Berelowitz et al. 2012; Berelowitz et al., 2013; OCC, 2012; Patel, 1994; Safe on the Streets Research Team, 1999; Stein et al. 1994) as well as furthering knowledge about how child sexual exploitation is experienced by young people from black and minority ethnic (BME) communities (Chase & Statham, 2004; CEOP, 2011b; Jago et al., 2011; Berelowitz et al., 2013; Thiara & Gill, 2010; Kelly, 2013; Ward & Patel, 2006). The development of a typology of patterns linking going missing, forced marriage and child sexual exploitation provides a unique contribution to the scholarly literature
    • 

    corecore