Skip to content

Latest commit

 

History

History
126 lines (104 loc) · 10.7 KB

README.md

File metadata and controls

126 lines (104 loc) · 10.7 KB

LEMMA

A Language Ecosystem for Modeling Microservice Architecture
Facilitating the design 📝 development 🔧 and deployment 🚢 of complex microservice architectures
with Model-driven Engineering

Built with ❤︎ by Florian Rademacher and contributors

Table of Contents

Features

  • model-driven: abstract the complexity of microservice architectures with the power of Model-driven Engineering
  • collaborative: provide concern-oriented, integrated modeling languages for stakeholder groups of microservice architectures ranging from domain experts to microservice developers and operators
  • practice-oriented: aligned to the requirements of real-world microservice architectures including distributed development, DevOps-based teams, and technology heterogeneity
  • broad applicability: LEMMA has been used for, e.g., (i) the translation of domain-driven microservice designs into implementations; (ii) architecture recovery and quality attribute analysis; and (iii) microservice code generation
  • IDE support: thanks to the Eclipse ecosystem LEMMA comes with dedicated editors including syntax highlighting, code completion, and as-you-type validation
  • designed for extensibility: interested in extending LEMMA with your own super cool framework for microservice development or deployment? drop us an e-mail

Installation

LEMMA works with any Eclipse version greater or equal 2021-03, and can be installed using a dedicated Eclipse updatesite or a set of Eclipse dropins.

Updatesite

You can install LEMMA from a running Eclipse instance via the following Eclipse updatesite: https://microservices.fh-dortmund.de/lemma/.

Dropins

As an alternative to the Eclipse updatesite, you may also download the LEMMA Eclipse plugins for its latest release as a set of Eclipse dropins. You can find these dropins as an asset of LEMMA's latest release on GitHub. However, in this case you will also need to manually install the Eclipse plugins for the ATL Transformation Language and EMFTVM version 4.5 or greater. The corresponding Eclipse updatesite is available here: https://download.eclipse.org/mmt/atl/updates/releases/.

Examples

We provide several examples for using LEMMA to describe coherent (parts of) microservice architectures including their domain data, microservice APIs, and operation. You can find these examples on GitHub:

Documentation

The LEMMA documentation can be found at https://seelabfhdo.github.io/lemma-docs. The documentation is currently work in progress but will receive updates on a regular basis. For example, it already contains a comprehensive installation guideline and a quick tour!

Changelog

For information about the current version of LEMMA please refer to its Changelog.

Science

LEMMA has its roots in Software Engineering research, and more specifically in the Software Architecture and Model-driven Engineering research communities. Thus, there are several papers that concern LEMMA's design and its application:

2022

2021

2020

2019

2018

2017

Contributors

Kudos to all LEMMA contributors 🎉🎉🎉

License

MIT