Patents by Inventor Sandro Piccinini
Sandro Piccinini 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: 10268720Abstract: A method for upgrading a database schema in real time, wherein the database schema is associated with a plurality of databases is provided. The method may include installing a first plugin on a database upgrade process associated with a database. The method may include installing a second plugin on each database instance within the plurality of databases. The method may include determining a delta associated with a final target version of the database schema. Additionally, the method may include outlining an existence of an incongruence, an existence of an override or an existence of a customization removal based on the determined delta. The method may include performing a peer-to-peer broadcasting analysis between each database. The method may include defining a migration strategy for each database instance within the plurality of databases based on the peer-to-peer broadcasting analysis. The method may further include creating a script for upgrading the database schema.Type: GrantFiled: March 16, 2018Date of Patent: April 23, 2019Assignee: International Business Machines CorporationInventors: Eliana Cerasaro, Arcangelo Di Balsamo, Franco Mossotto, Sandro Piccinini
-
Publication number: 20190079595Abstract: A method for switching interface device input between computing devices can begin with connecting a primary computing device to a secondary computing device using a physical connector cable using the appropriate communications port of each computing device. An interface input control program can be configured to establish a unique interface trigger that defines a user-selected series of inputs that switches the primary computing device between a first input state and a second input state. Input from the interface input devices of the primary computing device can be interpreted by a device driver. In the first input state, the input can be directed to the operating system of the primary computing device. In the second input state, the input can be redirected to the secondary computing device via the physical connector cable, which can be recognized as having originated from local interface input devices.Type: ApplicationFiled: November 14, 2018Publication date: March 14, 2019Inventors: Fabio De Angelis, Nicola Milanese, Sandro Piccinini, Sergio Tarchi
-
Patent number: 10133361Abstract: A method for switching interface device input between computing devices can begin with connecting a primary computing device to a secondary computing device using a physical connector cable using the appropriate communications port of each computing device. An interface input control program can be configured to establish a unique interface trigger that defines a user-selected series of inputs that switches the primary computing device between a first input state and a second input state. Input from the interface input devices of the primary computing device can be interpreted by a device driver. In the first input state, the input can be directed to the operating system of the primary computing device. In the second input state, the input can be redirected to the secondary computing device via the physical connector cable, which can be recognized as having originated from local interface input devices.Type: GrantFiled: June 6, 2011Date of Patent: November 20, 2018Assignee: International Business Machines CorporationInventors: Fabio De Angelis, Nicola Milanese, Sandro Piccinini, Sergio Tarchi
-
Patent number: 10114722Abstract: Testing execution of workloads in a computing system is provided. The testing includes: providing a definition of one or more workloads for each one of a plurality of users of the computing system, mapping each production computing machine of each test workload on a staging computing machine of a staging environment common to the users, mirroring the production computing machine, executing each work unit of each test workload on the corresponding staging computing machine, and determining a test result of an execution of each test workload according to an execution result of one or more executions of the work units of the test workload.Type: GrantFiled: August 24, 2015Date of Patent: October 30, 2018Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Arcangelo Di Balsamo, Ziantoni Francesca, Ilaria Gorga, Sandro Piccinini
-
Patent number: 10055205Abstract: Assisting a user in developing a software program. A program code of the software program being under development is monitored to identify each code portion of the program code matching a matched one of a plurality of code patterns. A search request is submitted for searching, among a plurality of available services provided by corresponding service providers for the code patterns, each eligible service for the matched code pattern. An indication of at least one eligible service being found is received when a result of the search is positive, prompting the user to select a replacement service among the at least one eligible service in response to the positive result of the search. The code portion is replaced with an invocation of the replacement service on the corresponding service provider.Type: GrantFiled: October 7, 2015Date of Patent: August 21, 2018Assignee: International Business Machines CorporationInventors: Arcangelo Di Balsamo, Marco Morucci, Sandro Piccinini
-
Patent number: 10042633Abstract: Maintaining a plurality of software instances of a software program in a computing environment. An updating request is received for an updating process of the software instances from an old level to a new level. An attempt is made to update each software instance to the new level according to at least one updating policy. Responsive to a failure of the updating of each failed instance of the software instances, an exchanging instance is searched among the other software instances according to at least one searching policy, the exchanging instance being adapted to be exchanged with the failed instance for continuing the updating process according to at least one optimization criterion of the computing environment. The failed instance and the exchanging instance are exchanged in response to a positive result of the searching. The updating process corresponding to the failed instance is resumed.Type: GrantFiled: October 11, 2017Date of Patent: August 7, 2018Assignee: International Business Machines CorporationInventors: Fabio Barillari, Ilaria Gorga, Sandro Piccinini
-
Patent number: 10042632Abstract: Maintaining a plurality of software instances of a software program in a computing environment. An updating request is received for an updating process of the software instances from an old level to a new level. An attempt is made to update each software instance to the new level according to at least one updating policy. Responsive to a failure of the updating of each failed instance of the software instances, an exchanging instance is searched among the other software instances according to at least one searching policy, the exchanging instance being adapted to be exchanged with the failed instance for continuing the updating process according to at least one optimization criterion of the computing environment. The failed instance and the exchanging instance are exchanged in response to a positive result of the searching. The updating process corresponding to the failed instance is resumed.Type: GrantFiled: October 11, 2017Date of Patent: August 7, 2018Assignee: International Business Machines CorporationInventors: Fabio Barillari, Ilaria Gorga, Sandro Piccinini
-
Publication number: 20180203894Abstract: A method for upgrading a database schema in real time, wherein the database schema is associated with a plurality of databases is provided. The method may include installing a first plugin on a database upgrade process associated with a database. The method may include installing a second plugin on each database instance within the plurality of databases. The method may include determining a delta associated with a final target version of the database schema. Additionally, the method may include outlining an existence of an incongruence, an existence of an override or an existence of a customization removal based on the determined delta. The method may include performing a peer-to-peer broadcasting analysis between each database. The method may include defining a migration strategy for each database instance within the plurality of databases based on the peer-to-peer broadcasting analysis. The method may further include creating a script for upgrading the database schema.Type: ApplicationFiled: March 16, 2018Publication date: July 19, 2018Inventors: Eliana Cerasaro, Arcangelo Di Balsamo, Franco Mossotto, Sandro Piccinini
-
Patent number: 10025586Abstract: Maintaining a plurality of software instances of a software program in a computing environment. An updating request is received for an updating process of the software instances from an old level to a new level. An attempt is made to update each software instance to the new level according to at least one updating policy. Responsive to a failure of the updating of each failed instance of the software instances, an exchanging instance is searched among the other software instances according to at least one searching policy, the exchanging instance being adapted to be exchanged with the failed instance for continuing the updating process according to at least one optimization criterion of the computing environment. The failed instance and the exchanging instance are exchanged in response to a positive result of the searching. The updating process corresponding to the failed instance is resumed.Type: GrantFiled: September 7, 2017Date of Patent: July 17, 2018Assignee: International Business Machines CorporationInventors: Fabio Barillari, Ilaria Gorga, Sandro Piccinini
-
Publication number: 20180191865Abstract: Systems, methods, and computer program products to perform an operation comprising deploying a first application in a first cloud computing environment of a plurality of cloud computing environments, wherein the first application is composed of a first instance of a first service, determining that the first service has become unavailable in the first cloud computing environment, identifying, by an instance of inventory module executing in the first cloud computing environment, a second instance of the first service in one of the plurality of cloud computing environments, building the first application using the second instance of the first service; and redeploying the first application built using the second instance of the first service in the first cloud computing environment.Type: ApplicationFiled: January 4, 2017Publication date: July 5, 2018Inventors: Rossella DE GAETANO, Valentina MARTUCCI, Sandro PICCININI
-
Patent number: 10013284Abstract: Dynamic pool reallocation performed by the following steps: (i) defining a plurality of resource pools including a first pool and a second pool, where each resource pool has a plurality of assigned resources; (ii) receiving a plurality of jobs to be executed; (iii) for each job of the plurality of jobs, assigning a respective resource pool, of the plurality of resource pools, to be used in completing the job; (iv) determining a preliminary schedule for executing the jobs on their respective resource pools; (v) determining whether the preliminary schedule will cause any jobs to miss service level agreement (SLA) deadlines corresponding to the job; (vi) executing the plurality of jobs on their respectively assigned resource pools; and (vii) re-assigning first resource from the second pool to the first pool during at least some of the time of the execution of the first job by the first resource pool.Type: GrantFiled: June 29, 2016Date of Patent: July 3, 2018Assignee: International Business Machines CorporationInventors: Arcangelo Di Balsamo, Sandro Piccinini, Luigi Presti, Luigi Schiuma
-
Patent number: 10013247Abstract: Maintaining a plurality of software instances of a software program in a computing environment. An updating request is received for an updating process of the software instances from an old level to a new level. An attempt is made to update each software instance to the new level according to at least one updating policy. Responsive to a failure of the updating of each failed instance of the software instances, an exchanging instance is searched among the other software instances according to at least one searching policy, the exchanging instance being adapted to be exchanged with the failed instance for continuing the updating process according to at least one optimization criterion of the computing environment. The failed instance and the exchanging instance are exchanged in response to a positive result of the searching. The updating process corresponding to the failed instance is resumed.Type: GrantFiled: February 2, 2017Date of Patent: July 3, 2018Assignee: International Business Machines CorporationInventors: Fabio Barillari, Ilaria Gorga, Sandro Piccinini
-
Patent number: 10009302Abstract: A method, executed by a computer, for context-dependent message management, includes receiving proxy recipient information from a target recipient, detecting that a message is being drafted to the target recipient while the target recipient is unavailable, and suggesting a proxy recipient in place of the target recipient. The proxy recipient information may identify multiple proxy recipients organized according to message topic. The proxy recipient information may also describe one or more topics for which a target recipient is available and/or suitable. Proxy recipient information may be determined automatically or may be provided by a user. Furthermore, the proxy recipient information may include availability information. In one embodiment, a user approves of the proxy recipient prior to transmitting the message. In another embodiment, the target recipient is able to preemptively receive the message. A computer system and computer program product corresponding to the above method are also disclosed herein.Type: GrantFiled: September 3, 2015Date of Patent: June 26, 2018Assignee: International Business Machines CorporationInventors: Sandro Piccinini, Stefano Sidoti
-
Patent number: 10002024Abstract: Dynamic pool reallocation performed by the following steps: (i) defining a plurality of resource pools including a first pool and a second pool, where each resource pool has a plurality of assigned resources; (ii) receiving a plurality of jobs to be executed; (iii) for each job of the plurality of jobs, assigning a respective resource pool, of the plurality of resource pools, to be used in completing the job; (iv) determining a preliminary schedule for executing the jobs on their respective resource pools; (v) determining whether the preliminary schedule will cause any jobs to miss service level agreement (SLA) deadlines corresponding to the job; (vi) executing the plurality of jobs on their respectively assigned resource pools; and (vii) re-assigning first resource from the second pool to the first pool during at least some of the time of the execution of the first job by the first resource pool.Type: GrantFiled: June 10, 2016Date of Patent: June 19, 2018Assignee: International Business Machines CorporationInventors: Arcangelo Di Balsamo, Sandro Piccinini, Luigi Presti, Luigi Schiuma
-
Patent number: 10001986Abstract: A daemon agent for updating software instances in a cloud computing system is disclosed. The daemon agent in a first instance of an application detects a failure in a scenario. The daemon agent broadcasts a first message from the first instance to a plurality of peer instances of the application in the computing system to query whether the plurality of instances has experienced the failure. The daemon agent receives a second message from a second instance of the plurality of instances, where the second message indicates that the second instance has not experienced the failure. The daemon agent determines differences between the first instance and the second instance and selects one or more components of the application based on the determined differences. The daemon agent updates the first instance by installing the selected one or more components on the first instance.Type: GrantFiled: February 9, 2017Date of Patent: June 19, 2018Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Rossella De Gaetano, Sandro Piccinini
-
Patent number: 9940350Abstract: A method for upgrading a database schema in real time, wherein the database schema is associated with a plurality of databases is provided. The method may include installing a first plugin on a database upgrade process associated with a database. The method may include installing a second plugin on each database instance within the plurality of databases. The method may include determining a delta associated with a final target version of the database schema. Additionally, the method may include outlining an existence of an incongruence, an existence of an override or an existence of a customization removal based on the determined delta. The method may include performing a peer-to-peer broadcasting analysis between each database. The method may include defining a migration strategy for each database instance within the plurality of databases based on the peer-to-peer broadcasting analysis. The method may further include creating a script for upgrading the database schema.Type: GrantFiled: February 10, 2017Date of Patent: April 10, 2018Assignee: International Business Machines CorporationInventors: Eliana Cerasaro, Arcangelo Di Balsamo, Franco Mossotto, Sandro Piccinini
-
Patent number: 9922076Abstract: A method for upgrading a database schema in real time, wherein the database schema is associated with a plurality of databases is provided. The method may include installing a first plugin on a database upgrade process associated with a database. The method may include installing a second plugin on each database instance within the plurality of databases. The method may include determining a delta associated with a final target version of the database schema. Additionally, the method may include outlining an existence of an incongruence, an existence of an override or an existence of a customization removal based on the determined delta. The method may include performing a peer-to-peer broadcasting analysis between each database. The method may include defining a migration strategy for each database instance within the plurality of databases based on the peer-to-peer broadcasting analysis. The method may further include creating a script for upgrading the database schema.Type: GrantFiled: January 29, 2015Date of Patent: March 20, 2018Assignee: International Business Machines CorporationInventors: Eliana Cerasaro, Arcangelo Di Balsamo, Franco Mossotto, Sandro Piccinini
-
Patent number: 9904538Abstract: A multi-tenant software program is maintained in a computing environment having a plurality of compatible instances of the program, each adapted to serve a plurality of tenants, with each controlling corresponding individual data. The method includes: receiving a maintenance request for a target instance, the target instance having one or more target tenants each controlling corresponding target individual data; selecting an auxiliary instance from other instances different from the target instance; providing the target individual data of each target tenant to the auxiliary instance; redirecting each target tenant by forwarding each target tenant request to the auxiliary instance; applying a maintenance operation on the target instance according to the maintenance request; returning the target individual data of each target tenant from the auxiliary instance in response to the applying of the maintenance operation; and restoring the serving of each target tenant request by the target instance.Type: GrantFiled: August 24, 2015Date of Patent: February 27, 2018Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Sandro Piccinini, Riccardo Pizzutilo, Luigi Pichetti
-
Publication number: 20180046448Abstract: Maintaining a plurality of software instances of a software program in a computing environment. An updating request is received for an updating process of the software instances from an old level to a new level. An attempt is made to update each software instance to the new level according to at least one updating policy. Responsive to a failure of the updating of each failed instance of the software instances, an exchanging instance is searched among the other software instances according to at least one searching policy, the exchanging instance being adapted to be exchanged with the failed instance for continuing the updating process according to at least one optimization criterion of the computing environment. The failed instance and the exchanging instance are exchanged in response to a positive result of the searching. The updating process corresponding to the failed instance is resumed.Type: ApplicationFiled: October 11, 2017Publication date: February 15, 2018Inventors: Fabio Barillari, Ilaria Gorga, Sandro Piccinini
-
Publication number: 20180039492Abstract: Maintaining a plurality of software instances of a software program in a computing environment. An updating request is received for an updating process of the software instances from an old level to a new level. An attempt is made to update each software instance to the new level according to at least one updating policy. Responsive to a failure of the updating of each failed instance of the software instances, an exchanging instance is searched among the other software instances according to at least one searching policy, the exchanging instance being adapted to be exchanged with the failed instance for continuing the updating process according to at least one optimization criterion of the computing environment. The failed instance and the exchanging instance are exchanged in response to a positive result of the searching. The updating process corresponding to the failed instance is resumed.Type: ApplicationFiled: October 11, 2017Publication date: February 8, 2018Inventors: Fabio Barillari, Ilaria Gorga, Sandro Piccinini