You are on page 1of 6

Educating to Achieve Healthy Open Source Ecosystems

Simone da Silva Amorim John D. McGregor


Federal Institute of Education, Clemson University
Science and Technology of Bahia Clemson, USA 29634
Salvador, Brazil 40110 johnmc@clemson.edu
simone.amorim@ifba.edu.br

Eduardo Santana de Almeida Christina von Flach G. Chavez


Federal University of Bahia Federal University of Bahia
Salvador, Brazil 40170 Salvador, Brazil 40170
esa@dcc.ufba.br �ach@dcc.ufba.br
ABSTRACT 1 INTRODUCTION
When developers contribute to an open source software ecosystem Open source ecosystems are changing the scenario of technology
project, they follow practices de�ned by governing authorities, ar- development. There are powerful modern tools available to assist de-
chitects, maintainers, committers, and other stakeholders. Many velopers in starting to contribute to open source projects instead of
of these practices are incorporated into training videos and guide- starting with no resources. The ways to collaborate with a commu-
lines for newcomers to guide the work of contributors, including nity, to develop code, and apply the organizational principles have
architectural practices that in�uence the quality of the software matured. They accelerate innovation and collaboration like never
product and the health of the open source ecosystem. This research seen before[2]. This scenario of growth re�ects the healthy state of
is investigating architectural practices intended to orient and train some open source ecosystems such as Android, KDE, Hadoop, and
newcomers during their �rst contacts with the ecosystem. This others.
includes using the software architecture to trace a picture of how Iansiti and Levien stated that a healthy ecosystem provides
has been built the education to achieve a healthy ecosystem. This “durably growing opportunities for its members and for those who de-
research identi�es architectural practices spread by some training pend on it”[8]. A healthy ecosystem keeps working and growing e�-
resources and analyzes how these practices contribute to achieving ciently, as well as surviving crisis and generating innovation. These
a healthy ecosystem. Our method consisted of a qualitative study attributes are represented by three health indicators: robustness,
conducted with data obtained from various training sources. This productivity, and niche creation. There are some proposals under
research provides empirical support for investigating the existing development to evaluate the health of an ecosystem[4, 6, 10]. Our
education on architectural practices to create healthy open source assumption considers that health states are also created through
ecosystems. practices adopted in the community. Speci�cally, the software ar-
chitecture practices used impact directly on the products and their
CCS CONCEPTS performance. Practices can be validated consistently by address-
• Software and its engineering → Software design engineer- ing speci�c parts of a problem[9]. The use of adequate practices
ing; Software development methods; Open source model; contributes to achieving and keeping the ecosystem healthy.
In addition, practices adopted in an open source ecosystem are
performed by all members of the community. Experienced mem-
KEYWORDS bers already have the knowledge to create and maintain adequate
Software Architecture, Software Practices, Software Ecosystems, practices. However, newcomers are inexperienced and should be
Open Source Systems trained to know and use the adopted practices. Based on the train-
ing received, they will develop their own way-of-working following
ACM Reference format:
the rules of the community. Adequate training will contribute to
Simone da Silva Amorim, John D. McGregor, Eduardo Santana de Almeida,
and Christina von Flach G. Chavez. 2018. Educating to Achieve Healthy e�ciently using architectural practices that impact the ecosystem
Open Source Ecosystems. In Proceedings of 12th Workshop on Distributed health. For this reason, we realized the need to investigate architec-
Software Development, Software Ecosystems and Systems-of-Systems, Madrid, tural practices that are being taught in newcomers’ training. We
Spain, September 2018 (ECSAW’18), 6 pages. analyzed the in�uence of these practices on the health indicators.
DOI: 10.1145/nnnnnnn.nnnnnnn This way, we can establish a scenario describing the education pro-
vided for newcomers to achieve healthy open source ecosystems.
The remainder of the paper is organized as follows: Section 2
Permission to make digital or hard copies of part or all of this work for personal or
classroom use is granted without fee provided that copies are not made or distributed introduces work related to our research. Section 3 presents a descrip-
for pro�t or commercial advantage and that copies bear this notice and the full citation tion of the architectural healthy of software ecosystems. Section 4
on the �rst page. Copyrights for third-party components of this work must be honored.
For all other uses, contact the owner/author(s).
discusses the methodology used to gather the practices. Section 5
ECSAW’18, Madrid, Spain presents the architectural practices collected on this study. Section 6
© 2018 Copyright held by the owner/author(s). 978-x-xxxx-xxxx-x/YY/MM. . . $15.00 discuss in�uence of practices on ecosystem health. The threats to
DOI: 10.1145/nnnnnnn.nnnnnnn
ECSAW’18, September 2018, Madrid, Spain S. Amorim et al.

validity are presented in Section 7. Finally, Section 8 o�ers some natural inputs of innovation into new products and functions e�-
concluding remarks. ciently;and (iii) Niche Creation: the skill of creating an environment
receptive to diversity and new capabilities through integration and
2 RELATED WORK innovation.
Several studies have been conducted considering the barriers for Based on the Iansiti and Levien study, several authors have
newcomers in open source ecosystems [14, 16, 19]. Some of them studied the health of software ecosystems and created evaluation
suggest practices and training to educate these new developers methods[4]. Regarding the necessity of evaluating the health, we in-
[17, 20]; however, we did not �nd studies explicitly considering troduced the concept of Architectural Health of Software Ecosystems
the impact of these practices on the health of software ecosystems. in previous work[3]. This idea is based on the way in which the
Below, we brie�y review some studies that discuss the training of ecosystem creates and maintains the software architecture impact
newcomers and activities to achieve the health of ecosystems. directly on their performance indicators. This way, the architectural
First, considering the training of newcomers, Steinmacher et al. health represents the “weight” of the software architecture issues
introduced guidelines for the two faces of the system: OSS com- on the health of a ecosystem.
munities that desire to attract new developers and newcomers that Going further, we believe that the practices adopted to handle
desire to get involved in OSS communities [20]. The goal of these the software architecture impact directly on the health. So, we infer
guidelines is to help newcomers face the existing barriers to engag- that through evaluating the architectural practices it is possible to
ing in OSS projects, as well as to enhance the growth and diversity have a notion of the health state concerning architectural issues[3].
of OSS communities. Their results emphasize the need for OSS Moreover, regarding practices Jacobson et al. advocates that the use
communities to pay attention to socialization factors that retain of practices is more e�cient than using processes because they can
newcomers. de�ne and encompass di�erent ways of working [9]. Reinforcing the
In another work, Sarma et al. investigated the learning of new- belief that by assessing practices we can gather di�erent scenarios
comers in the BugExchange ecosystem. This ecosystem organizes related to ecosystem health.
tasks from OSS projects and helps train newcomers. The idea is In our previous study [3], we introduced that the architectural
to help newcomers to know how to begin making contributions health can be analyzed considering seven key areas that grouped
and/or how to choose appropriate tasks to develop. Through ade- practices in accordance with their purpose. These key areas are:
quate training, newcomers gain an understanding about the project (i) Architectural Knowledge (AK) - related to manage all learning
and can contribute to keeping the work organized. The information about the software architecture; (ii) External Management (EM) -
available about the ecosystem will provide the correct support for related to manage the interfaces third-party developers; (iii) Choice
deciding how to work e�ciently. of Technology (CH) - refers to choose the best technologies to attend
Finally, regarding the health of ecosystems, Wnuk et al. presented and support the ecosystem community; (iv) Resource Management
an exploratory case study about governance activities and how they (RM) - encompasses practices to manage tools, hardware, people, etc.
prevent or improve the health of ecosystems [21]. They evaluated required by the ecosystem; (v) Design-Making (DM) - encompasses
the governance model applied by the Application Development practices related to create and build the architecture to meet the
Partner (ADP) software ecosystem considering the degree to which functional requirements; (vi) Quality Management (QM) - refers
the ecosystem performed governance activities: performing no to manage the quality of the various structures designed into the
activities, performing a partial set of activities, and performing architecture; (vii) Changes Management (CM) - related to maintain
a full set of activities. Their outcomes showed the percentage of the changes and reduce the impact caused by the changes on the
activities executed, and these activities do not follow completely a software architecture.
governance model proposed by Jansen and Cusumano[11, 12]. We can envision that to achieve a healthy ecosystem it is neces-
These studies described training issues for newcomers in OSS sary the ecosystem organization to attract and train the developers
projects, and a model of evaluation of the health a�ecting gover- to adopt healthy architectural practices. This is particularly the case
nance activities. The studies provide di�erent perspectives that when these developers are newcomers, through adequate training
should be considered about the impact of the newcomer activities they could contribute to the ecosystem becoming more healthy.
on the health of the ecosystem. We use this work as the base for our
investigation about the training to achieve a healthy ecosystem. 4 METHODOLOGY
In this section, we introduce the main research objectives, the
3 ARCHITECTURAL HEALTH OF context in which the study was conducted, and the approach used
ECOSYSTEMS to investigate architectural practices in the literature and a real-
world ecosystem.
In 2012, Iansiti and Levien introduced a framework to evaluate
the health of a business ecosystem[8]. From the idea of biological
ecosystems, they created the framework to understand the behav- 4.1 Objectives
ior of large, loosely-connected networks. Focusing on operational Looking for growth and prosperity software ecosystems work to
characteristics of an entire ecosystem, they de�ned three health attract and keep new contributors. To facilitate the process of en-
indicators that represent the state of health of the ecosystem. They gagement, the organization adopts several architectural practices
are: (i) Robustness: the capability to handle disturbances while related with guidance and training for newcomers developers. The
staying alive over time; (ii) Productivity: the ability to transform goal of this study is to know how newcomers are accepted and
Educating to Achieve Healthy Open Source Ecosystems ECSAW’18, September 2018, Madrid, Spain

also trained to accomplish and maintain the health of an open Table 1: Research Studies about Newcomers
source ecosystem concerning architectural practices adopted by the
ecosystem organization. To perform this, we capture and analyze Identity Research Study
S1 Overcoming Open Source Project Entry Barriers with a Portal for
architectural practices that are used to facilitate the engagement of Newcomers[19]
newcomers. We also examine the in�uence of these practices on S2 Let me in: Guidelines for the Successful Onboarding of Newcomers
the health of these open source ecosystems. Based on this goal, we to Open Source Projects[20]
S3 Lessons Learned from Teaching Open Source Software
de�ned the two following research questions: Development[14]
S4 How Modern News Aggregators Help Development Communities
RQ1: What are the architectural practices that are focused Shape and Share Knowledge[1]
S5 Producing Open Source Software: How to Run a Successful Free
on the engaging process in open source ecosystems? This re- Software Project[5]
search question is intended to identify architectural practices used S6 Newcomer Integration and Learning in Technical Support Com-
munities for Open Source Software[18]
for accepting and training newcomers about open source ecosys-
S7 Beyond Pretty Pictures: Examining the Bene�ts of Code Visualiza-
tems. tion for Open Source Newcomers[15]

RQ2: How do the architectural practices used to accept and


train newcomers in open source ecosystems in�uence the Applying two empirical methods, we collected and analyzed data
ecosystem health? This research question is intended to discover to gather practices to connect to each health indicator. In the rest
how the architectural practices taught to newcomers in�uence of this section, we describe more detail about the methods.
the ecosystem health through the health indicators: productivity, Literature Review - We found six studies describing recommen-
robustness, and niche creation in open source ecosystems. dations or o�ering some guidance for the ecosystem organization
and newcomers about engaging on open source ecosystems. In each
4.2 Context study the authors investigate barriers for newcomers and provide
some guidance to facilitate the engagement process. We extracted
The real-world ecosystem that we investigated is the KDE ecosys-
from these studies speci�c architectural practices recommended
tem1 . This is an open source community dedicated to develop a set
for ecosystem organization. Some practices were reported by two
of multi-platform applications projected to work on GNU/Linux,
or more authors, so we collected each practice and conducted a
FreeBSD, Solaris Microsoft Windows, and Apple Mac OSX. KDE
crossed analysis to summarize and avoid redundancies. From the
o�ers several applications for communication, work, education
literature review, we selected 29 architectural practices. Table 1
and entertainment, as well as it provides a platform that supports
shows the studies included on our literature review.
building new applications.
Netnography - Our netnographic-based method included pro-
KDE has existed for 20 years and has around 5,539 contribu-
cedures such as planning, input, data collection, interpretation and
tors representing 57,899,444 lines of code. The main programing
adherence to ethical standards. We analyzed websites which the
language is C++ and the most popular project is a desktop called
KDE ecosystem provided for newcomers to extract initial informa-
Plasma[7]. KDE has a speci�c website2 for newcomers where it of-
tion. Also, we analyzed six videos available on Youtube3 provided
fers some guidelines to engage the community. In addition KDE has
by KDE Brazilian community to attract new developers and facili-
some communities focused on disseminating and strengthening the
tate their engagement. Three videos show KDE videoconference
work carried out by the open source ecosystem. One of them, the
episodes called “Engrenagem”. These episodes introduce the KDE
Brazilian community, has organized activities to attract newcomers.
ecosystem for beginners, including sessions of questions and an-
There are some training materials, including video-classes available
swers to clarify the process of engagement. Other three videos are
on the internet used for this purpose.
video-classes focused on introducing the KDE ecosystem and their
interactions with other ecosystems, installing technologies and
4.3 Approach preparing the development environment to work on contributions.
The research approach used to investigate the architectural prac- When we were transcribing the video recordings for this study, we
tices encompasses two empirical methods. First, we conducted a searched for answers to identify architectural practices adopted on
literature review to identify architectural practices reported in stud- KDE ecosystem. During coding and identi�cation of practices we
ies about guidelines for newcomers in open source ecosystems. mapped relevant statements of actions to support the knowledge
Second, we performed a netnographic-based method to extract of the practices. Figure 1 shows the research approach used for the
practices from training material for newcomers on the internet. netnographic-based study.
Netnography “adapts the common ethnographic procedures of partic-
ipant observation to the peculiar contingencies of computer-mediated 5 RESEARCH RESULTS
social interaction: alteration, accessibility, anonymity, and archiv- In this section, considering the research question RQ1: What are the
ing”[13]. We performed our netnographic-based study on the KDE architectural practices that are focused on the engaging process in open
ecosystem to gather architectural practices. source ecosystems?, we describe speci�cs architectural practices re-
ported in the literature review and also found by the netnographic-
based study. Table 2 shows a summary with 29 practices. We
1 http://www.kde.org/
2 https://community.kde.org/Get_Involved 3 www.youtube.com
ECSAW’18, September 2018, Madrid, Spain S. Amorim et al.

provide information about how to report translation mistakes (P17)


help to control the work inside the community avoiding misun-
derstandings. Similarly, practices as: provide unit test automation
for main functionalities (P28) and provide an automated process
to launch release of applications (P29) reduce the probability of
human mistakes mainly coming from newcomers.
Productivity - Several actions are needed to transform inputs
into new products and functions e�ciently. The productivity is
highly a�ected by the majority of practices related to newcom-
ers. We observed 22 practices connected to productivity directly.
Practices such as providing generation of (semi-)automated docu-
mentation �ltered to up-to-date information relevant to newcomers
(P3), answer questions on mailing list quickly (P4), and create a
detailed step-by-step tutorial linking information about common
problems and possible solutions (P6) accelerate the identi�cation of
tasks to be performed by newcomers. They also allow newcomers to
work independently and reduce the time required to search support-
ing information. Joint practices such as provide proper indications
to enable newcomers to �nd the artifacts that need to be changed
(P26) and provide information about dependencies among artifacts
(P27) facilitate the change management performed by newcomers
and reduces the possibility of improper changes avoiding rework.
Figure 1: Netnographic Method[13] In addition, provide documentation about translation rules that
developers must follow to prepare code to other languages (P18),
provide a virtual machine with pre-con�gured build environments,
grouped each practice considering architectural key areas more web-based IDEs, or a container management tool (P22), and provide
proper with their characteristics. We found 18 practices for Archi- a message template for newcomers interact with the community
tectural Knowledge (AK) area, 9 practices for External Management (P25) facilitate the �rst interactions with the community and guide
(EM) area, 2 practices for Change Management (CM) area, and 2 newcomers to keep the focus on working instead of losing time
practices for Quality Management (QM) area. Table 2 also shows looking for con�guration data.
the type of source where the practice was collected: literature re- Niche Creation - Creating an environment receptive to di-
view or netnographic-based method. For studies from the literature versity and new capabilities requires several e�orts to keep the
review we identi�ed the research study following the �eld Identity ecosystem attractive. 16 practices were identi�ed interfering on
from table 1. For example, practice P1 was found on the study S2 - niche creation. The ecosystem should receive newcomers by facili-
Let me in: Guidelines for the Successful Onboarding of Newcomers to tating their training and work. Practices as: establish mentorship
Open Source Projects. through designating a few experienced members to communicate
Considering the research question RQ2: How do architectural with new members (P5), provide a newcomer-speci�c page or portal
practices used to accept and train newcomers in open source ecosystems guiding their �rst steps (P1), and provide a dictionary to newcomers
in�uence the ecosystem health?, we analyzed the practices gathered to learn the technical jargon and acronyms of the community (P11)
from RQ1 and connected them to health indicators: robustness, facilitate the engagement process for newcomers allowing them to
productivity, and niche creation. We believe that these practices focus their e�ort on creating new functionalities or applications
exert relevant in�uences on the health indicators. Table 2 also shows instead of losing time trying to understand the ecosystem environ-
the relationship between practices and health indicators. ment. Further the existence of a manifest explaining requirements
Robustness - In spite of obstacles the software ecosystems for an application belonging to the ecosystem (P14) and the gen-
should be capable of facing problems and continue working to eration of (semi-)automated documentation �ltered to up-to-date
achieve success. Considering this idea we observed that 19 practices information relevant to newcomers (P3) inform the newcomer what
in�uence the robustness of the ecosystem. First, among these prac- they can do to innovate and how to integrate their ideas into the
tices studied, we observed that when the software ecosystem o�ers ecosystem.
updated information to newcomers, it avoids components being
modi�ed causing complications. So practices such as: identify and
6 DISCUSSION
dismiss outdated information on website (P2), provide visual infor-
mation such as the class diagrams or dependency views, and code The analysis presented in the previous section exempli�es the con-
visualization tools (P12), and tag all task in accordance with degree nection of some practices to health indicators. Many practices in�u-
of di�cult(easy, medium, di�cult) (P24) guide newcomers to what ence more than one health indicator. Each action of the ecosystem
to do and in what order, giving con�dence and awareness for their organization to facilitate the engagement of newcomers increases
steps inside the ecosystem. Other practices such as: keep the list of the probability of retaining them longterm so that they increase
tasks updated informing who is working on the solution (P20) and their portfolio of functionalities and applications. Each ecosystem
Educating to Achieve Healthy Open Source Ecosystems ECSAW’18, September 2018, Madrid, Spain

Table 2: Practices x Health Indicators

Practices Key Areas Sources Robustness Productivity Niche Creation


P1. Provide a newcomer-speci�c page or portal guiding their �rst steps, AK S2 3 3
including architectural information
P2. Identify and dismiss outdated information on websites AK S2 3
P3. Provide generation of (semi-)automated documentation �ltered to AK S2 3 3
up-to-date information relevant to newcomers
P4. Answer questions on the mailing list quickly AK S2 3 3 3
P5. Establish mentoring by designating a few experienced members to AK S2 3 3 3
communicate with new members
P6. Create a detailed step-by-step tutorial linking information about com- AK S2 3 3
mon problems and possible solutions
P7. Provide updated documentation about code's organizational structure, AK S2 3 3 3
and how the components, modules, classes, and packages are related to
each other
P8. Support the participation of the ecosystem on aggregators’ sites such AK S4 3 3
as stack over�ow, reddit, hacker news, and so on
P9. Keep documentation organized and indexed providing a level of di�- AK S3 3
cult from beginners to experts
P10. Inform newcomers to write informative subjective lines when desir- AK S6 3
ing an answer of the community. They should post direct-to-the-point
questions
P11. Provide a dictionary to newcomers to facilitate their learning of the AK S6 3 3 3
technical jargon, acronyms of the community
P12. Provide visual information such as the class diagrams or dependency AK S7 3 3 3
views, and code visualization tools
P13. Provide video-classes about introducing the ecosystem, installing AK netnographic 3 3
technologies, con�guring the development environment, and using the
dependencies with other ecosystems
P14. Provide a manifest explaining requirements of an application belong- AK netnographic 3
ing to the ecosystem
P15. Provide videoconference sessions with questions and answers about AK netnographic 3 3 3
relevant topics
P16. Provide information about the translation process (how to participate AK netnographic 3
and tools used)
P17. Provide information about how to report translation mistakes AK netnographic 3
P18. Provide documentation about translation rules that developers must AK netnographic 3 3
follow to prepare code for other languages
P19. Point newcomers to easy tasks �ltered by di�culty, skills needed, EM S1 and S2 3 3
and topics
P20. Keep the list of tasks updated informing about who is working on EM S2 3 3 3
the solution
P21. Setting a code of conduct to avoid mistreatment among members EM S2 3
P22. Provide a virtual machine with pre-con�gured build environments, EM S2 3
web-based IDEs, or a container management tool
P23. Inform newcomers about technical background required. Identify EM S1 3
which speci�c technologies they need to know or they should learn to
achieve their goal of contributing to the ecosystem
P24. Tag all task in accordance with degree of di�culty (easy, medium, EM S1 3 3
di�cult)
P25. Provide a message template for newcomers to use to interact with EM S1 3 3
the community
P26. Provide clear directions to enable newcomers to �nd the artifacts CM S1 3 3
that need to be changed
P27. Provide information about dependencies among artifacts CM S1 3 3
P28. Provide unit test automation for main functionalities QM netnographic 3 3
P29. Provide an automated process to launch release of applications QM netnographic 3 3

establishes their appropriate way-of-working and their approach to could situate newcomers in the ecosystem context in�uencing niche
being pro�table, so newcomers arriving in this environment need to creation.
learn fast and �nd a way to contribute with minimal complications. This is an exploratory study intended to understand the impact
We observed that the 29 practices cover several aspects of the of the newcomers engagement process on the ecosystem health.
engagement process of a newcomer. However, in our collection of Taking consciousness actions to keep and achieve health should
practices we did not see practices directly related to explaining the come from everyone - beginners to experienced members. We did
alignment of business strategies to the technical architecture. So, the not determine how much e�ort is necessary to implement all these
beginner can have some di�culty in understanding the reasoning practices; however, newcomers who are well prepared overcome
behind decisions made by the ecosystem board. The existence of initial obstacles faster. As a result, they can keep the focus on
a short history, showing the last decisions and future directions, working and contributing to achieving a healthy state. Additional
studies are necessary to analyze architectural practices in detail as
ECSAW’18, September 2018, Madrid, Spain S. Amorim et al.

well as empirical studies to consolidate their connection with an [3] Simone da S. Amorim, John D. McGregor, Eduardo S. de Almeida, and Christina
software ecosystem’s health. von F. G. Chavez. 2017. Software Ecosystems’ Architectural Health: Another
View. In Proceedings of the 5th International Workshop on Software Engineering
for Systems-of-Systems and 11th Workshop on Distributed Software Development,
7 THREATS TO VALIDITY Software Ecosystems and Systems-of-Systems (SESoS/WDES ’17).
[4] Simone da Silva Amorim, Félix Simas S. Neto, John D. McGregor, Eduardo Santana
There are some threats to validity for our study. They are described de Almeida, and Christina von Flach Garcia Chavez. 2017. How Has the Health
of So ware Ecosystems Been Evaluated? A Systematic Review. In Proceedings of
and detailed as follows: the 31st Brazilian Symposium on Software Engineering (SBES ’17).
- Generalization of practices: Although we used data from a va- [5] Karl Fogel. 2005. Producing Open Source Software How to Run a Successful Free
riety of projects in our literature review, the �ndings cannot be Software Project. O’Reilly Media.
[6] Oscar Franco-Bedoya, David Ameller, Dolors Costal, and Xavier Franch. 2014.
generalizable to all open source ecosystems. Regarding the practical Measuring the Quality of Open Source Software Ecosystems Using QuESo. ,
veri�cation, we only studied the KDE ecosystem. We are aware of 39-62 pages. https://doi.org/10.1007/978-3-319-25579-8_3
di�erent practices adopted by di�erent open source ecosystems, and [7] Open Hub. 2018. The KDE Open Source Project on Open Hub. https://www.
openhub.net/p/kde. Accessed: 2018-04-29.
that some practices recommended by literature cannot be applied [8] M. Iansiti and R. Levien. 2002. Keystones and Dominators: Framing Operating
in some real-world ecosystems. and Technology Strategy in a Business Ecosystem. Harvard Business School
03-061 (November 2002).
- Incomplete list of practices: Another problem could be that the [9] I. Jacobson, P. W. Ng, and I. Spence. 2007. Enough of Processes – Let’s Do
list of architectural practices is incomplete. We can have forgotten Practices. Journal of Object Technology 6, 6 (2007), 41–66.
some relevant architectural practice. In order to minimize this prob- [10] Slinger Jansen. 2014. Measuring the health of open source software ecosystems:
Beyond the scope of project health. Information and Software Technology 56
lem, we collected practices from recent studies published providing (November 2014), 1508–1519. Issue 11. https://doi.org/10.1016/j.infsof.2014.04.
guidance for newcomers. We also chose to consider only updated 006 Special issue on Software Ecosystems.
pages from the KDE website. [11] Slinger Jansen, Michael Cusumano, and Sjaak Brinkkemper. 2013. Software
Ecosystems: Analyzing and Managing Business Networks in the Software Industry.
- Interpretation of the architectural practices: In order to avoid any Edward Elgar Publishers.
bias of interpretation with architectural practices, we decided to [12] Slinger Jansen and Michael A. Cusumano. 2013. Defning Software Ecosystems:
A Survey of Software Platforms and Business Network Governance. In Software
keep the same description from literature studies and netnographic Ecosystems: Analyzing and Managing Business Networks in the Software Industry,
material such as web pages, tutorials, and video-casts. Slinger Jansen, Sjaak Brinkkemper, and Michael Cusumano (Eds.). Edward Elgar
Publishing, Chapter 1, 13–28. https://doi.org/10.4337/9781781955635.00008
[13] Robert V. Kozinets. 2010. Netnography. Doing Ethnographic Research Online. Sage
8 CONCLUSION Publications.
[14] Becka Morgan and Carlos Jensen. 2014. Lessons Learned from Teaching Open
Achieving a healthy open source software ecosystem involves the Source Software Development. , 133-142 pages.
adoption of adequate practices, development of consistent strategies [15] Yunrim Park and Carlos Jensen. 2009. Beyond Pretty Pictures: Examining the
to attract and retain newcomers, providing extensive training, im- Bene�ts of Code Visualization for Open Source Newcomers. In Proceedings of
the 5th IEEE International Workshop on Visualizing Software for Understanding
plementing guidance policies, and others. Concerning architectural and Analysis (VISSOFT ’09).
practices, these have a direct impact on the quality and survival [16] Gustavo Henrique Lima Pinto, Fernando Figueira Filho, Igor Steinmacher, and
Marco Aurelio Gerosa. 2017. Training Software Engineers Using Open-Source
of the ecosystem products. So, practices used to accept and train Software: The Professors’ Perspective.
newcomers should be proactive to prepare them for contributing to [17] Anita Sarma, Rafael Leano, Marco AurÃľlio Gerosa, and Igor Steinmacher. 2016.
a healthy ecosystem from the start. Realizing this vision requires Training the Future Workforce through Task Curation in an OSS Ecosystem. ,
932-935 pages.
that we investigate and analyze in detail the in�uences of the archi- [18] Vandana Singh. 2012. Newcomer Integration and Learning in Technical Sup-
tectural practices adopted on open source ecosystems concerning port Communities for Open Source Software. In Proceedings of the 17th ACM
the engagement process for newcomers. international conference on Supporting group work (GROUP ’12). 65–74.
[19] Igor Steinmacher, Tayana Uchoa Conte, Christoph Treude, and Marco Aurélio
In this paper, we presented di�erent architectural practices rec- Gerosa. 2016. Overcoming Open Source Project Entry Barriers with a Portal for
ommended by literature to be part of newcomers training. Also, Newcomers.
we performed a case study based on a nethnographic method to [20] Igor Steinmacher, Christoph Treude, and Marco Aurélio Gerosa. 2018. Let me
in: Guidelines for the Successful Onboarding of Newcomers to Open Source
study what practices and how a real-world ecosystem uses these Projects. IEEE Software (2018). https://doi.org/10.1109/MS.2018.110162131
practices for receiving newcomers. Further, we analyzed the impact [21] Krzysztof Wnuk, Konstantinos Manikas, Per Runeson, Matilda Lantz, Oskar Wei-
jden, and Hussan Munir. 2014. Evaluating the Governance Model of Hardware-
of these practices on health indicators. These results will contribute Dependent Software Ecosystems âĂŞ A Case Study of the Axis Ecosystem. In
to our ongoing research proposal of an assessment method for the Proc. of the 4th International Conference on Software Business (ICSOB). 212–226.
architectural health of software ecosystems based on practices [3].

ACKNOWLEDGMENT
The contribution by �rst author Simone Amorim was partially
funded by DPGI-IFBA-Campus Salvador.

REFERENCES
[1] Maurício Aniche, Christoph Treude, Igor Steinmacher, Igor Wiese, Gustavo Pinto,
Margaret-Anne Storey, and Marco AureÌĄlio Gerosa. 2018. How Modern News
Aggregators Help Development Communities Shape and Share Knowledge.
[2] Laurence Bradford. 2018. How Open-Source Development Is Democratizing
The Tech Industry. https://www.forbes.com/sites/laurencebradford/2018/03/26/
how-open-source-development-is-democratizing-the-tech-industry/. Accessed:
2018-04-28.

You might also like