Modelling Deployment Using Feature Descriptions and State Models for Component-Based Software Product Families