Skip to content

Cloud MaaS Marketplace (CMM)

Cloud MaaS Marketplace (CMM) icon
  • Category: Cloud & Marketplace Solutions
  • Primary environment: Cloud MaaS Marketplace
  • Documentation focus: Design reference
  • Maturity: TRL 4–5 (first release, M18)
  • Related architecture docs: Reference Architecture Guide, Environments

The Cloud MaaS Marketplace is a cloud-based ecosystem and the main entry point for the MaaSAI System. It enhances the technical and business interactions among MaaS Providers and MaaS Consumers in the context of Manufacturing as a Service. MaaS Providers will be able to servitize the access to their own manufacturing resources (e.g. equipment, data, software, etc.) and MaaS Consumers will be able to complement their manufacturing capabilities and capacities, by accessing manufacturing resources of MaaS Providers. The Cloud MaaS Marketplace streamlines the workflow of all the involved parties, aiming to: 1) organize the onboarding process for stakeholders; 2) develop a flexible system that shows context-aware interfaces; 3) boost the decision-making process for stakeholders; and 4) conceive a (quasi) agentic workflow(s) that interact with independent expert processes / agents.

The D5.2 usage viewpoint defines roles, permissions, constraints, a role-task matrix, and a use case diagram for this solution.

  • MaaS Provider Admin: Act on behalf of the MaaS Provider organization and can publish manufacturing resources operated by the organization, as well as interact with MaaS Consumer Users regarding an order request; constraint: Cannot manage profiles, resources or users of other organizations
  • MaaS Consumer Admin: Act on behalf of the MaaS consumer organization and can start order requests, as well as interact with MaaS Provider Users in the context of an order request; constraint: Cannot manage profiles, order requests or users of other organizations
  • CMM Operator: Monitor and manage the administrative operation of CMM and take the responsibility for supporting all the users and for responding requests sent by users like, organization validation, provider approvals, resources’ publication approval; constraint: Cannot edit content created by other users

Cloud MaaS Marketplace use case

Use-case diagram extracted from MaaSAI deliverable D5.2.

CMM combines marketplace onboarding, organisation management, resource publication, approval workflows, and workspace access behind a single web entry point. The functional view shows how providers, consumers, and operators move through the marketplace services that coordinate registration, validation, sharing, and daily platform interaction.

Cloud MaaS Marketplace functional components

Functional components diagram extracted from MaaSAI deliverable D5.2.

The Cloud MaaS Marketplace is composed of three main components:

Web Application: It is a Python-based and stateless web application software accessed through a web browser and running on a remote server. It is based on Django, a platform-independent high-level web framework (free and open source) for rapid development, which is suitable for high performance and scalable applications while being secure and versatile. The web application is deployed on the Amazon Web Services (AWS) infrastructure and it uses the AWS Elastic Beanstalk service, which is a service for deploying and scaling web applications developed with Java, .NET, PHP, Node.js, Python, Ruby, Go, and Docker on familiar web servers such as Apache, Nginx, Passenger, and IIS. The web application is configured to scale according to the demand; thus, automatically spinning up new VMs to cope with the higher load and automatically shutting them down if the load comes down.

Database: It stores all the metadata and textual information associated with the data models supported by CMM. It is based on PostgreSQL, which is an object-relational database management system. It connects to the web application through the data access layer (i.e. Model). The database is running on a dedicated Virtual Machine, managed by the AWS RDS service. The database has no connections to the open Internet and can only be accessed through the web application via a special security group within the dedicated AWS Virtual Private Cloud.

All the three components behind CMM will be deployed on the cloud; the web application is stateless and can automatically scale according to the current needs. The PostgreSQL database is created once, and all the existing VMs will access the same database concurrently. The object storage is also configured once and afterward the web application will automatically manage the objects on the cloud storage according to the interactions and requests of the users leveraging CMM. The database and object storage are configured manually through the AWS console, while the web application is automatically deployed from Git via dedicated Python scripts.

Cloud MaaS Marketplace architecture

Architecture diagram extracted from MaaSAI deliverable D5.2.

CMM is built on the Django web framework and follows Django’s Model-Template-View pattern, separating data access, presentation, and business logic.

CategoryTechnology
Model (data access)Python, Django, PostgreSQL, django-storages, AWS S3
Template (presentation)HTML, JavaScript, Bootstrap, Jinja2
View (business logic)Python, Django, Django REST Framework, Requests

CMM acts as the orchestrating entry point of the WP6 solutions and communicates with the MaaS Dynamic Catalogue (MDC), the Recommendation System (RS), the MaaS Consumer Agent (MCA) and MaaS Provider Agent (MPA), and the MaaS Collaboration Hub (MCH), which act as expert “agents” in its workflow. It also interacts with the Smart Contract Toolkit (SCT, WP12) to communicate the information constituting a smart contract after a successful negotiation, and integration with Keycloak is planned for access control. On the infrastructure side, CMM depends on AWS services (Elastic Beanstalk, RDS, S3).

D6.1 documents CMM through its web interfaces, usable from any standard browser:

  • Landing page with the MaaSAI brand identity and organisation profiles (every user acts on behalf of a registered organisation)
  • List and detail views for manufacturing equipment and other resource types
  • Registration of facilities associated with manufacturing resources
  • Request-specification form dynamically built from the structure provided by MDC
  • Ranking configuration (e.g. price, delivery time, production time) applied to the identified resources

Representative screens of the CMM web interface in the first release:

CMM landing page

CMM landing page with the MaaSAI brand identity — MaaSAI deliverable D6.1.

CMM equipment list view

List view of manufacturing equipment within CMM — MaaSAI deliverable D6.1.

CMM request specification form

Form to describe the specification of a request — MaaSAI deliverable D6.1.

CMM runs on AWS: the stateless Python web application is deployed with AWS Elastic Beanstalk and scales automatically with demand; the PostgreSQL database runs on AWS RDS inside a private VPC with no open-Internet access; files live in a dedicated S3 bucket supporting public and private objects (the latter served through time-limited signed URLs). Deployment uses custom scripts based on the Elastic Beanstalk CLI and Git integration, while the database and object storage are configured manually via the AWS console.

RequirementSpecification
Web applicationLinux EC2 VM with 2 CPUs and 2 GB RAM (minimum)
Database2 CPUs, 1 GB RAM and 20 GB storage (minimum)