12,970 research outputs found

    Supporting inheritance hierarchy changes in model-based regression test selection

    Get PDF
    Models can be used to ease and manage the development, evolution, and runtime adaptation of a software system. When models are adapted, the resulting models must be rigorously tested. Apart from adding new test cases, it is also important to perform regression testing to ensure that the evolution or adaptation did not break existing functionality. Since regression testing is performed with limited resources and under time constraints, regression test selection (RTS) techniques are needed to reduce the cost of regression testing. Applying model-level RTS for model-based evolution and adaptation is more convenient than using code-level RTS because the test selection process happens at the same level of abstraction as that of evolution and adaptation. In earlier work, we proposed a model-based RTS approach called MaRTS to be used with a fine-grained model-based adaptation framework that targets applications implemented in Java. MaRTS uses UML models consisting of class and activity diagrams. It classifies test cases as obsolete, reusable, or retestable based on changes made to UML class and activity diagrams of the system being adapted. However, MaRTS did not take into account the changes made to the inheritance hierarchy in the class diagram and the impact of these changes on the selection of test cases. This paper extends MaRTS to support such changes, and demonstrates that the extended approach performs as well as or better than code-based RTS approaches in safely selecting regression test cases. While MaRTS can generally be used during any model-driven development or model-based evolution activity, we have developed it in the context of runtime adaptation. We evaluated the extended MaRTS on a set of applications, and compared the results with code-based RTS approaches that also support changes to the inheritance hierarchy. The results showed that the extended MaRTS selected all the test cases relevant to the inheritance hierarchy changes, and that the fault detection ability of the selected test cases was never lower than that of the baseline test cases. The extended MaRTS achieved comparable results to a graph-walk code-based RTS approach (DejaVu), and showed a higher reduction in the number of selected test cases when compared with a static analysis code-based RTS approach (ChEOPSJ)

    Juvenile rank acquisition is associated with fitness independent of adult rank

    Get PDF
    Social rank is a significant determinant of fitness in a variety of species. The importance of social rank suggests that the process by which juveniles come to establish their position in the social hierarchy is a critical component of development. Here, we use the highly predictable process of rank acquisition in spotted hyenas to study the consequences of variation in rank acquisition in early life. In spotted hyenas, rank is ‘inherited’ through a learning process called ‘maternal rank inheritance.’ This pattern is very consistent: approximately 80% of juveniles acquire the exact rank expected under the rules of maternal rank inheritance. The predictable nature of rank acquisition in these societies allows the process of rank acquisition to be studied independently from the ultimate rank that each juvenile attains. In this study, we use Elo-deviance scores, a novel application of the Elo-rating method, to calculate each juvenile’s deviation from the expected pattern of maternal rank inheritance during development. Despite variability in rank acquisition among juveniles, most of these juveniles come to attain the exact rank expected of them according to the rules of maternal rank inheritance. Nevertheless, we find that transient variation in rank acquisition in early life is associated with long-term fitness consequences for these individuals: juveniles ‘underperforming’ their expected ranks show reduced survival and lower lifetime reproductive success than better-performing peers, and this relationship is independent of both maternal rank and rank achieved in adulthood. We also find that multiple sources of early life adversity have cumulative, but not compounding, effects on fitness. Future work is needed to determine if variation in rank acquisition directly affects fitness, or if some other variable, such as maternal investment or juvenile condition, causes variation in both of these outcomes. (Includes Supplemental Materials and Reviewers\u27 Comments.

    Family size and intergenerational social mobility during the fertility transition: evidence of resource dilution from the city of Antwerp in nineteenth century Belgium

    Get PDF
    It has been argued in sociology, economics, and evolutionary anthropology that family size limitation enhances the intergenerational upward mobility chances in modernized societies. If parents have a large flock, family resources get diluted and intergenerational mobility is bound to head downwards. Yet, the empirical record supporting this resource dilution hypothesis is limited. This article investigates the empirical association between family size limitation and intergenerational mobility in an urban, late nineteenth century population in Western Europe. It uses life course data from the Belgian city of Antwerp between 1846 and 1920. Findings are consistent with the resource dilution hypothesis: after controlling for confounding factors, people with many children were more likely to end up in the lower classes. Yet, family size limitation was effective as a defensive rather than an offensive strategy: it prevented the next generation from going down rather than helping them to climb up the social ladder. Also, family size appears to have been particularly relevant for the middle classes. Implications for demographic transition theory are discussed

    A heuristic-based approach to code-smell detection

    Get PDF
    Encapsulation and data hiding are central tenets of the object oriented paradigm. Deciding what data and behaviour to form into a class and where to draw the line between its public and private details can make the difference between a class that is an understandable, flexible and reusable abstraction and one which is not. This decision is a difficult one and may easily result in poor encapsulation which can then have serious implications for a number of system qualities. It is often hard to identify such encapsulation problems within large software systems until they cause a maintenance problem (which is usually too late) and attempting to perform such analysis manually can also be tedious and error prone. Two of the common encapsulation problems that can arise as a consequence of this decomposition process are data classes and god classes. Typically, these two problems occur together – data classes are lacking in functionality that has typically been sucked into an over-complicated and domineering god class. This paper describes the architecture of a tool which automatically detects data and god classes that has been developed as a plug-in for the Eclipse IDE. The technique has been evaluated in a controlled study on two large open source systems which compare the tool results to similar work by Marinescu, who employs a metrics-based approach to detecting such features. The study provides some valuable insights into the strengths and weaknesses of the two approache

    Family size and intergenerational social mobility during the fertility transition

    Get PDF
    It has been argued in sociology, economics, and evolutionary anthropology that family size limitation enhances the intergenerational upward mobility chances in modernized societies. If parents have a large flock, family resources get diluted and intergenerational mobility is bound to head downwards. Yet, the empirical record supporting this resource dilution hypothesis is limited. This article investigates the empirical association between family size limitation and intergenerational mobility in an urban, late nineteenth century population in Western Europe. It uses life course data from the Belgian city of Antwerp between 1846 and 1920. Findings are consistent with the resource dilution hypothesis: after controlling for confounding factors, people with many children were more likely to end up in the lower classes. Yet, family size limitation was effective as a defensive rather than an offensive strategy: it prevented the next generation from going down rather than helping them to climb up the social ladder. Also, family size appears to have been particularly relevant for the middle classes. Implications for demographic transition theory are discussed.Belgium, demographic transition, fertility, nineteenth century, parental investment, quantity-quality trade-off, resource dilution, social mobility

    JWalk: a tool for lazy, systematic testing of java classes by design introspection and user interaction

    Get PDF
    Popular software testing tools, such as JUnit, allow frequent retesting of modified code; yet the manually created test scripts are often seriously incomplete. A unit-testing tool called JWalk has therefore been developed to address the need for systematic unit testing within the context of agile methods. The tool operates directly on the compiled code for Java classes and uses a new lazy method for inducing the changing design of a class on the fly. This is achieved partly through introspection, using Java’s reflection capability, and partly through interaction with the user, constructing and saving test oracles on the fly. Predictive rules reduce the number of oracle values that must be confirmed by the tester. Without human intervention, JWalk performs bounded exhaustive exploration of the class’s method protocols and may be directed to explore the space of algebraic constructions, or the intended design state-space of the tested class. With some human interaction, JWalk performs up to the equivalent of fully automated state-based testing, from a specification that was acquired incrementally

    Evolutionary Explanation and the Record of Interest: Using Evolutionary Archaeology and Dual-Inheritance Theory to Explain the Archaeological Record

    Get PDF
    Book description: This volume offers an integrative approach to the application of evolutionary theory in studies of cultural transmission and social evolution and reveals the enormous range of ways in which Darwinian ideas can lead to productive empirical research, the touchstone of any worthwhile theoretical perspective. While many recent works on cultural evolution adopt a specific theoretical framework, such as dual inheritance theory or human behavioral ecology, Pattern and Process in Cultural Evolution emphasizes empirical analysis and includes authors who employ a range of backgrounds and methods to address aspects of culture from an evolutionary perspective. Editor Stephen Shennan has assembled archaeologists, evolutionary theorists, and ethnographers, whose essays cover a broad range of time periods, localities, cultural groups, and artifacts

    Ontology of core data mining entities

    Get PDF
    In this article, we present OntoDM-core, an ontology of core data mining entities. OntoDM-core defines themost essential datamining entities in a three-layered ontological structure comprising of a specification, an implementation and an application layer. It provides a representational framework for the description of mining structured data, and in addition provides taxonomies of datasets, data mining tasks, generalizations, data mining algorithms and constraints, based on the type of data. OntoDM-core is designed to support a wide range of applications/use cases, such as semantic annotation of data mining algorithms, datasets and results; annotation of QSAR studies in the context of drug discovery investigations; and disambiguation of terms in text mining. The ontology has been thoroughly assessed following the practices in ontology engineering, is fully interoperable with many domain resources and is easy to extend
    corecore