Understanding Software Ecosystems: Implications for Practice and Theory
software ecosystem, systematic mapping study, personal opinion surve
Inspired from properties by natural and business ecosystems, researchers have coined a new perspective to analyze the software industry that in this context is defined as a networked industry. These networks have been called as Software Ecosystems that represent a new approach to analyze the relationships between players of software industry where organizations must engage in a perspective that considers both their own business and third party ones. Software Ecosystem is a set of businesses that covers technical, architectural, management, social and business aspects of software development as well as relationships among companies. In order to investigate this field, a systematic mapping study was conducted and the search strategy identified 1094 studies, of which 47 were identified as relevant ones. The review investigated what is currently known about Software Ecosystems definitions, their characteristics, stakeholders, benefits, challenges, and the most common research methods applied. We identified that this field interfaces with several areas of Information Science and Software Engineering. We observed that one of the major implications for Software Ecosystems includes the analysis of their social aspects. The outcomes of the mapping also indicated important factors that leverage the collaboration and interaction of actors in open source software ecosystems. Considering these results, we undertook a personal opinion survey with the purpose of characterizing the main Social Aspects of Software Ecosystem. We conclude that software ecosystems research is concentrated in 8 main areas in which the most relevant are open source software, and business issues. This dissertation contributes to summarize the body of knowledge in Software Ecosystems and direct efforts for future research in the field.