29 research outputs found

    TRACER: A Platform for Securing Legacy Code

    Full text link

    Evaluating neural networks as a method for identifying students in need of assistance

    Full text link
    © 2017 ACM. Course instructors need to be able to identify students in need of assistance as early in the course as possible. Recent work has suggested that machine learning approaches applied to snapshots of small programming exercises may be an effective solution to this problem. However, these results have been obtained using data from a single institution, and prior work using features extracted from student code has been highly sensitive to differences in context. This work provides two contributions: first, a partial reproduction of previously published results, but in a different context, and second, an exploration of the efficacy of neural networks in solving this problem. Our findings confirm the importance of two features (the number of steps required to solve a problem and the correctness of key problems), indicate that machine learning techniques are relatively stable across contexts (both across terms in a single course and across courses), and suggest that neural network based approaches are as effective as the best Bayesian and decision tree methods. Furthermore, neural networks can be tuned to be reliably pessimistic, so they may serve a complementary role in solving the problem of identifying students who need assistance

    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

    PCRS-C

    No full text

    Untangling the woven web: Testing web-based software

    No full text
    In the early 90's, public interest in the Internet skyrocketed with the introduction of web browsers and hyper text markup language (HTML). As the world-wide web becomes more commercial and people start using browsers to purchase products and do other business, issues of website testing become more and more critical. In addition to web-based commerce

    A new \u3ci\u3ePotamobates\u3c/i\u3e Champion species (Heteroptera: Gerridae) from Ecuador with new distribution records for \u3ci\u3eP. williamsi \u3c/i\u3eHungerford

    Get PDF
    Abstract: Potamobates sumaco new species is described from the Ecuadorian Amazon. Male and female genitalia differentiate P. sumaco from a similar parapatric species, P. williamsi Hungerford. Phylogenetic analysis indicates P. sumaco is closely related to the species of the P. tridentatus group which includes P. williamsi. A distribution map and revised key to Potamobates species are provided. Resumen: Se describe Potamobates sumaco nueva especies del Amazonas Ecuatoriano. Los genitales del macho y la hembra distinguen P. sumaco de la especie mas cercana P. williamsi Hungerford. El analisis filogenetico indica que P. sumaco partenece a1 grupo P. tridentatus. Se incluye un mapa de la distribucion y una clave modificada para la identificacion de las especies de Potamobates

    It’s Doomed; We Can Prove It

    No full text
    Abstract. Programming errors found early are the cheapest. Tools ap-plying to the early stage of code development exist but either they suffer from false positives (“noise”) or they require strong user interaction. We propose to avoid this deficiency by defining a new class of errors. A pro-gram fragment is doomed if its execution will inevitably fail, in whatever state it is started. We use a formal verification method to identify such er-rors fully automatically and, most significantly, without producing noise. We report on preliminary experiments with a prototype tool.

    Finding bugs is easy

    No full text

    An Interactive Verification Tool Meets an IDE

    No full text
    We present a general approach on how to integrate a semi-automatic verification tool into a state-of-the-art integrated development environment (IDE). The objective and challenge is to keep implementation, specification and proofs in sync. Following a change in one of the specifications or implementations, all proofs that could possibly be affected by that change are rescheduled. To improve performance we look at several optimizations. User feedback about proof results is provided within the IDE using standard markers and views. The approach has been implemented and realizes an integration of the interactive verification system KeY into the Eclipse IDE
    corecore