Reducing Enterprise Product Line Architecture Deployment and Testing Costs via Model Driven Deployment, Configuration, and Testing
Product-line architectures (PLAs) are a paradigm for developing software families by customizing and composing reusable artifacts, rather than handcrafting software from scratch. Extensive testing is required to develop reliable PLAs, which may have scores of valid variants that can be constructed from the architecture’s components. It is crucial that each variant be tested thoroughly to assure the quality of these applications on multiple platforms and hardware configurations. It is tedious and error-prone, however, to setup numerous distributed test environments manually and ensure they are deployed and configured correctly. To simplify and automate this process, the authors present a model-driven architecture (MDA) technique that can be used to (1) model a PLA’s configuration space, (2) automatically derive configurations to test, and (3) automate the packaging, deployment, and testing of con-figurations. To validate this MDA process, the authors use a distributed constraint optimization system case study to quantify the cost savings of using an MDA approach for the deployment and testing of PLAs.