Tomasz Górski

Dr. Tomasz Górski

University of Gdańsk, Gdańsk, Pomorskie, Poland
orcid

Research Focus & Metrics

Academic Career Length

10Years (2017-Present)

(Calculated once Scilit publication data is synced: current year − year of first publication + 1)

Representative Publications

View All Publications
22 October 2021 in Symmetry
Verified
Journal Article
Open access
PDF file
Tomasz GórskiTomasz Górski
Tomasz Górski
Service fulfillment for clients increasingly involves cooperation between information technology (IT) systems. Designing such solutions requires an architectural approach that ensures symmetry between the communicating parties. For the design of such systems, the author introduces the 1+5 architectural views model. The model contains three new architectural views. For business process modeling, it ensures the integrated processes view. Integration aspects cover two additional views: integrated services, and contracts. Moreover, new stereotypes and tagged values have been added to the unified modeling language (UML). The author has introduced two profiles: UML profile for integration flows, and UML profile for distributed ledger deployment. Communication between systems requires flows that arrange mediation mechanisms. The paper describes an integration flow diagram that extends a UML activity diagram. In the case of blockchain, the author has proposed the smart contract design pattern. The paper describes three case studies that have employed the model to design various solutions. The 1+5 model has proven to be well suited for designing both centralized integration environments with enterprise service bus (ESB) and distributed blockchain solutions with peer-to-peer (P2P) connections.

25 May 2022 in Applied Sciences
Verified
Journal Article
Open access
PDF file
Tomasz GórskiTomasz Górski
Tomasz Górski
Smart contracts constitute the foundation for blockchain distributed applications. These constructs enable transactions in trustless environments using consensus algorithms and software-controlled verification rules. In the current state of the art, there is a shortage of works on the adaptability of smart contracts, and the re-use of their source code is limited mainly to cloning. The paper discusses the pattern of smart contract design and implementation with the overt declaration of verification rules. The author introduces two advantages of the pattern: Firstly, run-time reconfigurability of the list of smart contract verification rules to adjust for various transaction types. Secondly, the re-use of verification rules between different configurations of the smart contract, and among diverse smart contracts. The paper uses blockchain platform-independent stereotypes from a dedicated Unified Modeling Language (UML) profile for designing smart contracts and verification rules. The implementation of the pattern is developed in object-oriented Java language. The pattern exploits polymorphism and controls inheritance by using sealed classes with permission for specialization only for selected final ones. Thus, the pattern ensures two recently highly desired properties in smart contract design and development: re-use and security. Moreover, the declared verification rules list facilitates test automation and reduces test preparation effort due to the re-use of test classes among smart contract configurations. The pattern usage is illustrated in the example of renewable energy exchange within the prosumers community and amid various communities.

10 December 2021 in Applied Sciences
Verified
Journal Article
Open access
PDF file
Tomasz GórskiTomasz Górski
Tomasz Górski
Ensuring a production-ready state of the application under development is the immanent feature of the continuous delivery approach. In a blockchain network, nodes communicate, storing data in a decentralized manner. Each node executes the same business application but operates in a distinct execution environment. The literature lacks research, focusing on continuous practices for blockchain and distributed ledger technology. In particular, such works with support for both software development disciplines of design and deployment. Artifacts from considered disciplines have been placed in the 1 + 5 architectural views model. The approach aims to ensure the continuous deployment of containerized blockchain distributed applications. The solution has been divided into two independent components: Delivery and deployment. They interact through Git distributed version control. Dedicated GitHub repositories should store the business application and deployment configurations for nodes. The delivery component has to ensure the deployment package in the actual version of the business application with the node-specific up-to-date version of deployment configuration files. The deployment component is responsible for providing running distributed applications in containers for all blockchain nodes. The approach uses Jenkins and Kubernetes frameworks. For the sake of verification, preliminary tests have been conducted for the Electricity Consumption and Supply Management blockchain-based system for prosumers of renewable energy.

6 April 2023 in IEEE Access
Verified
Journal Article
Open access
Tomasz GórskiTomasz Górski
Tomasz Górski
In an increasing number of software applications, the execution of their functions depends on communication with external systems. Messaging enables the integration of information technology (IT) systems in a loosely-coupled manner. The paper aims to show the Integrated services architectural view and two methods of modeling messaging flows at the service and business levels. Service flows allow for modeling the communication between systems/services at the level of sending messages. In contrast, business flows model the entire course of interaction among cooperating applications. The methods employ an Integration flows diagram, which is a specialized version of the Unified Modeling Language (UML) Activity diagram. In addition, the business process task from the Integrated Processes view defines the context for the business flow. Moreover, the Use Cases view identifies the integration scope within requirements. All those views belong to the 1 + 5 architectural views model. The paper exerts extensibility mechanisms declared in the UML Profile for Messaging Patterns . Besides, the profile has been augmented with stereotypes for messaging patterns for the Apache Camel framework, stakeholders involved in communication, and up-to-date stereotypes for structural components. The methods were used in the integration design of sending orders and confirmations between the business applications of the brokerage house and the stock exchange.

29 June 2020 in IEEE Access
Verified
Journal Article
Open access
Tomasz GórskiTomasz Górski
Tomasz Górski
JBJakub Bednarski
Jakub Bednarski
Distributed Ledger Technology (DLT) enables data storage in a decentralized manner among collaborating parties. The software architecture of such solutions encompasses models placed in the relevant architectural views. A lot of research is devoted to smart contracts and consensus algorithms, which are realized by distributed applications and can be positioned within the Logical view. However, we see the need to provide modeling support for the Deployment view of distributed ledger solutions. Especially since the chosen DLT framework has a significant impact on implementation and deployment. Besides, consistency between models and configuration deployment scripts should be ensured. So, we have applied Model-Driven Engineering (MDE) that allows on the transformation of models into more detailed models, source code, or tests. We have proposed Unified Modeling Language (UML) stereotypes and tagged values for distributed ledger deployment modeling and placed them in the UML Profile for Distributed Ledger Deployment. We have also designed the UML2Deployment model-to-code transformation for the R3 Corda DLT framework. A UML Deployment model is the source whereas a Gradle Groovy deployment script is the target of the transformation. We have provided the complete solution by incorporating the transformation into the Visual Paradigm modeling tool. Furthermore, we have designed a dedicated plug-in to validate generated deployment scripts. In the paper, we have shown how to design transformation for generating deployment scripts for the R3 Corda DLT framework with the ability to switch to another one.

13 December 2022 in Applied Sciences
Verified
Journal Article
Open access
PDF file
Tomasz GórskiTomasz Górski
Tomasz Górski
The exchange of information among information technology (IT) systems is inevitable. Service fulfillment often involves sending and receiving messages. The article presents a set of messaging patterns for service-oriented architecture, microservices, and messaging protocols for the Internet of Things. The paper describes selected patterns that are the result of current research work. In addition, patterns introduced in open-source frameworks such as ZeroMQ have also been included. Moreover, the set includes Enterprise Integration Patterns. All considered messaging patterns have been described using the stereotype extensibility mechanism of the Unified Modeling Language (UML), and their complete set has been included in the new UML Profile for Messaging Patterns. The paper also shows the manner of integration flow modeling. In the illustrative examples, both the integration flow modeling diagram and the profile have been used to describe the communication in the context of the Integrated services view of the 1+5 architectural views model. The profile has been designed in the visual paradigm tool and revealed in a public repository for the community.