201 research outputs found
Improving Multi-Objective Test Case Selection by Injecting Diversity in Genetic Algorithms
A way to reduce the cost of regression testing consists of selecting or prioritizing subsets of test cases from a test suite according to some criteria. Besides greedy algorithms, cost cognizant additional greedy algorithms, multi-objective optimization algorithms, and Multi-Objective Genetic Algorithms (MOGAs), have also been proposed to tackle this problem. However, previous studies have shown that there is no clear winner between greedy and MOGAs, and that their combination does not necessarily produce better results. In this paper we show that the optimality of MOGAs can be significantly improved by diversifying the solutions (sub-sets of the test suite) generated during the search process. Specifically, we introduce a new MOGA, coined as DIV-GA (DIversity based Genetic Algorithm), based on the mechanisms of orthogonal design and orthogonal evolution that increase diversity by injecting new orthogonal individuals during the search process. Results of an empirical study conducted on eleven programs show that DIV-GA outperforms both greedy algorithms and the traditional MOGAs from the optimality point of view. Moreover, the solutions (sub-sets of the test suite) provided by DIV-GA are able to detect more faults than the other algorithms, while keeping the same test execution cost
Search-based techniques applied to optimization of project planning for a massive maintenance project
This paper evaluates the use of three different search-based techniques, namely genetic algorithms, hill climbing and simulated annealing, and two problem representations, for planning resource allocation in large massive maintenance projects. In particular the search-based approach aims to find an optimal or near optimal order in which to allocate work packages to programming teams, in order to minimize the project duration.The approach is validated by an empirical study of a large, commercial Y2K massive maintenance project, which compares these techniques with each other and with a random search (to provide base line comparison data).Results show that an ordering-based genome encoding (with tailored cross over operator) and the genetic algorithm appear to provide the most robust solution, though the hill climbing approach also performs well. The best search technique results reduce the project duration by as much as 50%
Enabling Proactive Adaptation through Just-in-time Testing of Conversational Services
Service-based applications (SBAs) will increasingly be composed of third-party services available over the Internet. Reacting to failures of those third-party services by dynamically adapting the SBAs will become a key enabler for ensuring reliability. Determining when to adapt an SBA is especially challenging in the presence of conversational (aka. stateful) services. A conversational service might fail in the middle of an invocation sequence, in which case adapting the SBA might be costly; e.g., due to the necessary state transfer to an alternative service. In this paper we propose just-in-time testing of conversational services as a novel approach to detect potential problems and to proactively trigger adaptations, thereby preventing costly compensation activities. The approach is based on a framework for online testing and a formal test-generation method which guarantees functional correctness for conversational services. The applicability of the approach is discussed with respect to its underlying assumptions and its performance. The benefits of the approach are demonstrated using a realistic example
Mining Version Histories for Detecting Code Smells
Code smells are symptoms of poor design and implementation choices that may hinder code comprehension, and possibly increase change- and fault-proneness. While most of the detection techniques just rely on structural information, many code smells are intrinsically characterized by how code elements change over time. In this paper, we propose HIST (Historical Information for Smell deTection), an approach exploiting change history information to detect instances of five different code smells, namely Divergent Change, Shotgun Surgery, Parallel Inheritance, Blob, and Feature Envy.We evaluate HIST in two empirical studies. The first, conducted on twenty open source projects, aimed at assessing the accuracy of HIST in detecting instances of the code smells mentioned above. The results indicate that the precision of HIST ranges between 72% and 86%, and its recall ranges between 58% and 100%. Also, results of the first study indicate that HIST is able to identify code smells that cannot be identified by competitive approaches solely based on code analysis of a single system’s snapshot. Then, we conducted a second study aimed at investigating to what extent the code smells detected by HIST (and by competitive code analysis techniques) reflect developers’ perception of poor design and implementation choices. We involved twelve developers of four open source projects that recognized more than 75% of the code smell instances identified by HIST as actual design/implementation problems
BOMs Away! Inside the Minds of Stakeholders: A Comprehensive Study of Bills of Materials for Software Systems
Software Bills of Materials (SBOMs) have emerged as tools to facilitate the
management of software dependencies, vulnerabilities, licenses, and the supply
chain. While significant effort has been devoted to increasing SBOM awareness
and developing SBOM formats and tools, recent studies have shown that SBOMs are
still an early technology not yet adequately adopted in practice. Expanding on
previous research, this paper reports a comprehensive study that investigates
the current challenges stakeholders encounter when creating and using SBOMs.
The study surveyed 138 practitioners belonging to five stakeholder groups
(practitioners familiar with SBOMs, members of critical open source projects,
AI/ML, cyber-physical systems, and legal practitioners) using differentiated
questionnaires, and interviewed 8 survey respondents to gather further insights
about their experience. We identified 12 major challenges facing the creation
and use of SBOMs, including those related to the SBOM content, deficiencies in
SBOM tools, SBOM maintenance and verification, and domain-specific challenges.
We propose and discuss 4 actionable solutions to the identified challenges and
present the major avenues for future research and development.Comment: 11 pages, ICSE 202
Recovering Grammar Relationships for the Java Language Specification
Grammar convergence is a method that helps discovering relationships between
different grammars of the same language or different language versions. The key
element of the method is the operational, transformation-based representation
of those relationships. Given input grammars for convergence, they are
transformed until they are structurally equal. The transformations are composed
from primitive operators; properties of these operators and the composed chains
provide quantitative and qualitative insight into the relationships between the
grammars at hand. We describe a refined method for grammar convergence, and we
use it in a major study, where we recover the relationships between all the
grammars that occur in the different versions of the Java Language
Specification (JLS). The relationships are represented as grammar
transformation chains that capture all accidental or intended differences
between the JLS grammars. This method is mechanized and driven by nominal and
structural differences between pairs of grammars that are subject to
asymmetric, binary convergence steps. We present the underlying operator suite
for grammar transformation in detail, and we illustrate the suite with many
examples of transformations on the JLS grammars. We also describe the
extraction effort, which was needed to make the JLS grammars amenable to
automated processing. We include substantial metadata about the convergence
process for the JLS so that the effort becomes reproducible and transparent
Towards employing use-cases and dynamic analysis to comprehend Mozilla
Proceedings of the 2005 International Conference on Software Maintenance (ICSM'05), Budapest, Hungary, September, 2005. Retrieved 3/16/2006 from http://www.cs.drexel.edu/~spiros/research/papers/ICSM05b.pdf.This paper presents an approach for comprehending
large software systems using views that are created by subjecting
the software systems to dynamic analysis under various
use-case scenarios. Two sets of views are built from the
runtime data: (1) graphs that capture the parts of the software's
architecture that pertain to the use-cases; and (2)
metrics that measure the intricacy of the software and the
similarity between the software's use-cases. The Mozilla
web browser was chosen as the subject software system in
our case study due to its size, intricacy, and ability to expose
the challenges of analyzing large systems
Mechanisms of action of Methylthioadenosine: pathways implicated in neuroprotection in models of Multiple Sclerosis and other neurological diseases
From 5th European Workshop on Immune-Mediated Inflammatory Diseases (Sitges-Barcelona, Spain. 1-3 December 2010)Background
Methylthioadenosine (MTA) has anti-oxidant and anti-proliferative properties and was shown to induce cell protection in hepatic cells. We previously demonstrated that exert immunomodulatory and neuroprotective effects in the animal model of Multiple Sclerosis (MS) and other neurological diseases like Parkinson disease, stroke and Epilepsy.
Objective
To study the mechanisms of action and different pathways implicated in the neuroprotective effect of MTA in neurological diseases.
Methods
RN22 (Schwnoma cell line) and PC12 (Pheochromocytoma cell line) were used to test the neuroprotective activity of MTA against stress in RN22 and to differentiate neurites in PC12. BV2 cells were used to test the effect of MTA in microglia. Organotypic cerebellum cultures were used to determine MTA effect in demyelination/remyelination. Luminex technology, western blot and ELISA were used in order to study the phosphorylated state of different pathways (AkT/PKB, ERK/MAPK, P38/SAPK or STAT3) and to determine the amount of different cytokines (IL-1β and TNF-α). Ros determination was also done by fluorescence determination.
Results
In vitro studies revealed that MTA protection against different stresses and its capacity to differentiate neurites implies pathways like ERK/MAPK, P38/SAPK or STAT3. MTA neuroprotective capacity is also related with its ability to reduce ROS production and oxidative stress. MTA was shown to protect against demyelination in cerebellum organotypic cultures treated with LPS or Lysolecithin.
Conclusions
MTA is neuroprotective in models of MS, Parkinson disease, stroke or Epilepsy. This neuroprotective effect depends on its capacity to protect against demyelination, its anti-oxidant effect and the activation of pathways related with protection against stress and production of neurite differentiation
Optimised Realistic Test Input Generation Using Web Services
Abstract. We introduce a multi-objective formulation of service-oriented testing, focusing on the balance between service price and reliability. We experimented with NSGA2 for this problem, investigating the effect on performance and quality of composition size, topology and the number of services discovered. For topologies small enough for exhaustive search we found that NSGA2 finds a pareto front very near (the fronts are a Euclidean distance of ∼ 0.00024 price-reliability points apart) the true pareto front. Regarding performance, we find that composition size has the strongest effect, with smaller topologies consuming more machine time; a curious effect we believe is due to the influence of crowding dis-tance. Regarding result quality, our results reveal that size and topology have more effect on the front found than the number of service choices discovered. As expected the cost-reliability relationship (logarithmic, lin-ear, exponential) is replicated in the front discovered when correlation is high, but as the price-reliability correlation decreases, we find fewer solutions on the front and the front becomes less smooth.
- …