Fabian Stiehle

SE
h-index5
5papers
88citations
Novelty27%
AI Score41

5 Papers

38.7SEMay 21Code
An Architecture for Decentralised Deployment and Operation of Blockchain Applications

Fabian Stiehle, Kirill Inozemtsev, Ingo Weber

Blockchains and distributed ledger technologies allow the operation of manifold decentralised applications (dApps). Such applications are based on smart contracts, a programmable abstraction that is executed in a decentralised manner. To ensure the correctness of smart contracts, blockchain application developers rely on DevOps practices such as automated testing and continuous integration and deployment. However, such infrastructure is often controlled by single entities. For larger blockchain applications, this issue is resolved by relying on concepts of Decentralised Autonomous Organisations (DAOs), which allow proposals to be autonomously executed once they reach a pre-defined quorum. Such a governance architecture is complex and requires integration with existing patterns for contract discovery and upgradeability. In this paper we integrate these concepts considering DevOps best-practices into a novel architecture that remains agnostic to different governance and upgrade implementations. We extend the known registry pattern to support deterministic deployments and present a decentralised deployment framework, including integration and deployment pipelines, user-interfaces, and version control integration. In our approach, each party implements and verifies their own tests before engaging in the use of a (newly deployed) smart contract. We provide a reference implementation, available as open-source, and evaluate the proposal thoroughly. Our architecture can serve as a reference for future integrations, while our open-source framework is aimed at reducing the complexity of adopting such a process in practice.

SENov 28, 2023
LLMs for Science: Usage for Code Generation and Data Analysis

Mohamed Nejjar, Luca Zacharias, Fabian Stiehle et al.

Large language models (LLMs) have been touted to enable increased productivity in many areas of today's work life. Scientific research as an area of work is no exception: the potential of LLM-based tools to assist in the daily work of scientists has become a highly discussed topic across disciplines. However, we are only at the very onset of this subject of study. It is still unclear how the potential of LLMs will materialise in research practice. With this study, we give first empirical evidence on the use of LLMs in the research process. We have investigated a set of use cases for LLM-based tools in scientific research, and conducted a first study to assess to which degree current tools are helpful. In this paper we report specifically on use cases related to software engineering, such as generating application code and developing scripts for data analytics. While we studied seemingly simple use cases, results across tools differ significantly. Our results highlight the promise of LLM-based tools in general, yet we also observe various issues, particularly regarding the integrity of the output these tools provide.

SEJul 30, 2025
On LLM-Assisted Generation of Smart Contracts from Business Processes

Fabian Stiehle, Hans Weytjens, Ingo Weber

Large language models (LLMs) have changed the reality of how software is produced. Within the wider software engineering community, among many other purposes, they are explored for code generation use cases from different types of input. In this work, we present an exploratory study to investigate the use of LLMs for generating smart contract code from business process descriptions, an idea that has emerged in recent literature to overcome the limitations of traditional rule-based code generation approaches. However, current LLM-based work evaluates generated code on small samples, relying on manual inspection, or testing whether code compiles but ignoring correct execution. With this work, we introduce an automated evaluation framework and provide empirical data from larger data sets of process models. We test LLMs of different types and sizes in their capabilities of achieving important properties of process execution, including enforcing process flow, resource allocation, and data-based conditions. Our results show that LLM performance falls short of the perfect reliability required for smart contract development. We suggest future work to explore responsible LLM integrations in existing tools for code generation to ensure more reliable output. Our benchmarking framework can serve as a foundation for developing and evaluating such integrations.

SEJul 15, 2021
Automatic Resource Allocation in Business Processes: A Systematic Literature Survey

Luise Pufahl, Sven Ihde, Fabian Stiehle et al.

For delivering products or services to their clients, organizations execute manifold business processes. During such execution, upcoming process tasks need to be allocated to internal resources. Resource allocation is a complex decision-making problem with high impact on the effectiveness and efficiency of processes. A wide range of approaches was developed to support research allocation automatically. This systematic literature survey provides an overview of approaches and categorizes them regarding their resource allocation goals and capabilities, their use of models and data, their algorithmic solutions, and their maturity. Rule-based approaches were identified as dominant, but heuristics and learning approaches also play a relevant role.

CRJun 28, 2021
Modeling the Block Verification Time of Zcash

Fabian Stiehle, Erik Daniel, Florian Tschorsch

An important aspect of the propagation delay in blockchain networks is the block verification time, which is also responsible for the so-called verifier's dilemma. Models for the block verification time can help to understand and improve the verification process. Moreover, modeling the verification time is necessary for blockchain network simulations. In this paper, we present JOIST, a new model for the block verification time of Zcash. We identify computationally complex operations in the verification process of Zcash, and derive our model based on characteristic transaction features. We evaluate JOIST and show that the model is consistently more accurate than existing models, which consider the block size only.