1,402 research outputs found

    SLRefactor: Ein Refactoring-Ansatz fĂĽr Simulink-Modelle

    Get PDF
    Bei der Funktionsmodellierung ist die Veränderung und Erweiterung der Struktur eines Modells eine häufig durchgeführte Aktivität. Während es bereits Refactoring-Ansätze für textuelle Programmiersprachen wie Java, C# usw. gibt, fehlt ein vergleichbarer, integraler und durchgehender Ansatz für Simulink-Modelle. Wir haben einen automatisierten Refactoring-Ansatz (im Folgenden SLRefactor-Ansatz genannt) für Simulink-Modelle erfolgreich entwickelt, der in einem Zeitraum von ca. zwei Jahren in der Serienentwicklung bei der Daimler AG erprobt und eingesetzt wurde. In diesem Beitrag wird der SLRefactor-Ansatz anhand eines ausführlichen Beispiels erläutert und es wird über die Erfahrungen beim produktiven Einsatz des Ansatzes und über die dabei gewonnenen Erkenntnisse berichtet

    Study of material interpolation for 3D lightweight structures

    Get PDF
    The use of computer tools has become essential in modern engineering, from the use of specific software to programming it. That is why this work seeks to provide the tools to understand the essential knowledge of programming for a modern engineer, which allows the easy correction, understanding and efficiency of the code. In addition, the thesis seeks to solve one of the heuristic problems of topology optimization. It is a research field that obtains optimal design structures in terms of volume usage. The most popular approach, the SIMP method, an auto-penalized interpolation function in a relaxed topology optimization problem, does not always propose actual solutions. For this reason, an alternative solution to the SIMP method is to be found for any case scenario. Finally, it is intended to apply these knowledge by rewriting part of the Swan code. By refactoring a previously programmed code from the subject ’aerospace structures’, called ”Codi Cante”, the sections object oriented programming, work with cloud backups, test driven development and clean code are developed. These are tools used by modern software engineers. Regarding topology optimization, an alternative method called SIMP-All is used to solve the drawbacks of the SIMP method. From the previously defined methods, knowledge is acquired to program efficiently and structurally. At this point, object oriented programming, cloud-backed work, test driven development and clean code are discussed. On the other hand, the results concerning topology optimization allow the obtaining of optimal and actual structures. Firstly, the SIMP-All method solution for three-dimensional cases is found. The solution is then shown to be part of the physical limits called ”Hashin-Shtrikman bounds” and a comprehensive solution for the SIMP-All method is proposed. These results are compared with the SIMP method in two and three dimensions. Finally, all the new knowledge is applied to rewrite part of the Swan code. In conclusion, from the refactoring of the ”Codi Cante”, sufficient tools have been developed to understand essential knowledge of programming by a modern engineer. Besides that, it has been possible to obtain a general equation for the SIMP-ALL method. Not only does the generalized equation allow to find optimal results, but the generated structures are also possible in the reality. Furthermore, the equation has been implemented in the Swan program using the new programming knowledge, thus allowing an easy correction, understanding and efficiency of the code

    30 Years of Software Refactoring Research: A Systematic Literature Review

    Full text link
    Peer Reviewedhttps://deepblue.lib.umich.edu/bitstream/2027.42/155872/4/30YRefactoring.pd

    30 Years of Software Refactoring Research:A Systematic Literature Review

    Full text link
    Due to the growing complexity of software systems, there has been a dramatic increase and industry demand for tools and techniques on software refactoring in the last ten years, defined traditionally as a set of program transformations intended to improve the system design while preserving the behavior. Refactoring studies are expanded beyond code-level restructuring to be applied at different levels (architecture, model, requirements, etc.), adopted in many domains beyond the object-oriented paradigm (cloud computing, mobile, web, etc.), used in industrial settings and considered objectives beyond improving the design to include other non-functional requirements (e.g., improve performance, security, etc.). Thus, challenges to be addressed by refactoring work are, nowadays, beyond code transformation to include, but not limited to, scheduling the opportune time to carry refactoring, recommendations of specific refactoring activities, detection of refactoring opportunities, and testing the correctness of applied refactorings. Therefore, the refactoring research efforts are fragmented over several research communities, various domains, and objectives. To structure the field and existing research results, this paper provides a systematic literature review and analyzes the results of 3183 research papers on refactoring covering the last three decades to offer the most scalable and comprehensive literature review of existing refactoring research studies. Based on this survey, we created a taxonomy to classify the existing research, identified research trends, and highlighted gaps in the literature and avenues for further research.Comment: 23 page

    Analysis of Code Blocks for Concern Detection in MATLAB Systems

    Get PDF
    It is known that the support provided by MATLAB for module decomposition is limited. Such limitations give rise to code symptoms, which can be explored for the development of techniques for the detection of concerns, namely unmodularised concerns. Recent work in the area of concern detection in MATLAB systems identified several recurring code patterns that can be associated to the presence of specific concerns. Some of the concerns detected proved to be unmodularised: they cut across the MATLAB system’s modular decomposition. The techniques already developed for detecting unmodularised concerns in MATLAB systems still lack precision and accuracy. As proposed in previous work, the techniques and tools for pinpointing and representing concern-detection patterns need maturing. This thesis contributes with a more accurate structure for representing MATLAB code bases in an intelligent repository for MATLAB code, developed prior to this work. It perfects the structure representing MATLAB code on which the repository is based, by refining the notion of code block, and collects code patterns found in previous publications aggregating them into a catalogue. Subsequently, a preliminary study is made on the application of codes of blocks for the detection of concerns, validating previous concern related patterns and evaluate the existence of new ones
    • …
    corecore