Personal

Since May 2009, I have been a PhD student at Software Engineering and Technology (SET), in the deparment of Computing and Mathematics at Eindhoven University of Technology (TU/e).

My Promoters are Prof. Mark van den Brand and Prof.dr.ir. Th.P. van der Weide and my co-promoter is Dr. Alexander Serebrenik.

On July 4, 2013 I successfully defendend my PhD entitled: Co-evolution of the Eclipse Framework and its Third-party Plug-ins The copy of the electronic version of the thesis can be downloaded on the following link Thesis.

Curriculum vitae

My C.V. can be downloaded here [pdf]

Research

My research is in the area evolution of software ecosystems. Software ecosystems are collections of software systems, developed and co-evolving in the same environment. The environment can be organizational (a company) or social (an open-source community). My current work is based on the social ecosystems. In the social ecosystem, users (active or passive), contribute content, knowledge, products, solutions, services, connections or behavior to the community. My research aims at understanding the interconnections of an ecosystem and how it evolves. Understanding the evolution of an ecosystem is central to its wellbeing. This will in turn propose solutions that will help in reducing the complexity that exists in maintaining and evolving this ecosystem.

Today, when constructing a new software system, many developers build their systems on top of frameworks. The Eclipse framework is one such popular and widely adopted open-source framework that has been evolving for over a decade. Like many other evolving software systems, the Eclipse SDK framework has both stable and supported APIs (good interfaces) and unstable, discouraged and unsupported non-APIs (bad interfaces). However, despite being discouraged by Eclipse, in our experience, the usage of bad interfaces is not uncommon. In this thesis, by means of a series of empirical studies, we quantify/qualify some the challenges faced by Eclipse third party plug-ins developers in using the interfaces provided by the Eclipse SDK framework. Furthermore, we propose solutions to the identified challenges, like changes in development strategy to both interface providers and the interface users. In particular, the lessons learned from this study can provide valuable information in particular to the interface providers, i.e., Eclipse SDK developers, and the interface uses, i.e., Eclipse third party plug-ins developers, in evolving the Eclipse framework ecosystem. In general, the lessons learned can be transferable to other framework ecosystems.