Patents by Inventor Jim A. Laredo

Jim A. Laredo has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 11663110
    Abstract: A debugging tool and method for statically verifying programs that invoke web-based services through API calls is provided. The tool receives source code that comprises one or more invocation of web APIs for requesting web-based services. The tool also receives a set of web API specifications. The tool extracts a set of request information for each web API invocation in the source code, the set of request information including a usage string of an URL endpoint. The tool verifies whether the set of request information complies with the received web API specifications and reports a result of the verification.
    Type: Grant
    Filed: October 31, 2016
    Date of Patent: May 30, 2023
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Julian T. Dolby, Jim A. Laredo, John E. Wittern, Annie T. T. Ying, Yunhui Zheng
  • Patent number: 11256693
    Abstract: Aspects of the invention include assessing, by a management layer executing on a first processor, a query from a client application requesting data from a server. The assessing occurs prior to the query being executed by a provider. The assessing includes extracting, by the management layer, characteristics of the query. The management layer compares the extracted query characteristics with a policy defined by the provider. Based at least in part on results of the comparing, it is determined by the management layer whether the query is permitted to be executed by the provider at the server. The management layer initiates execution of the query at the server in response to determining that the query is permitted to be executed. The management layer prevents execution of the query at the server in response to determining that the query is not permitted to be executed.
    Type: Grant
    Filed: September 21, 2018
    Date of Patent: February 22, 2022
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: John E. Wittern, Jim A. Laredo
  • Patent number: 11113029
    Abstract: A method and system of matching an application program interface (API) code usage with an API specification are provided. A program having an API code usage is received and its features are extracted therefrom. Features from meta data of a plurality of API specifications are extracted. For each API specification of the plurality of API specifications, a match probability with the API code usage is determined. An API specification having a highest probability is determined. The API code usage is matched with the API specification having the highest probability.
    Type: Grant
    Filed: April 10, 2019
    Date of Patent: September 7, 2021
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Annie T. Ying, Christopher Charles Young, John Erik Wittern, Yunhui Zheng, Jim Laredo, Aleksander Slominski
  • Patent number: 11102196
    Abstract: A computer-implemented method and system for authenticating API is provided. An API invocation request associated with a user is received. An API operation and the shareable API key includes validating API key credentials of the shareable API key associated with the API invocation request. There is an additional validation of user credentials of the user associated with the API invocation request. It is determined whether the user having the validated user credentials is authorized to use the shareable API key to invoke the API operation. The API operation is executed in response to determining the user having validated user credentials is authorized to use the shareable API key to invoke the API operation. The authentication integrates validation of the user and the shareable API key, and determines whether a user is a subscriber of a multi-tenant subscription service.
    Type: Grant
    Filed: April 6, 2019
    Date of Patent: August 24, 2021
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Rong Chang, Maoyuan Qu, Yew-Huey Liu, Jim Laredo, Robert Calhoun
  • Patent number: 11074158
    Abstract: A computer implemented method for testing an application according to usage data includes receiving an application to be tested and a set of usage data corresponding to the application to be tested, wherein the set of usage data corresponds to previously executed code sequences, identifying one or more code sequences of interest corresponding to the received application, wherein the code sequences of interest correspond to codes sequences that are configured to exercise the received application, extracting concrete usages of the code sequence of interest from the received set of usage data, generating one or more test cases for the application according to the extracted usages, and providing the one or more generated test cases. The method may additionally include testing the application according to the one or more generated test cases.
    Type: Grant
    Filed: December 1, 2017
    Date of Patent: July 27, 2021
    Assignee: International Business Machines Corporation
    Inventors: Jim A. Laredo, Aleksander Slominski, John E. Wittern, Annie T. Ying, Christopher C. Young, Yunhui Zheng
  • Patent number: 11048505
    Abstract: Techniques for autonomously generating a code usage summary associated with a web application programming interface request are provided. In one example, a computer-implemented method can comprise evaluating, by a system operatively coupled to a processor, data from a data repository, wherein the evaluating is based on a defined machine learning process. Also, the computer-implemented method can comprise generating, by the system, a usage summary of the data, wherein the usage summary is based on a statistic derived from a web application programming interface request, and the web application programming interface request is associated with the data.
    Type: Grant
    Filed: December 18, 2019
    Date of Patent: June 29, 2021
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Jim Laredo, Aleksander Slominski, John Erik Wittern, Annie Tsui Tsui Ying, Christopher Charles Young, Yunhui Zheng
  • Publication number: 20200326913
    Abstract: A method and system of matching an application program interface (API) code usage with an API specification are provided. A program having an API code usage is received and its features are extracted therefrom. Features from meta data of a plurality of API specifications are extracted. For each API specification of the plurality of API specifications, a match probability with the API code usage is determined. An API specification having a highest probability is determined. The API code usage is matched with the API specification having the highest probability.
    Type: Application
    Filed: April 10, 2019
    Publication date: October 15, 2020
    Inventors: Annie T. Ying, Christopher Charles Young, John Erik Wittern, Yunhui Zheng, Jim Laredo, Aleksander Slominski
  • Publication number: 20200322324
    Abstract: A computer-implemented method and system for authenticating API is provided. An API invocation request associated with a user is received. An API operation and the shareable API key includes validating API key credentials of the shareable API key associated with the API invocation request. There is an additional validation of user credentials of the user associated with the API invocation request. It is determined whether the user having the validated user credentials is authorized to use the shareable API key to invoke the API operation. The API operation is executed in response to determining the user having validated user credentials is authorized to use the shareable API key to invoke the API operation. The authentication integrates validation of the user and the shareable API key, and determines whether a user is a subscriber of a multi-tenant subscription service.
    Type: Application
    Filed: April 6, 2019
    Publication date: October 8, 2020
    Inventors: Rong Chang, Maoyuan Qu, Yew-Huey Liu, Jim Laredo, Robert Calhoun
  • Publication number: 20200125362
    Abstract: Techniques for autonomously generating a code usage summary associated with a web application programming interface request are provided. In one example, a computer-implemented method can comprise evaluating, by a system operatively coupled to a processor, data from a data repository, wherein the evaluating is based on a defined machine learning process. Also, the computer-implemented method can comprise generating, by the system, a usage summary of the data, wherein the usage summary is based on a statistic derived from a web application programming interface request, and the web application programming interface request is associated with the data.
    Type: Application
    Filed: December 18, 2019
    Publication date: April 23, 2020
    Inventors: Jim Laredo, Aleksander Slominski, John Erik Wittern, Annie Tsui Tsui Ying, Christopher Charles Young, Yunhui Zheng
  • Patent number: 10620949
    Abstract: Techniques for autonomously generating a code usage summary associated with a web application programming interface request are provided. In one example, a computer-implemented method can comprise evaluating, by a system operatively coupled to a processor, data from a data repository, wherein the evaluating is based on a defined machine learning process. Also, the computer-implemented method can comprise generating, by the system, a usage summary of the data, wherein the usage summary is based on a statistic derived from a web application programming interface request, and the web application programming interface request is associated with the data.
    Type: Grant
    Filed: December 14, 2017
    Date of Patent: April 14, 2020
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Jim Laredo, Aleksander Slominski, John Erik Wittern, Annie Tsui Tsui Ying, Christopher Charles Young, Yunhui Zheng
  • Publication number: 20200097559
    Abstract: Aspects of the invention include assessing, by a management layer executing on a first processor, a query from a client application requesting data from a server. The assessing occurs prior to the query being executed by a provider. The assessing includes extracting, by the management layer, characteristics of the query. The management layer compares the extracted query characteristics with a policy defined by the provider. Based at least in part on results of the comparing, it is determined by the management layer whether the query is permitted to be executed by the provider at the server. The management layer initiates execution of the query at the server in response to determining that the query is permitted to be executed. The management layer prevents execution of the query at the server in response to determining that the query is not permitted to be executed.
    Type: Application
    Filed: September 21, 2018
    Publication date: March 26, 2020
    Inventors: John E. Wittern, Jim A. Laredo
  • Patent number: 10558459
    Abstract: Techniques for autonomously generating a code usage summary associated with a web application programming interface request are provided. In one example, a computer-implemented method can comprise evaluating, by a system operatively coupled to a processor, data from a data repository, wherein the evaluating is based on a defined machine learning process. Also, the computer-implemented method can comprise generating, by the system, a usage summary of the data, wherein the usage summary is based on a statistic derived from a web application programming interface request, and the web application programming interface request is associated with the data.
    Type: Grant
    Filed: May 12, 2017
    Date of Patent: February 11, 2020
    Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Jim Laredo, Aleksander Slominski, John Erik Wittern, Annie Tsui Tsui Ying, Christopher Charles Young, Yunhui Zheng
  • Patent number: 10528965
    Abstract: Bundling application programming interfaces is provided. Related application programming interfaces within a set of application programming interfaces and their corresponding dependent application programming interfaces are combined with related composite application programming interfaces within a set of composite application programming interfaces and their corresponding dependent application programming interfaces to generate a set of application programming interface bundles. The computer prunes the set of application programming interface bundles based on a determined application programming interface budget pattern that corresponds to a selected cluster of application programming interface consumers. The computer prices the pruned set of application programming interface bundles based on an application programming interface bundle pricing model.
    Type: Grant
    Filed: March 6, 2014
    Date of Patent: January 7, 2020
    Assignee: International Business Machines Corporation
    Inventors: Jim A. Laredo, Arjun Natarajan, Maja Vukovic
  • Publication number: 20190171551
    Abstract: A computer implemented method for testing an application according to usage data includes receiving an application to be tested and a set of usage data corresponding to the application to be tested, wherein the set of usage data corresponds to previously executed code sequences, identifying one or more code sequences of interest corresponding to the received application, wherein the code sequences of interest correspond to codes sequences that are configured to exercise the received application, extracting concrete usages of the code sequence of interest from the received set of usage data, generating one or more test cases for the application according to the extracted usages, and providing the one or more generated test cases. The method may additionally include testing the application according to the one or more generated test cases.
    Type: Application
    Filed: December 1, 2017
    Publication date: June 6, 2019
    Inventors: Jim A. Laredo, Aleksander Slominski, John E. Wittern, Annie T. Ying, Christopher C. Young, Yunhui Zheng
  • Patent number: 10216486
    Abstract: One or more processors receive information regarding a program module that includes a description of a function, license terms, and non-functional properties of the program module. The license terms, the description of function, and the non-functional properties of the program module are identified, based on an analysis of the information. An object of interest of each license term of the license terms is determined, such that the object of interest is directed to a condition influencing license term compliance. Rules corresponding to compliance of the one or more license terms of the program module are determined, and the analyzed information of the program module is stored in a meta-model format organized into categories including the description of function, the one or more license terms, and the non-functional properties of the program module, utilizing standardized syntax and semantics.
    Type: Grant
    Filed: August 24, 2016
    Date of Patent: February 26, 2019
    Assignee: International Business Machines Corporation
    Inventors: Nicholas C. M. Fuller, Jim A. Laredo, Hui Lei, Sriram K. Rajagopal, Maja Vukovic, Liangzhao Zeng
  • Patent number: 10210558
    Abstract: Offline functionality-based co-ranking and clustering is carried out on a knowledge base that characterizes a heterogeneous information technology services network including a plurality of services, a plurality of providers, and a plurality of attributes. Results of the functionality-based co-ranking and clustering are stored as annotations of the services and the providers in the knowledge base, to obtain an annotated knowledge base. A service requirement is obtained from a customer requiring information technology services. The annotated knowledge base is queried, based on the service requirement; and an ordered list of at least given ones of the services, based on the querying, is returned to the customer.
    Type: Grant
    Filed: February 17, 2017
    Date of Patent: February 19, 2019
    Assignee: International Business Machines Corporation
    Inventors: Rahul P. Akolkar, Thomas E. Chefalas, Yexi Jiang, Jim A. Laredo, Chang-Shing Perng, Anca Sailer, Frank A. Schaffa, Alla Segal, Ignacio Silva-Lepe, Tao Tao, Yang Zhou
  • Patent number: 10140638
    Abstract: A method for providing a cloud-based service includes receiving information from a customer of the service over a conversational interface, the information identifying a requirement of the customer related to a resiliency of the service, and identifying a service provider who provides the service in a manner that satisfies the requirement. A method for building a knowledge base of cloud-based service providers includes receiving information from a service provider, the information specifying at least one resiliency attribute of the service provider, matching the information to a standardized service descriptor, wherein the service descriptor is indexed within an ontology-based organizational framework that indexes a plurality of service descriptors, and storing the service descriptor for the service provider.
    Type: Grant
    Filed: December 6, 2012
    Date of Patent: November 27, 2018
    Assignee: International Business Machines Corporation
    Inventors: Rahul P. Akolkar, Thomas E. Chefalas, Jim A. Laredo, Chang-Shing Perng, Anca Sailer, Frank A. Schaffa, Alla Segal, Ignacio Silva-Lepe, Tao Tao
  • Publication number: 20180329704
    Abstract: Techniques for autonomously generating a code usage summary associated with a web application programming interface request are provided. In one example, a computer-implemented method can comprise evaluating, by a system operatively coupled to a processor, data from a data repository, wherein the evaluating is based on a defined machine learning process. Also, the computer-implemented method can comprise generating, by the system, a usage summary of the data, wherein the usage summary is based on a statistic derived from a web application programming interface request, and the web application programming interface request is associated with the data.
    Type: Application
    Filed: May 12, 2017
    Publication date: November 15, 2018
    Inventors: Jim Laredo, Aleksander Slominski, John Erik Wittern, Annie Tsui Tsui Ying, Christopher Charles Young, Yunhui Zheng
  • Publication number: 20180329705
    Abstract: Techniques for autonomously generating a code usage summary associated with a web application programming interface request are provided. In one example, a computer-implemented method can comprise evaluating, by a system operatively coupled to a processor, data from a data repository, wherein the evaluating is based on a defined machine learning process. Also, the computer-implemented method can comprise generating, by the system, a usage summary of the data, wherein the usage summary is based on a statistic derived from a web application programming interface request, and the web application programming interface request is associated with the data.
    Type: Application
    Filed: December 14, 2017
    Publication date: November 15, 2018
    Inventors: Jim Laredo, Aleksander Slominski, John Erik Wittern, Annie Tsui Tsui Ying, Christopher Charles Young, Yunhui Zheng
  • Patent number: 9965337
    Abstract: Software that utilizes machine logic-based algorithms to combine the Terms of Service (ToS) portions of multiple Application Programming Interfaces (APIs) by performing the following steps: (i) providing a first ToS portion of a first API, with the first ToS portion including a first ToS feature value for a first ToS feature; (ii) providing a second ToS portion of a second API, with the second ToS portion including a second ToS feature value for the first ToS feature; and (iii) merging, at least, the first ToS portion and the second ToS portion, according to a set of ToS merger rule(s) applied by machine logic, to generate a merged ToS. One merger rule combines at least the first ToS feature value and the second ToS feature value according to a set of operator(s) to generate a first merged ToS feature value included as the first ToS feature in the merged ToS.
    Type: Grant
    Filed: November 11, 2014
    Date of Patent: May 8, 2018
    Assignee: International Business Machines Corporation
    Inventors: Jim A. Laredo, Sriram K. Rajagopal, Maja Vukovic, John E. Wittern