1,721,014 research outputs found

    Tecniche model-driven avanzate per il miglioramento delle proprietà non funzionali dei sistemi software

    No full text
    Supporting changes in software models is becoming increasingly important. Some of these changes are induced by non-functional aspects that are nowadays analyzed throughout the entire software life-cycle. However, non-functional analysis is generally based on models, tools and data that are different from the ones usually adopted for software functional design. Therefore, it becomes crucial to develop methods to reduce the gap between design knowledge and non-functional analysis context. To this extent, in the last two decades, a number of approaches, mostly based on Model-Driven Engineering (MDE) like model transformation, have been introduced to generate non-functional analysis models from software models. However, when analysis models are modified to meet non-functional requirements, changes are not propagated back to the software model, whereas the automated identification and propagation of changes would better support a round-trip analysis process. Moreover, once the system is built and running in production, advanced techniques are required to continuously assess and improve non-functional properties. In the last few years, design-runtime interactions proved to be effective in addressing this problem on a number of practical scenarios. In this PhD thesis we intend to bridge this gap by providing solutions to: (i) support complex change propagation and model synchronization scenarios by developing advanced model-driven techniques to enhance bidirectional model transformation and traceability management; (ii) generate availability analysis models from software models, and automatically propagate changes, driven by availability requirements satisfaction, from analysis models back to software models; (iii) relate design and runtime artifacts to detect potential performance problems and resolve them through the automated refactoring of models as well as of the running system; (iv) assist the detection of root causes of defects in safety-critical systems, especially when such defects only manifest after deployment. The model-driven techniques developed in this thesis are specifically targeted at change propagation and traceability management problems. They are mainly implemented within the Janus Transformation Language (JTL), a constraint-based model transformation framework designed to support bidirectionality and change propagation. The approaches we realized on the basis of these techniques are applied to different non-functional properties such as performance, availability, reliability and safety. We have been able to validate our approaches on several case studies and benchmarks from both literature and industry

    Scalable control of islanded microgrids

    Full text link
    In the recent years, the increasing penetration of renewable energy sources has motivated a growing interest for microgrids, energy networks composed of interconnected Distributed Generation Units (DGUs) and loads. Microgrids are self-sustained electric systems that can operate either connected to the main grid or detached from it. In this thesis, we focus on the latter case, thus dealing with the so-called Islanded microGrids (ImGs). We propose scalable control design methodologies for both AC and DC ImGs, allowing DGUs and loads to be connected in general topologies and enter/leave the network over time. In order to ensure safe and reliable operations, we mirror the flexibility of ImGs structures in their primary and secondary control layers. Notably, off-line control design hinges on Plug-and-Play (PnP) synthesis, meaning that the computation of individual regulators is complemented by local optimization-based tests for denying dangerous plug-in/out requests. The solutions presented in this work aim to address some of the key challenges arising in control of AC and DC ImGs, while overcoming the limitations of the existing approaches. More precisely, this thesis comprises the following main contributions: (i) the development of decentralized primary control schemes for load-connected networks (i.e. where local loads appear only at the output terminals of each DGU) ensuring voltage stability in DC ImGs, and voltage and frequency stability in AC ImGs. In contrast with the most commonly used control strategies available in the literature, our regulators guarantee offset-free tracking of reference signals. Moreover, the proposed primary local controllers can be designed or updated on-the-fly when DGUs are plugged in/out, and the closed-loop stability of the ImG is always preserved. (ii) Novel approximate network reduction methods for handling totally general interconnections of DGUs and loads in AC ImGs. We study and exploit Kron reduction in order to derive an equivalent load-connected model of the original ImG, and designing stabilizing voltage and frequency regulators, independently of the ImG topology. (iii) Distributed secondary control schemes, built on top of primary layers, for accurate reactive power sharing in AC ImGs, and current sharing and voltage balancing in DC ImGs. In the latter case, we prove that the desired coordinated behaviors are achieved in a stable fashion and we describe how to design secondary regulators in a PnP manner when DGUs are added/removed to/from the network. (iv) Theoretical results are validated through extensive simulations, and some of the proposed design algorithms have been successfully tested on real ImG platforms.In the recent years, the increasing penetration of renewable energy sources has motivated a growing interest for microgrids, energy networks composed of interconnected Distributed Generation Units (DGUs) and loads. Microgrids are self-sustained electric systems that can operate either connected to the main grid or detached from it. In this thesis, we focus on the latter case, thus dealing with the so-called Islanded microGrids (ImGs). We propose scalable control design methodologies for both AC and DC ImGs, allowing DGUs and loads to be connected in general topologies and enter/leave the network over time. In order to ensure safe and reliable operations, we mirror the flexibility of ImGs structures in their primary and secondary control layers. Notably, off-line control design hinges on Plug-and-Play (PnP) synthesis, meaning that the computation of individual regulators is complemented by local optimization-based tests for denying dangerous plug-in/out requests. The solutions presented in this work aim to address some of the key challenges arising in control of AC and DC ImGs, while overcoming the limitations of the existing approaches. More precisely, this thesis comprises the following main contributions: (i) the development of decentralized primary control schemes for load-connected networks (i.e. where local loads appear only at the output terminals of each DGU) ensuring voltage stability in DC ImGs, and voltage and frequency stability in AC ImGs. In contrast with the most commonly used control strategies available in the literature, our regulators guarantee offset-free tracking of reference signals. Moreover, the proposed primary local controllers can be designed or updated on-the-fly when DGUs are plugged in/out, and the closed-loop stability of the ImG is always preserved. (ii) Novel approximate network reduction methods for handling totally general interconnections of DGUs and loads in AC ImGs. We study and exploit Kron reduction in order to derive an equivalent load-connected model of the original ImG, and designing stabilizing voltage and frequency regulators, independently of the ImG topology. (iii) Distributed secondary control schemes, built on top of primary layers, for accurate reactive power sharing in AC ImGs, and current sharing and voltage balancing in DC ImGs. In the latter case, we prove that the desired coordinated behaviors are achieved in a stable fashion and we describe how to design secondary regulators in a PnP manner when DGUs are added/removed to/from the network. (iv) Theoretical results are validated through extensive simulations, and some of the proposed design algorithms have been successfully tested on real ImG platforms

    Search Budget in Multi-Objective Refactoring optimization: a Model-Based Empirical Study

    No full text
    Software model optimization is the task of automatically generate design alternatives, usually to improve quality aspects of software that are quantifiable, like performance and reliability. In this context, multi-objective optimization techniques have been applied to help the designer find suitable tradeoffs among several non-functional properties. In this process, design alternatives can be generated through automated model refactoring, and evaluated on non-functional models. Due to their complexity, this type of optimization tasks require considerable time and resources, often limiting their application in software engineering processes.In this paper, we investigate the effects of using a search budget, specifically a time limit, to the search for new solutions. We performed experiments to quantify the impact that a change in the search budget may have on the quality of solutions. Furthermore, we analyzed how different genetic algorithms (i.e., NSGA-II, SPEh2, and PESA2) perform when imposing different budgets. We experimented on two case studies of different size, complexity, and domain.We observed that imposing a search budget considerably deteriorates the quality of the generated solutions, but the specific algorithm we choose seems to play a crucial role. From our experiments, NSGA-II is the fastest algorithm, while PESA2 generates solutions with the highest quality. Differently, SPEh2 is the slowest algorithm, and produces the solutions with the lowest quality

    Towards effective assessment of steady state performance in Java software: are we there yet?

    Full text link
    Microbenchmarking is a widely used form of performance testing in Java software. A microbenchmark repeatedly executes a small chunk of code while collecting measurements related to its performance. Due to Java Virtual Machine optimizations, microbenchmarks are usually subject to severe performance fluctuations in the first phase of their execution (also known as warmup). For this reason, software developers typically discard measurements of this phase and focus their analysis when benchmarks reach a steady state of performance. Developers estimate the end of the warmup phase based on their expertise, and configure their benchmarks accordingly. Unfortunately, this approach is based on two strong assumptions: (i) benchmarks always reach a steady state of performance and (ii) developers accurately estimate warmup. In this paper, we show that Java microbenchmarks do not always reach a steady state, and often developers fail to accurately estimate the end of the warmup phase. We found that a considerable portion of studied benchmarks do not hit the steady state, and warmup estimates provided by software developers are often inaccurate (with a large error). This has significant implications both in terms of results quality and time-effort. Furthermore, we found that dynamic reconfiguration significantly improves warmup estimation accuracy, but still it induces suboptimal warmup estimates and relevant side-effects. We envision this paper as a starting point for supporting the introduction of more sophisticated automated techniques that can ensure results quality in a timely fashion

    Approximate Kron Reduction Methods for Electrical Networks With Applications to Plug-and-Play Control of AC Islanded Microgrids

    No full text
    Kron reduction (KR) is a methodology for analyzing an electrical network by replacing it with a simpler circuit having less nodes but the same terminal behavior of voltages and currents at target vertices. Existing approaches to instantaneous KR, however, can fail in preserving the structure of transfer functions representing power lines. Therefore, even if the original lines are passive RLCRLC circuits, reduced lines might have transfer functions that do not correspond to a physically realizable passive system. To overcome this drawback, in this paper we focus on RLRL line models and propose two approximate KR algorithms producing reduced lines with the first-order transfer functions and capable of representing exactly the asymptotic behavior of electric signals, even if they are unbalanced. Then, we show how to apply these KR methods to the design of decentralized voltage and frequency controllers for AC islanded microgrids. Notably, we focus on the plug-and-play algorithm previously proposed by some of the authors, which assumes loads connected to the inverter outputs, and generalize it to networks where loads appear in arbitrary positions. Theoretical results are validated with numerical examples and the application of KR for designing PnP controllers is assessed through a simulation on a 21-bus microgrid.SCI-STI-GF

    Model-driven round-trip software dependability engineering

    No full text
    Supporting changes in software models is becoming increasingly important. Some of these changes are induced by non-functional analysis that is usually conducted on different models and tools. Therefore, it becomes crucial to develop methods that allow automated transformations between these two families of models throughout the development cycle. To this extent, in the last decade, a number of approaches have been introduced to generate non-functional analysis models from software models. However, when analysis models are modified to meet non-functional requirements, changes are not propagated to update the software model. Automating the identification and propagation of changes would better support a round-trip analysis process. In this PhD program, we aim at introducing automation in the model-driven assessment of dependability, and we propose to leverage bidirectional model transformations to: (i) generate dependability analysis models from software models, and (ii) automatically propagate changes, driven by dependability requirements satisfaction, from analysis models back to software models. In particular, we intend to extend JTL, that is a bidirectional model transformations framework designed for model synchronization and change propagation, to handle problems that may arise from the application of bidirectional transformations in the context of dependability assessment

    Going Beyond Counting First Authors in Author Co-citation Analysis

    Full text link
    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
    corecore