How to make license assigment easy to use when technology and resources are limited?

I am building a portal for company users or single license users to manage their account for a 3D CAD application.

Due to low resources and lack of information on the project, the architecture was build in a way that we do not allow a a license to not be assigned, so whatever license exists it needs to be always assigned to a user.

If you have 150 licenses all licenses will be assigned to either account owner or member.

Every-time someone is unassigned, it becomes assigned to the owner automatically.

Preliminary testing with MVP:

  • Confusion with the license cannot be disconnected from someone
  • No indication that license is unassigned.
  • It does not inform the administrator (account owner) that the license is free to be given to someone.
  • When a team is big, it is even more confusing (I tested myself and I was lost).

Now, the second architecture solution would require significant change (higher dev costs):

To make able for a license to display as unassigned the license would have to be floating, so it still belongs to the company, so it is not used by anyone.

Major complications from this solution: the software uses a security dongle and has lots of security triggers that require the user to unlock (not just first-time run, but every 6 months and also with subscription renewal).

If the license is not assigned, that means the user will get another barrier that didn't exist before (worse experience) and will not be able to use the software he purchased, unless he/she assigns to himself. Including single license users who don't have a team, they will need to assign the license via a portal to allow themselves in order to use it, on top of activating it.