CPC G06F 8/70 (2013.01) [G06F 21/105 (2013.01); G06Q 10/087 (2013.01); G06F 21/1073 (2023.08)] | 13 Claims |
1. A method for software identification in a software asset management system comprising a processing unit, at a central unit, configured to identify software characteristics on software inventory data from a user terminal, the method comprising:
receiving, at the central unit, the software inventory data from the user terminal;
normalizing the received software inventory data;
filtering, at the central unit, the software inventory data through a probabilistic data structure to determine whether any of the software inventory data is not in a database of known kinds of software, wherein the database includes a plurality of database software records that are structured into a tree-like structure having a plurality of nodes that split the database into a plurality of subsections based on different properties that need to be satisfied for identifying an individual record of software of the software inventory data as a known kind of software;
testing, at the central unit, the software inventory data against a portion of a plurality of rules for the database where the plurality of rules are based on the different properties that need to be satisfied, wherein the testing includes traversal of the plurality of nodes according to a traversal scheme where each node of the plurality of nodes is associated with a set of rules of the plurality of rules until a set of rules of a node is satisfied;
identifying a software information from a database software record of the plurality of database software records that is associated with the node where the set of rules are satisfied by the software inventory data; and
determining, at the central unit, whether the identified software information is compliant with one or more constraints.
|