Patents by Inventor Samir A. NASSER
Samir A. NASSER 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: 11240286Abstract: In filtering requests to be forwarded to a runtime environment, a filtering apparatus intercepts a new runtime request for the runtime environment and determines execution paths that may be traversed by the runtime request when executed in the runtime environment. The filtering apparatus assigns a probability of traversal by the runtime request to each of the execution paths and identifies at least one given execution path that reference a stressed resource of the runtime environment. Based on the probabilities assigned to the at least one given execution path, the filtering apparatus determines whether or not to block the runtime request from being sent to the runtime environment. If the probability assigned to the at least one given execution path exceeds a configured threshold, the runtime request is blocked from being sent to the runtime environment. Otherwise, the runtime request is sent to the runtime environment.Type: GrantFiled: June 29, 2015Date of Patent: February 1, 2022Assignee: International Business Machines CorporationInventors: Kyle G. Brown, Samir A. Nasser
-
Patent number: 10334013Abstract: Disclosed herein is a method for predicting and avoiding request failures. The method includes receiving a request for access to at least one web service and analyzing the request to identify at least one probabilistic resource tree for handling the request. The method further includes detecting a problem preventing a usage of a resource in the at least one probabilistic resource tree. The problem causes the request to fail upon implementation of the request. Furthermore, the method includes performing an action to avoid the implementation of the request.Type: GrantFiled: November 24, 2015Date of Patent: June 25, 2019Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Kyle G. Brown, Samir A. Nasser
-
Patent number: 10310964Abstract: A method and computer system for compiling, by a computing device, a list of hosting software classes included in the hosting software fix pack when a fix is available. An execution path of each application hosted on a hosting software may be recorded. The execution path may be stored in a data store for each application. It may be determined which operations of each application interact with the hosting software. The operations of each application used at runtime that interact with the hosting software may be stored, including storing invoked hosting software operations and classes used by the operations of each application. The invoked hosting software operations and classes may be compared with corresponding operations and classes provided in the list included in the hosting software fix pack. A list of each intersection of the comparison for each application impacted by the hosting software fix pack may be generated.Type: GrantFiled: July 18, 2017Date of Patent: June 4, 2019Assignee: International Business Machines CorporationInventors: Kulvir S. Bhogal, Samir A. Nasser
-
Patent number: 10218637Abstract: The present invention is a system and method for forecasting and expanding software workload boundaries. The system includes a computer processor having a non-transitory memory containing program code for receiving a resource tree data set identifying a plurality of resources in a resource tree; receiving a sequence information set indicative of an order of resources for a request type; receiving a historical usage information set indicative of actual resource usage for the request type with respect resources in the resource tree; receiving a current throughput value for the request type; and determining, based at least in part upon the resource data tree set, the sequence information set and the current throughput values, a first additional potential throughput value corresponding to additional throughput with respect to the request type that can be performed by the resource tree in addition to its current throughput.Type: GrantFiled: November 3, 2016Date of Patent: February 26, 2019Assignee: International Business Machines CorporationInventor: Samir A. Nasser
-
Patent number: 10210020Abstract: A computer-implemented method includes receiving a plurality of requests. Resource utilization is determined for two or more resources in an execution environment. An at-risk resource is identified, from among the two or more resources, with highest utilization among the two or more resources. The method further includes determining, by a computer processor, a subset of requests to be approved that are estimated to have lowest impact on the at-risk resource, based at least in part on historical resource utilization applicable to one or more request types of the plurality of requests. The subset of requests is approved for processing by the execution environment, where the subset of requests excludes one or more unapproved requests. The one or more unapproved requests are held in a waiting queue in lieu of processing the one or more unapproved requests, responsive to the one or more unapproved requests not being approved.Type: GrantFiled: June 29, 2016Date of Patent: February 19, 2019Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventor: Samir A. Nasser
-
Publication number: 20180123973Abstract: The present invention is a system and method for forecasting and expanding software workload boundaries. The system includes a computer processor having a non-transitory memory containing program code for receiving a resource tree data set identifying a plurality of resources in a resource tree; receiving a sequence information set indicative of an order of resources for a request type; receiving a historical usage information set indicative of actual resource usage for the request type with respect resources in the resource tree; receiving a current throughput value for the request type; and determining, based at least in part upon the resource data tree set, the sequence information set and the current throughput values, a first additional potential throughput value corresponding to additional throughput with respect to the request type that can be performed by the resource tree in addition to its current throughput.Type: ApplicationFiled: November 3, 2016Publication date: May 3, 2018Inventor: Samir A. Nasser
-
Publication number: 20180004569Abstract: A computer-implemented method includes receiving a plurality of requests. Resource utilization is determined for two or more resources in an execution environment. An at-risk resource is identified, from among the two or more resources, with highest utilization among the two or more resources. The method further includes determining, by a computer processor, a subset of requests to be approved that are estimated to have lowest impact on the at-risk resource, based at least in part on historical resource utilization applicable to one or more request types of the plurality of requests. The subset of requests is approved for processing by the execution environment, where the subset of requests excludes one or more unapproved requests. The one or more unapproved requests are held in a waiting queue in lieu of processing the one or more unapproved requests, responsive to the one or more unapproved requests not being approved.Type: ApplicationFiled: June 29, 2016Publication date: January 4, 2018Inventor: Samir A. Nasser
-
Publication number: 20170344458Abstract: A method, computer program product, and computer system for compiling, by a computing device, a list of hosting software classes included in the hosting software fix pack when a fix is available. An execution path of each application hosted on a hosting software may be recorded. The execution path may be stored in a data store for each application. It may be determined which operations of each application interact with the hosting software. The operations of each application used at runtime that interact with the hosting software may be stored, including storing invoked hosting software operations and classes used by the operations of each application. The invoked hosting software operations and classes used by the operations of each application may be compared with corresponding operations and classes provided in the list included in the hosting software fix pack. A list of each intersection of the comparison for each application impacted by the hosting software fix pack may be generated.Type: ApplicationFiled: July 18, 2017Publication date: November 30, 2017Inventors: Kulvir S. Bhogal, Samir A. Nasser
-
Patent number: 9800476Abstract: In service level agreement enforcement, a segmentation module intercepts a request for a current runtime environment, extracts request data from the request, and passes request data to a risk assessment component. The risk assessment component finds a request history profile matching the request data, determines a request impact on runtime environment resources from the request history profile, and obtains the current state of the current runtime environment. The risk assessment module determines the risk to the service level agreement associated with the request or any other request currently executing if the request is serviced in the current runtime environment, based on the request impact and the current state of the current runtime environment, and outputs the risk assessment to the segmentation module. When the risk assessment indicates a risk, the segmentation module passes the request to an isolated runtime environment. Otherwise, the request is passed to the current runtime environment.Type: GrantFiled: February 9, 2015Date of Patent: October 24, 2017Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Peter C. Bahrs, Kyle G. Brown, Samir A. Nasser
-
Patent number: 9772926Abstract: A method and computer system for compiling, by a computing device, a list of hosting software classes included in the hosting software fix pack when a fix is available. An execution path of each application hosted on a hosting software may be recorded. The execution path may be stored in a data store for each application. It may be determined which operations of each application interact with the hosting software. The operations of each application used at runtime that interact with the hosting software may be stored, including storing invoked hosting software operations and classes used by the operations of each application. The invoked hosting software operations and classes may be compared with corresponding operations and classes provided in the list included in the hosting software fix pack. A list of each intersection of the comparison for each application impacted by the hosting software fix pack may be generated.Type: GrantFiled: August 20, 2015Date of Patent: September 26, 2017Assignee: International Business Machines CorporationInventors: Kulvir S. Bhogal, Samir A. Nasser
-
Publication number: 20170147407Abstract: A method of predicting resource bottlenecks for an information technology system processing mixed workloads includes determining, through a processor, a probability that one or more of a plurality of requests will access one of a plurality of resources, determining, through the processor, a performance metric of the one of the plurality of requests, identifying, through the processor, a potential hot spot based on the performance metric, calculating, through the processor, a probability that each of the plurality of requests will concurrently execute on the one of the plurality of resources, and providing, through the processor, an alert predicting that a bottleneck could occur at the one of the plurality of resources.Type: ApplicationFiled: November 24, 2015Publication date: May 25, 2017Inventor: Samir A. Nasser
-
Publication number: 20170149631Abstract: Disclosed herein is a method for predicting and avoiding request failures. The method includes receiving a request for access to at least one web service and analyzing the request to identify at least one probabilistic resource tree for handling the request. The method further includes detecting a problem preventing a usage of a resource in the at least one probabilistic resource tree. The problem causes the request to fail upon implementation of the request. Furthermore, the method includes performing an action to avoid the implementation of the request.Type: ApplicationFiled: November 24, 2015Publication date: May 25, 2017Inventors: Kyle G. Brown, SAMIR A. NASSER
-
Publication number: 20170052875Abstract: A method, computer program product, and computer system for compiling, by a computing device, a list of hosting software classes included in the hosting software fix pack when a fix is available. An execution path of each application hosted on a hosting software may be recorded. The execution path may be stored in a data store for each application. It may be determined which operations of each application interact with the hosting software. The operations of each application used at runtime that interact with the hosting software may be stored, including storing invoked hosting software operations and classes used by the operations of each application. The invoked hosting software operations and classes used by the operations of each application may be compared with corresponding operations and classes provided in the list included in the hosting software fix pack. A list of each intersection of the comparison for each application impacted by the hosting software fix pack may be generated.Type: ApplicationFiled: August 20, 2015Publication date: February 23, 2017Inventors: KULVIR S. BHOGAL, Samir A. Nasser
-
Publication number: 20160379130Abstract: In filtering requests to be forwarded to a runtime environment, a filtering apparatus intercepts a new runtime request for the runtime environment and determines execution paths that may be traversed by the runtime request when executed in the runtime environment. The filtering apparatus assigns a probability of traversal by the runtime request to each of the execution paths and identifies at least one given execution path that reference a stressed resource of the runtime environment. Based on the probabilities assigned to the at least one given execution path, the filtering apparatus determines whether or not to block the runtime request from being sent to the runtime environment. If the probability assigned to the at least one given execution path exceeds a configured threshold, the runtime request is blocked from being sent to the runtime environment. Otherwise, the runtime request is sent to the runtime environment.Type: ApplicationFiled: June 29, 2015Publication date: December 29, 2016Inventors: Kyle G. BROWN, Samir A. NASSER
-
Publication number: 20160232193Abstract: In service level agreement enforcement, a segmentation module intercepts a request for a current runtime environment, extracts request data from the request, and passes request data to a risk assessment component. The risk assessment component finds a request history profile matching the request data, determines a request impact on runtime environment resources from the request history profile, and obtains the current state of the current runtime environment. The risk assessment module determines the risk to the service level agreement associated with the request or any other request currently executing if the request is serviced in the current runtime environment, based on the request impact and the current state of the current runtime environment, and outputs the risk assessment to the segmentation module. When the risk assessment indicates a risk, the segmentation module passes the request to an isolated runtime environment. Otherwise, the request is passed to the current runtime environment.Type: ApplicationFiled: February 9, 2015Publication date: August 11, 2016Inventors: Peter C. BAHRS, Kyle G. BROWN, Samir A. NASSER