Software customization system and method
AssigneeBigLever Software, Inc.
InventorsCharles W. Krueger, Mark N. Jungman
Life of this patent
Estimating the term…
Abstract
A system and method for the mass customization of software includes a software production line infrastructure, development environment, and actuator. The infrastructure organizes the software production line using a feature declarations component, a product definitions component, an automatons component, and a partition composition component. The development environment browses, displays, organizes, edits, and maintains the infrastructure. The actuator actuates the software production line to produce custom software products.
Claims17
A method for the mass customization of a software artifact to create one or more software products in a software product family comprising:
- creating software artifacts with common data files and common directories, said software artifacts also having one or more file automatons, wherein each of said file automatons serves as a proxy for a real data file that varies between software products within a software product family, said software artifacts also having one or more directory automatons, wherein each of said directory automatons serves as a proxy for a real directory that varies between said software products within said software product family;
- defining one or more feature variations for said software product family, wherein each of said feature variations includes two or more selectable values;
- creating one or more feature profiles, each feature profile consisting of selected values for each feature variation for a desired software product within said software product family;
- and
- using a fully automated product actuator to provide one of said feature profiles to each of said file automatons and said directory automatons, thereby automatically instantiating a real data file in place of said file automaton and a real directory in place of said directory automaton to create said desired software product.
A method for the mass customization of a software artifact to create one or more software products in a software product family comprising:
- creating software artifacts with common data files and common directories, said software artifacts also having one or more file automatons, wherein each of said file automatons serves as a proxy for a real data file that varies between software products within a software product family;
- defining one or more feature variations for said software product family, wherein each of said feature variations includes two or more selectable values;
- creating one or more feature profiles, each feature profile consisting of selected values for each feature variation for a desired software product within said software product family;
- and
- using a fully automated product actuator to provide one of said feature profiles to each of said file automatons, thereby automatically instantiating a real data file in place of said file automaton to create said desired software product.
A method for the mass customization of a software artifact to create one or more software products in a software product family comprising:
- creating software artifacts with common data files and common directories, said software artifacts also having one or more directory automatons, wherein each of said directory automatons serves as a proxy for a real directory that varies between said software products within said software product family;
- defining one or more feature variations for said software product family, wherein each of said feature variations includes two or more selectable values;
- creating one or more feature profiles, each feature profile consisting of selected values for each feature variation for a desired software product within said software product family;
- and
- using a fully automated product actuator to provide one of said feature profiles to each of said directory automatons, thereby automatically instantiating a real directory in place of said directory automaton to create said desired software product.
A method for the mass customization of a software artifact to create one or more software products in a software product family comprising:
- identifying one or more feature variations for a software product family, wherein each of said feature variations includes two or more selectable values;
- creating one or more feature profiles, each feature profile consisting of selected values for each feature variation for a desired software product within said software product family;
- and
- using a fully automated product actuator to create said desired software product by instantiating real data files in place of virtual file automatons in a software artifact and by instantiating real directories in place of virtual directory automatons in said software artifact, wherein each of said virtual file automatons serves as a proxy for a real data file which corresponds to said values for said feature profile and wherein each of said virtual directory automatons serves as a proxy for a real directory which corresponds to values for said feature profile.
A method for the mass customization of a software artifact to create one or more software products in a software product family comprising:
- means for creating software artifacts with common data files and common directories, said software artifacts also having one or more file automatons, wherein each of said file automatons serves as a proxy for a real data file that varies between software products within a software product family, said software artifacts also having one or more directory automatons, wherein each of said directory automatons serves as a proxy for a real directory that vary between said software products within said software product family;
- means for defining one or more feature variations for said software product family, wherein each of said feature variations includes two or more selectable values;
- means for creating one or more feature profiles, each feature profile consisting of selected values for each feature variation for a desired software product within said software product family;
- and
- means for using a fully automated product actuator to provide said feature profile to said file automatons and said directory automatons, thereby automatically instantiating a real data file in place of each of said file automatons and a real directory in place of each of said directory automatons to create said desired software product.
Dependencies are inferred from the claim text.