Patents by Inventor Sriram K. Rajagopal

Sriram K. Rajagopal 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: 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: 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
  • Patent number: 9886247
    Abstract: An application programming interface (API) exploration data structure is used in presenting an API composite to a first entity. A query associated with a topic is received from the first entity. A portion of the data structure is accessed. The accessed portion includes nodes that represent entities, nodes that represent APIs, and edges that represent relationships between nodes. A similarity score is calculated for each entity using a comparison to the first entity. Each similarity score is then compared to a threshold. A first network including each entity that has a similarity score above the threshold is generated. An API group including each API that has a relationship with the first network is generated. The API composite is identified based on the topic. As identified, the API composite includes an API of the related API group. The API composite is presented to the first entity.
    Type: Grant
    Filed: October 30, 2014
    Date of Patent: February 6, 2018
    Assignee: International Business Machines Corporation
    Inventors: Jim A. Laredo, Sriram K. Rajagopal, Maja Vukovic
  • Patent number: 9836534
    Abstract: An embodiment of the invention is provided for use in discovering a specified API service capability. The embodiment includes generating a search statement related to the specified API service capability. The embodiment further includes constructing a data structure, wherein the data structure includes one or more characteristic nodes that are each associated with data describing a particular API characteristic, and the associated data for respective characteristic nodes is ordered in accordance with one or more API service ontologies. The search statement is used to selectively search the data structure. The embodiment determines whether the search finds a match between data included in the search statement, and particular ontological data associated with one or more of the characteristic nodes of the data structure.
    Type: Grant
    Filed: July 25, 2014
    Date of Patent: December 5, 2017
    Assignee: International Business Machines Corporation
    Inventors: Jim A. Laredo, Sriram K. Rajagopal, Maja Vukovic
  • Patent number: 9639404
    Abstract: Software that uses machine logic based algorithms to help determine and/or prioritize an application programming interface's (API) desirability to a user based on how closely the API's terms of service (ToS) meet the users' ToS preferences. The software performs the following steps: (i) receiving a set of API ToS feature information that includes identifying information for at least one API and respectively associated ToS features for each identified API; (ii) receiving ToS preference information that relates to ToS related preferences for a user; and (iii) evaluating a strength of a match between each respective API identified in the API ToS feature information set and the ToS preference information to yield a match value for each API identified in the API ToS feature information set.
    Type: Grant
    Filed: June 15, 2016
    Date of Patent: May 2, 2017
    Assignee: International Business Machines Corporation
    Inventors: Jim A. Laredo, Sriram K. Rajagopal, Maja Vukovic, John E. Wittern
  • Publication number: 20160364213
    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: Application
    Filed: August 24, 2016
    Publication date: December 15, 2016
    Inventors: Nicholas C. M. Fuller, Jim A. Laredo, Hui Lei, Sriram K. Rajagopal, Maja Vukovic, Liangzhao Zeng
  • Publication number: 20160292018
    Abstract: Software that uses machine logic based algorithms to help determine and/or prioritize an application programming interface's (API) desirability to a user based on how closely the API's terms of service (ToS) meet the users' ToS preferences. The software performs the following steps: (i) receiving a set of API ToS feature information that includes identifying information for at least one API and respectively associated ToS features for each identified API; (ii) receiving ToS preference information that relates to ToS related preferences for a user; and (iii) evaluating a strength of a match between each respective API identified in the API ToS feature information set and the ToS preference information to yield a match value for each API identified in the API ToS feature information set.
    Type: Application
    Filed: June 15, 2016
    Publication date: October 6, 2016
    Inventors: Jim A. Laredo, Sriram K. Rajagopal, Maja Vukovic, John E. Wittern
  • Patent number: 9460273
    Abstract: A processor stores information associated with one or more programming modules, including one or more license terms associated with the one or more programming modules. The processor receives an input indicating a set of programming modules selected from the one or more programming modules, based on the information which is stored. The processor compares the one or more license terms associated with the set of programming modules. In response to determining a conflict between the one or more license terms of the set of programming modules, the processor applies a set of rules to resolve the conflict between the one or more license terms of the set of programming modules, and the processor composes a composite license for the set of programming modules, based on the one or more license terms of the set of programming modules and the set of rules applied to resolve the conflict.
    Type: Grant
    Filed: October 29, 2014
    Date of Patent: October 4, 2016
    Assignee: International Business Machines Corporation
    Inventors: Nicholas C. M. Fuller, Jim A. Laredo, Hui Lei, Sriram K. Rajagopal, Maja Vukovic, Liangzhao Zeng
  • Patent number: 9454409
    Abstract: Software that uses machine logic based algorithms to help determine and/or prioritize an application programming interface's (API) desirability to a user based on how closely the API's terms of service (ToS) meet the users' ToS preferences. The software performs the following steps: (i) receiving a set of API ToS feature information that includes identifying information for at least one API and respectively associated ToS features for each identified API; (ii) receiving ToS preference information that relates to ToS related preferences for a user; and (iii) evaluating a strength of a match between each respective API identified in the API ToS feature information set and the ToS preference information to yield a match value for each API identified in the API ToS feature information set. The ToS features include at least a first ToS field. At least one API includes multiple, alternative values in its first ToS field.
    Type: Grant
    Filed: September 16, 2014
    Date of Patent: September 27, 2016
    Assignee: International Business Machines Corporation
    Inventors: Jim A. Laredo, Sriram K. Rajagopal, Maja Vukovic, John E. Wittern
  • Publication number: 20160125172
    Abstract: A processor stores information associated with one or more programming modules, including one or more license terms associated with the one or more programming modules. The processor receives an input indicating a set of programming modules selected from the one or more programming modules, based on the information which is stored. The processor compares the one or more license terms associated with the set of programming modules. In response to determining a conflict between the one or more license terms of the set of programming modules, the processor applies a set of rules to resolve the conflict between the one or more license terms of the set of programming modules, and the processor composes a composite license for the set of programming modules, based on the one or more license terms of the set of programming modules and the set of rules applied to resolve the conflict.
    Type: Application
    Filed: October 29, 2014
    Publication date: May 5, 2016
    Inventors: Nicholas C. M. Fuller, Jim A. Laredo, Hui Lei, Sriram K. Rajagopal, Maja Vukovic, Liangzhao Zeng
  • Publication number: 20160125042
    Abstract: An application programming interface (API) exploration data structure is used in presenting an API composite to a first entity. A query associated with a topic is received from the first entity. A portion of the data structure is accessed. The accessed portion includes nodes that represent entities, nodes that represent APIs, and edges that represent relationships between nodes. A similarity score is calculated for each entity using a comparison to the first entity. Each similarity score is then compared to a threshold. A first network including each entity that has a similarity score above the threshold is generated. An API group including each API that has a relationship with the first network is generated. The API composite is identified based on the topic. As identified, the API composite includes an API of the related API group. The API composite is presented to the first entity.
    Type: Application
    Filed: October 30, 2014
    Publication date: May 5, 2016
    Inventors: Jim A. Laredo, Sriram K. Rajagopal, Maja Vukovic
  • Publication number: 20160077895
    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: Application
    Filed: November 11, 2014
    Publication date: March 17, 2016
    Inventors: Jim A. Laredo, Sriram K. Rajagopal, Maja Vukovic, John E. Wittern
  • Publication number: 20160077893
    Abstract: Software that uses machine logic based algorithms to help determine and/or prioritize an application programming interface's (API) desirability to a user based on how closely the API's terms of service (ToS) meet the users' ToS preferences. The software performs the following steps: (i) receiving a set of API ToS feature information that includes identifying information for at least one API and respectively associated ToS features for each identified API; (ii) receiving ToS preference information that relates to ToS related preferences for a user; and (iii) evaluating a strength of a match between each respective API identified in the API ToS feature information set and the ToS preference information to yield a match value for each API identified in the API ToS feature information set. The ToS features include at least a first ToS field. At least one API includes multiple, alternative values in its first ToS field.
    Type: Application
    Filed: September 16, 2014
    Publication date: March 17, 2016
    Inventors: Jim A. Laredo, Sriram K. Rajagopal, Maja Vukovic, John E. Wittern
  • Publication number: 20160026710
    Abstract: An embodiment of the invention is provided for use in discovering a specified API service capability. The embodiment includes generating a search statement related to the specified API service capability. The embodiment further includes constructing a data structure, wherein the data structure includes one or more characteristic nodes that are each associated with data describing a particular API characteristic, and the associated data for respective characteristic nodes is ordered in accordance with one or more API service ontologies. The search statement is used to selectively search the data structure. The embodiment determines whether the search finds a match between data included in the search statement, and particular ontological data associated with one or more of the characteristic nodes of the data structure.
    Type: Application
    Filed: July 25, 2014
    Publication date: January 28, 2016
    Inventors: Jim A. LAREDO, Sriram K. RAJAGOPAL, Maja VUKOVIC
  • Patent number: 9009842
    Abstract: In an embodiment of the invention, wherein users must be able to access a computer system to perform respective functions, initial data is acquired from data sources, some of the initial data pertaining to previously granted system access rights. The initial data is used to create a crowdsourcing task, which is executed to acquire crowdsourced data from SMEs in an SME population, wherein the crowdsourced data comprises additional data pertaining to previously granted system access. The crowdsourced data is used to create a set of role definitions, wherein the role definitions determine which of the users are assigned to be members of a particular role associated with the system, and further determine the access rights that are granted to each member of the particular role.
    Type: Grant
    Filed: January 28, 2013
    Date of Patent: April 14, 2015
    Assignee: International Business Machines Corporation
    Inventors: Christopher J. Giblin, Milton H. Hernandez, Sriram K. Rajagopal, Maja Vukovic
  • Patent number: 9003547
    Abstract: In an embodiment of the invention, wherein users must be able to access a computer system to perform respective functions, initial data is acquired from data sources, some of the initial data pertaining to previously granted system access rights. The initial data is used to create a crowdsourcing task, which is executed to acquire crowdsourced data from SMEs in an SME population, wherein the crowdsourced data comprises additional data pertaining to previously granted system access. The crowdsourced data is used to create a set of role definitions, wherein the role definitions determine which of the users are assigned to be members of a particular role associated with the system, and further determine the access rights that are granted to each member of the particular role.
    Type: Grant
    Filed: December 11, 2012
    Date of Patent: April 7, 2015
    Assignee: International Business Machines Corporation
    Inventors: Christopher J. Giblin, Milton H. Hernandez, Sriram K. Rajagopal, Maja Vukovic
  • Publication number: 20140165154
    Abstract: In an embodiment of the invention, wherein users must be able to access a computer system to perform respective functions, initial data is acquired from data sources, some of the initial data pertaining to previously granted system access rights. The initial data is used to create a crowdsourcing task, which is executed to acquire crowdsourced data from SMEs in an SME population, wherein the crowdsourced data comprises additional data pertaining to previously granted system access. The crowdsourced data is used to create a set of role definitions, wherein the role definitions determine which of the users are assigned to be members of a particular role associated with the system, and further determine the access rights that are granted to each member of the particular role.
    Type: Application
    Filed: January 28, 2013
    Publication date: June 12, 2014
    Applicant: International Business Machines Corporation
    Inventors: Christopher J. Giblin, Milton H. Hernandez, Sriram K. Rajagopal, Maja Vukovic
  • Publication number: 20140165188
    Abstract: In an embodiment of the invention, wherein users must be able to access a computer system to perform respective functions, initial data is acquired from data sources, some of the initial data pertaining to previously granted system access rights. The initial data is used to create a crowdsourcing task, which is executed to acquire crowdsourced data from SMEs in an SME population, wherein the crowdsourced data comprises additional data pertaining to previously granted system access. The crowdsourced data is used to create a set of role definitions, wherein the role definitions determine which of the users are assigned to be members of a particular role associated with the system, and further determine the access rights that are granted to each member of the particular role.
    Type: Application
    Filed: December 11, 2012
    Publication date: June 12, 2014
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Christopher J. Giblin, Milton H. Hernandez, Sriram K. Rajagopal, Maja Vukovic
  • Publication number: 20130311220
    Abstract: A method and data processing system for determining deployment readiness of a service is disclosed. A computer identifies tasks that must be performed to address requirements associated with categories of complexity for deploying the service in one or more locations. The computer assigns the identified tasks to experts based on skill and availability of the experts. The computer verifies whether the assigned tasks have been completed. The computer then provides an indication that the service is ready to be deployed in one or more locations responsive to the verification that the tasks have been completed.
    Type: Application
    Filed: May 18, 2012
    Publication date: November 21, 2013
    Applicant: International Business Machines Corporation
    Inventors: Milton H. Hernandez, Jim A. Laredo, Sriram K. Rajagopal, Yaoping Ruan, Maja Vukovic
  • Publication number: 20130311221
    Abstract: A data processing system for determining deployment readiness of a service is disclosed. A computer identifies tasks that must be performed to address requirements associated with categories of complexity for deploying the service in one or more locations. The computer assigns the identified tasks to experts based on skill and availability of the experts. The computer verifies whether the assigned tasks have been completed. The computer then provides an indication that the service is ready to be deployed in one or more locations responsive to the verification that the tasks have been completed.
    Type: Application
    Filed: July 9, 2012
    Publication date: November 21, 2013
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Milton H. Hernandez, Jim A. Laredo, Sriram K. Rajagopal, Yaoping Ruan, Maja Vukovic