@article {10.3844/jcssp.2016.517.526, article_type = {journal}, title = {Common Metamodel of Component Diagram and Feature Diagram in Generative Programming}, author = {Novak, Matija and Magdalenić, Ivan and Radošević, Danijel}, volume = {12}, number = {10}, year = {2016}, month = {Dec}, pages = {517-526}, doi = {10.3844/jcssp.2016.517.526}, url = {https://thescipub.com/abstract/jcssp.2016.517.526}, abstract = {Component-based software engineering and generative programming are common approaches in software engineering. Each approach has some benefits and domain of usage. Component-based development is used to build autonomous components that can be further combined in different ways, while generative programming is more suitable when building systems that have different variants. Before a variable component based system can be build, it needs to be modeled. In this article, a new common metamodel that aims to enable modeling a system which combines both component-based development and generative programming is introduced. The introduced metamodel proposed in this paper combines the component diagram that is used to model systems in component-based development and the feature diagram that is employed in modeling systems in generative programming. The combined metamodel enables modeling of variable systems using components.}, journal = {Journal of Computer Science}, publisher = {Science Publications} }