62 research outputs found
LLM-based Control Code Generation using Image Recognition
LLM-based code generation could save significant manual efforts in industrial
automation, where control engineers manually produce control logic for
sophisticated production processes. Previous attempts in control logic code
generation lacked methods to interpret schematic drawings from process
engineers. Recent LLMs now combine image recognition, trained domain knowledge,
and coding skills. We propose a novel LLM-based code generation method that
generates IEC 61131-3 Structure Text control logic source code from
Piping-and-Instrumentation Diagrams (P&IDs) using image recognition. We have
evaluated the method in three case study with industrial P&IDs and provide
first evidence on the feasibility of such a code generation besides experiences
on image recognition glitches.Comment: 8 pages, 8 figure
Parameter dependencies for reusable performance specifications of software components
To avoid design-related perÂforÂmance problems, model-driven performance prediction methods analyse the response times, throughputs, and reÂsource utilizations of software architectures before and during implementation. This thesis proposes new modeling languages and according model transformations, which allow a reusable description of usage profile dependencies to the performance of software components. Predictions based on this new methods can support performance-related design decisions
Sustainability evaluation of software architectures
Long-living software systems are sustainable if they can be cost-efficiently maintained and evolved over their entire life-cycle. The quality of software architectures determines sus-tainability to a large extent. Scenario-based software archi-tecture evaluation methods can support sustainability anal-ysis, but they are still reluctantly used in practice. They are also not integrated with architecture-level metrics when evaluating implemented systems, which limits their capabil-ities. Existing literature reviews for architecture evaluation focus on scenario-based methods, but do not provide a criti-cal reflection of the applicability of such methods for sustain-ability evaluation. Our goal is to measure the sustainabil-ity of a software architecture both during early design us-ing scenarios and during evolution using scenarios and met-rics, which is highly relevant in practice. We thus provide a systematic literature review assessing scenario-based meth-ods for sustainability support and categorize more than 40 architecture-level metrics according to several design prin-ciples. Our review identifies a need for further empirical research, for the integration of existing methods, and for the more efficient use of formal architectural models. 1
The SPOSAD Architectural Style for Multi-tenant Software Applications
Keywords-Software architecture; Software quality; Software performance; Software maintenance Abstract—A multi-tenant software application is a special type of highly scalable, hosted software, in which the ap-plication and its infrastructure are shared among multiple tenants to save development and maintenance costs. The limited understanding of the underlying architectural concepts still prevents many software architects from designing such a system. Existing documentation on multi-tenant software architectures is either technology-specific or database-centric. A more technology-independent perspective is required to enable wide-spread adoption of multi-tenant architectures. We propose the SPOSAD architectural style, which describes the components, connectors, and data elements of a multi-tenant architecture as well as constraints imposed on these elements. This paper describes the benefits of a such an architecture and the trade-offs for the related design decisions. To evaluate our proposal, we illustrate how concepts of the style help to make current Platform-as-a-Service (PaaS) environments, such as Force.com, Windows Azure, and Google App Engine scalable and customizable
A Large-Scale Industrial Case Study on Architecture-Based Software Reliability Analysis
Abstract—Architecture-based software reliability analysis methods shall help software architects to identify critical software components and to quantify their influence on the system reliability. Although researchers have proposed more than 20 methods in this area, empirical case studies applying these methods on large-scale industrial systems are rare. The costs and benefits of these methods remain unknown. On this behalf, we have applied the Cheung method on the software architecture of an industrial control system from ABB consisting of more than 100 components organized in nine subsystems with more than three million lines of code. We used the Littlewood/Verrall model to estimate subsystems failure rates and logging data to derive subsystem transition probabilities. We constructed a discrete time Markov chain as an architectural model and conducted a sensitivity analysis. This paper summarizes our experiences and lessons learned. We found that architecture-based software reliability analysis is still difficult to apply and that more effective data collection techniques are required. Keywords-Software reliability growth, software architecture, Markov processes I
Quantitative Evaluation of Model-Driven Performance Analysis and Simulation of Component-Based Architectures
Abstract—During the last decade, researchers have proposed a number of model transformations enabling performance predictions. These transformations map performance-annotated software architecture models into stochastic models solved by means of analytical or numerical analysis or by system simulation. However, so far, a detailed quantitative evaluation of the accuracy and efficiency of different transformations is missing, making it hard to select an adequate transformation for a given context. This paper provides an in-depth comparison and quantitative evaluation of representative model transformations to, e.g., Queueing Petri Nets and Layered Queueing Networks. The semantic gaps between typical source model abstractions and the different analysis techniques are revealed. The accuracy and efficiency of each transformation are evaluated by considering four case studies representing systems of different size and complexity. The presented results and insights gained from the evaluation help software architects and performance engineers to select the appropriate transformation for a given context, thus significantly improving the usability of model transformations for performance prediction. Index Terms—D.2.11 Software architectures; D.2.10.h Quality analysis and evaluation; D.2.2 Design tools and techniques. F
An industrial case study of performance and cost design space exploration
Determining the trade-off between performance and costs of a distributed software system is important as it enables fulfilling performance requirements in a cost-efficient way. The large amount of design alternatives for such systems of-ten leads software architects to select a suboptimal solution, which may either waste resources or cannot cope with fu-ture workloads. Recently, several approaches have appeared to assist software architects with this design task. In this paper, we present a case study applying one of these ap-proaches, i.e. PerOpteryx, to explore the design space of an existing industrial distributed software system from ABB. To facilitate the design exploration, we created a highly de-tailed performance and cost model, which was instrumental in determining a cost-efficient architecture solution using an evolutionary algorithm. The case study demonstrates the capabilities of various modern performance modeling tools and a design space exploration tool in an industrial setting, provides lessons learned, and helps other software architects in solving similar problems
Automated Control Logic Test Case Generation using Large Language Models
Testing PLC and DCS control logic in industrial automation is laborious and
challenging since appropriate test cases are often complex and difficult to
formulate. Researchers have previously proposed several automated test case
generation approaches for PLC software applying symbolic execution and
search-based techniques. Often requiring formal specifications and performing a
mechanical analysis of programs, these approaches may uncover specific
programming errors but sometimes suffer from state space explosion and cannot
process rather informal specifications. We proposed a novel approach for the
automatic generation of PLC test cases that queries a Large Language Model
(LLM) to synthesize test cases for code provided in a prompt. Experiments with
ten open-source function blocks from the OSCAT automation library showed that
the approach is fast, easy to use, and can yield test cases with high statement
coverage for low-to-medium complex programs. However, we also found that
LLM-generated test cases suffer from erroneous assertions in many cases, which
still require manual adaption
Industrial Implementation of a Documentation Framework for Architectural Decisions
Architecture decisions are often not explicitly documented in practice but reside in the architect's mind as tacit knowledge, even though explicit capturing and documentation of architecture decisions has been associated with a multitude of benefits. As part of a research collaboration with ABB, we developed a tool to document architecture decisions. This tool is an add-in for Enterprise Architect and is an implementation of a viewpoint-based decision documentation framework. To validate the add-in, we conducted an exploratory case study with ABB architects. In the study, we assessed the status quo of architecture decision documentation, identified architects' expectations of the ideal decision documentation tool, and evaluated the new add-in. We found that although awareness of decision documentation is increasing at ABB, several barriers exist that limit the use of decisions in practice. Regarding their ideal tool, architects want a descriptive and efficient approach. Supplemental features like reporting or decision sharing are requested. The new add-in, was well-perceived by the architects. As a result of the study, we propose a clearer separation of problem, outcomes, and alternatives for the decision documentation framework
- …