To improve a software product, many tech companies conduct continuously experiments with their customers. In so-called A/B tests, different versions of a product (e.g. mobile app) are delivered to distinct customer groups (Fagerholm, 2017). From the usage of these different versions, quantitative and qualitative feedback is collected. This feedback is used to improve the product for all customers. One problem of this experimentation is the flexibility of the current A/B testing and the associated problem of parallel experiments. Therefore, the goal of this thesis is to formulate a domain-specific language (DSL), "where engineers and scientists can formulate their problem with [the] flexibility that goes beyond A/B testing“ (Gerostathopoulos, 2019). To solve this problem, different product configurations, experiments, and customer groups have to be represented by the DSL. For this, a DSL for different product configurations, experiments, and customer groups has to be defined and synchronized with the mobile application. Depending on the knowledge of the student, the focus of the thesis can be set (e.g. algorithm development, code generation, coupling of DSL to UI models).
• Literature Review on Online Experiments
• Conception and Design of the DSL and synchronization bridge to the mobile application.
• Prototypical Implementation of the DSL (e.g. Eclipse EMF) and the brigde (e.g. Angular SDK)
• Evaluation based on a Case Study
• Gerostathopoulos, I et al..: Continuous Data-driven
Software Engineering – Towards a Research Agenda (2019)
• Fagerholm, F., Guinea, A. S., Mäenpää, H., Münch, J.: The RIGHT model for Continuous Experimentation (2017)
• Fabijan, A., Dmitriev, P., Olsson H.H., Bosch, J.: The Evolution of continuous Experimentation in Software Product Development (2017)
• Kohavi, R., Longbotham, R.: Online Controlled Experiments and A/B Testing (2017)