Publication: Component-based software development with component variants
Variants are the new units suggested for component-based software implementation to contain just one set of features that a traditional component might normally contain. They help us to implement the specialization of components without the need for long inheritance trees and strong dependencies in object oriented counterpart. Variants can become very effective in component customization process when the variant production is automated by means of variant generators.
In this paper we provide a simple component-based methodology based on the variants that help us to implement software in pure component-based manner. Such an approach guarantees the execution of a uniform processes throughout the whole software development operation. A system produced by our methodology has the capacity to produce many generic and domain specific components as by-products that can be utilized in further applications. Our methodology includes the activities to identify, represent, decompose and optimize the components, sub-components and their variants.