Data processing: database and file management or data structures – Database design – Data structure types
Reexamination Certificate
1999-06-22
2002-08-27
Amsbury, Wayne (Department: 2171)
Data processing: database and file management or data structures
Database design
Data structure types
C705S059000
Reexamination Certificate
active
06442559
ABSTRACT:
FIELD OF THE INVENTION
This invention relates generally to the field of computer programs and in particular to dynamically managing use of different SKU's of a single version of computer programs.
COPYRIGHT NOTICE/PERMISSION
A portion of the disclosure of this patent document contains material which is subject to copyright protection. The copyright owner has no objection to the facsimile reproduction by anyone of the patent document or the patent disclosure as it appears in the Patent and Trademark Office patent file or records, but otherwise reserves all copyright rights whatsoever. The following notice applies to the software and data as described below and in the drawing hereto: Copyright © 1998, 1999, Microsoft Corporation, All Rights Reserved.
BACKGROUND
Store keeping units (SKUs) are different versions of a same basic product. The term SKU has been used for many years in different industries, such as to identify different size boxes of cereal. The term is also finding its way for use in the software industry. Many programs have sets of components that are provided in different combinations to form different variations (or feature sets) of a single version of a given program. These different variations of a single version are referred to as SKUs. Further, capabilities, such as the maximum size of a file, or the number of processors that each SKU is permitted to run on, or even the components installed may be varied between SKUs. Prior to the present invention, each SKU program has been separately compiled from source code for running directly on computer systems. One such program has different SKU's with different levels of functionality. Names like Standard Edition, Consumer Edition, Professional Edition, etc . . . are typically given to these different SKU's to differentiate them in the marketplace. Further, some programs have a timer in them which specifies how long a program will operate without license fees or other events occurring. This allows a user to evaluate the program for a limited period of time to see if they desire to pay for further use. Each of these is also a separate SKU which needs to be compiled separately in order to run on a user's computer system.
Having multiple separate products with different functionality which may be compiled at separate times leads to complexity and additional effort in ensuring that the code in each is corrected and changed at the same time. In order for a user to upgrade a SKU to a higher functionality or capability, a separate SKU needed to be sent to the user, or the additional function enabled, which resulted in a recompile of the product being required.
There is a need to more easily deal with multiple SKUs to minimize duplicate effort in maintaining them. There is a further need to provide ease of upgrading versions of programs without having to recompile such programs. There is yet a further need to solve such problems without making it easy for a user to obtain an unauthorized upgrade.
SUMMARY OF THE INVENTION
A dynamic SKU (store keeping unit) manager creates products with different feature sets without a recompilation of the products. Features are enabled either before shipping to a user, or after the user has a partially enabled product. In one aspect of the invention, products with different feature sets are computer programs. One program has multiple feature sets (or flavors) which are referred to as SKUs, or shop keeper units.
The SKU manager has a module referred to as a brand module which contains a unique encrypted value for each SKU. When this module is executed on a user's machine, a unique encrypted value is stored onto the machine on which the program is installed. In one aspect of the invention, the encrypted value contains an SKU identifier, a date, and a machine unique name.
A further module is referred to as a query module which is used to obtain information about features and capabilities of a currently installed program. It also keeps track of which SKUs are available, and need not be recompiled if no changes have been made to the available SKUs on the machine. If it is desired to create a new SKU with a new feature set, the SKU and its rules are added to the query component, a new encrypted value is added to the brand module, and they are dropped into an installation of the program. No other code associated with the program need be recompiled.
Another aspect of the invention involves the dynamic loading of the query and brand modules. By dynamically loading it and unloading it each time it is called, it is more difficult to trace, which in turn makes it more difficult to inappropriately obtain upgrades or higher capability/functional SKUs of a program. The SKU manager minimizes duplicate effort in maintaining multiple SKUs, as the code which provides the various levels of functionality need not be recompiled. Thus, only a single version of the code need be maintained. The SKU manager also provides an easier way to perform authorized upgrades of programs without having to recompile such programs.
REFERENCES:
patent: 4757534 (1988-07-01), Matyas et al.
patent: 5724425 (1998-03-01), Chang et al.
patent: 5740425 (1998-04-01), Povilus
patent: 5758068 (1998-05-01), Brandt et al.
patent: 5897622 (1999-04-01), Blinn et al.
patent: 5903652 (1999-05-01), Mital
patent: 5905798 (1999-05-01), Nerlikar et al.
patent: 5933816 (1999-08-01), Zeanah et al.
patent: 6012045 (2000-01-01), Barzilai et al.
patent: 6018724 (2000-01-01), Arent
patent: 6032130 (2000-02-01), Alloul et al.
patent: 6041411 (2000-03-01), Wyatt
patent: 6061660 (2000-05-01), Eggleston et al.
patent: 6092189 (2000-07-01), Fisher et al.
patent: 6125352 (2000-09-01), Franklin et al.
patent: 6189146 (2001-02-01), Misra et al.
patent: 6202070 (2001-03-01), Nguyen et al.
patent: 6223291 (2001-04-01), Puhl et al.
patent: 6247128 (2001-06-01), Fisher et al.
patent: 6272636 (2001-08-01), Neville et al.
patent: 6343280 (2002-01-01), Clark
Alger Jeffrey
Martinsen Ronald R.
Amsbury Wayne
Microsoft Corporation
Woodcock & Washburn LLP
LandOfFree
Dynamic SKU management does not yet have a rating. At this time, there are no reviews or comments for this patent.
If you have personal experience with Dynamic SKU management, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Dynamic SKU management will most certainly appreciate the feedback.
Profile ID: LFUS-PAI-O-2945116