Systems and methods for third-party library management

US11593461B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11593461-B2
Application numberUS-201916298782-A
CountryUS
Kind codeB2
Filing dateMar 11, 2019
Priority dateMar 11, 2019
Publication dateFeb 28, 2023
Grant dateFeb 28, 2023

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

In accordance with the present approach, a library management system identifies third-party libraries that developers request to incorporate into a software release. The library management system may determine whether a master ticket or usage ticket for a new third-party library exists. If a master or usage ticket is not already existing and approved for the third-party library, the third-party library management system may automatically analyze the third-party library to determine whether it corresponds to third-party libraries that are already approved and stored in a central repository. After approval of a master ticket, the third-party library may be incorporated into the central repository and referenced by subsequent usage tickets that are particular to an individual software release. If not approved, the library management system provides the third-party library to a manual approval system. Moreover, the library management system provides efficient reporting of and access to statuses of the requested third-party libraries.

First claim

Opening claim text (preview).

The invention claimed is: 1. A tangible, non-transitory, machine-readable medium comprising machine-readable instructions, wherein the machine-readable instructions, when executed by one or more processors, cause the one or more processors to perform operations comprising: receiving a first approval request to incorporate a third-party library within a first software release; determining that the third-party library is not stored within a central repository comprising a plurality of approved third-party libraries; requesting a master ticket for the third-party library, wherein the master ticket is indicative of universal approval of the third-party library for incorporation within a plurality of software releases comprising the first software release; determining a score of the third-party library based on characteristics of the third-party library, wherein the score comprises a numeric value; receiving the master ticket in response to determining that the score is above a threshold score; and in response to receiving the master ticket, storing the third-party library within the central repository. 2. The tangible, non-transitory, machine-readable medium of claim 1 , wherein the machine-readable instructions, when executed by the one or more processors, cause the one or more processors to: identify a hierarchical relationship between the third-party library and one or more approved third-party libraries of the plurality of approved third-party libraries; and store an identifier indicative of the hierarchical relationship in an entry of the central repository associated with the third-party library. 3. The tangible, non-transitory, machine-readable medium of claim 1 , wherein the third-party library is contained within a set of source code, and wherein the machine-readable instructions, when executed by the one or more processors, cause the one or more processors to: identify the third-party library within the set of source code; and in response to identifying the third-party library and determining that the third-party library is not stored within the central repository, request the master ticket for the third-party library. 4. The tangible, non-transitory, machine-readable medium of claim 1 , wherein the score is determined via machine learning performed on the plurality of approved third-party libraries. 5. The tangible, non-transitory, machine-readable medium of claim 1 , wherein the machine-readable instructions, when executed by the one or more processors, cause the one or more processors to: determine that the score of the third-party library is not above the threshold score; and transmit a request for the master ticket to a manual approval system. 6. The tangible, non-transitory, machine-readable medium of claim 5 , wherein the master ticket is provided by the manual approval system in response to the manual approval system determining that the third-party library meets a threshold number of qualifications. 7. The tangible, non-transitory, machine-readable medium of claim 5 , wherein the machine-readable instructions, when executed by the one or more processors, cause the one or more processors to provide an indication of non-approval of the third-party library in response to the manual approval system determining that the third-party library does not meet a threshold number of qualifications. 8. The tangible, non-transitory, machine-readable medium of claim 1 , wherein the machine-readable instructions, when executed by the one or more processors, cause the one or more processors to: receive a second approval request to incorporate the third-party library within a second software release; determine that the third-party library is stored within the central repository; request a usage ticket for the third-party library, wherein the usage ticket is indicative of specific approval of the third-party library for incorporation within the second software release; receive the usage ticket; and in response to receiving the usage ticket, store the usage ticket in a database. 9. The tangible, non-transitory, machine-readable medium of claim 8 , wherein the machine-readable instructions, when executed by the one or more processors, cause the one or more processors to provide a report indicative of a current status of each requested master ticket and each requested usage ticket. 10. A method, comprising: receiving a first approval request to incorporate a third-party library within a particular software release; determining whether the third-party library is stored within a central repository configured to store a plurality of approved third-party libraries; in response to determining that the third-party library is not stored within the central repository, requesting a master ticket for the third-party library, wherein the master ticket is indicative of universal approval of the third-party library for incorporation within a plurality of software releases; in response to determining that the third-party library is stored within the central repository, requesting a usage ticket for the third-party library, wherein the usage ticket is indicative of specific approval of the third-party library for incorporation within the particular software release; determining a score of the third-party library based on characteristics of the third-party library, wherein the score comprises a numeric value; determining whether the score is below a threshold score; transmitting the third-party library to a manual approval system in response to determining that the score is below the threshold score; and receiving the master ticket or the usage ticket in response to determining that the score is below the threshold score. 11. The method of claim 10 , wherein the master ticket is requested, and wherein the method comprises storing the third-party library in the central repository in response to receiving the master ticket. 12. The method of claim 10 , wherein the usage ticket is requested, and wherein the method comprises providing output indicative of approval of the third-party library for incorporation within the particular software release. 13. The method of claim 10 , comprising analyzing the plurality of approved third-party libraries via machine learning to determine target characteristics of the approved third-party libraries, wherein the score is determined based on a correspondence between characteristics of the third-party library and the target characteristics. 14. The method of claim 10 , comprising: receiving feedback from the manual approval system indicating that the third-party library meets engineering qualifications, security qualifications, legal qualifications, or any combination thereof; and receiving the master ticket or the usage ticket in response to the feedback. 15. A system, comprising: a central repository comprising a plurality of approved third-party libraries; and a processor configured to perform operations comprising: receiving a first approval request to incorporate a third-party library within a first software release; determining whether the third-party library is stored within the central repository; requesting a master ticket for the third-party library in response to determining that the third-party library is not stored in the central repository; requesting a usage ticket for the third-party library in response to determining that the third-party library is stored in the central repository; analyzing the third-party library to determine a score of the third-party library; receiving the master ticket or the usage ticket in response to determining that the score

Assignees

Inventors

Classifications

  • Version control (security arrangements therefor G06F21/57); Configuration management · CPC title

  • Machine learning · CPC title

  • G06F8/36Primary

    Software reuse · CPC title

  • G06F21/105Primary

    Arrangements for software license management or administration, e.g. for managing licenses at corporate level · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US11593461B2 cover?
In accordance with the present approach, a library management system identifies third-party libraries that developers request to incorporate into a software release. The library management system may determine whether a master ticket or usage ticket for a new third-party library exists. If a master or usage ticket is not already existing and approved for the third-party library, the third-party…
Who is the assignee on this patent?
Servicenow Inc
What technology area does this patent fall under?
Primary CPC classification G06F8/36. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Feb 28 2023 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 12 related publications on this page (citations in our corpus or others sharing the same primary CPC).