Searcharxiv⌕ Search

arXiv subjects

J. Andres Diaz-Pace

Publications and source records attributed to J. Andres Diaz-Pace.

4 recordsLinked to original sources

On the Role of Search Budgets in Model-Based Software Refactoring Optimization

Software model optimization is a process that automatically generates design alternatives aimed at improving quantifiable non-functional properties of software systems, such as performance and reliability. Multi-objective evolutionary algorithms effectively help designers identify trade-offs among the desired non-functional properties. To reduce the use of computational resources, this work examines the impact of implementing a search budget to limit the search for design alternatives. In particular, we analyze how time budgets affect the quality of Pareto fronts by utilizing quality indicators and exploring the structural features of the generated design alternatives. This study identifies distinct behavioral differences among evolutionary algorithms when a search budget is implemented. It further reveals that design alternatives generated under a budget are structurally different from those produced without one. Additionally, we offer recommendations for designers on selecting algorithms in relation to time constraints, thereby facilitating the effective application of automated refactoring to improve non-functional properties.

cs.SE↗

Introducing Interactions in Multi-Objective Optimization of Software Architectures

Software architecture optimization aims to enhance non-functional attributes like performance and reliability while meeting functional requirements. Multi-objective optimization employs metaheuristic search techniques, such as genetic algorithms, to explore feasible architectural changes and propose alternatives to designers. However, this resource-intensive process may not always align with practical constraints. This study investigates the impact of designer interactions on multi-objective software architecture optimization. Designers can intervene at intermediate points in the fully automated optimization process, making choices that guide exploration towards more desirable solutions. Through several controlled experiments as well as an initial user study (14 subjects), we compare this interactive approach with a fully automated optimization process, which serves as a baseline. The findings demonstrate that designer interactions lead to a more focused solution space, resulting in improved architectural quality. By directing the search towards regions of interest, the interaction uncovers architectures that remain unexplored in the fully automated process. In the user study, participants found that our interactive approach provides a better trade-off between sufficient exploration of the solution space and the required computation time.

cs.SE↗

Towards Assessing Spread in Sets of Software Architecture Designs

Several approaches have recently used automated techniques to generate architecture design alternatives by means of optimization techniques. These approaches aim at improving an initial architecture with respect to quality aspects, such as performance, reliability, or maintainability. In this context, each optimization experiment usually produces a different set of architecture alternatives that is characterized by specific settings. As a consequence, the designer is left with the task of comparing such sets to identify the settings that lead to better solution sets for the problem. To assess the quality of solution sets, multi-objective optimization commonly relies on quality indicators. Among these, the quality indicator for the maximum spread estimates the diversity of the generated alternatives, providing a measure of how much of the solution space has been explored. However, the maximum spread indicator is computed only on the objective space and does not consider architectural information (e.g., components structure, design decisions) from the architectural space. In this paper, we propose a quality indicator for the spread that assesses the diversity of alternatives by taking into account architectural features. To compute the spread, we rely on a notion of distance between alternatives according to the way they were generated during the optimization. We demonstrate how our architectural quality indicator can be applied to a dataset from the literature.

cs.SE↗

Towards a Service-oriented Platform for Intelligent Apps in Intermediate Cities

Smart cities are a growing trend in many cities in Argentina. In particular, the so-called intermediate cities present a context and requirements different from those of large cities with respect to smart cities. One aspect of relevance is to encourage the development of applications (generally for mobile devices) that enable citizens to take advantage of data and services normally associated with the city, for example, in the urban mobility domain. In this work, a platform is proposed for intermediate cities that provide "high level" services and that allow the construction of software applications that consume those services. Our platform-centric strategy focused aims to integrate systems and heterogeneous data sources, and provide "intelligent" services to different applications. Examples of these services include: construction of user profiles, recommending local events, and collaborative sensing based on data mining techniques, among others. In this work, the design of this platform (currently in progress) is described, and experiences of applications for urban mobility are discussed, which are being migrated in the form of reusable services provided by the platform

cs.SE↗