236 research outputs found

    FEMOSAA: feature-guided and knee-driven multi-objective optimization for self-adaptive software

    Get PDF
    Self-Adaptive Software (SAS) can reconfigure itself to adapt to the changing environment at runtime, aiming to continually optimize conflicted nonfunctional objectives (e.g., response time, energy consumption, throughput, cost, etc.). In this article, we present Feature-guided and knEe-driven Multi-Objective optimization for Self-Adaptive softwAre (FEMOSAA), a novel framework that automatically synergizes the feature model and Multi-Objective Evolutionary Algorithm (MOEA) to optimize SAS at runtime. FEMOSAA operates in two phases: at design time, FEMOSAA automatically transposes the engineers’ design of SAS, expressed as a feature model, to fit the MOEA, creating new chromosome representation and reproduction operators. At runtime, FEMOSAA utilizes the feature model as domain knowledge to guide the search and further extend the MOEA, providing a larger chance for finding better solutions. In addition, we have designed a new method to search for the knee solutions, which can achieve a balanced tradeoff. We comprehensively evaluated FEMOSAA on two running SAS: One is a highly complex SAS with various adaptable real-world software under the realistic workload trace; another is a service-oriented SAS that can be dynamically composed from services. In particular, we compared the effectiveness and overhead of FEMOSAA against four of its variants and three other search-based frameworks for SAS under various scenarios, including three commonly applied MOEAs, two workload patterns, and diverse conflicting quality objectives. The results reveal the effectiveness of FEMOSAA and its superiority over the others with high statistical significance and nontrivial effect sizes

    How to make best use of cross-company data in software effort estimation?

    No full text
    Previous works using Cross-Company (CC) data for making Within-Company (WC) Software Effort Estimation (SEE) try to use CC data or models directly to provide predictions in the WC context. So, these data or models are only helpful when they match the WC context well. When they do not, a fair amount of WC training data, which are usually expensive to acquire, are still necessary to achieve good performance. We investigate how to make best use of CC data, so that we can reduce the amount of WC data while maintaining or improving performance in comparison to WC SEE models. This is done by proposing a new framework to learn the relationship between CC and WC projects explicitly, allowing CC models to be mapped to the WC context. Such mapped models can be useful even when the CC models themselves do not match the WC context directly. Our study shows that a new approach instantiating this framework is able not only to use substantially less WC data than a corresponding WC model, but also to achieve similar/better performance. This approach can also be used to provide insight into the behaviour of a company in comparison to others

    On the effects of seeding strategies: A case for search-based multi-objective service composition

    No full text
    Service composition aims to search a composition plan of candidate services that produces the optimal results with respect to multiple and possibly conflicting Quality-of-Service (QoS) attributes, e.g., latency, throughput and cost. This leads to a multi-objective optimization problem for which evolutionary algorithm is a promising solution. In this paper, we investigate different ways of injecting knowledge about the problem into the Multi-Objective Evolutionary Algorithm (MOEA) by seeding. Specifically, we propose four alternative seeding strategies to strengthen the quality of the initial population for the MOEA to start working with. By using the real-world WS-DREAM dataset, we conduced experimental evaluations based on 9 different workflows of service composition problems and several metrics. The results confirm the effectiveness and efficiency of those seeding strategies. We also observed that, unlike the discoveries for other problem domains, the implication of the number of seeds on the service composition problems is minimal, for which we investigated and discussed the possible reasons

    Synergizing domain expertise with self-awareness in software systems: A patternized architecture guideline

    No full text
    © 1963-2012 IEEE. To promote engineering self-aware and self-adaptive software systems in a reusable manner, architectural patterns and the related methodology provide an unified solution to handle the recurring problems in the engineering process. However, in existing patterns and methods, domain knowledge and engineers' expertise that is built over time are not explicitly linked to the self-aware processes. This link is important, as knowledge is a valuable asset for the related problems and its absence would cause unnecessary overhead, possibly misleading results, and unwise waste of the tremendous benefits that could have been brought by the domain expertise. This article highlights the importance of synergizing domain expertise and the self-awareness to enable better self-adaptation in software systems, relying on well-defined expertise representation, algorithms, and techniques. In particular, we present a holistic framework of notions, enriched patterns and methodology, dubbed DBASES, that offers a principled guideline for the engineers to perform difficulty and benefit analysis on possible synergies, in an attempt to keep 'engineers-in-the-loop.' Through three tutorial case studies, we demonstrate how DBASES can be applied in different domains, within which a carefully selected set of candidates with different synergies can be used for quantitative investigation, providing more informed decisions of the design choices

    How to evaluate solutions in Pareto-based search-based software engineering: a critical review and methodological guidance

    No full text
    With modern requirements, there is an increasing tendency of considering multiple objectives/criteria simultaneously in many Software Engineering (SE) scenarios. Such a multi-objective optimization scenario comes with an important issue - how to evaluate the outcome of optimization algorithms, which typically is a set of incomparable solutions (i.e., being Pareto nondominated to each other). This issue can be challenging for the SE community, particularly for practitioners of Search-Based SE (SBSE). On one hand, multi-objective optimization could still be relatively new to SE/SBSE researchers, who may not be able to identify the right evaluation methods for their problems. On the other hand, simply following the evaluation methods for general multi-objective optimization problems may not be appropriate for specific SBSE problems, especially when the problem nature or decision maker's preferences are explicitly/implicitly known. This has been well echoed in the literature by various inappropriate/inadequate selection and inaccurate/misleading use of evaluation methods. In this paper, we first carry out a systematic and critical review of quality evaluation for multi-objective optimization in SBSE. We survey 717 papers published between 2009 and 2019 from 36 venues in seven repositories, and select 95 prominent studies, through which we identify five important but overlooked issues in the area. We then conduct an in-depth analysis of quality evaluation indicators/methods and general situations in SBSE, which, together with the identified issues, enables us to codify a methodological guidance for selecting and using evaluation methods in different SBSE scenarios.</p

    The main differences in the findings between present meta-analysis and previous published meta-analyses.

    No full text
    <p>The main differences in the findings between present meta-analysis and previous published meta-analyses.</p

    Significant Association of Glutathione S-Transferase T1 Null Genotype with Prostate Cancer Risk: A Meta-Analysis of 26,393 Subjects

    Get PDF
    <div><h3>Background</h3><p>Recent studies on the association between Glutathione S-transferase T1 (<em>GSTT1</em>) polymorphism and risk of prostate cancer showed inconclusive results. To clarify this possible association, we conducted a meta-analysis of published studies.</p> <h3>Methods</h3><p>Data were collected from the following electronic databases: Pubmed, Embase, and Chinese Biomedical Database (CBM). The odds ratio (OR) and its 95% confidence interval (95%CI) was used to assess the strength of the association. We summarized the data on the association between <em>GSTT1</em> null genotype and risk of prostate cancer in the overall population, and performed subgroup analyses by ethnicity, adjusted ORs, and types of controls.</p> <h3>Results</h3><p>Ultimately, a total of 43 studies with a total of 26,393 subjects (9,934 cases and 16,459 controls) were eligible for meta-analysis. Overall, there was a significant association between <em>GSTT1</em> null genotype and increased risk of prostate cancer (OR = 1.14, 95%CI 1.01–1.29, P = 0.034). Meta-analysis of adjusted ORs also showed a significant association between <em>GSTT1</em> null genotype and increased risk of prostate cancer (OR = 1.34, 95%CI 1.09–1.64, P = 0.006). Similar results were found in the subgroup analyses by ethnicity and types of controls.</p> <h3>Conclusion</h3><p>This meta-analysis demonstrates that <em>GSTT1</em> null genotype is associated with prostate cancer susceptibility, and <em>GSTT1</em> null genotype contributes to increased risk of prostate cancer.</p> </div

    Adjusted OR with its 95%CI for the association between <i>GSTT1</i> null genotype and risk of prostate cancer.

    No full text
    <p>Adjusted OR with its 95%CI for the association between <i>GSTT1</i> null genotype and risk of prostate cancer.</p

    Funnel plot to assess the publication bias of the studies in this meta-analysis.

    No full text
    <p>Funnel plot to assess the publication bias of the studies in this meta-analysis.</p

    A critical review of: "a practical guide to select quality indicators for assessing pareto-based search algorithms in search-based software engineering": essay on quality indicator selection for SBSE

    No full text
    This paper presents a critical review of the work published at ICSE'2016 on a practical guide of quality indicator selection for assessing multiobjective solution sets in search-based software engineering (SBSE). This review has two goals. First, we aim at explaining why we disagree with the work at ICSE'2016 and why the reasons behind this disagreement are important to the SBSE community. Second, we aim at providing a more clarified guide of quality indicator selection, serving as a new direction on this particular topic for the SBSE community. In particular, we argue that it does matter which quality indicator to select, whatever in the same quality category or across different categories. This claim is based upon the fundamental goal of multiobjective optimisation --- supplying the decision-maker a set of solutions which are the most consistent with their preferences
    corecore