Conference PaperPDF Available

Preliminary Findings of Expert and Systematic Reviews on the Software Ecosystems Research

Authors:

Abstract

Software Ecosystems (SECO) are a set of organizations and actors, as well as their relations that cover technical, social and business aspects of software development. As a research field, several studies and reviews were conducted towards a body of knowledge for the SECO field. In this paper, we preliminarily analyze these studies in order to provide an initial overview of the SECO literature. Our intention is to aid researchers to know some relevant opportunities to foster the field’s evolution, such as collaborative governance.
Preliminary Findings of Expert and Systematic Reviews on
the Software Ecosystems Research
Olavo Barbosa1, Rodrigo Santos2, Davi Viana3
1State Agency for Information Technology of Pernambuco
Av. Rio Capibaribe, 147, São José – CEP 50020-080 – Recife, Brazil
2DIA/CCET – Federal University of the State of Rio de Janeiro (UNIRIO)
3Computer Engineering/CCET– Federal University of Maranhão (UFMA)
olavo.barbosa@ati.pe.gov.br, rps@uniriotec.br, davi.viana@ufma.br
Abstract. Software Ecosystems (SECO) are a set of organizations and actors,
as well as their relations that cover technical, social and business aspects of
software development. As a research field, several studies and reviews were
conducted towards a body of knowledge for the SECO field. In this paper, we
preliminarily analyze these studies in order to provide an initial overview of
the SECO literature. Our intention is to aid researchers to know some relevant
opportunities to foster the field’s evolution, such as collaborative governance.
1. Introduction
The growing importance and special characteristics of software systems increasingly
make it an interesting topic of study for social sciences, law, management, government,
business, and economy (Santos & Werner, 2011). One of the key characteristics of the
software industry like others is that most organizations do not have all the resources to
satisfy the needs of customers. In addition, software organizations face some challenges
in coping with market and environmental factors that are usually out of control (i.e.,
economic constraints). As such, infrastructure acquired from many software vendors
must work mutually. Frequently, there is a need to integrate the applications in complex
ways across organization boundaries in order to create and support new products and
satisfy customer needs. This set of organizations, resources, customers, and products
have been known as Software Ecosystems (SECO). SECO represents an approach to
analyze relationships among players of software industry in which organizations must
engage in a perspective that considers both their own business and third parties.
As a research field, SECO analyzes the software industry as a networked
industry. Concepts from biological (Moore, 1993) and business (Iansiti & Levien, 2004)
ecosystems inspired the SECO field. However, Messerschmitt & Szyperski (2003) have
started the scientific research on SECO with their book. It is the oldest reference in the
Software Engineering area and has been supported by several citations found in primary
and secondary studies already published in the literature. Serebrenik & Mens (2016)
point out Microsoft as an example of a SECO in their meta-analysis for the SECO
research. In turn, we have identified that many studies and reviews were conducted
towards a body of knowledge for the SECO field. In this paper, we preliminarily analyze
some of them in order to provide an initial overview of the SECO literature. As such,
we included Systematic Mapping Studies (SMSs), Systematic Literature Reviews (SLR)
and Personal Opinion Surveys (POS) on the SECO research in our analysis. Our
I Workshop sobre Aspectos Sociais, Humanos e Econômicos de Software (WASHES 2016)
81
intention is to aid researchers to know relevant opportunities to foster the field’s
evolution, such as collaborative governance. This paper is organized as follows: in
Section 2, we present related work; in Section 3, we explain the research approach; in
Section 4, we discuss preliminary outcomes; and in Section 5, we conclude the paper.
2. Related Work
In the SECO research field, natural ecosystems’ concepts are generally accepted. The
business ecosystems’ perspective is considered as well, since the SECO field inherits
properties from both natural and business ecosystems. Santos & Werner (2011) worked
on such concepts from 2009 to 2010 and organized them in three perspectives known as
architecture, strategies/tactics, and social networks. In turn, Hanssen & Dybå (2012)
provided theoretical foundations for the SECO field. They proposed a framework to
guide and support future directions. Based on a SMS, Barbosa et al. (2013) concluded
that SECO research is concentrated in eight main areas, and the most relevant are open
source software, ecosystem modeling, and business issues. They analyze SECOs in three
dimensions: technical, business, and social. Manikas & Hansen (2013) also addressed
those dimensions in a SLR on SECO research and provide an overview of the field.
Jansen et al. (2013) summarize a collection of studies that cover several aspects,
such as SECO definitions, business network management, and SECO visualization and
analysis. Fotrousi et al. (2014) provide an overview of existing research on the SECO
performance with an SMS. In a SLR study, Franco-Bedoya et al. (2014) explore part of
the literature of open source software for identifying quality measures and provide a
quality model for the quality assessment in SECO. Axelsson & Skoglund (2015) focus
on quality assurance challenges that exist in traditional development practices and also
carry over to ecosystems. To complement the collection of reviews, Manikas (2016)
provides an updated study on the field in order to document its evolution over the past
years. According to the study, literature in SECO has evidenced signs of maturity.
3. Research Approach
Inspired by the work of Wohlin et al. (2013) and by the procedures of Petersen et al.
(2015), our research follows four steps (we are focused on the step 2 at this moment).
Step 1 aims to select secondary studies on the SECO research according to the
following criteria: (1) SMS/SLR studies in SECO; (2) expert reviews in SECO using ad
hoc literature selection that adopted some practices of SLR/SMS; and (3) POS studies in
SECO. Step 2 consists of applying the method proposed by Cruzes & Dybå (2011)
regarding the levels of interpretation in thematic synthesis. The process of highlighting
segments of the text of each study was started with the use of spreadsheets. Step 3
examines the results in order to reduce the overlapping, and translates codes into
themes. Furthermore, this step involves the process of grouping the initial codes into a
smaller number of sets and interpretations to create a model with higher-order themes.
Step 4 aims to ensure the reliability of research outcomes by recognizing the limitations
of study and how they affect the results. The main threat is the selection of studies and
individual bias in the assessment of those studies. Although we have identified few
secondary studies well known in the community based on related conferences,
workshops and special issues, some works may have been left out of our study.
I Workshop sobre Aspectos Sociais, Humanos e Econômicos de Software (WASHES 2016)
82
4. Initial Results and Discussion
For step 1, we selected nine studies that are SLR/SMS, expert reviews or POS in the
SECO research field. After performing an initial analysis of this set of studies, we found
some preliminary results that we describe bellow. The selected studies are in Table 1.
Table 1. Set of secondary studies on SECO field and its classifications.
Study Authors Research methods Publication venues
S1 Hanssen & Dybå (2012) Some practices of SMS/SLR Conferences/workshops
S2 Barbosa et al. (2013) SMS Conferences/workshops
S3 Jansen et al. (2013) Set of scientific studies Scientific book
S4 Manikas & Hansen (2013) SLR Journal
S5 Franco-Bedoya et al. (2014) SLR Conferences/workshops
S6 Fotrousi et al (2014) SMS Conferences/workshops
S7 Axelsson & Skoglund (2015) SMS Journal
S8 Manikas (2016) SMS Journal
S9 Serebrenik & Mens (2016) POS Conferences/workshops
Outcomes in S3, S6, and S8 identify that the SECO field was inspired by several
other fields. Some of them bring concepts of natural, business and digital ecosystems,
and proposes new definitions for SECO. In spite of proposing a suitable overlapping and
interrelation of the concepts found in the set of studies, we suggest that the social,
technical and business perspectives discussed as the key dimensions for SECO (S1, S2,
S3, and S6) can be seen as the three levels or themes of governance. As concluded in
S8, there is an intersection between Information Technology governance and SECO.
One relevant aspect is the decision-making regarding who makes decisions in a SECO
(and how to do it) (S2, S3, S4, and S7). Regarding the support for the platform
development, a challenge is to provide an actor of a SECO with information to make
SECO management activities feasible in order to assist platform updates (S7). An
approach to represent such concepts is to use definitions such as codes, themes, and
high-order themes, as proposed by Cruzes & Dybå (2011). Codes can be defined as
interesting concepts, categories, findings, and results of studies. A theme describes and
organizes possible observations and/or interprets aspects of a phenomenon. Once
themes are identified, they can be explored and interpreted to create a model consisting
of higher-order themes and relationships among them. Preliminary themes presented in
this study are represented in a mind-map, i.e., a tool used to do it, as recommended by
Cruzes & Dybå (2011). As such, Figure 1 shows a visual illustration to help sorting the
different codes into themes and finally in higher-order themes.
Figure 1. SECO concepts in the context of governance
In Figure 1, governance is seen as a higher-order theme that includes decision-
making regarding what best strategies are needed for the actors’ survival in any SECO,
in any role, taking into account social, technical, and business perspectives as themes.
Moreover, concepts of business such as evolution, management and requirements are
I Workshop sobre Aspectos Sociais, Humanos e Econômicos de Software (WASHES 2016)
83
defined as codes in the context of SECO, as identify in S9, S2, and S8, respectively.
These three themes are linked to SECO governance, as presented in Figure 1. There is
an interrelation between each theme, even though they are represented in isolation. Once
SECO comprises software development activities in which people take an important
role, governance also covers social aspects (S1, S2, S7, and S9), relationships inside the
communities, and levels of collaboration (S1, S2, S3, S6, S7, and S9). For each
ecosystem participant, for example, there are many demands on how to be (and keep as)
a leader, as well as relations with other perspectives, such as technical and business (and
vice-versa). As identified in S2, S3, S6, S7, and S8, strategic decision-making in the
SECO context can be reflected in the software (and organizational) structure by
applying specific rules in the common technological infrastructure.
On the technical governance theme, there are codes such as architectural issues,
as identified in S1, S2, S3, S4, and S8. They are subsets of the development process
concerns in the context of SECO. In turn, S8 argues that a software architecture in
SECO supports the ecosystem nature (i.e., be flexible to meet the needs of a specific
SECO), management, and business model. Furthermore, patterns and architectural styles
need to address other governance themes in order to create better and more reusable
platforms. In turn, on the business theme, S1, S2, S8 and S9 identify that the ecosystem
management can define, for example, how simple it is for new members to be engaged
in a SECO. Moreover, the business model can attract new actors, while the way the
software is produced and the common infrastructure’s and products’ architectures can
influence actors’ relationships and should reflect SECO management (S1, S2, and S3).
On the context of governance, for example, S9 identifies evolution as a key
aspect for the success of a SECO. Once the evolution is related to the business model of
a SECO regarding how close/open a SECO is in terms of its platform, procedures and
processes are expected to emerge to determine the future evolution of the SECO. S5
discusses evolution as a sub-characteristic of ecosystem quality. Study S5 also defines
quality as one dimension the software platform in which the ecosystem’s projects are
built upon; for example, the Android SECO provides the Android platform used by all
the Android mobile apps. In spite of changes or evolution of the platform, how can
external developers contribute to partially-closed and -controlled SECO’s platforms,
such as Apple/iPhone? In this regards, the business model can influence a community of
organizations or developers that base their relations to each other on a common interest.
Regarding to the relations of actors on a common interest, a software developer
assumes ownership or responsibility of part of the software (S2). Either an open or a
closed platform that is defined by the business model may influence important social
factors that affect an ecosystem, such as recognition from peers, sense of community,
and sense of code ownership, as identified in S2. In tum, the business theme defines the
SECO architecture that influences the social perspective, i.e., cooperation/knowledge
sharing with multiple and independent entities (S2). On the technical level of
governance, there is a need to link the process requirements (S7) with a proper
management as part of the software development in the context of business governance.
In S5, we identify this relation from business to evolution and requirements in open
source SECOs. Such link supports the quality assurance as a way to prevent bad
decisions and avoid problems, as well as allow verifying the compliance with the
requirements and the business goals.
I Workshop sobre Aspectos Sociais, Humanos e Econômicos de Software (WASHES 2016)
84
5. Conclusions and Future Work
In this paper, we preliminarily analyzed studies and reviews in the SECO field in order
to provide an initial overview of related literature. We selected a set of nine studies and
extracted codes into themes for providing some relevant opportunities to foster the
field’s evolution, such as collaborative governance. Once this study aimed to provide an
initial synthesis by using high-order themes previously presented, we intend to use other
tools such as thematic networks, tables, and tree-maps for a depth understanding of the
relationships of governance as the central-topic of these themes in a future work. We
hope that our preliminary outcomes aid researchers to know future directions according
to what is already addressed in the studies in SECO, since SECO field has demonstrated
signs of maturity and affect the treatment of economic and social aspects of software.
Acknowledgements
The second author thanks CNPq (Proc. No. PDJ 150539/20016-9) for financial support.
References
Axelsson, J., Skoglund, M. (2015) “Quality Assurance in Software Ecosystems: A Systematic Literature
Mapping and Research Agenda”. The Journal of Systems and Software 114(2016):69-81.
Barbosa, O. et al. (2013) “A Systematic Mapping Study on Software Ecosystems through a Three-
dimensional Perspective”. In: Jansen, S. et al. (eds.) Software Ecosystems: Analyzing and Managing
Business Networks in the Software Industry, Edward Elgar Publishing, 59-81.
Cruzes, D.S., Dybå, T. (2011) “Recommended Steps for Thematic Synthesis in Software Engineering”.
5th Intl. Symposium on Empirical Software Engineering and Measurement, Banff, Canada, 275-284.
Franco-Bedoya, O. et al. (2014) “QuESo: A Quality Model for Open Source Software Ecosystems”. In:
9th International Conference on Software Engineering and Applications, Vienna, Austria, 209–221.
Fotrousi, F. et al. (2014) KPIs for Software Ecosystems: A Systematic Mapping Study”. In: 5th Intl.
Conference on Software Business, Paphos, Cyprus, 194-211.
Hanssen, G.K., Dybå, T. (2012) “Theoretical Foundations of Software Ecosystems”. In: 4th International
Workshop on Software Ecosystems, Cambridge, USA, 6-17.
Jansen, S., Brinkkemper, S., Cusumano, M.A. (2013) “Software Ecosystems: Analyzing and Managing
Business Networks in the Software Industry”. Edward Elgar Publishing.
Iansiti, M., Levien, R. (2004) “Strategy as Ecology”. Harvard Business Review 82(3):68-78
Manikas, K. (2016) “Revisiting Software Ecosystems Research: A Longitudinal Literature Study”. The
Journal of Systems and Software 117(2016):84-103.
Manikas, K. Hansen, K.M. (2013) “Software Ecosystems – A Systematic Literature Review”. The Journal
of Systems and Software 86(5):1294-1306.
Messerschmitt, D.G., Szyperski, C. (2003) “Software Ecosystems, Understanding an Indispensable
Technology and Industry”. Cambridge: The MIT Press.
Moore, J.F. (1993) “Predators and Prey: A New Ecology of Competition”. Harvard Business Review
71(3):75-86.
Petersen, K., Vakkalanka, S., Kuzniarz, L. (2015) “Guidelines for Conducting Systematic Mapping
Studies in Software Engineering: An Update”. Information and Software Technology 64(2015):1-18.
Santos, R., Werner, C. (2011) “Treating Business Dimension in Software Ecosystems”. In: 3rd ACM/IFIP
Intl. Conference on Management of Emergent Digital EcoSystems, San Francisco, USA, 197-201.
Serebrenik, A., Mens, T. (2016) “Challenges in Software Ecosystems Research”. In: 9th European
Conference on Software Architecture Workshops, Dubrovnik/Cavtat, Croatia, Article No. 40.
Wohlin, C. et al. (2013) “On the Reliability of Mapping Studies in Software Engineering”. The Journal of
Systems and Software 86(10):2594-2610.
I Workshop sobre Aspectos Sociais, Humanos e Econômicos de Software (WASHES 2016)
85
... Para van den Berk et al. [64], um ECOS pode ser visto como um tipo de ecossistema de negócio, termo este criado nos anos 1990 pelas Escolas de Administração para estudar uma nova forma de observar certas redes de negócios [16]. Estes ecossistemas possuem basicamente três elementos [18]: centralizador (hub), plataforma (tecnologia ou mercado) e [65]. Uma das razões é o fato de que a literatura de ecossistemas de negócio provê uma base sólida, mas não voltada para o mercado de software, o que impede o seu uso direto [64]. ...
... Para van den Berk et al. [64], um ECOS pode ser visto como um tipo de ecossistema de negócio, termo este criado nos anos 1990 pelas Escolas de Administração para estudar uma nova forma de observar certas redes de negócios [16]. Estes ecossistemas possuem basicamente três elementos [18]: centralizador (hub), plataforma (tecnologia ou mercado) e [65]. Uma das razões é o fato de que a literatura de ecossistemas de negócio provê uma base sólida, mas não voltada para o mercado de software, o que impede o seu uso direto [64]. ...
Conference Paper
Full-text available
Um ecossistema de software (ECOS) é um conjunto de atores e artefatos, internos e externos a uma organização ou comunidade, que trocam recursos e informações centrados em uma plataforma tecnológica comum. Este contexto tem afetado decisões de arquitetura, de governança e de colaboração, nos mais variados domínios de aplicação. Torna-se necessário integrar mecanismos e ferramentas para apoiar a troca de informações, recursos e artefatos, bem como assegurar a comunicação e interação entre desenvolvedores e usuários. O objetivo deste capítulo é apresentar como o contexto de ECOS afeta o projeto e desenvolvimento de plataformas para jogos e entretenimento digital. Para isso, os principais conceitos e estratégias de ECOS serão discutidos, seguidos pela organização de mecanismos e ferramentas para modelar/analisar plataformas para jogos e entretenimento digital.
Conference Paper
Full-text available
Open source software has witnessed an exponential growth in the last two decades and it is playing an increas-ingly important role in many companies and organizations leading to the formation of open source software ecosystems. In this paper we present a quality model that will allow the evaluation of those ecosystems in terms of their relevant quality characteristics such as health or activeness. To design this quality model we started by analysing the quality measures found during the execution of a systematic literature review on open source software ecosystems and, then, we classified and reorganized the set of measures in order to build a solid quality model.
Conference Paper
Full-text available
To create value with a software ecosystem (SECO), a platform owner has to ensure that the SECO is healthy and sustainable. Key Performance Indicators (KPI) are used to assess whether and how well such objectives are met and what the platform owner can do to improve. This paper gives an overview of existing research on KPI-based SECO assessment using a systematic mapping of research publications. The study identified 34 relevant publications for which KPI research and KPI practice were extracted and mapped. It describes the strengths and gaps of the research published so far, and describes what KPI are measured, analyzed, and used for decision-making from the researcher's point of view. For the researcher, the maps thus capture state-of-knowledge and can be used to plan further research. For practitioners, the generated map points to studies that describe how to use KPI for managing of a SECO.
Conference Paper
The paper is a meta-analysis of the research field of software ecosystems, by method of surveying 26 authors in the field. It presents a relevant list of literature and six themes in which challenges for software ecosystems can be grouped: Architecture and Design, Governance, Dynamics and Evolution, Data Analytics, Domain-Specific Ecosystems Solutions, and Ecosystems Analysis. As such, it provides a roadmap for future research in the field.
Book
This book describes the state-of-the-art of software ecosystems. It constitutes a fundamental step towards an empirically based, nuanced understanding of the implications for management, governance, and control of software ecosystems. © Slinger Jansen, Sjaak Brinkkemper and Michael A. Cusumano 2013. All rights reserved.
Article
‘Software ecosystems’ is argued to first appear as a concept more than 10 years ago and software ecosystem research started to take off in 2010. We conduct a systematic literature study, based on the most extensive literature review in the field up to date, with two primarily aims: (a) to provide an updated overview of the field and (b) to document evolution in the field. In total, we analyze 231 papers from 2007 until 2014 and provide an overview of the research in software ecosystems. Our analysis reveals a field that is rapidly growing, both in volume and empirical focus, while becoming more mature. We identify signs of field maturity from the increase in: (i) the number of journal articles, (ii) the empirical models within the last two years, and (iii) the number of ecosystems studied. However, we note that the field is far from mature and identify a set of challenges that are preventing the field from evolving. We propose means for future research and the community to address them. Finally, our analysis shapes the view of the field having evolved outside the existing definitions of software ecosystems and thus propose the update of the definition of software ecosystems.
Article
Software ecosystems is becoming a common model for software development in which different actors cooperate around a shared platform. However, it is not clear what the implications are on software quality when moving from a traditional approach to an ecosystem, and this is becoming increasingly important as ecosystems emerge in critical domains such as embedded applications. Therefore, this paper investigates the challenges related to quality assurance in software ecosystems, and identifies what approaches have been proposed in the literature. The research method used is a systematic literature mapping, which however only resulted in a small set of six papers. The literature findings are complemented with a constructive approach where areas are identified that merit further research, resulting in a set of research topics that form a research agenda for quality assurance in software ecosystems. The agenda spans the entire system life-cycle, and focuses on challenges particular to an ecosystem setting, which are mainly the results of the interactions across organizational borders, and the dynamic system integration being controlled by the users.
Article
Context Systematic mapping studies are used to structure a research area, while systematic reviews are focused on gathering and synthesizing evidence. The most recent guidelines for systematic mapping are from 2008. Since that time, many suggestions have been made of how to improve systematic literature reviews (SLRs). There is a need to evaluate how researchers conduct the process of systematic mapping and identify how the guidelines should be updated based on the lessons learned from the existing systematic maps and SLR guidelines. Objective To identify how the systematic mapping process is conducted (including search, study selection, analysis and presentation of data, etc.); to identify improvement potentials in conducting the systematic mapping process and updating the guidelines accordingly. Method We conducted a systematic mapping study of systematic maps, considering some practices of systematic review guidelines as well (in particular in relation to defining the search and to conduct a quality assessment). Results In a large number of studies multiple guidelines are used and combined, which leads to different ways in conducting mapping studies. The reason for combining guidelines was that they differed in the recommendations given. Conclusion The most frequently followed guidelines are not sufficient alone. Hence, there was a need to provide an update of how to conduct systematic mapping studies. New guidelines have been proposed consolidating existing findings.
Article
A software ecosystem is the interaction of a set of actors on top of a common technological platform that results in a number of software solutions or services. Arguably, software ecosystems are gaining importance with the advent of, e.g., the Google Android, Apache, and Salesforce.com ecosystems. However, there exists no systematic overview of the research done on software ecosystems from a software engineering perspective. We performed a systematic literature review of software ecosystem research, analyzing 90 papers on the subject taken from a gross collection of 420. Our main conclusions are that while research on software ecosystems is increasing (a) there is little consensus on what constitutes a software ecosystem, (b) few analytical models of software ecosystems exist, and (c) little research is done in the context of real-world ecosystems. This work provides an overview of the field, while identifying areas for future research.