Towards modeling and analyzing variability in evolving software ecosystems

Christoph Seidl, Uwe Aßmann · 2013

A software ecosystem (SECO) encompasses a set of interdependent software systems where individual products are created by combining a common software platform with variable extensions. Examples are the SECOs surrounding Eclipse or Android. Due to independent release cycles of the multiple vendors for platform and extensions, SECOs are evolving frequently. This makes it hard to get a concise impression of the structure of a SECO and its variable artifacts during a given period of time. We contribute a metamodel to capture the variability in an arbitrary SECO and its evolution based on the notion of real time. We further present a procedure to create temporal perspectives on the SECO. Additionally, we provide means to analyze evolution of variability in between explicit releases of the platform, e.g., in accordance with the different release cycles of individual extensions. We demonstrate feasibility of our approach by modeling a part of the Eclipse SECO over a period of three years.

Read the paper · More papers on PaperTik