Patents by Inventor Luigi Pichetti

Luigi Pichetti 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).

  • Publication number: 20080109791
    Abstract: A solution for managing errors in software applications is proposed. Typically, the software application is represented (during its analysis and design phases) by means of different models—for example, of the UML type. The same models are also exploited to represent the impact of any errors in the software application. For this purpose, during the analysis and design phase, it gets determined the artifacts of the models that are directly impacted by each error (since it occurred in an object that participates in their implementation); the artifacts correlated thereto either directly or indirectly—are set as indirectly impacted by the error. It is then possible to display a diagram corresponding to the model, with the directly and indirectly impacted artifacts that are highlighted with different colors.
    Type: Application
    Filed: November 1, 2007
    Publication date: May 8, 2008
    Inventors: Francesco Carteri, Francesco Carusi, Luigi Pichetti
  • Patent number: 7370323
    Abstract: A method of managing configuration changes in a data processing system, particularly a network wherein software products (250) must be distributed to client workstations. The method provides the definition of reference models (220e-220d) arranged in a tree (215); each reference model includes configuration elements (such as software products and/or hardware features and their desired target status) for the corresponding client workstations (subscribers). A target configuration (230) of the client workstations associated with each reference model is determined by inheriting the configuration elements of the parent reference models. A list of actions (245) to be carried out on each client workstation for reaching the corresponding target configuration is determined by comparing the target configuration with a current configuration of the client workstation stored in a corresponding inventory (245).
    Type: Grant
    Filed: March 5, 2002
    Date of Patent: May 6, 2008
    Assignee: International Business Machines Corporation
    Inventors: Claudio Marinelli, Luigi Pichetti
  • Publication number: 20070245314
    Abstract: A solution (200) for collecting inventory information relating to complex resources is proposed. For this purpose, a data mover (285) interfaces with a common collector engine (210). The data mover registers (A3) itself as a listener for a selected resource class on behalf of every exploiter (265). The collector engine solves (A4) the correlations involving the selected resource class, as indicated in predefined discovery directories (235). Providers (225) adapted to discover inventory information about the correlated resource classes are periodically invoked (A5-A9), according to a scheduling plan defined in the same discovery directives. As soon as the providers for all the correlated resource classes have completed the discovery of the corresponding information (A10), the data mover is notified accordingly (A11). In response thereto, the data mover transfers (A13-A15) the discovered (delta) inventory information to the exploiter.
    Type: Application
    Filed: February 22, 2007
    Publication date: October 18, 2007
    Inventors: Francesco Maria Carteri, Alessandro Donatelli, Alberto Giammaria, Luigi Pichetti, Jonathan Mark Wagner
  • Patent number: 7254631
    Abstract: A method (300) of distributing software features (particularly software products having a global portion and a user portion necessary for activating the software products) to client workstations of a network; each client workstation has a multi-user operating system, and may be accessed (327-328) with different user profiles each one associated with a corresponding operating context. A distribution package is received (312) in the client workstation; the distribution package includes instructions associated with global activities for the client workstation as a whole or with user activities specific for the single profiles. A distribution agent (running outside the context of a current profile) executes (309-329) only the global activity (even if the workstation is in a logoff condition) and schedules the user activities to be performed when a user next logs onto the workstation.
    Type: Grant
    Filed: January 8, 2002
    Date of Patent: August 7, 2007
    Assignee: International Business Machines Corporation
    Inventors: Michele Crudele, Luigi Pichetti
  • Publication number: 20070130073
    Abstract: A solution (300) for distributing software products in trial mode is proposed. This solution is based on the idea of leveraging a software distribution infrastructure. For this purpose, a trial software package (identified by a specific attribute) is provided (306-309) for any software product to be distributed in the trial mode. The trial software package is deployed (318-321) and applied (324-330) as usual to install the software product. An additional service of the software distribution infrastructure monitors (333-339) the reaching of an expiration term of the software product (defined in another attribute of the corresponding trial software package). When this expiration term is reached, the trial software package is applied again (342-345) so as to remove the software product temporarily. If a license for the same software product is bought later on (354), a corresponding activation software package is deployed (354-360) and applied (363).
    Type: Application
    Filed: November 29, 2006
    Publication date: June 7, 2007
    Inventors: Massimiliano Celli, Luigi Pichetti, Marco Secchi
  • Publication number: 20070073640
    Abstract: A method (300) of distributing software features (particularly software products having a global portion and a user portion necessary for activating the software products) to client workstations of a network; each client workstation has a multi-user operating system, and may be accessed (327-328) with different user profiles each one associated with a corresponding operating context. A distribution package is received (312) in the client workstation; the distribution package includes instructions associated with global activities for the client workstation as a whole or with user activities specific for the single profiles. A distribution agent (running outside the context of a current profile) executes (309-329) only the global activity (even if the workstation is in a logoff condition) and schedules the user activities to be performed when a user next logs onto the workstation.
    Type: Application
    Filed: November 16, 2006
    Publication date: March 29, 2007
    Inventors: Michele Crudele, Luigi Pichetti
  • Publication number: 20070047735
    Abstract: A software distribution method (300) with security add-on is proposed. Particularly, any software package to be deployed to selected target endpoints is encrypted (312-315) with a symmetric key (generated dynamically). The symmetric key is in turn encrypted (318-321) with a public key of each target endpoint. A multi-segment software package (embedding the encrypted software package and the encrypted symmetric keys) is then deployed (324-336, 360) to all the target endpoints. In this way, each target endpoint can decrypt (343-348) the encrypted symmetric key with a corresponding private key; it is then possible to decrypt (363-366) the encrypted software package with the symmetric key so obtained. As a result, the endpoint is able to apply (369) the decrypted software package. Therefore, the application of the software package can be restricted to the desired target endpoints only.
    Type: Application
    Filed: August 21, 2006
    Publication date: March 1, 2007
    Inventors: Massimiliano Celli, Luca Ferri, Luigi Pichetti, Marco Secchi, Marcello Velati
  • Publication number: 20070022023
    Abstract: A method and a corresponding apparatus for inventoring software products on a plurality of computer are proposed. The inventoring system aims at populating a software catalogue without the manual intervention of an administrator. The present invention reduces the cost of producing and maintaining a comprehensive knowledge base (the catalogue) which contains definitions of software products and the related signature. Information about software products and their related signature is obtained through a process which gathers information from a potentially very large collection of computers. Any occurence of a group of identical files across multiple computers is considered a reliable indicator that they belong to the installation footprint of a product.
    Type: Application
    Filed: July 18, 2006
    Publication date: January 25, 2007
    Inventors: Alessandro Capomassi, Alessandro Terenzi, Rosario Gangemi, Luigi Pichetti, Marcello Vitaletti
  • Publication number: 20060259904
    Abstract: A method (300) for facilitating the management of a software distribution process is proposed. For this purpose, the method provides the possibility of performing (333-339) an introspection of a software package (which is used for installing a corresponding software product) before its application on each endpoint. The introspection evaluates (333) any run-time parameters that condition the execution of the actions specified in the software package; in this way, it is possible to determine (336-339) a list of the actions that will be actually executed during the application of the software package. This list is displayed (339) on a monitor of the endpoint, so as to allow its user to decide (345) whether the application of the software package should be accepted or not. Alternatively, the list of those actions can be collected (357-366) on a distribution server (from multiple endpoints), so as to determine (375) an impact of the distribution process on the whole system before its execution.
    Type: Application
    Filed: May 10, 2006
    Publication date: November 16, 2006
    Inventors: Massimiliano Celli, Luigi Pichetti, Marco Secchi, Marcello Velati
  • Publication number: 20060248309
    Abstract: A method (300) for installing a shared software component on a computer is proposed. The process is driven by an exploiter of this (new) shared component. If the required shared component is not available on the computer, it is installed (384) at the desired location (specified by the exploiter). On the contrary, if another shared component is already available (for further exploiters), the process verifies (312) whether this available shared component is at the required level. If not, the available shared component is upgraded (339-378) accordingly; for example, this result can be achieved by causing the available shared component to refuse (345) any new request and then waiting (348-351) for the completion of any pending request. In this case, the install location of the available shared component is returned (336,381,387) to the exploiter, so as to have it point (390) to the available shared component automatically.
    Type: Application
    Filed: April 5, 2006
    Publication date: November 2, 2006
    Inventors: Domenico D'Alterio, Francesco Lupini, Luigi Pichetti
  • Patent number: 7120901
    Abstract: A method and system for tracing the failing or successful execution of nested functions coded with return codes in a thread during its execution. The method comprises an ENTRY and EXIT trace macro to mark the beginning and the end of execution of the function, a TRACE macro to record messages and program variable values, and a QUIT macro marking the failing execution of the corresponding function. Using a Graphical User Interface, an interactive trace analyzer reads the trace file and displays the tree structure of the nested functions and marks, by using different colors, the success or failure of each of them. The trace analyzer utilities help the user to quickly identify the error in the source code corresponding to a function with a failing execution.
    Type: Grant
    Filed: September 5, 2002
    Date of Patent: October 10, 2006
    Assignee: International Business Machines Corporation
    Inventors: Luca Ferri, Luigi Pichetti, Rosario Gangemi
  • Publication number: 20060155821
    Abstract: A method and a corresponding system are proposed for sharing information in a network of computers. In the method of the invention, a shortcut (410a,410b) is defined on the desktop (405a,450b) of each computer; the shortcut is associated with an editor, which is invoked passing the name of a shared file (420a,420b) as an argument. Whenever a user needs to transfer information from a first computer to a second computer of the network, the user copies/cuts a block of information into a clipboard of the first computer. The shared file (420a) is opened calling the corresponding shortcut (410a), the block of information is pasted into the shared file from the clipboard, and the file is saved. The user then moves to the second computer, and opens again the shared file (420b) calling the same shortcut (410b). The content of the shared file is copied/cut into a clipboard of the second computer, so as to be available to be pasted to the desired position in a selected window (415b).
    Type: Application
    Filed: March 23, 2004
    Publication date: July 13, 2006
    Inventors: Luigi Pichetti, Marco Secchi
  • Publication number: 20060129880
    Abstract: A method for testing a software application (225), for example, written in the Java language is proposed. For this purpose, a factory object (230c) can be configured to operate in a production mode or in a test mode. In the test mode, the factory object instantiates a proxy object (255) for each object (235, 240) of the application. In this way, the invocation of each method exposed by any object of the application is intercepted by the corresponding proxy object. The proxy object invokes a specific method on a fault generator object (265), which provides a return code that can simulate desired error conditions (for example, according to a predefined probability). The proxy object then forwards the invocation to the actual object or returns the error code received from the fault generator object.
    Type: Application
    Filed: November 10, 2005
    Publication date: June 15, 2006
    Inventors: Mauro Arcese, Michele D'Urso, Rosario Gangemi, Luigi Pichetti
  • Publication number: 20060069744
    Abstract: A method for transmitting information (from a source computer to one or more target computers) is proposed. The solution of the invention applies to a message (300o) that includes a main body (310) with possible attachments (315), each one identified by a corresponding internal link (320i) The attachments including bulk data are removed and placed onto a location (125s) of a distribution service wherein they are available for downloading; at the same time, the internal links of the removed attachments are replaced with external links (320e), which point to the corresponding downloading locations. The resulting compacted message (300c) is transmitted to each target computer directly. The target computer downloads the desired removed attachments (from the locations pointed by the corresponding external links); the message can then be reconstructed by restoring the downloaded attachments.
    Type: Application
    Filed: September 1, 2005
    Publication date: March 30, 2006
    Inventors: Enrica Alberti, Salvatore D'Alo, Alessandro Donatelli, Luigi Pichetti, Alessandro Scotti
  • Publication number: 20060048145
    Abstract: A software distribution method (300) is proposed. The solution of the invention relates to the deployment (from a source host to selected endpoints) of main packages that require one or more prerequisite packages. In this case, the source host builds (304-326) and transmits (330-332) a multi-segment distribution structure that embeds the main package and any prerequisite package that is not available on at least one of the endpoints. Each endpoint receiving the distribution structure only installs (336-360) the prerequisite packages that are not available on the endpoint.
    Type: Application
    Filed: August 30, 2005
    Publication date: March 2, 2006
    Inventors: Massimiliano Celli, Marco Secchi, Luigi Pichetti
  • Patent number: 6973647
    Abstract: A software distribution system comprises building blocks including a preparation and test site, comprising a software package editor, software package transformation tools and an AutoPack module for preparing and testing software packages to be distributed to endpoints. A software package comprises a file including a complete definition of the actions involved in a software distribution and, once distributed, when a software package is available to a target endpoint, an engine resident on the target can be instructed via the management agent to decode the software package from the file into memory and then to perform various software distribution operations including installing, removing and modifying the software and configuration of the endpoint.
    Type: Grant
    Filed: January 22, 2001
    Date of Patent: December 6, 2005
    Assignee: International Business Machines Corporation
    Inventors: Michele Crudele, Claudio Marinelli, Luigi Pichetti
  • Publication number: 20050262501
    Abstract: A software distribution method (300) and a corresponding system are proposed. In the solution of the invention, each software package (which is used to deploy a desired software product) includes the definition of installation actions and configuration actions; the installation actions are used to load the software product (including its initial configuration), whereas the configuration actions are used to set configuration options of the software product after the installation. The software package can be applied (316-332;346) on each endpoint specifying an installation activity or a configuration activity (involving the execution of the corresponding actions). In this way, it is possible to reconfigure (346) a software product that is already available without its reinstallation; moreover, it is possible to correct (374) configuration errors directly on the endpoint.
    Type: Application
    Filed: May 10, 2005
    Publication date: November 24, 2005
    Inventors: Claudio Marinelli, Luigi Pichetti, Marco Secchi
  • Publication number: 20050251546
    Abstract: A method (300) and a corresponding system are proposed for configuring different computers of a network. Each computer plays a specific physic role (defined by an architecture of the network) and/or a specific logic role (defined by the applications running in the network). A reference model and a transition table are associated (306-312) with each product to be installed in the network; the reference model specifies a target configuration for each role (defined by the components of the product to be installed), while the transition table specifies the actions required to reach each target configuration from each current configuration of the computers. A server identifies (330-336) the role and the current configuration of each computer; the actions required to enforce the desired target configuration on the computer are then established and executed (333,339-366).
    Type: Application
    Filed: September 25, 2003
    Publication date: November 10, 2005
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Luigi Pichetti, Antonio Secomandi, Roberto Ranucci, Claudio Marinelli, Francesco Lupini
  • Publication number: 20050149925
    Abstract: A software distribution method (300b) and a corresponding system are proposed. In a software distribution application, packages including instructions specifying the actions to be carried out on each target computer for installing or removing selected software products are prepared in a central site; typically, the actions are conditioned to a hardware configuration of the target computer. Each package is transmitted to the target computer, and the corresponding instructions are interpreted so as to enforce the desired software products meeting the current configuration of the target computer. In the solution of the invention, the configuration of the target computer is monitored to detect (337) any hardware upgrade. In response thereto, the target computer generates (339-351) a list of actions for removing software products not meeting the new configuration any longer and a list of action for installing software products now meeting the new configuration.
    Type: Application
    Filed: February 13, 2003
    Publication date: July 7, 2005
    Inventors: Luigi Pichetti, Claudio Marinelli
  • Publication number: 20050125788
    Abstract: A method (300) of installing software applications using a wizard-based installation package (for example, built using “InstallShield”) is proposed. The installation package is defined declaring a discoverer Bean (308), a producer Bean (312), a consumer Bean (314) and a debugger Bean (315) into the wizard tree (while the product tree is left empty). During the installation process, the discoverer creates (322-346) a working queue dynamically, inserting the installation operations that are needed for reaching a desired configuration (defined in a descriptor of the software application) from a current configuration (detected at run-time). The consumer executes (348-362) the installation operations defined in the working queue in succession. Whenever an error condition is detected (352, 356, 360), the installation process is suspended (368) and the debugger is invoked (372). An administrator can browse (378) an execution log of each installation operation and update (380-383) any wrong operative parameter.
    Type: Application
    Filed: July 15, 2004
    Publication date: June 9, 2005
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Francesco Lupini, Luigi Pichetti, Antonio Secomandi