US2023153401A1PendingUtilityA1

Systems and methods for third-party library management

Assignee: SERVICENOW INCPriority: Mar 11, 2019Filed: Jan 18, 2023Published: May 18, 2023
Est. expiryMar 11, 2039(~12.6 yrs left)· nominal 20-yr term from priority
G06F 8/71G06F 8/36G06N 20/00G06F 21/105
54
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

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.

Claims

exact text as granted — not AI-modified
1 . A system comprising a processor and a memory, the memory storing instructions that, when executed by the processor, cause the processor to perform operations comprising:
 receiving a first approval request to incorporate a third-party library within a first software release;   locating the third-party library at a particular location within a set of source code;   determining that the third-party library at the particular location is not approved;   in response to determining that the third-party library at the particular location is not approved, 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 including the first software release; and   receiving the master ticket.   
     
     
         2 . The system of  claim 1 , wherein the operations comprise storing the third-party library within a central repository in response to receiving the master ticket, wherein the central repository comprises a plurality of approved third-party libraries. 
     
     
         3 . The system of  claim 2 , wherein the operations comprise requesting the master ticket in response to determining that the third-party library is not stored within the central repository. 
     
     
         4 . The system of  claim 2 , wherein the operations comprise:
 identifying 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   storing an identifier indicative of the hierarchical relationship in an entry of the central repository associated with the third-party library.   
     
     
         5 . The system of  claim 2 , wherein the operations comprise:
 determining a score of the third-party library based on at least one of:
 a correspondence between characteristics of the third-party library and one or more approved third-party libraries of the plurality of approved third-party libraries; 
 a hierarchical relationship between the third-party library and the one or more approved third-party libraries; and 
 committer information associated with the first approval request; and 
   receiving the master ticket in response to determining that the score is above a threshold score.   
     
     
         6 . The system of  claim 5 , wherein the score is determined via machine learning performed on the plurality of approved third-party libraries. 
     
     
         7 . The system of  claim 1 , wherein the operations comprise transmitting a request for the master ticket to a manual approval system configured to determine whether the third-party library meets a threshold number of qualifications. 
     
     
         8 . The system of  claim 7 , wherein the operations comprise:
 receiving the master ticket in response to the manual approval system determining that the third-party library meets the threshold number of qualifications.   
     
     
         9 . The system of  claim 1 , wherein the operations comprise:
 receiving a second approval request to incorporate the third-party library within a second software release;   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 second software release;   receiving the usage ticket; and   in response to receiving the usage ticket, storing the usage ticket in a database.   
     
     
         10 . The system of  claim 1 , wherein the operations comprise providing a report indicative of a current status of each requested master ticket and each requested usage ticket. 
     
     
         11 . A method comprising:
 receiving a first approval request to incorporate a third-party library within a particular software release;   locating the third-party library at a particular location within a set of source code;   determining that the third-party library at the particular location is not approved;   in response to determining that the third-party library at the particular location is not approved, 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 including the particular software release; and   receiving the master ticket.   
     
     
         12 . The method of  claim 11 , comprising:
 determining whether the third-party library is stored within a central repository configured to store a plurality of approved third-party libraries, wherein the master ticket is requested in response to determining that the third-party library is not stored within the central repository.   
     
     
         13 . The method of  claim 12 , comprising requesting a usage ticket for the third-party library in response to determining that the third-party library is stored within the central repository, wherein the usage ticket is indicative of specific approval of the third-party library for incorporation within the particular software release. 
     
     
         14 . The method of  claim 12 , comprising storing the third-party library in the central repository in response to receiving the master ticket. 
     
     
         15 . The method of  claim 12 , comprising:
 determining a score of the third-party library based on characteristics of the third-party library, wherein the score comprises a numeric value; and   transmitting the third-party library to a manual approval system in response to determining that the score is below a threshold score.   
     
     
         16 . The method of  claim 15 , 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. 
     
     
         17 . The method of  claim 15 , 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, wherein the master ticket is received in response to the feedback.   
     
     
         18 . A non-transitory, computer readable medium storing instructions that, when executed by a processor, cause the processor to perform operations comprising:
 receiving a first approval request to incorporate a third-party library within a particular software release;   scanning a set of source code to locate the third-party library at a particular location within the set of source code;   determining whether the third-party library at the particular location is approved;   requesting a usage ticket for the third-party library in response to determining that the third-party library at the particular location is not approved, wherein the usage ticket is indicative of specific approval of the third-party library for incorporation within the particular software release; and   receiving the usage ticket.   
     
     
         19 . The computer readable medium of  claim 18 , wherein determining whether the third-party library at the particular location is approved comprises determining whether the third-party library is stored within a central repository comprising a plurality of approved third-party libraries. 
     
     
         20 . The computer readable medium of  claim 18 , wherein the operations comprise:
 storing the usage ticket in a ticket database in response to receiving the usage ticket; and   querying the ticket database to generate a report indicative of a status of the third-party library.

Join the waitlist — get patent alerts

Track US2023153401A1 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.