44,718 research outputs found

    Graph Based Reduction of Program Verification Conditions

    Get PDF
    Increasing the automaticity of proofs in deductive verification of C programs is a challenging task. When applied to industrial C programs known heuristics to generate simpler verification conditions are not efficient enough. This is mainly due to their size and a high number of irrelevant hypotheses. This work presents a strategy to reduce program verification conditions by selecting their relevant hypotheses. The relevance of a hypothesis is determined by the combination of a syntactic analysis and two graph traversals. The first graph is labeled by constants and the second one by the predicates in the axioms. The approach is applied on a benchmark arising in industrial program verification

    On Cognitive Preferences and the Plausibility of Rule-based Models

    Get PDF
    It is conventional wisdom in machine learning and data mining that logical models such as rule sets are more interpretable than other models, and that among such rule-based models, simpler models are more interpretable than more complex ones. In this position paper, we question this latter assumption by focusing on one particular aspect of interpretability, namely the plausibility of models. Roughly speaking, we equate the plausibility of a model with the likeliness that a user accepts it as an explanation for a prediction. In particular, we argue that, all other things being equal, longer explanations may be more convincing than shorter ones, and that the predominant bias for shorter models, which is typically necessary for learning powerful discriminative models, may not be suitable when it comes to user acceptance of the learned models. To that end, we first recapitulate evidence for and against this postulate, and then report the results of an evaluation in a crowd-sourcing study based on about 3.000 judgments. The results do not reveal a strong preference for simple rules, whereas we can observe a weak preference for longer rules in some domains. We then relate these results to well-known cognitive biases such as the conjunction fallacy, the representative heuristic, or the recogition heuristic, and investigate their relation to rule length and plausibility.Comment: V4: Another rewrite of section on interpretability to clarify focus on plausibility and relation to interpretability, comprehensibility, and justifiabilit

    A Case Study in Matching Service Descriptions to Implementations in an Existing System

    Full text link
    A number of companies are trying to migrate large monolithic software systems to Service Oriented Architectures. A common approach to do this is to first identify and describe desired services (i.e., create a model), and then to locate portions of code within the existing system that implement the described services. In this paper we describe a detailed case study we undertook to match a model to an open-source business application. We describe the systematic methodology we used, the results of the exercise, as well as several observations that throw light on the nature of this problem. We also suggest and validate heuristics that are likely to be useful in partially automating the process of matching service descriptions to implementations.Comment: 20 pages, 19 pdf figure

    Locating bugs without looking back

    Get PDF
    Bug localisation is a core program comprehension task in software maintenance: given the observation of a bug, e.g. via a bug report, where is it located in the source code? Information retrieval (IR) approaches see the bug report as the query, and the source code files as the documents to be retrieved, ranked by relevance. Such approaches have the advantage of not requiring expensive static or dynamic analysis of the code. However, current state-of-the-art IR approaches rely on project history, in particular previously fixed bugs or previous versions of the source code. We present a novel approach that directly scores each current file against the given report, thus not requiring past code and reports. The scoring method is based on heuristics identified through manual inspection of a small sample of bug reports. We compare our approach to eight others, using their own five metrics on their own six open source projects. Out of 30 performance indicators, we improve 27 and equal 2. Over the projects analysed, on average we find one or more affected files in the top 10 ranked files for 76% of the bug reports. These results show the applicability of our approach to software projects without history

    Fünf evidenzbasierte Heuristiken für den Einsatz von Video in der universitären Lehrerausbildung

    Full text link
    This article provides a research synthesis on the use of video in pre-service teacher education. Common ideas and evidences concerning the use of video in pre-service teacher education are reviewed. Based on the state-of-the-art in using video, five research-based heuristics are derived. Research findings of a number of studies are further used to illustrate the specification of heuristics. Specifically, a set of rules of thumb about when, how, and why to use video is presented to clarify the strengths and limitations of video as a medium to support pre-service teacher learning. (DIPF/Orig.)Der Beitrag liefert eine Forschungssynthese zur Nutzung von Video in der universitären Lehrerausbildung. Die Forschung wird dahingehend zusammengefasst, welche Ideen derzeit verfolgt werden und welche Evidenzen zur Nutzung von Video vorliegen. Basierend auf dem Forschungsstand leiten die Autoren fünf forschungsbasierte Heuristiken zum Einsatz von Video ab. Die Forschungsergebnisse einer Reihe ausgewählter Studien werden genutzt, um die Heuristiken weiter zu spezifizieren. Es werden Erfahrungsregeln vorgestellt, wann, wie und warum Video in der universitären Lehrerbildung eingesetzt werden kann. Die Erfahrungsregeln sollen helfen, Stärken und Schwächen von Video als ein Medium zur Unterstützung des Lernens von Lehramtsstudierenden zu klären. (DIPF/Orig.
    corecore