Petr Hnetynka

dblp:33/6397 · DBLP profile ↗
← Back
45ranked-venue papers
6as first author
19since 2021 · last 2026
0000-0002-1008-6886ORCID · verified

Domains — the database's venue-derived domains; a paper can count in several

Software engineering, systems software and programming languages · 40 · 5 first-author · 18 since 2021Applied, interdisciplinary, general and emerging computing · 8 · 1 first-author · 4 since 2021Artificial intelligence and machine learning · 1 · 1 since 2021Systems, architecture and hardware · 1 · 1 since 2021Databases, data management, data science and information retrieval · 1
YearPublicationVenuePosition
2026 On limits of LLMs in adaptation of ensemble-based architectures
abstract
Recent developments of Large Language Models (LLMs) show great potential in many areas, including software architecture. Although there is some work on applying LLMs during architecture design, using LLMs for adaptation of the architecture of a collective adaptive system at runtime has not yet been explored enough. In this paper, we explore two approaches for how LLMs can serve for architecture adaptation of collective adaptive systems based on autonomic component ensembles. The first approach employs an LLM during runtime as a part of the adaptation manager; the other one asks the LLM to generate it (in Python), which is then used for the ensemble formation (resolution) at runtime. The prompts for both approaches are automatically generated from an architectural specification, which includes constraints for the architecture. Based on experimental observations of two use cases, we show that LLMs are quite capable in online prompting in particular. Even without being explicitly provided with an adaptation strategy, an LLM can come up with an efficient heuristic for ensemble resolution and realize it. We show that the limiting factor for using LLMs this way is not time complexity (as would be the case when solving the problem as constraint optimization), but the “laziness” of LLMs when prompted with a larger problem instance, as also recently reported in other works. In addition, we map how the correctness of the LLM’s solution scales with different forms of prompting and problem size, which captures the effect of the LLMs’ laziness under different conditions.
Michal Töpfer, Tomás Bures, Frantisek Plásil, Petr Hnetynka
Future Gener. Comput. Syst.4
2025 Towards Continuous Experiment-Driven MLOps
abstract
Despite advancements in MLOps and AutoML, ML development still remains challenging for data scientists. First, there is poor support for and limited control over optimizing and evolving ML models. Second, there is lack of efficient mechanisms for continuous evolution of ML models which would leverage the knowledge gained in previous optimizations of the same or different models. We propose an experiment-driven MLOps approach which tackles these problems. Our approach relies on the concept of an experiment, which embodies a fully controllable optimization process. It introduces full traceability and repeatability to the optimization process, allows humans to be in full control of it, and enables continuous improvement of the ML system. Importantly, it also establishes knowledge, which is carried over and built across a series of experiments and allows for improving the efficiency of experimentation over time. We demonstrate our approach through its realization and application in the ExtremeXp11https://extremexp.eu/ project (Horizon Europe).
Keerthiga Rajenthiram, Milad Abdullah, Ilias Gerostathopoulos, Petr Hnetynka, Tomás Bures, Gerard Pons 0001, Besim Bilalli, Anna Queralt
CAIN4
2025 Interpreting Workflow Architectures by LLMs
Michal Töpfer, Tomás Bures, Frantisek Plásil, Petr Hnetynka
ENASE4
2025 A Model-Based Approach to Experiment-Driven Evolution of ML Workflows
abstract
Machine Learning (ML) has advanced significantly, yet the development of ML workflows still relies heavily on expert intuition, limiting standardization. MLOps integrates ML workflows for reliability, while AutoML automates tasks like hyperparameter tuning. However, these approaches often overlook the iterative and experimental nature of the development of ML workflows. Within the ongoing ExtremeXP project (Horizon Europe), we propose an experiment-driven approach where systematic experimentation becomes central to ML workflow evolution. The framework created within the project supports transparent, reproducible, and adaptive experimentation through a formal metamodel and related domain-specific language. Key principles include traceable experiments for transparency, empowered decision-making for data scientists, and adaptive evolution through continuous feedback. In this paper, we present the framework from the model-based approach perspective. We discuss the lessons learned from the use of the metamodel-centric approach within the project—especially with use-case partners without prior modeling expertise.
Petr Hnetynka, Tomás Bures, Ilias Gerostathopoulos, Milad Abdullah, Keerthiga Rajenthiram
MODELSWARD1
2025 Understanding ensemble-based component architectures by LLMs
abstract
Abstract Ensemble-based component systems have been used for many years to develop collective adaptive systems (CAS). The DEECo component model offers a framework for modeling and implementing ensemble-based component systems. Being expressive enough and having semantics specifically tailored towards dynamically evolving systems, DEECo has proven to be fairly powerful in modeling complex and dynamic architectures. We see great potential in employing large language models (LLMs) to simplify creating and refining the DEECo architectures. Since this constitutes a large research scope, in this paper, we focus on initial experiments to demonstrate how well generic LLMs (two OpenAI models executed remotely and four open-source models executed locally) understand the advanced concepts of ensemble-based CAS embodied in DEECo. We do so by systematically asking six questions about specific details of three DEECo applications that differ in the way they are specified. Our results indicate that LLMs can indeed understand ensemble-based architectures and show how this is influenced by the specification means. In particular, using external DSL, which is very self-explanatory, gave good results out of the box. Specifications embedded in existing programming languages needed a prior explanation of how to interpret them.
Michal Töpfer, Tomás Bures, Petr Hnetynka, Frantisek Plásil
Int. J. Softw. Tools Technol. Transf.3
2024 How Well Do LLMs Understand DEECo Ensemble-Based Component Architectures
Michal Töpfer, Danylo Khalyeyev, Tomás Bures, Petr Hnetynka, Frantisek Plásil
ISoLA (2)4
2023 Modeling Machine Learning Concerns in Collective Adaptive Systems
Petr Hnetynka, Martin Krulis, Michal Töpfer, Tomás Bures
MODELSWARD1
2023 Generating adaptation rule-specific neural networks
Tomás Bures, Petr Hnetynka, Martin Krulis, Frantisek Plásil, Danylo Khalyeyev, Sebastian Hahner, Stephan Seifermann, Maximilian Walter, Robert Heinrich
Int. J. Softw. Tools Technol. Transf.2
2023 Machine-learning abstractions for component-based self-optimizing systems
Michal Töpfer, Milad Abdullah, Tomás Bures, Petr Hnetynka, Martin Krulis
Int. J. Softw. Tools Technol. Transf.4
2022 Reducing Experiment Costs in Automated Software Performance Regression Detection
abstract
In this position paper we formulate performance regression testing as an automated experimentation problem and focus on the problem of controlling the experiment so as to provide more computation time to experiments that are more likely to detect performance changes. Conversely, this requires detecting and stopping experiments early if they are unlikely to detect any performance changes. To this end, we present a method that uses results from previous performance testing experiments to predict the outcome of new experiments in early stages of their execution.
Milad Abdullah, Lubomír Bulej, Tomás Bures, Petr Hnetynka, Vojtech Horký, Petr Tuma 0001
SEAA4
2022 Handling Environmental Uncertainty in Design Time Access Control Analysis
abstract
The high complexity, connectivity, and data exchange of modern software systems make it crucial to consider confidentiality early. An often used mechanism to ensure confidentiality is access control. When the system is modeled during design time, access control can already be analyzed. This enables early identification of confidentiality violations and the ability to analyze the impact of what-if scenarios. However, due to the abstract view of the design time model and the ambiguity in the early stages of development, uncertainties exist in the system environment. These uncertainties can have a direct effect on the validity of access control attributes in use, which might result in compromised confidentiality.To handle such known uncertainty, we present a notion of confidence in the context of design time access control. We define confidence as a composition of known uncertainties in the environment of the system, which influence the validity of access control attributes. We extend an existing modeling and analysis approach for design time access control with our notion of confidence. For evaluation, we apply the notion of confidence to multiple real-world case studies and discuss the resulting benefits for different stages of system development. We also analyze the expressiveness of the extended approach in defining confidentiality constraints and measure the accuracy in identifying confidentiality violations. Our results show that using the notion of confidence increases expressiveness while being able to accurately identify access control violations.
Nicolas Boltz, Sebastian Hahner, Maximilian Walter, Stephan Seifermann, Robert Heinrich, Tomás Bures, Petr Hnetynka
SEAA7
2022 Attuning Adaptation Rules via a Rule-Specific Neural Network
Tomás Bures, Petr Hnetynka, Martin Krulis, Frantisek Plásil, Danylo Khalyeyev, Sebastian Hahner, Stephan Seifermann, Maximilian Walter, Robert Heinrich
ISoLA (3)2
2022 Ensemble-Based Modeling Abstractions for Modern Self-optimizing Systems
Michal Töpfer, Milad Abdullah, Tomás Bures, Petr Hnetynka, Martin Krulis
ISoLA (3)4
2022 Towards Model-driven Fuzzification of Adaptive Systems Specification
Tomás Bures, Petr Hnetynka, Martin Krulis, Jan Pacovsky
MODELSWARD2
2022 Simdex: A Simulator of a Real Self-adaptive job-dispatching System Backend
abstract
Self-adaptive systems comprise a complex domain of computing systems that are intensively studied but sparsely employed in real applications. Furthermore, recent trends in computer science are steering towards machine learning which has yet to fully penetrate this domain. We would like to present Simdex --- a realistic simulator of the self-adaptive backend that dispatches computing jobs among multiple workers. It is based on ReCodEx, a system for semi-automated evaluation of coding assignments that have been used for the past 5 years at our School of Computer Science. The simulator replays the workload logs recorded from ReCodEx over that period which provides a quite thorough evaluation and near-to-real feedback for the simulated scenarios. Furthermore, the design of the simulator is highly modular and allows the implementation of different self-adaptive controllers, including ones based on machine learning, as we demonstrate in our examples.
Martin Krulis, Tomás Bures, Petr Hnetynka
SEAMS3
2021 Self-adaptive K8S Cloud Controller for Time-sensitive Applications
abstract
The paper presents a self-adaptive Kubernetes cloud controller for scheduling time-sensitive applications. The controller allows services to specify timing requirements (response time or throughput) and schedules services on shared cloud resources so as to meet the requirements. The controller builds and continuously updates an internal performance model of each service and uses it to determine the kind of resources needed by a service, as well as predict potential contention on shared resources, and (re-)deploys services accordingly. The controller is integrated with our highly-customizable data processing and visualization platform IVIS, which provides a web-based front-end for service deployment and visualization of results. The controller implementation is open-source and is intended to provide an easy-to-use testbed for experiments focusing on various aspects of adaptive scheduling and deployment in the cloud.
Lubomír Bulej, Tomás Bures, Petr Hnetynka, Danylo Khalyeyev
SEAA3
2021 Aspect-Oriented Adaptation of Access Control Rules
abstract
Cyber-physical systems (CPS) and IoT systems are nowadays commonly designed as self-adaptive, endowing them with the ability to dynamically reconFigure to reflect their changing environment. This adaptation concerns also the security, as one of the most important properties of these systems. Though the state of the art on adaptivity in terms of security related to these systems can often deal well with fully anticipated situations in the environment, it becomes a challenge to deal with situations that are not or only partially anticipated. This uncertainty is however omnipresent in these systems due to humans in the loop, open-endedness and only partial understanding of the processes happening in the environment. In this paper, we partially address this challenge by featuring an approach for tackling access control in face of partially unanticipated situations. We base our solution on special kind of aspects that build on existing access control system and create a second level of adaptation that addresses the partially unanticipated situations by modifying access control rules. The approach is based on our previous work where we have analyzed and classified uncertainty in security and trust in such systems and have outlined the idea of access-control related situational patterns. The aspects that we present in this paper serve as means for application-specific specialization of the situational patterns. We showcase our approach on a simplified but real-life example in the domain of Industry 4.0 that comes from one of our industrial projects.
Tomás Bures, Ilias Gerostathopoulos, Petr Hnetynka, Stephan Seifermann, Maximilian Walter, Robert Heinrich
SEAA3
2021 Managing latency in edge-cloud environment
Lubomír Bulej, Tomás Bures, Adam Filandr, Petr Hnetynka, Iveta Hnetynková, Jan Pacovsky, Gabor Sandor, Ilias Gerostathopoulos
J. Syst. Softw.4
2021 Targeting uncertainty in smart CPS by confidence-based logic
Tomás Bures, Petr Hnetynka, Frantisek Plásil, Dominik Skoda, Jan Kofron, Rima Al Ali, Ilias Gerostathopoulos
J. Syst. Softw.2
2020 IVIS: Highly customizable framework for visualization and processing of IoT data
abstract
This tool paper presents the IVIS platform for processing and visualizing IoT and CPS data. The platform provides a web-based interface that allows both definition of complex visualizations and data processing jobs as well as exploring the data. Compared to the existing open-source and commercial offerings, IVIS follows a different model and focuses on flexibility. Instead of providing a complex administrative UI for creating visualizations by dragging and dropping components onto a dashboard, IVIS provides a set of JavaScript-based visualization components that are glued together using simple JavaScript code. Similarly, the data processing jobs can be defined using code in scripting languages, such as Python, which allows exploiting the wealth of existing libraries for numerical processing. This not only makes the definition of visualizations and data processing jobs much more expressive, but it also turns out to be significantly easier to use when building complex parametric visualizations- especially when they need to deal with many sensors. This proved to be crucial in deploying IVIS in a number of international research projects, because it enabled us to rapidly setup complex visualizations and data-processing tasks, catering to project- and partner-specific requirements.
Lubomír Bulej, Tomás Bures, Petr Hnetynka, Václav Camra, Petr Siegl, Michal Töpfer
SEAA3
2020 QRML: A Component Language and Toolset for Quality and Resource Management
abstract
Cyber-physical systems (CPS) are complex, heterogeneous, and dynamic systems, spanning hardware and software components ranging from edge devices to cloud platforms. CPS need to satisfy many rigorous constraints, e.g., with respect to deadlines, safety, and quality, yielding a large configuration space where only a limited number of configurations meet the constraints and only a fraction are optimal regarding certain qualities. Finding the optimal configurations is hard, especially during runtime operation. We present QRML, the Quality and Resource Management domain-specific Language, and an accompanying toolset. QRML enables specifying heterogeneous hardware/software systems and their composition and configurations conveniently, automated reasoning about them, and generating implementation artifacts like quality and resource monitoring templates. A QRML model consists of a hierarchy of components. Component specifications express constraints and requirements, that may serve multiobjective quality and resource optimization and exploration purposes. The QRML toolset offers language support, visualizations, documentation generation, template-code generation, and constraint-solving support.
Freek van den Berg, Václav Camra, Martijn Hendriks, Marc Geilen, Petr Hnetynka, Fernando Manteca, Tomás Bures, Twan Basten
FDL5
2020 Forming Ensembles at Runtime: A Machine Learning Approach
Tomás Bures, Ilias Gerostathopoulos, Petr Hnetynka, Jan Pacovsky
ISoLA (2)3
2020 Capturing Dynamicity and Uncertainty in Security and Trust via Situational Patterns
Tomás Bures, Petr Hnetynka, Robert Heinrich, Stephan Seifermann, Maximilian Walter
ISoLA (2)2
2020 Toward autonomically composable and context-dependent access control specification through ensembles
Rima Al Ali, Tomás Bures, Petr Hnetynka, Jan Matejek, Frantisek Plásil, Jirí Vinárek
Int. J. Softw. Tools Technol. Transf.3
2020 A language and framework for dynamic component ensembles in smart systems
abstract
Abstract Smart system applications (SSAs)—a heterogeneous landscape of applications of Internet of things, cyber-physical systems, and smart sensing systems—are composed of autonomous yet inherently cooperating components. An important problem in this area is how to hoist the cooperation of software components forming dynamic groups—ensembles—at the architectural level of an SSA. This is hard since ensembles can overlap, be nested, and be dynamically formed and dismantled based on several criteria. A related problem is how to combine component and ensemble specification with a well-established language supported on multiple platforms. To target these problems, we propose a specification and implementation language Trait-based COmponent Ensemble Language (TCOEL) based on Scala internal DSL, to describe both the architecture and formation of dynamic ensembles of components and their functional internals. To raise the level of expressivity, we introduce the concept of domain-specific extensions (traits) to the TCOEL core to reflect different paradigms’ concerns—such as movement in a 2D map, state-space modeling of physical processes, and statistical reasoning about uncertainty. This allows for configuring TCOEL for the needs of a specific SSA use case and, at the same time, facilitates reuse. To evaluate TCOEL, we show how it can be beneficially used in addressing the coordination of agents in a RoboCup Rescue Simulation application.
Tomás Bures, Ilias Gerostathopoulos, Petr Hnetynka, Frantisek Plásil, Filip Krijt, Jirí Vinárek, Jan Kofron
Int. J. Softw. Tools Technol. Transf.3
2018 Dynamic Security Specification Through Autonomic Component Ensembles
Rima Al Ali, Tomás Bures, Petr Hnetynka, Filip Krijt, Frantisek Plásil, Jirí Vinárek
ISoLA (3)3
2017 Automated Dynamic Formation of Component Ensembles - Taking Advantage of Component Cooperation Locality
Filip Krijt, Zbynek Jirácek, Tomás Bures, Petr Hnetynka, Frantisek Plásil
MODELSWARD4
2017 Software abstractions and architectures for smart cyber-physical systems: Keynote address
abstract
The significant increase in the ubiquity and connectivity of computing devices has opened new possibilities for addressing social and environmental challenges, e.g., ambient assisted living, smart city infrastructures, emergency coordination, environmental monitoring. Engineering such systems commonly called smart Cyber-Physical Systems (sCPS) is typically very challenging because of their inherent dynamicity, open-endedness, autonomicity, and close relation to the real world. The trend observed in modern sCPS is that they are becoming increasingly complex and heavily rely on software to increase their efficiency and resilience. It is natural to expect that in the future of sCPS, the software will be by far the most complex constituent of such systems. This talk aims to present the challenges of engineering software for sCPS and to explain and demonstrate a novel approach based on autonomic component ensembles that provides means (methods and tools) for seamless design and development of sCPS.
Petr Hnetynka
SERA1
2017 Strengthening Adaptation in Cyber-Physical Systems via Meta-Adaptation Strategies
abstract
The dynamic nature of complex Cyber-Physical Systems puts extra requirements on their functionalities: they not only need to be dependable, but also able to adapt to changing situations in their environment. When developing such systems, however, it is often impossible to explicitly design for all potential situations up front and provide corresponding strategies. Situations that come out of this “envelope of adaptability” can lead to problems that end up by applying an emergency fail-safe strategy to avoid complete system failure. The existing approaches to self-adaptation cannot typically cope with such situations better—while they are adaptive (and can apply learning) in choosing a strategy, they still rely on a pre-defined set of strategies not flexible enough to deal with those situations adequately. To alleviate this problem, we propose the concept of meta-adaptation strategies, which extends the limits of adaptability of a system by constructing new strategies at runtime to reflect the changes in the environment. Though the approach is generally applicable to most approaches to self-adaptation, we demonstrate our approach on IRM-SA—a design method and associated runtime model for self-adaptive distributed systems based on component ensembles. We exemplify the meta-adaptation strategies concept by providing three concrete meta-adaptation strategies and show its feasibility on an emergency coordination case study.
Ilias Gerostathopoulos, Tomás Bures, Petr Hnetynka, Adam Hujecek, Frantisek Plásil, Dominik Skoda
ACM Trans. Cyber Phys. Syst.3
2016 Smart Coordination of Autonomic Component Ensembles in the Context of Ad-Hoc Communication
Tomás Bures, Petr Hnetynka, Filip Krijt, Vladimír Matena, Frantisek Plásil
ISoLA (1)2
2016 Statistical Approach to Architecture Modes in Smart Cyber Physical Systems
abstract
Smart Cyber-Physical Systems (sCPS) are complex distributed decentralized systems of cooperating components. They typically operate in uncertain environments and thus require means for managing variability at run-time. Architectural modes have traditionally been a proven means for the runtime variability. They are easy to understand, easy to realize in resource-constrained systems and (contrary to more sophisticated methods of learning) provide an explicit specification that can be inspected and validated at design time. However, in uncertain environments (which is the case of sCPS), they tend to lack expressivity to take into account the level of uncertainty and factor it in the mode-switching logic. In this paper we present a rich language to specify mode-switch guards. The semantics of the language is based on statistical tests, which, as we show, is a convenient way to reason about uncertainty in the state of the environment.
Tomás Bures, Petr Hnetynka, Jan Kofron, Rima Al Ali, Dominik Skoda
WICSA2
2016 Self-adaptation in software-intensive cyber-physical systems: From system goals to architecture configurations
Ilias Gerostathopoulos, Tomás Bures, Petr Hnetynka, Jaroslav Keznikl, Michal Kit, Frantisek Plásil, Noël Plouzeau
J. Syst. Softw.3
2015 Meta-Adaptation Strategies for Adaptation in Cyber-Physical Systems
Ilias Gerostathopoulos, Tomás Bures, Petr Hnetynka, Adam Hujecek, Frantisek Plásil, Dominik Skoda
ECSA3
2015 Formal Verification of Annotated Textual Use-Cases
abstract
Textual use-cases have been traditionally used in the initial stages of the software development process to describe software functionality from the user's perspective. Their advantage is that they can be easily understood by stakeholders and domain experts. However, since use-cases typically rely on natural language, they cannot be directly subject to a formal verification. In this article, we present a method (called Formal Verification of Annotated Use-Case Models, FOAM) for formal verification of use-cases. This method features simple user-definable annotations, which are inserted into a use-case to make its semantics more suitable for verification. Subsequently, a model-checking tool is employed to verify temporal invariants associated with the annotations. This way, FOAM allows harnessing the benefits of model checking while still keeping the use-cases understandable for non-experts.
Viliam Simko, David Hauzar, Petr Hnetynka, Tomás Bures, Frantisek Plásil
Comput. J.3
2014 Recovering Traceability Links Between Code and Specification Through Domain Model Extraction
Jirí Vinárek, Petr Hnetynka, Viliam Simko, Petr Kroha
EOMAS@CAiSE2
2014 Gossiping Components for Cyber-Physical Systems
Tomás Bures, Ilias Gerostathopoulos, Petr Hnetynka, Jaroslav Keznikl, Michal Kit, Frantisek Plásil
ECSA3
2014 Comparison of component frameworks for real-time embedded systems
Tomás Pop, Petr Hnetynka, Petr Hosek 0001, Michal Malohlava, Tomás Bures
Knowl. Inf. Syst.2
2014 Automated resolution of connector architectures using constraint solving (ARCAS method)
Jaroslav Keznikl, Tomás Bures, Frantisek Plásil, Petr Hnetynka
Softw. Syst. Model.4
2013 Interoperable domain-specific languages families for code generation
abstract
SUMMARY This paper has been motivated by experience gained with specification and code generation of control elements for a software component platform and general‐purpose programming language like Java and C. The problem to be addressed is two‐fold: first, several domain‐specific languages (DSL) are to be employed to express different element concerns (architecture, deployment context, code pattern) and second, porting to another general‐purpose language should avoid modification of the specification and related code generation process as much as possible. In both respects, the classical template‐based code generation technique proved to be inflexible, requiring the code generator to be blurred with ad hoc encoded DSL facets. The paper addresses the problem by introducing the concept of interoperable DSL family. Each member of the family is built around its core language, which can be further specialized by embedding into a target programming language. Interoperability of these DSLs is achieved at the level of abstract syntax trees (ASTs) with help of queries. As a proof of the concept, we have implemented the queries via the AST transformation rules of the Stratego/XT framework. In the evaluation, we provide a comparison with the original template‐based implementation, which clearly indicates the DSL family and AST transformation benefits. We also provide examples of application areas where the concept of interoperable DSL family can be employed (and also indicate how this can be accomplished). Copyright © 2012 John Wiley & Sons, Ltd.
Michal Malohlava, Frantisek Plásil, Tomás Bures, Petr Hnetynka
Softw. Pract. Exp.4
2011 Introducing Support for Embedded and Real-Time Devices into Existing Hierarchical Component System: Lessons Learned
abstract
As embedded and real-time systems became an inherent part of many electronic appliances of everyday use, the demand for their development has grown enormously. Increasing complexity of these systems leads to demands of tools and techniques addressing their efficient and short time-to-market development. One of the possible ways to tackle the problem is a reuse of tools, methodologies and know how already established and successfully adopted in other application domains. Such transfer cannot be done inherently without appropriate modification and methodical adaptation based on an analysis of domain requirements. The paper analyzes necessary modifications and extensions of a general purpose component-based technology to enable development of embedded real-time systems. In addition, we present our own experience obtained while tailoring advanced component framework SOFA 2 to support development of embedded and real-time systems.
Tomás Pop, Jaroslav Keznikl, Petr Hosek 0001, Michal Malohlava, Tomás Bures, Petr Hnetynka
SERA6
2011 Comparing the Service Component Architecture and Fractal Component Model
abstract
Composing large enterprise applications from reusable software components has become a major software development technique. Components are considered as black boxes and are composed together by their provided and required services. In comparison to other software development approaches, this allows for rapid development, clean and explicit architectures, and easy component reuse. Currently, there are several systems that support development and composition of components: service component architecture and Fractal are two well-known ones. At first sight, both have the same goals and provide very similar means to developers. In this paper, we briefly present both systems and then we focus on an in-depth comparison and evaluation of them.
Petr Hnetynka, Liam Murphy 0001, John Murphy 0001
Comput. J.1
2011 Using meta-modeling in design and implementation of component-based systems: the SOFA case study
abstract
Abstract To allow efficient and user‐friendly development of a component‐based application, component systems have to provide a rather complex development infrastructure, including a tool for component composition, component repository, and a run‐time infrastructure. In this paper, we present and evaluate benefits of using meta‐modeling during the process of defining a component system and also during creation of the development and run‐time infrastructures. Most of the presented arguments are based on a broad practical experience with designing the component systems SOFA and SOFA 2; the former designed in a classical ad hoc ‘manual’ way, whereas the latter with the help of meta‐modeling. Copyright © 2010 John Wiley & Sons, Ltd.
Petr Hnetynka, Frantisek Plásil
Softw. Pract. Exp.1
2007 Runtime Support for Advanced Component Concepts
abstract
Component-based development has become a recognized technique for building large scale distributed applications. Although the maturity of this technique, there appears to be quite a significant gap between (a) component systems that are rich in advanced features (e.g., component nesting, software connectors, versioning, dynamic architectures), but which have typically only poor or even no runtime support, and (b) component systems with a solid runtime support, but which typically possess only a limited set of the advanced features. In our opinion, this is mainly due to the difficulties that arise when trying to give proper semantics to the features and reify them in development tools and an runtime platform. In this paper, we describe the implementation of the runtime environment for the SOFA 2.0 component model. In particular, we focus on the runtime support of the advanced features mentioned above. The described issues and the solution are not specific only to SOFA 2.0, but they are general and applicable to any other component system aiming at addressing such features.
Tomás Bures, Petr Hnetynka, Frantisek Plásil, Jan Klesnil, Ondrej Kmoch, Tomas Kohan, Pavel Kotrc
SERA2
2006 SOFA 2.0: Balancing Advanced Features in a Hierarchical Component Model
abstract
Component-based software engineering is a powerful paradigm for building large applications. However, our experience with building application of components is that the existing advanced component models (such as those offering component nesting, behavior specification and checking, dynamic reconfiguration to some extent, etc.) are subject to a lot of limitations and issues which prevent them from being accepted more widely (by industry in particular). We claim that these issues are specifically related to (a) the lack of support for dynamic reconfigurations of hierarchical architectures, (b) poor support for modeling and extendibility of the control part of a component, and (c) the lack of support for different communication styles applied in inter-component communication. In this paper, we show how these problems can be addressed and present an advanced component system SOFA 2.0 as a proof of the concept. This system is based on its predecessor SOFA, but it incorporates a number of enhancements and improvements
Tomás Bures, Petr Hnetynka, Frantisek Plásil
SERA2
2005 A Model-driven Environment for Component Deployment
abstract
This paper presents deployment factory, a model-driven unified environment for deploying component-based applications. While there are projects aiming to develop a unified deployment environment for component-based applications, none of them is generic enough - they do not support heterogeneous applications, they are targeted for a single component technology and/or impose modifications of the underlying technologies. The deployment factory targets all these issues. It is based on (i) the OMG deployment and configuration specification, (ii) an analysis of contemporary used component technologies, and (iii) our experience from component-based development. Moreover, the paper also shows that a plain MDA approach (the one used in the OMG deployment and configuration specification) for building real systems is not always appropriate.
Petr Hnetynka
SERA1