摘要:
A solution is proposed for monitoring usage of bundles in the OSGi environment. For this purpose, an event notification interface of the OSGi environment is exploited. Particularly, each event relating to a change of state of a bundle (such as its addition, removal, starting and stopping) is detected by an auxiliary bundle—which previously subscribed to the event notification interface. The auxiliary bundle can then forward the detected events to a licensing agent, which identifies the bundle by means of a software catalog. In this way, the desired result is achieved without requiring any instrumentation of the bundles to be monitored.
摘要:
Modeling non-functional requirements (NFRs) in a computer programming environment. In one aspect, this further comprises: identifying use case (UC) artifacts having one or more NFRs; retrieving the one or more NFRs and any data associated therewith; analysing the associated data to define a test case therefor; retrieving a UC realization from a model to determine one or more possible program flows; and testing each possible program flow to select the test case which verifies the use case required, thereby modeling the NFR.
摘要:
A method and a corresponding apparatus for managing software licenses on a plurality of computer are proposed. The present method and system aim at populating a software catalog without the manual intervention of an administrator. The present invention reduces the cost of producing and maintaining a comprehensive knowledge base (the catalog) which contains definitions of software products and the related use signature. Information about software products and their related signature is obtained through a process which gathers information with an automated process which takes an initial snapshot of all processes running on a monitored data processing system and makes a comparison with a final snapshot after execution of a software product has been started. A “use signature” of the software product is then generated according to the difference.
摘要:
A solution (300) for tracking computer software development (for example, based on UML diagrams) is proposed. In the solution of the invention, a completion coefficient is associated (312) with each activity concerning the development process (to indicate the effort required to complete it). The activities are organized into a tree (starting from a root node for the whole development process). In operation, a user tunes (333-336) a progress index for each micro-activity represented by a leaf node of the tree (to indicate its actual progress). The progress index of each macro-activity represented by a non-leaf node of the tree is instead calculated (357-360) by aggregating the progress indexes of its depending activities weighted according to the respective completion coefficients (with a recursive process down to the micro-activities). In this way, the progress of the development process can be tracked with an incremental approach at different levels of detail.
摘要:
A method and a corresponding apparatus for managing software licenses on a plurality of computer are proposed. The present method and system aim at populating a software catalog without the manual intervention of an administrator. The present invention reduces the cost of producing and maintaining a comprehensive knowledge base (the catalog) which contains definitions of software products and the related use signature. Information about software products and their related signature is obtained through a process which gathers information with an automated process which takes an initial snapshot of all processes running on a monitored data processing system and makes a comparison with a final snapshot after execution of a software product has been started. A “use signature” of the software product is then generated according to the difference.
摘要:
A solution (200) for metering usage of services—for example, in a SOA framework—is proposed. For this purpose, the submission of any invocation of a provider service (205) by a consumer service (210) is intercepted by a license manager (220); a corresponding request is then submitted to a dedicated licensing service (215), which returns an entitlement code when the consumer service is entitled to submit the service invocation. The service invocation is decorated with this entitlement code and actually submitted to the provider service. The (decorated) service invocation addressed to the provider service is likewise intercepted by another license manager (235); a request is then submitted to the licensing service for verifying the received entitlement code. The running of the provider service is then enabled only if the entitlement code is correct.
摘要:
A solution for metering usage of services—for example, in a SOA Framework—is proposed. For this purpose, the submission of any invocation of a provider service by a consumer service is intercepted by a license manager; a corresponding request is then submitted to a dedicated licensing service, which returns an entitlement code when the consumer service is entitled to submit the service invocation. The service invocation is decorated with this entitlement code and actually submitted to the provider service. The (decorated) service invocation addressed to the provider service is likewise intercepted by another license manager; a request is then submitted to the licensing service for verifying the received entitlement code. The running of the provider service is then enabled only if the entitlement code is correct.
摘要:
A solution (300) for metering usage of software products on a data processing system is proposed. In this context, it is often necessary to known a processing power of each computer wherein a generic software product ran (for example, for licensing accounting based on differentiated charging rates). In the proposed solution, the processing power is estimated dynamically on the computer directly. For this purpose, a (single-threaded) benchmark program written in a low-level language is executed (308-322), such as at the startup or periodically. In this way, dividing (324) the measured execution time of the benchmark program by the known number of its instructions it is possible to determine an execution rate of a single microprocessor of the computer. This value multiplied (326) by the detected (306; 332) number of available microprocessors provides an accurate estimate of the processing power of the computer. The desired result is achieved without requiring any knowledge of the physical details of the computer; this is particularly advantageous when the computer consists of a logical guest machine implemented on a physical host machine.
摘要:
Modeling non-functional requirements (NFRs) in a computer programming environment. In one aspect, this further comprises: identifying use case (UC) artifacts having one or more NFRs; retrieving the one or more NFRs and any data associated therewith; analysing the associated data to define a test case therefor; retrieving a UC realisation from a model to determine one or more possible program flows; and testing each possible program flow to select the test case which verifies the use case required, thereby modeling the NFR.
摘要:
A solution (300) for tracking computer software development (for example, based on UML diagrams) is proposed. In the solution of the invention, a completion coefficient is associated (312) with each activity concerning the development process (to indicate the effort required to complete it). The activities are organized into a tree (starting from a root node for the whole development process). In operation, a user tunes (333-336) a progress index for each micro-activity represented by a leaf node of the tree (to indicate its actual progress). The progress index of each macro-activity represented by a non-leaf node of the tree is instead calculated (357-360) by aggregating the progress indexes of its depending activities weighted according to the respective completion coefficients (with a recursive process down to the micro-activities). In this way, the progress of the development process can be tracked with an incremental approach at different levels of detail.