3,997 research outputs found

    Stop-list slicing.

    Get PDF
    Traditional program slicing requires two parameters: a program location and a variable, or perhaps a set of variables, of interest. Stop-list slicing adds a third parameter to the slicing criterion: those variables that are not of interest. This third parameter is called the stoplist. When a variable in the stop-list is encountered, the data-flow dependence analysis of slicing is terminated for that variable. Stop-list slicing further focuses on the computation of interest, while ignoring computations known or determined to be uninteresting. This has the potential to reduce slice size when compared to traditional forms of slicing. In order to assess the size of the reduction obtained via stop-list slicing, the paper reports the results of three empirical evaluations: a large scale empirical study into the maximum slice size reduction that can be achieved when all program variables are on the stop-list; a study on a real program, to determine the reductions that could be obtained in a typical application; and qualitative case-based studies to illustrate stop-list slicing in the small. The large-scale study concerned a suite of 42 programs of approximately 800KLoc in total. Over 600K slices were computed. Using the maximal stoplist reduced the size of the computed slices by about one third on average. The typical program showed a slice size reduction of about one-quarter. The casebased studies indicate that the comprehension effects are worth further consideration

    A multiple hill climbing approach to software module clustering

    Get PDF
    Automated software module clustering is important for maintenance of legacy systems written in a 'monolithic format' with inadequate module boundaries. Even where systems were originally designed with suitable module boundaries, structure tends to degrade as the system evolves, making re-modularization worthwhile. This paper focuses upon search-based approaches to the automated module clustering problem, where hitherto, the local search approach of hill climbing has been found to be most successful. In the paper we show that results from a set of multiple hill climbs can be combined to locate good 'building blocks' for subsequent searches. Building blocks are formed by identifying the common features in a selection of best hill climbs. This process reduces the search space, while simultaneously 'hard wiring' parts of the solution. The paper reports the results of an empirical study that show that the multiple hill climbing approach does indeed guide the search to higher peaks in subsequent executions. The paper also investigates the relationship between the improved results and the system size

    Automated unique input output sequence generation for conformance testing of FSMs

    Get PDF
    This paper describes a method for automatically generating unique input output (UIO) sequences for FSM conformance testing. UIOs are used in conformance testing to verify the end state of a transition sequence. UIO sequence generation is represented as a search problem and genetic algorithms are used to search this space. Empirical evidence indicates that the proposed method yields considerably better (up to 62% better) results compared with random UIO sequence generation

    Improved test quality using robust unique input/output circuit sequences (UIOCs)

    Get PDF
    In finite state machine (FSM) based testing, the problem of fault masking in the unique input/ output (UIO) sequence may degrade the test performance of the UIO based methods. This paper investigates this problem and proposes the use of a new type of unique input/output circuit (UIOC) sequence for state verification, which may help to overcome the drawbacks that exist in the UIO based techniques. When constructing a UIOC, overlap and internal state observation schema are used to increase the robustness of a test sequence. Test quality is compared by using the forward UIO method (F-method), the backward UIO method (B-method) and the UIOC method (C-method) separately. Robustness of the UIOCs constructed by the algorithm given in this paper is also compared with those constructed by the algorithm given previously. Experimental results suggest that the C-method outperforms the F- and the B-methods and the UIOCs constructed by the Algorithm given in this paper, are more robust than those constructed by other proposed algorithms

    Amorphous slicing of extended finite state machines

    Get PDF
    Slicing is useful for many Software Engineering applications and has been widely studied for three decades, but there has been comparatively little work on slicing Extended Finite State Machines (EFSMs). This paper introduces a set of dependency based EFSM slicing algorithms and an accompanying tool. We demonstrate that our algorithms are suitable for dependence based slicing. We use our tool to conduct experiments on ten EFSMs, including benchmarks and industrial EFSMs. Ours is the first empirical study of dependence based program slicing for EFSMs. Compared to the only previously published dependence based algorithm, our average slice is smaller 40% of the time and larger only 10% of the time, with an average slice size of 35% for termination insensitive slicing

    Electron-correlation effects in the gg-factor of light Li-like ions

    Full text link
    We investigate electron-correlation effects in the gg-factor of the ground state of Li-like ions. Our calculations are performed within the nonrelativistic quantum electrodynamics (NRQED) expansion up to two leading orders in the fine-structure constant Ī±\alpha, Ī±2\alpha^2 and Ī±3\alpha^3. The dependence of the NRQED results on the nuclear charge number ZZ is studied and the individual 1/Z1/Z-expansion contributions are identified. Combining the obtained data with the results of the all-order (in ZĪ±Z\alpha) calculations performed within the 1/Z1/Z expansion, we derive the unified theoretical predictions for the gg-factor of light Li-like ions.Comment: 9 pages, 4 table

    FORTEST: Formal methods and testing

    Get PDF
    Formal methods have traditionally been used for specification and development of software. However there are potential benefits for the testing stage as well. The panel session associated with this paper explores the usefulness or otherwise of formal methods in various contexts for improving software testing. A number of different possibilities for the use of formal methods are explored and questions raised. The contributors are all members of the UK FORTEST Network on formal methods and testing. Although the authors generally believe that formal methods are useful in aiding the testing process, this paper is intended to provoke discussion. Dissenters are encouraged to put their views to the panel or individually to the authors

    Sapienz: Multi-objective automated testing for android applications

    Get PDF
    We introduce Sapienz, an approach to Android testing that uses multi-objective search-based testing to automatically explore and optimise test sequences, minimising length, while simultaneously maximising coverage and fault revelation. Sapienz combines random fuzzing, systematic and search-based exploration, exploiting seeding and multi-level instrumentation. Sapienz significantly outperforms (with large effect size) both the state-of-the-art technique Dynodroid and the widely-used tool, Android Monkey, in 7/10 experiments for coverage, 7/10 for fault detection and 10/10 for fault-revealing sequence length. When applied to the top 1, 000 Google Play apps, Sapienz found 558 unique, previously unknown crashes. So far we have managed to make contact with the developers of 27 crashing apps. Of these, 14 have confirmed that the crashes are caused by real faults. Of those 14, six already have developer-confirmed fixes

    Everyday learning at work: communities of practice in TAFE.

    Get PDF
    Ongoing restructuring, new types of students, changes in systems and the movement of staff within sections and institutes are only some of the daily challenges facing practitioners in many areas of TAFE as they grapple with the notion of organisational flexibility and customer responsiveness. This paper looks at how members of four workgroups based in two metropolitan institutes are dealing with challenges through informal learning. This paper draws from preliminary findings of an Australian Research Council collaborative research project concerned with determining the significance of informal learning and its contribution to organisational performance. The project is currently midway through and has completed interviews and held feedback sessions with members of four workgroups undertaking quite different types of work. While the project is based in an educational organisation, the major focus of the research project is on TAFE as a workplace. Wenger has written extensively on communities of practice and his work provides a new perspective for viewing learning occurring in workplaces (Wenger, 1998). This paper draws from Wengerā€™s theoretical work and views the four workgroups from the point of view of communities of practice. In doing so, it enables many of the everyday work practices of the workgroups to be articulated as ā€˜learningā€™. This offers potential for learning and development because it begins to foreground practices within TAFE that may foster informal learning environments and strengthen what is already occurring in these communities
    • ā€¦
    corecore