I'm re-creating an internal ERP tool to manage user license, sales and customer information for a desktop 3D cad software. So something similar as an admin portal for Autodesk employees to manage user licenses for different products they have (Maya, 3dsmax, AutoCAD, etc). We have a legacy dongle security hardware that needs to be maintained for old users, but we will also implement cloud so we can transition from an old business model to a new one.

One simple case is the user is having trouble assigning a license to someone in his team. That person contacts tech support to get help. Someone from staff will use search for which user he/she wants to findenter image description here.

If I click on the dongle code, it will display this:

enter image description here

Clicking on the drop-down "Dongle Serial Code" will display all dongle licenses that are assigned to that user. YXPA3GET is the one I previously searched and selected on a search page. The Hardware information is displayed below the title "Dongle YXPA3GET" and data gets populated. If I want to assign the license to someone, I click on the link beside it.

Question 1: is this the right pattern to use?

Question 2: the drop-down might be a good option for a few licenses. If there are more we will need some sort of search embedded on that box, similar to assign a user to a task in Asana.

Question 3: is there a way to improve this without being too expensive on the code side?

Note1: 90% of the user base has 3 licenses in a team of 4 people. While we have a few companies with 100 licenses or more.

enter image description here

Note2: Dongle Assignment does not give permission for the user to use a software, it is used for tech support do decide if that license is entitled to support or if the dongle was stolen.

Note3: Cloud license will be implemented but I don't have information on that yet. That will be displayed be also included in that screen.

Note4: There is a multitude of products under one dongle hardware and also my company will have a cloud license (under development). The tricky part is that since we have legacy users and data, I cannot simplify the data structure and these fields because we cannot change current dongle hardware in the market, as they don't have 2-way communication with the database and the dongle. I need to work with what I have so impact is minimum when implementing the new system. For example, there is some redundancy in product type as network and I can't change that.


No, it is not the right pattern.

Search should be universal and filterable, like it is on all major sites nowadays, eg. linkedin, facebook, google.

Normally, a technical solution for this would be a special full text engine, like solr, lucene, sphinx or ElasticSearch. Since these are kind of off-the-shelf solutions, price depends on your development team’s willingness to either integrate one of these or develop a full text search capacity themselves (possibly using a built-in function provided by your database vendor).

If a user might have multiple licenses, then the licenses might be grouped by user using a list inlay pattern.

Your Answer

By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.

Not the answer you're looking for? Browse other questions tagged or ask your own question.