...
Supports Any Relational Database (JDBC API)
Supports Spring Boot
Supports any S3 compliant storage (AWS, MinIO, etc.)
ElasticSearch
Web Hooks
OpenAPI 3.0 (Swagger / Swagger UI)
Read the Docs Integration
Horizontal scalability (for RO model access)
Point in time reference for models
Facilitates model dependency (mounts)
Artifact version control
Jupyter Notebook support
MMS4 Modules, Interfaces and Default Implementations
At the heart of MMS is the Core module, which provides default interfaces and objects. Here is a list of the main modules of MMS4:
Core (core configurations, constants, interfaces, and object classes)
JSON (classes that provides convenience getter/setters for properties for each type of object)
Data (provides data objects for core)
Artifacts (allows binary objects to be attached to elements)
Storage (implements artifacts using S3 compliant storage)
Elastic (implements JSON as well as provides default implementations from core interfaces)
RDB (implements storage and permissions*)
Authenticator (adds default authentication functionality)
PermissionsTeamwork Cloud integration (implements permissions provided in core)
Webhooks (provides webhook functionality)
Other notable modules:
TWC (provides TeamWork Cloud integration)
Cameo (adds behavior for Cameo project types)
Jupyter (adds behavior for Jupyter project types)
MMS4 and MMSRI
As mentioned above, MMS4 is a collection of Spring modules. In order to stand up a server comparable to MMS3, further development is required. However, since the majority of users will only need a ReST API similar to that of MMS3, the MMS Reference Implementation (MMSRI) can be utilized. The MMSRI includes all the default implementations of the MMS4 modules in a Spring Boot application for easier deployment. MMSRI follows the same release cycle as MMS4, and also includes a supported Docker image as well as Read the Docs documentation.
...