Categories: Licensing

Project Management in CodeMeter License Portal

Anyone who has ever built a house knows that a construction site involves many different roles, and the success of the project depends on the seamless interaction between them. The architect designs the project, the workers on-site implement it, and the logistics coordinator ensures that the necessary materials are available.

Software projects delivered to plants and factories have a comparable level of complexity. A project planner creates an overview of which licenses are needed and how they should be distributed within the facility. The purchaser procures the licenses, and the on-site employee activates them. The more precisely the project planner specifies the distribution of the licenses, the more efficiently the activation is carried out on-site.

This is where the project management function in CodeMeter License Portal comes into play. The project planner organizes the project and assigns the licenses to the devices. An on-site employee then simply imports the preconfigured license packages. This saves time, prevents errors in the field, and reduces the need for employee training.

Different Roles

In this use case, we consider three roles: the purchaser who procures the licenses, the project planner who assigns the licenses, and the on-site employee who activates the licenses. In the terminology of CodeMeter License Portal, the purchaser and the project planner are group administrators, while the on-site employee is a group user. Administrators can assign licenses to groups and projects. Users can activate and deactivate licenses. Groups can represent either real or virtual entities in which licenses are organized, such as departments, teams, or virtual license pools like a purchasing pool.

Procurement of Licenses

The workflow typically begins with the procurement of licenses. In most cases, the system integrator purchases a larger quantity of licenses through a volume contract. These licenses are generated by the software manufacturer upon order and delivered to CodeMeter License Portal. The delivery is made to a group, such as the purchasing pool. Typically, purchasers and project planners are administrators of the purchasing pool. They can withdraw licenses from this virtual inventory and distribute them to other groups or projects.

Project Preparation

A project planner from the system integrator selects a group and then creates a project in the next step. Within this project, the project planner defines the individual devices. From CodeMeter’s perspective, each device receives exactly one CmContainer, where the licenses will later be activated and securely stored. When a device is defined, a virtual CmContainer is automatically created.

An exception to this single-container approach applies when licenses from different software vendors need to be activated on the same device and involve machine-bound CmActLicenses. This use case is not covered here.

After defining the devices, additional users can be assigned to the project. These users can be given either the role of Project User or Project Administrator. Users who are already administrators of the group in which the project was created automatically inherit the administrator role for the project. However, group users must be explicitly assigned to the project. This allows for granular control over project access.

Once the project is created, it is automatically set to the status “In Progress”.

Assignment of Licenses

To assign licenses to a project, the logged-in user must have the following permissions: They must be an administrator of the project and also an administrator of the group where the licenses are currently stored. This is typically the group where the licenses were initially delivered, such as the purchasing pool or the virtual inventory.

The assignment can only take place while the project is in the “In Progress” state. In this state, project users cannot activate licenses on the device. This restriction prevents the accidental activation of an incomplete or unapproved configuration that might not function correctly. Once the project administrator has completed the configuration, they change the status to “Published”.

Activation of Licenses

To activate licenses, the logged-in user must be either a user or an administrator of the project. The activation process consists of two steps:

  1. The user selects the device to be activated in the device view of CodeMeter License Portal.
  2. The user selects a new (empty) CmContainer on the target device.

In the case of a machine-bound CmActLicense or a CmCloudContainer in the cloud, the CmContainer can be automatically created during this process. If no direct online connection is available, activation can also be performed via file exchange using a CodeMeter Context file.

After activation, the licenses are available on the device and are marked as activated in CodeMeter License Portal.

Before activation, the licenses have the status “Assigned”. They can only be activated through this workflow to ensure that the intended configuration is deployed correctly. This prevents accidental activation of a license in an unintended CmContainer.

Changes in the Field

In the unlikely event that the project was configured incorrectly, it can be set back to the “In Progress” state at any time to make adjustments. This action can be performed either by a project administrator in the back office or by a user in the field. To do so, the user temporarily receives administrative rights for the project from a project administrator. Once the changes are complete, the status is set back to “Published”, allowing the licenses to be transferred again.

Changes at a Later Stage

Even Heraclitus knew: “Nothing is as constant as change”. This is especially true for software projects. If the requirements for a device change at a later stage, a project administrator switches the project to “In Progress” mode. They can then add or remove licenses from the device. Once the modifications are ready to be deployed, the project is set to “Published” again.

A particularly critical aspect is transferring a license between two devices. In the standard process, the license must first be deactivated on the old device. Then, the new state must be confirmed before the license can be activated on the new device. This approach ensures the highest level of protection against license misuse but also makes the process more complex. To simplify this, CodeMeter License Portal offers the option to prepare all actions in advance using a push update, allowing ready-to-use updates to be rolled out across all devices. This creates a theoretical temporary overlap, where the same license could be used on two devices for a short period. However, all such actions are logged to track usage patterns.

Regardless of the selected security option, project users can easily synchronize the connected CmContainer in the device view of CodeMeter License Portal with a single click, ensuring that the latest project configuration is applied. If no direct online connection is available, synchronization can also be performed via file exchange using a CodeMeter Context file.

Handover to the End User

Typically, once the project is completed, the system integrator hands over the plant and its devices to the operator. There are two possible scenarios: Either the system integrator continues to handle maintenance and support or the operator takes over full control independently in the future.

In the first case, CodeMeter License Portal allows both the operator’s employees and the system integrator’s employees to access the project with different roles.

In the second case, the project is transferred from the system integrator to the operator, and the system integrator’s permissions are removed.

Recovery in Case of Failure

In the event of a license loss, recovery is straightforward. Depending on the software vendor‘s policy, the licenses of a device within a project can be restored to a new CmContainer. Thanks to project management, all required licenses are clearly organized in one place within the project. The software vendor‘s policy always applies to the entire device, eliminating the need to define specific permissions and rules for individual licenses.

Automated Processes

As with all processes in CodeMeter License Portal, the workflows described here can also be mapped via the API. This enables full automation, such as creating a new project automatically for each new order received through an ERP or shop system, pre-registering CmContainers, or generating a recommended configuration.

CodeMeter gives software vendors the flexibility to automate processes according to their specific needs. Additionally, if a network connection is available, the software product can periodically check for new updates for the CmContainer and install them automatically. This allows configuration changes to be deployed without user intervention.

Summary

The project management feature in CodeMeter License Portal accounts for the different roles in complex software projects.

  • A purchaser procures licenses, either for a specific project or as stock.
  • A project planner assigns the licenses to the respective devices in the back office.
  • An on-site employee simply activates the pre-assigned licenses.

This approach reduces training requirements, increases efficiency, and minimizes errors. Additionally, future updates can be handled just as easily, ensuring a streamlined and error-free process.

 

KEYnote 49 – Edition Spring/Summer 2025

To top