Investigating Conditioning Factors for Transparency in Software Ecosystems
DOI:
https://doi.org/10.5753/jserd.2024.4086Keywords:
Software Ecosystems, Transparency, Systematic Mapping Study, Field Study, GitHubAbstract
Software Ecosystems (SECO) are a set of actors interacting with a distributed market centered on a common technological platform to develop products and services. In this context, transparency allows third-party developers to learn processes and elements that integrate the SECO platform. This non-functional requirement impacts the coordination of developers and the management of requirements that emerge in SECO. Although it is an essential requirement, there is still a lack of a roadmap on what constitutes transparency in SECO. Thus, this article aims to characterize conditioning factors for transparency in SECO. To do so, we conducted a systematic mapping study (SMS) and a field study to identify and analyze such factors. After investigating the literature, we selected 23 studies to analyze the state-of-the-art about transparency in SECO. Next, we conducted interviews with 16 software developers to characterize the importance of conditioning factors for transparency identified in their interaction with GitHub, a platform to support project-based ecosystems. As results, we obtained a comprehensive view of solutions, conditioning factors, processes, and concerns related to transparency in SECO, whose discussion is centered on three main topics: access to information, communication channels, and requirements engineering. We also present a conceptual framework that structures all the knowledge about transparency in SECO obtained in both studies. Regarding implications for academia and industry, researchers can find a conceptual framework to be used as a foundation for systematic approaches to understanding transparency in SECO. Practitioners can find solutions and conditioning factors that help them to adopt initiatives to contribute to the open flow of information in a SECO and, thus, attract and engage new actors to a common technological platform.
Downloads
References
Barbosa, O., Santos, R. P. d., Alves, C., Werner, C., and Jansen, S. (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, pages 59–84. Edward Elgar Publishing.
Beelen, L., Jansen, S., and Overbeek, S. (2022). Are you of value to me? a partner selection reference method for software ecosystem orchestrators. Science of Computer Programming, 214:102733.
Camelo Rincón, M. S. (2020). Análisis de la transparencia organizacional y el poder económico a partir la teoría de juegos. Revista Universidad y Empresa, 22:257.
Cataldo, M. and Herbsleb, J. (2010). Architecting in software ecosystems: Interface translucence as an enabler for scalable collaboration. In ECSAW’10: Proceedings of the IV European Conference on Software Architecture Workshops, pages 65–72.
Charmaz, K. (2006). Constructing grounded theory: a practical guide through qualitative analysis. Sage Publications, London; Thousand Oaks, Calif.
Chen, Z., Ma, W., Chen, L., and Song, W. (2022). Collaboration in software ecosystems: A study of work groups in open environment. Information and Software Technology, 145:106849.
Corbin, J. and Strauss, A. (2014). Basics of Qualitative Research: Techniques and Procedures for Developing Grounded Theory. SAGE Publications.
Cysneiros, L. M. (2013). Using i* to elicit and model transparency in the presence of other non-functional requirements: A position paper. In Castro, J., Horkoff, J., Maiden, N. A. M., and Yu, E. S. K., editors, Proceedings of the 6th International i* Workshop 2013, Valencia, Spain, June 17-18, 2013, volume 978 of CEUR Workshop Proceedings, pages 19–24. CEUR-WS.org.
Dabbish, L., Stuart, C., Tsay, J., and Herbsleb, J. (2012). Social coding in github: transparency and collaboration in an open software repository. In Proceedings of the ACM 2012 conference on computer supported cooperative work, pages 1277–1286.
Dyba, T., Dingsoyr, T., and Hanssen, G. K. (2007). Applying systematic reviews to diverse study types: An experience report. In First international symposium on empirical software engineering and measurement (ESEM 2007), pages 225–234. IEEE.
Fahl, S., Dechand, S., Perl, H., Fischer, F., Smrcek, J., and Smith, M. (2014). Hey, nsa: Stay away from my market! future proofing app markets against powerful attackers. In Proceedings of the 2014 ACM SIGSAC Conference on Computer and Communications Security, CCS ’14, page 1143–1155, New York, NY, USA. Association for Computing Machinery.
Fontão, A., Cleger-Tamayo, S., Wiese, I., Pereira dos Santos, R., and Claudio Dias-Neto, A. (2021). A developer relations (devrel) model to govern developers in software ecosystems. Journal of Software: Evolution and Process, page e2389.
Goyal, R., Ferreira, G., Kästner, C., and Herbsleb, J. (2018). Identifying unusual commits on github. Journal of Software: Evolution and Process, 30(1):e1893.
Green, H. E. (2014). Use of theoretical and conceptual frameworks in qualitative research. Nurse researcher, 21(6).
Greiler, M., Storey, M.-A., and Noda, A. (2023). An actionable framework for understanding and improving developer experience. IEEE Transactions on Software Engineering, 49(4):1411–1425.
Guest, G., Bunce, A., and Johnson, L. (2006). How many interviews are enough? Field Methods - FIELD METHOD, 18:59–82.
Haenni, N., Lungu, M., Schwarz, N., and Nierstrasz, O. (2014). A quantitative analysis of developer information needs in software ecosystems. In Proceedings of the 2014 European Conference on Software Architecture Workshops, pages 1–6.
Hanssen, G. and Dybå, T. (2012). Theoretical foundations of software ecosystems. In Proceedings of the 4th International Workshop on Software Ecosystems (IWSECO) - 3rd International Conference on Software Business (ICSOB), volume 879, pages 6–17.
Hanssen, G. K. (2012). A longitudinal case study of an emerging software ecosystem: Implications for practice and theory. Journal of Systems and Software, 85(7):1455–1466.
Herbsleb, J. (2016). Building a socio-technical theory of coordination: why and how (outstanding research award). In Proceedings of the 2016 24th ACM SIGSOFT International Symposium on Foundations of Software Engineering, pages 2–10.
Herbsleb, J., Kastner, C., and Bogart, C. (2016). Intelligently transparent software ecosystems. IEEE Software, 33(01):89–96.
Hosseini, M., Shahri, A., Phalp, K., and Ali, R. (2016). A modelling language for transparency requirements in business information systems. In Nurcan, S., Soffer, P., Bajec, M., and Eder, J., editors, Advanced Information Systems Engineering, pages 239–254, Cham. Springer International Publishing.
Hou, F. and Jansen, S. (2023). A systematic literature review on trust in the software ecosystem. Empirical Software Engineering, (8).
Issac, G., Rajendran, C., and Anantharaman, R. (2004). A conceptual framework for total quality management in software organizations. Total Quality Management & Business Excellence, 15(3):307–344.
Jansen, S. (2020). A focus area maturity model for software ecosystem governance. Information and Software Technology, 118:106219.
Jansen, S., Brinkkemper, S., Finkelstein, A., and Bosch, J. (2009). Introduction to the proceedings of the first workshop on software ecosystems. In Proceedings of the First Workshop on Software Ecosystems, CEUR-WS, page 1–2.
Jansen, S., Brinkkemper, S., Souer, J., and Luinenburg, L. (2012). Shades of gray: Opening up a software producing organization with the open software enterprise model. Journal of Systems and Software, 85(7):1495–1510.
Jansen, S., Cusumano, M. A., and Brinkkemper, S. (2013). Software ecosystems: analyzing and managing business networks in the software industry. Edward Elgar Publishing.
Kilamo, T., Hammouda, I., Mikkonen, T., and Aaltonen, T. (2012). From proprietary to open source—growing an open source ecosystem. Journal of Systems and Software, 85(7):1467–1478.
Kitchenham, B. and Charters, S. (2007). Guidelines for performing systematic literature reviews in software engineering. EBSE Technical Report EBSE-2007-01.
Kitchenham, B. A., Budgen, D., and Brereton, P. (2015). Evidence-Based Software Engineering and Systematic Reviews. Chapman & Hall/CRC.
Knauss, E., Damian, D., Knauss, A., and Borici, A. (2014). Openness and requirements: Opportunities and tradeoffs in software ecosystems. In 2014 IEEE 22nd International Requirements Engineering Conference (RE), pages 213–222.
Knauss, E., Yussuf, A., Blincoe, K., Damian, D., and Knauss, A. (2018). Continuous clarification and emergent requirements flows in open-commercial software ecosystems. Requirements Engineering, 23:97–117.
Kon, F., Hazzan, O., Yuklea, H., Cukier, D., and Melo, C. d. O. (2015). A conceptual framework for software startup ecosystems: the case of israel.
Leite, J. C. S. P. and Cappelli, C. (2010). Software transparency. Business & Information Systems Engineering, 2:127–139.
Liao, Z., Wang, N., Liu, S., Zhang, Y., Liu, H., and Zhang, Q. (2019). Identification-method research for open-source software ecosystems. Symmetry, 11(2).
Linåker, J. and Wnuk, K. (2016). Requirements analysis and management for benefiting openness. In 2016 IEEE 24th International Requirements Engineering Conference Workshops (REW), pages 344–349.
Lungu, M. and Lanza, M. (2010). The small project observatory: A tool for reverse engineering software ecosystems. ICSE ’10, page 289–292, New York, NY, USA. Association for Computing Machinery.
Malcher, P., Silva, E., Viana, D., and Santos, R. (2023). What do we know about requirements management in software ecosystems? Requirements Engineering, 28(4):567–593.
Manikas, K. (2016). Revisiting software ecosystems research. Journal of Systems and Software, 117:84–103.
Manikas, K. and Hansen, K. M. (2013). Software ecosystems–a systematic literature review. Journal of Systems and Software, 86(5):1294–1306.
Meireles, A. I., dos Santos, R. P., and Cappelli, C. (2017). Construindo um questionário para avaliar transparência em portais de ecossistemas de software (building a questionnaire to evaluate transparency in software ecosystem portals). In Anais do VIII Workshop sobre Aspectos da Interação Humano-Computador para a Web Social, pages 25–35. SBC.
Meireles, A. I., dos Santos, R. P., and Cappelli, C. (2019). An instrument for the evaluation of transparency mechanisms in software ecosystem portalsalexandre. iSys-Brazilian Journal of Information Systems, 12(2):05–38.
Molder, J. t., Lier, B. v., and Jansen, S. (2011). Clopenness of systems: The interwoven nature of ecosystems. In IWSECO@ ICSOB, pages 52–64. Citeseer.
Monteith, J. Y., McGregor, J. D., and Ingram, J. E. (2014). Proposed metrics on ecosystem health. In Proceedings of the 2014 ACM international workshop on Software-defined ecosystems, pages 33–36.
Motta, R. C., De Oliveira, K. M., and Travassos, G. H. (2018). On challenges in engineering iot software systems. In Proceedings of the XXXII Brazilian symposium on software engineering, pages 42–51, New York, NY, USA. ACM.
Obie, H. O., Ukwella, J., Madampe, K., Grundy, J., and Shahin, M. (2023). Towards an understanding of developers’ perceptions of transparency in software development: A preliminary study. In 2023 38th IEEE/ACM International Conference on Automated Software Engineering Workshops (ASEW), pages 40–45.
Oliveira, J. and Alves, C. (2021). Software ecosystems governance – an analysis of sap and gnome platforms. In 2021 47th Euromicro Conference on Software Engineering and Advanced Applications (SEAA), pages 296–299.
Parahoo, K. (2014). Nursing research: principles, process and issues. Bloomsbury Publishing.
Petersen, K., Vakkalanka, S., and Kuzniarz, L. (2015). Guidelines for conducting systematic mapping studies in software engineering: An update. Information and Software Technology, 64:1–18.
Ralph, P. (2021). Acm sigsoft empirical standards released. SIGSOFT Softw. Eng. Notes, 46(1):19.
Ribeiro, B. B., Costa, C., and Pereira dos Santos, R. (2022). Understanding and analyzing factors that affect merge conflicts from the perspective of software developers. Journal of Software Engineering Research and Development, 10:12:1–12:17.
Runeson, P., Olsson, T., and Linåker, J. (2021). Open data ecosystems — an empirical investigation into an emerging industry collaboration concept. Journal of Systems and Software, 182:111088.
Santos, R., Cappelli, C., Maciel, C., and Leite, J. C. S. d. P. (2016). Transparência em ecossistemas de software. In WDES’16: Anais do X Workshop em Desenvolvimento Distribuído de Software, Ecossistemas de Software e Sistemas-de-Sistemas, pages 75–79, Porto Alegre, RS, Brasil. SBC - Sociedade Brasileira de Computação.
Santos, R. P. d. (2016). Managing and Monitoring Software Ecosystem to Support Demand and Solution Analysis. Tese de doutorado, COPPE/UFRJ, Universidade Federal do Rio de Janeiro, Rio de Janeiro, Brasil.
Schultis, K.-B., Elsner, C., and Lohmann, D. (2014). Architecture challenges for internal software ecosystems: A large-scale industry case study. In Proceedings of the 22nd ACM SIGSOFT International Symposium on Foundations of Software Engineering, pages 542–552.
Setzke, D. S., Böhm, M., and Krcmar, H. (2019). Platform openness: A systematic literature review and avenues for future research.
Shaw, M. (2003). Writing good software engineering research papers. In 25th International Conference on Software Engineering, 2003. Proceedings., pages 726–736. IEEE.
Singer, J., Sim, S. E., and Lethbridge, T. C. (2008). Software engineering data collection for field studies. In Guide to Advanced Empirical Software Engineering, pages 9–34. Springer.
Souza, K. E. S. d., Zacarias, R. O., da Rocha Seruffo, M. C., and Santos, R. P. d. (2020). T2-uxt: A tool to support transparency evaluation in software ecosystems portals. In Proceedings of the 34th Brazilian Symposium on Software Engineering, pages 415–420, New York, NY, USA. ACM.
Steglich, C., Marczak, S., dos Santos, R. P., Guerra, L., Mosmann, L., Moreira, M., and Perin, M. (2023). Factors that affect developers’ decision to participate in a mobile software ecosystem. Journal of Systems and Software, 205:111808.
Valença, G., Kneuper, R., and Rebelo, M. E. (2020). Privacy in software ecosystems - an initial analysis of data protection roles and challenges. In 2020 46th Euromicro Conference on Software Engineering and Advanced Applications (SEAA), pages 120–123.
Vegendla, A., Duc, A. N., Gao, S., and Sindre, G. (2018). A systematic mapping study on requirements engineering in software ecosystems. Journal of Information Technology Research (JITR), 11(1):49–69.
Villamizar, H., Escovedo, T., and Kalinowski, M. (2021). Requirements engineering for machine learning: A systematic mapping study. In 2021 47th Euromicro Conference on Software Engineering and Advanced Applications (SEAA), pages 29–36.
Zacarias, R. O., Gonçalves, R. F., and dos Santos, R. P. (2023). Investigating transparency in software ecosystems. In Proceedings of the XXXVII Brazilian Symposium on Software Engineering, pages 132–141, New York, NY, USA. ACM.
Downloads
Published
How to Cite
Issue
Section
License
Copyright (c) 2024 Rodrigo Oliveira Zacarias, Rodrigo Feitosa Gonçalves, Rodrigo Pereira dos Santos, Patricia Lago
This work is licensed under a Creative Commons Attribution 4.0 International License.