1,721,212 research outputs found

    동시성 커버리지 메트릭을 이용한 멀티쓰레드 프로그램의 효과적이고 효율적인 테스트 생성

    No full text
    학위논문(박사) - 한국과학기술원 : 전산학부, 2015.8 ,[viii, 133 p. :]오늘날 많은 소프트웨어는 멀티코어 하드웨어를 효과적으로 활용할 수 있는 멀티쓰레드 프로그램(multithreaded program)형태로 개발되고 있다. 멀티쓰레드 프로그램 개발의 난점 중 하나는 기존의 소프트웨어 테스팅(software testing) 방법이 멀테쓰레드 프로그램의 동시성 오류 검출과 동작정확성 검증에 효과적이지 않다는 점이다. 프로그램 입력 값에 의해서만 동작이 결정되는 비 멀티쓰레드 프로그램(단일쓰레드 프로그램)과 달리, 멀티쓰레드 프로그램의 동작은 입력 값뿐만 아니라 쓰레드 스케쥴(thread schedule), 즉 쓰레드 간 실행순서에 의해서도 영향을 받는다. 일반적인 멀티쓰레드 프로그램의 경우, 쓰레드 스케쥴이 실행 시점에 비결정적(non-deterministic) 쓰레드 스케쥴러에 의해 결정되기 때문에, 규모가 작은 프로그램에 대해서조차 발생 가능한 쓰레드 스케쥴이 극심히 많고, 별도의 장치 없이 쓰레드 스케쥴의 의도적 생성이 어렵기 때문에, 기존의 비 멀티쓰레드 프로그램을 대상으로 한 테스팅 방법으로는 효과적이고 효율적인 테스팅 수행이 어렵다. 멀티쓰레드 프로그램의 오류검출과 동작정확도 검증을 위해 현재까지 개발된 여러 기법은, 분석 능력이 제한적이거나 검증 대상 프로그램 크기에 대한 확장성이 낮아 실제 소프트웨어 개발에서 실용성이 낮은 실정이다. 본 논문은 동시성 커버리지 메트릭(concurrency coverage metric)을 활용하여 멀티쓰레드 프로그램을 효과적이고 효율적으로 테스팅하는 자동 테스팅 기법을 제안한다. 동시성 커버리지 메트릭은, 현재 널리 쓰이는 분기/구문 커버리지 메트릭과 유사하게, 검증 대상 프로그램에서 대한 테스팅 조건을 생성함으로써 멀티쓰레드 프로그램의 체계적인 테스팅을 지원하고자 제안된 방법론이다. 반면, 동시성 커버리지 메트릭이 실제 소프트웨어 테스팅에서 어느 정도 효용성을 제공하는 지 실증적으로 입증되지 않았으며, 그동안 동시성 커버리지 메트릭을 활용한 자동 테스팅 기법도 제한적인 수준이었다. 본 논문은 우선, 동시성 커버리지 메트릭이 테스트 메트릭으로서 멀티쓰레드 프로그램 테스팅에 효과적인 기능을 제공하는지를 실험적 방법으로 검토하였다. 여러 멀티쓰레드 프로그램을 이용한 실험 결과에 따르면, 현재 제안된 대부분의 동시성 커버리지 메트릭은 멀티쓰레드 프로그램 테스팅의 오류 검출능력을 추정하고 유용한 테스트 생성 지표를 제공하는데 효과적인 기능을 제공한다. 본 논문은 두 번째로, 테스팅 과정에서 높은 동시성 커버리지를 단시간에 달성하는 쓰레드 스케쥴 생성 알고리즘을 제시하고, 이를 기반으로 한 자동 테스팅 기법을 소개한다. 본 논문이 제시한 자동 테스팅 기법은, 기존에 제안된 동시성 커버리지 메트릭의 한계점을 개선한 새로운 메트릭인 조합적 동시성 커버리지 메트릭 (combinatorial concurrency coverage metric)를 활용한다. 본 논문이 제시한 자동 테스팅 기법을 기존의 멀티쓰레드 프로그램 테스팅 기법과 비교한 실험 결과에 따르면, 본 논문의 기법이 기존 기법보다 향상된 멀티쓰레드 프로그램 오류 검출 효용성과 효율성을 달성함을 알 수 있다. 마지막으로, 본 논문은 동시성 커버리지 메트릭을 활용하여 멀티쓰레드 프로그램에 대해 효과적으로 회기 테스팅(regression testing)을 수행하는 동시성 커버리지 기반 회기 테스팅 기법을 제시한다. 본 논문이 제시한 기법을 기존 기법과 비교한 실험결과에 따르면, 동시성 커버리지 기반 회기 테스팅 기법은 멀티쓰레드 프로그램 수정 과정에서 발생하는 동시성 회기 오류를 기존 기법보다 효과적이고 효율적으로 검출한다.한국과학기술원 :전산학부

    Going Beyond Counting First Authors in Author Co-citation Analysis

    Get PDF
    The present study examines one of the fundamental aspects of author co-citation analysis (ACA) - the way co-citation counts are defined. Co-citation counting provides the data on which all subsequent statistical analyses and mappings are based, and we compare ACA results based on two different types of co-citation counting - the traditional type that only counts the first one among a cited work's authors on the one hand and a non-traditional type that takes into account the first 5 authors of a cited work on the other hand. Results indicate that the picture produced through this non-traditional author co-citation counting contains more coherent author groups and is therefore considerably clearer. However, this picture represents fewer specialties in the research field being studied than that produced through the traditional first-author co-citation counting when the same number of top-ranked authors is selected and analyzed. Reasons for these effects are discussed

    Variations on the Author

    Get PDF
    “Variations on the Author” discusses two of Eduardo Coutinho’s recent films (Um Dia na Vida, from 2010, and Últimas Conversas, posthumously released in 2015) and their contribution to the general question of documentary authorship. The director’s filmography is characterized by a consistent yet self-effacing form of authorial self-inscription: Coutinho often features as an interviewer that rather than express opinions propels discourses; an interviewer that is good at listening. This mode of self-inscription characterizes him as an author who is not expressive but who is nonetheless markedly present on the screen. In Um Dia na Vida, however, Coutinho is completely absent form the image, while Últimas Conversas, on the contrary, includes a confessional prologue that moves the director from the margins to the center of his films. This article examines the ways in which these works stand out in the filmography of a director who offers new insights into the notion of cinematic authorship

    Predictive Mutation Analysis via Natural Language Channel in Source Code

    No full text
    Mutation analysis can provide valuable insights into both System Under Test (SUT) and its test suite. However, it is not scalable due to the cost of building and testing a large number of mutants. Predictive Mutation Testing (PMT) has been proposed to reduce the cost of mutation testing, but it can only provide statistical inference about whether a mutant will be killed or not by the entire test suite. We propose Seshat, a Predictive Mutation Analysis (PMA) technique that can accurately predict the entire kill matrix, not just the mutation score of the given test suite. Seshat exploits the natural language channel in code, and learns the relationship between the syntactic and semantic concepts of each test case and the mutants it can kill, from a given kill matrix. The learnt model can later be used to predict the kill matrices for subsequent versions of the program, even after both the source and test code have changed significantly. Empirical evaluation using the programs in the Defects4J shows that Seshat can predict kill matrices with the average F-score of 0.83 for versions that are up to years apart. This is an improvement of F-score by 0.14 and 0.45 point over the state-of-the-art predictive mutation testing technique, and a simple coverage based heuristic, respectively. Seshat also performs as well as PMT for the prediction of mutation scores only. Once Seshat trains its model using a concrete mutation analysis, the subsequent predictions made by Seshat are on average 39 times faster than actual test-based analysis

    Appropriate Similarity Measures for Author Cocitation Analysis

    Get PDF
    We provide a number of new insights into the methodological discussion about author cocitation analysis. We first argue that the use of the Pearson correlation for measuring the similarity between authors’ cocitation profiles is not very satisfactory. We then discuss what kind of similarity measures may be used as an alternative to the Pearson correlation. We consider three similarity measures in particular. One is the well-known cosine. The other two similarity measures have not been used before in the bibliometric literature. Finally, we show by means of an example that our findings have a high practical relevance.information science;Pearson correlation;cosine;similarity measure;author cocitation analysis

    Systematically Collecting Cross-project Bug Cases from OSS-Fuzz Test History

    No full text
    본 논문은 OSS-Fuzz 프로젝트를 통한 오픈소스 프로젝트의 테스트 이력과 오픈소스 프로젝트 저장소를 활용하여 프로젝트-교차 결함(cross-project bug)으로 발생한 시스템 오류 사례를 체계적으로 수집하는 방법을 소개한다. 제안 하는 방법은 OSS-Fuzz의 퍼징 이력과 오픈소스 프로젝트의 개발 이력 사이의 연관 관계를 체계적으로 검토함으로 써, 향후 임상적 분석 연구의 실험 대상으로서 요구되는 다양한 결함 정보를 총체적으로 수집한다. 제안한 방법을 7개 오픈소스 프로젝트를 대상으로 적용한 결과, 78건의 OSS-Fuzz 결함 보고를 체계적으로 검토함으로써 실제 프로 젝트-교차 결함에 해당하는 2건을 식별할 수 있었다

    Dispelling the Myths Behind First-author Citation Counts

    Get PDF
    We conducted a full-scale evaluative citation analysis study of scholars in the XML research field to explore just how different from each other author rankings resulting from different citation counting methods actually are, and to demonstrate the capability of emerging data and tools on the Web in supporting more realistic citation counting methods. Our results contest some common arguments for the continued use of first-author citation counts in the evaluation of scholars, such as high correlations between author rankings by first-author citation counts and other citation counting methods, and high costs of using more realistic citation counting methods that are not well-supported by the ISI databases. It is argued that increasingly available digital full text research papers make it possible for citation analysis studies to go beyond what the ISI databases have directly supported and to employ more sophisticated methods

    Author Index

    No full text
    Nao informado

    Model-based Kernel Testing for Concurrency Bugs through Counter Example Replay

    No full text
    Despite the growing need for customized operating system kernels for embedded devices, kernel development continues to suffer from high development and testing costs for several reasons, including the high complexity of the kernel code, the infeasibility of unit testing, exponential numbers of concurrent behaviors, and a lack of proper tool support. To alleviate these difficulties, this study proposes the MOdel-basedKERnelTesting (MOKERT) framework, which supports detection of concurrencybugs in the kernel by combining both model checking techniques and testing methods. The MOKERT framework was applied to the file systems of the Linux 2.6 kernel and found a data race bug in the proc file system
    corecore