LEMME
Un écosystème linguistique pour la modélisation de l'architecture des microservices
Faciliter le développement du design ? et déploiement ? d'architectures de microservices complexes
avec l'ingénierie pilotée par les modèles
Construit avec ❤︎ par Florian Rademacher et contributeurs
Table des matières
- Caractéristiques
- Installation
- Exemples
- Documentation
- Journal des modifications
- Science
- Contributeurs
- Licence
Caractéristiques
- piloté par modèle : résumer la complexité des architectures de microservices avec la puissance de l'ingénierie pilotée par modèle
- collaboratif : fournir des langages de modélisation intégrés et axés sur les préoccupations pour les groupes de parties prenantes des architectures de microservices, allant des experts du domaine aux développeurs et opérateurs de microservices
- orienté vers la pratique : aligné sur les exigences des architectures de microservices du monde réel, y compris le développement distribué, les équipes basées sur DevOps et l'hétérogénéité technologique
- large applicabilité : LEMMA a été utilisé, par exemple, pour (i) la traduction de conceptions de microservices pilotées par domaine en implémentations ; (ii) récupération de l'architecture et analyse des attributs de qualité ; et (iii) génération de code de microservice
- Prise en charge de l'IDE : grâce à l'écosystème Eclipse, LEMMA est livré avec des éditeurs dédiés incluant la coloration syntaxique, la complétion du code et la validation au fur et à mesure de la frappe.
- conçu pour l'extensibilité : vous souhaitez étendre LEMMA avec votre propre framework super cool pour le développement ou le déploiement de microservices ? envoyez-nous un e-mail
Installation
LEMMA fonctionne avec n'importe quelle version d'Eclipse supérieure ou égale à 2021-03 et peut être installée à l'aide d'un site de mise à jour Eclipse dédié ou d'un ensemble de dropins Eclipse.
Site de mise à jour
Vous pouvez installer LEMMA à partir d'une instance Eclipse en cours d'exécution via le site de mise à jour Eclipse suivant : https://microservices.fh-dortmund.de/lemma/.
Dropins
Comme alternative au site de mise à jour Eclipse, vous pouvez également télécharger les plugins LEMMA Eclipse pour sa dernière version sous forme d'ensemble de dropins Eclipse. Vous pouvez trouver ces dropins comme atout de la dernière version de LEMMA sur GitHub. Cependant, dans ce cas, vous devrez également installer manuellement les plugins Eclipse pour ATL Transformation Language et EMFTVM version 4.5 ou supérieure. Le site de mise à jour Eclipse correspondant est disponible ici : https://download.eclipse.org/mmt/atl/updates/releases/.
Exemples
Nous fournissons plusieurs exemples d'utilisation de LEMMA pour décrire des (parties d') architectures de microservices cohérentes, y compris leurs données de domaine, leurs API de microservice et leur fonctionnement. Vous pouvez trouver ces exemples sur GitHub :
- Exemple de gestion de borne de recharge
- Exemple d'espace de stationnement
- Exemple de recharge de véhicule électrique
- Exemple de nourriture à emporter
- Exemple de compagnie d'assurance
Documentation
La documentation LEMMA est disponible sur https://seelabfhdo.github.io/lemma-docs. La documentation est actuellement en cours de travail mais sera mise à jour régulièrement. Par exemple, il contient déjà un guide d’installation complet et une visite guidée rapide !
Journal des modifications
Pour plus d'informations sur la version actuelle de LEMMA, veuillez vous référer à son Changelog.
Science
LEMMA a ses racines dans la recherche en génie logiciel, et plus particulièrement dans les communautés de recherche en architecture logicielle et en ingénierie pilotée par les modèles. Ainsi, il existe plusieurs articles qui concernent la conception de LEMMA et son application :
2022
- Rademacher, Florian "Un écosystème linguistique pour la modélisation de l'architecture des microservices." Thèse de doctorat. Département de génie électrique et d'informatique, Université de Kassel.
- Rademacher, Florian et al. "Vers une approche extensible pour le développement et le déploiement de microservices génératifs à l'aide de LEMMA." Architecture logicielle (ECSA 2021). Springer, 2022.
- Giallorenzo, Saverio et al. "Génération basée sur des modèles d'interfaces de microservices : des modèles de domaine LEMMA aux API Jolie." Modèles et langages de coordination (COORDINATION 2022). Springer, 2021. 276-284.
2021
- Giallorenzo, Saverio et al. "Jolie et LEMMA : les langages d'ingénierie et de programmation pilotés par modèles se rencontrent sur les microservices." Modèles et langages de coordination (COORDINATION 2021). Springer, 2021. 276-284.
- Rademacher, Florian et al. "Vers une modélisation holistique des architectures de microservices à l'aide de LEMMA." Actes complémentaires de la 15e Conférence européenne sur l'architecture logicielle 2021. CEUR-WS, 2021.
- Sorgalla, Jonas et coll. "Application de l'ingénierie pilotée par modèle pour stimuler l'adoption de processus DevOps dans les organisations de développement de petite et moyenne taille." SN Informatique. Springer, 2021.
2020
- Rademacher, Florian et al. "Développement de microservices basés sur des modèles graphiques et textuels." Microservices. Springer, 2020. 147-179.
- Rademacher, Florian, Sabine Sachweh et Albert Zündorf. "Dérivation du code de microservice à partir de modèles de domaine sous-spécifiés à l'aide de langages de modélisation et de transformations de modèles compatibles DevOps." 2020 46e Conférence Euromicro sur le génie logiciel et les applications avancées (SEAA). IEEE, 2020.
- Rademacher, Florian, Sabine Sachweh et Albert Zündorf. "Une méthode de modélisation pour la reconstruction systématique de l'architecture des systèmes logiciels basés sur des microservices." Modélisation d'entreprise, de processus métier et de systèmes d'information. Springer, 2020. 311-326.
- Sorgalla, Jonas et coll. "Modélisation de l'architecture des microservices : une expérience comparative vers l'efficacité de deux approches." Actes du 35e symposium annuel de l'ACM sur l'informatique appliquée. 2020.
- Sorgalla, Jonas et coll. "Développement basé sur un modèle d'architecture de microservices : une expérience sur la qualité d'utilisation d'une approche basée sur UML et DSL." (2020).
- Sorgalla, Jonas, Sabine Sachweh et Albert Zündorf. "Exploration du processus de développement de microservices dans les petites et moyennes organisations" Amélioration des processus logiciels axés sur les produits. Springer, 2020. 453-460.
2019
- Rademacher, Florian, Sabine Sachweh et Albert Zündorf. "Modélisation orientée aspect de l'hétérogénéité technologique dans l'architecture des microservices." Conférence internationale IEEE 2019 sur l'architecture logicielle (ICSA). IEEE, 2019.
- Rademacher, Florian et al. "Un workflow basé sur un modèle pour le développement de microservices distribués." Actes du 34e Symposium ACM/SIGAPP sur l'informatique appliquée. 2019.
- Rademacher, Florian et al. "Architecture de microservices et développement basé sur des modèles : pourtant célibataires, bientôt mariés (?)." Actes de la 19e Conférence internationale sur le développement de logiciels agiles : Companion. 2018.
2018
- Rademacher, Florian, Jonas Sorgalla et Sabine Sachweh. "Les défis de la conception de microservices basés sur le domaine : une perspective basée sur un modèle." Logiciel IEEE 35.3 (2018) : 36-43.
- Sorgalla, Jonas et coll. « Ingénierie logicielle collaborative basée sur des modèles et architecture de microservices : une adéquation parfaite ? » Actes de la 19e Conférence internationale sur le développement de logiciels agiles : Companion. 2018.
2017
- Rademacher, Florian, Sabine Sachweh et Albert Zündorf. "Différences entre le développement piloté par modèle d'une architecture orientée services et celle des microservices." Conférence internationale IEEE 2017 sur les ateliers d'architecture logicielle (ICSAW). IEEE, 2017.
- Rademacher, Florian, Sabine Sachweh et Albert Zündorf. "Vers un profil UML pour la conception d'architectures de microservices axée sur le domaine." Conférence internationale sur le génie logiciel et les méthodes formelles. Springer, 2017.
Contributeurs
Félicitations à tous les contributeurs de LEMMA ???
Licence
MIT