## 3 UML Profile for Messaging Patterns
### Stereotypes for Academic Patterns  
This article takes into account four patterns resulting from research work. All are Enterprise Integration Patterns extensions: Saga and Publish-Subscribe Channel. The Publish-Subscribe Channel pattern has attracted the most attention of scientists. Three new versions of the pattern have been introduced. In addition, the Saga pattern has been elevated on a higher level of transaction integrity.  
The specialized version of the Saga (Software Automation, Generation, and Administration) pattern was proposed by [PERSON] et al. [4]. The pattern was proposed to maintain data consistency across distributed microservices transactions. However, it lacks isolation, which means that reading and writing data from an incomplete transaction is allowed. The specialized version uses the quota cache and the commit-sync service. In case a microservice fails to be completed, the other microservices run rollback transactions, and the changes only affect the cache layer. No wrong commit occurs in the database layer. Database commit is executed when all transactions are completed successfully. The introduced enhancement for the Saga pattern seems important enough to define a new version of the pattern. Therefore, the author named the new pattern Saga for Synchronized Commits and proposed the new stereotype \(<<\)SynCSaga\(>>\) and an icon associated with it.  
The specialized version of the Publish-Subscribe Channel pattern in microservices architecture was proposed by [PERSON] et al. [5]. The idea relies on the deployment of communication components within containers of the Kubernetes (K8s) orchestration cluster. The component implements a publish/subscribe pattern of communication among microservices. The cluster provides self-healing and auto-scaling services. As the introduced enhancement for the Publish-Subscribe Channel pattern seems important, the author named the new version of the pattern Resilient Publish-Subscribe and proposed the new stereotype \(<<\)ResilientPS\(>>\), and the icon associated with it. [PERSON] et al. [9] extended the same EIP pattern, but for geo-textual data. In their approach, subscribers get geo-textual object pairs rather than individual objects, which leads to avoiding duplicates. The author named the new version the Pairwise Publish-Subscribe pattern and proposed the new stereotype \(<<\)PairwisePS\(>>\). [PERSON] et al. [10] proposed a cluster-based distributed geospatial publish-subscribe system. The cluster matches incoming geospatial objects in real-time with a set of stored subscriptions. The author named the new version the Separate Publish-Subscribe pattern and proposed the new stereotype \(<<\)SeparatePS\(>>\).  
Table 1 shows the summary of the four patterns resulting from research work: Saga for Synchronized Commits, Resilient Publish-Subscribe, Pairwise Publish-Subscribe, and Separate Publish-Subscribe.  
New and unique icons have been designed, in a color scheme of the Enterprise Integration Patterns, for the academic patterns. A prefix characterizing the distinguishing property is included in the names of stereotypes that expand the Publish-Subscribe Channel. The suffix is the same.  
\begin{table}
\begin{tabular}{c c c c} \hline \hline
**Name** & **Stereotype** & **Base Type** & **Icon** \\ \hline Saga for & & & \\ Synchronized & \(<<\)SyncSaga\(>>\) & UML Action & & \\ Commits & & & \\ Resilient & & & \\ Publish–Subscribe & \(<<\)ResilientPS\(>>\) & UML Action & & \\ Pairwise & & & \\ Publish–Subscribe & & & \\ Separate & & & \\ Publish–Subscribe & & & \\ \hline \hline \end{tabular}
\end{table}
Table 1: New stereotypes for the patterns resulting from research work.