Adaptively shrinking software
First Claim
Patent Images
1. A method performed by at least one processor, the method comprising:
- providing one or more adaptive features of a computer program;
providing one or more permanent features of the computer program;
receiving a feature record corresponding to one of the adaptive features of the computer program, wherein the feature record includes at least a candidate status that indicates whether the one or more of the adaptive features is removable;
determining, from the feature record, a history of invocation of the one of the adaptive features by one or more users;
determining, from the feature record, a feature-specific separation criterion associated with the one of the adaptive features;
comparing, using a computer system, the history of invocation to the feature-specific separation criterion to assess from the feature record, the candidate status of the one of the adaptive features for removal; and
selecting the one of the adaptive features for removal from the computer program based on the candidate status of the one of the adaptive features.
0 Assignments
0 Petitions
Accused Products
Abstract
Methods, articles, signals, and systems are provided for adaptively shrinking software. The software includes one or more adaptive features. A tracking facility tracks use of the adaptive features, and when it is determined that a given feature is unwanted or unnecessary in the software configuration preferred by a given user, a separation facility separates the feature from the rest of the software. The feature is then archived or deleted. In this manner, resources such as disk space are conserved, program load time and memory requirements are reduced, and user interfaces and supporting code are tailored to meet the needs of particular users.
15 Citations
20 Claims
-
1. A method performed by at least one processor, the method comprising:
-
providing one or more adaptive features of a computer program; providing one or more permanent features of the computer program; receiving a feature record corresponding to one of the adaptive features of the computer program, wherein the feature record includes at least a candidate status that indicates whether the one or more of the adaptive features is removable; determining, from the feature record, a history of invocation of the one of the adaptive features by one or more users; determining, from the feature record, a feature-specific separation criterion associated with the one of the adaptive features; comparing, using a computer system, the history of invocation to the feature-specific separation criterion to assess from the feature record, the candidate status of the one of the adaptive features for removal; and selecting the one of the adaptive features for removal from the computer program based on the candidate status of the one of the adaptive features. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A method performed by at least one processor, the method comprising:
-
detecting a trigger configured to initiate a search for removal candidate features; conducting a search for a feature of a computer program that can be removed from the computer program while allowing the computer program to run a different feature; evaluating, using a computing system, a separation criterion specific to the feature from a feature record corresponding to the feature, wherein the feature record includes at least a status that indicates whether the feature is removable; tracking invocations of the feature to determine a pattern of invocations of the feature; comparing the pattern of invocations of the feature to the separation criterion to determine a removal status of the feature from the feature record; and selecting the feature for removal from the program based on the removal status of the feature. - View Dependent Claims (11, 12, 13, 14)
-
-
15. A non-transitory computer readable storage medium storing instructions that, when executed by a computer processor, carry out:
-
identifying one or more adaptive features of a computer program; identifying one or more permanent features of the computer program; identifying a separation criterion of one of the adaptive features from an adaptive feature record corresponding to the one of the adaptive features, wherein the adaptive feature record includes at least a candidate status that indicates whether the one of the adaptive features is removable; tracking invocations of the one of the adaptive features to determine a pattern of invocations of the one of the adaptive features; comparing the pattern of invocations of the one of the adaptive features to the separation criterion to determine a removal candidate status of the one of the adaptive features from the adaptive feature record; and identifying the one of the adaptive features for removal based on the removal candidate status. - View Dependent Claims (16, 17, 18, 19, 20)
-
Specification