984 research outputs found

    Constructing Temporal Networks of OSS Programming Language Ecosystems

    Full text link
    One of the primary factors that encourage developers to contribute to open source software (OSS) projects is the collaborative nature of OSS development. However, the collaborative structure of these communities largely remains unclear, partly due to the enormous scale of data to be gathered, processed, and analyzed. In this work, we utilize the World Of Code dataset, which contains commit activity data for millions of OSS projects, to build collaboration networks for ten popular programming language ecosystems, containing in total over 290M commits across over 18M projects. We build a collaboration graph representation for each language ecosystem, having authors and projects as nodes, which enables various forms of social network analysis on the scale of language ecosystems. Moreover, we capture the information on the ecosystems' evolution by slicing each network into 30 historical snapshots. Additionally, we calculate multiple collaboration metrics that characterize the ecosystems' states. We make the resulting dataset publicly available, including the constructed graphs and the pipeline enabling the analysis of more ecosystems.Comment: Accepted to SANER 202

    Open source software ecosystems : a systematic mapping

    Get PDF
    Context: Open source software (OSS) and software ecosystems (SECOs) are two consolidated research areas in software engineering. OSS influences the way organizations develop, acquire, use and commercialize software. SECOs have emerged as a paradigm to understand dynamics and heterogeneity in collaborative software development. For this reason, SECOs appear as a valid instrument to analyze OSS systems. However, there are few studies that blend both topics together. Objective: The purpose of this study is to evaluate the current state of the art in OSS ecosystems (OSSECOs) research, specifically: (a) what the most relevant definitions related to OSSECOs are; (b) what the particularities of this type of SECO are; and (c) how the knowledge about OSSECO is represented. Method: We conducted a systematic mapping following recommended practices. We applied automatic and manual searches on different sources and used a rigorous method to elicit the keywords from the research questions and selection criteria to retrieve the final papers. As a result, 82 papers were selected and evaluated. Threats to validity were identified and mitigated whenever possible. Results: The analysis allowed us to answer the research questions. Most notably, we did the following: (a) identified 64 terms related to the OSSECO and arranged them into a taxonomy; (b) built a genealogical tree to understand the genesis of the OSSECO term from related definitions; (c) analyzed the available definitions of SECO in the context of OSS; and (d) classified the existing modelling and analysis techniques of OSSECOs. Conclusion: As a summary of the systematic mapping, we conclude that existing research on several topics related to OSSECOs is still scarce (e.g., modelling and analysis techniques, quality models, standard definitions, etc.). This situation calls for further investigation efforts on how organizations and OSS communities actually understand OSSECOs.Peer ReviewedPostprint (author's final draft

    Exploring usability discussions in open source development

    Get PDF
    The public nature of discussion in open source projects provides a valuable resource for understanding the mechanisms of open source software development. In this paper we explore how open source projects address issues of usability. We examine bug reports of several projects to characterise how developers address and resolve issues concerning user interfaces and interaction design. We discuss how bug reporting and discussion systems can be improved to better support bug reporters and open source developers

    Software Supply Chain Development and Application

    Get PDF
    Motivation: Free Libre Open Source Software (FLOSS) has become a critical componentin numerous devices and applications. Despite its importance, it is not clear why FLOSS ecosystem works so well or if it may cease to function. Majority of existing research is focusedon studying a specific software project or a portion of an ecosystem, but FLOSS has not been investigated in its entirety. Such view is necessary because of the deep and complex technical and social dependencies that go beyond the core of an individual ecosystem and tight inter-dependencies among ecosystems within FLOSS.Aim: We, therefore, aim to discover underlying relations within and across FLOSS projects and developers in open source community, mitigate potential risks induced by the lack of such knowledge and enable systematic analysis over entire open source community through the lens of supply chain (SC).Method: We utilize concepts from an area of supply chains to model risks of FLOSS ecosystem. FLOSS, due to the distributed decision making of software developers, technical dependencies, and copying of the code, has similarities to traditional supply chain. Unlike in traditional supply chain, where data is proprietary and distributed among players, we aim to measure open-source software supply chain (OSSC) by operationalizing supply chain concept in software domain using traces reconstructed from version control data.Results: We create a very large and frequently updated collection of version control data in the entire FLOSS ecosystems named World of Code (WoC), that can completely cross-reference authors, projects, commits, blobs, dependencies, and history of the FLOSS ecosystems, and provide capabilities to efficiently correct, augment, query, and analyze that data. Various researches and applications (e.g., software technology adoption investigation) have been successfully implemented by leveraging the combination of WoC and OSSC.Implications: With a SC perspective in FLOSS development and the increased visibility and transparency in OSSC, our work provides potential opportunities for researchers to conduct wider and deeper studies on OSS over entire FLOSS community, for developers to build more robust software and for students to learn technologies more efficiently and improve programming skills

    Coopetition in an open-source way : lessons from mobile and cloud computing infrastructures

    Get PDF
    An increasing amount of technology is no longer developed in-house. Instead, we are in a new age where technology is developed by a networked community of individuals and organizations, who base their relations to each other on mutual interest. Advances arising from research in platforms, ecosystems, and infrastructures can provide valuable knowledge for better understanding and explaining technology development among a network of firms. More surprisingly, recent research suggests that technology can be jointly developed by rival competing firms in an open-source way. For instance, it is known that the mobile device makers Apple and Samsung continued collaborating in open-source projects while running expensive patent wars in the courts. On top of multidisciplinary theory in open-source software, cooperation among competitors (aka coopetition) and digital infrastructures, I (and my coauthors) explored how rival firms cooperate in the joint development of open-source infrastructures. While assimilating a wide variety of paradigms and analytical approaches, this doctoral research combined the qualitative analysis of naturally occurring data (QA) with the mining of software repositories (MSR) and social network analysis (SNA) within a set of case studies. By turning to the mobile and cloud computing industries in general, and the WebKit and OpenStack opensource infrastructures in particular, we found out that qualitative ethnographic materials, combined with social network visualizations, provide a rich medium that enables a better understanding of competitive and cooperative issues that are simultaneously present and interconnected in open-source infrastructures. Our research contributes back to managerial literature in coopetition strategy, but more importantly to Information Systems by addressing both cooperation and competition within the development of high-networked open-source infrastructures.Yhä suurempaa osaa teknologiasta ei enää kehitetä organisaatioiden omasta toimesta. Sen sijaan, olemme uudella aikakaudella jossa teknologiaa kehitetään verkostoituneessa yksilöiden ja organisaatioiden yhteisössä, missä toimitaan perustuen yhteiseen tavoitteeseen. Alustojen, ekosysteemien ja infrastruktuurien tutkimuksen tulokset voivat tuottaa arvokasta tietämystä teknologian kehittämisestä yritysten verkostossa. Erityisesti tuore tutkimustieto osoittaa että kilpailevat yritykset voivat yhdessä kehittää teknologiaa avoimeen lähdekoodiin perustuvilla käytännöillä. Esimerkiksi tiedetään että mobiililaitteiden valmistajat Apple ja Samsung tekivät yhteistyötä avoimen lähdekoodin projekteissa ja kävivät samaan aikaan kalliita patenttitaistoja eri oikeusfoorumeissa. Perustuen monitieteiseen teoriaan avoimen lähdekoodin ohjelmistoista, yhteistyöstä kilpailijoiden kesken (coopetition) sekä digitaalisista infrastruktuureista, minä (ja kanssakirjoittajani) tutkimme miten kilpailevat yritykset tekevät yhteistyötä avoimen lähdekoodin infrastruktuurien kehityksessä. Sulauttaessaan runsaan joukon paradigmoja ja analyyttisiä lähestymistapoja case-joukon puitteissa, tämä väitöskirjatutkimus yhdisti luonnollisesti esiintyvän datan kvantitatiivisen analyysin ohjelmapakettivarastojen louhintaan ja sosiaalisten verkostojen analyysiin. Tutkiessamme mobiili- ja pilvipalveluiden teollisuudenaloja yleisesti, ja WebKit ja OpenStack avoimen lähdekoodin infrastruktuureja erityisesti, havaitsimme että kvalitatiiviset etnografiset materiaalit yhdistettyinä sosiaalisten verkostojen visualisointiin tuottavat rikkaan aineiston joka mahdollistaa avoimen lähdekoodin infrastruktuuriin samanaikaisesti liittyvien kilpailullisten ja yhteistyökuvioiden hyvän ymmärtämisen. Tutkimuksemme antaa oman panoksensa johdon kirjallisuuteen coopetition strategy -alueella, mutta sitäkin enemmän tietojärjestelmätieteeseen, läpikäymällä sekä yhteistyötä että kilpailua tiiviisti verkostoituneessa avoimen lähdekoodin infrastruktuurien kehitystoiminnassaUma crescente quantidade de tecnologia não é desenvolvida internamente por uma só organização. Em vez disso, estamos em uma nova era em que a tecnologia é desenvolvida por uma comunidade de indivíduos e organizações que baseiam suas relações umas com as outras numa rede de interesse mútuo. Os avanços teórico decorrentes da pesquisa em plataformas computacionais, ecossistemas e infraestruturas digitais fornecem conhecimentos valiosos para uma melhor compreensão e explicação do desenvolvimento tecnológico por uma rede de multiplas empresas. Mais surpreendentemente, pesquisas recentes sugerem que tecnologia pode ser desenvolvida conjuntamente por empresas rivais concorrentes e de uma forma aberta (em código aberto). Por exemplo, sabe-se que os fabricantes de dispositivos móveis Apple e Samsung continuam a colaborar em projetos de código aberto ao mesmo tempo que se confrontam em caras guerras de patentes nos tribunais. Baseados no conhecimento científico de software de código aberto, de cooperação entre concorrentes (também conhecida como coopetição) e de infraestruturas digitais, eu e os meus co-autores exploramos como empresas concorrentes cooperam no desenvolvimento conjunto de infraestruturas de código aberto. Ao utilizar uma variedade de paradigmas e abordagens analíticas, esta pesquisa de doutoramento combinou a análise qualitativa de dados de ocorrência natural (QA) com a análise de repositórios de softwares (MSR) e a análise de redes sociais (SNA) dentro de um conjunto de estudos de casos. Ao investigar as industrias de technologias móveis e de computação em nuvem em geral, e as infraestruturas em código aberto WebKit e OpenStack, em particular, descobrimos que o material etnográfico qualitativo, combinado com visualizações de redes sociais, fornece um meio rico que permite uma melhor compreensão das problemas competitivos e cooperativos que estão simultaneamente presentes e interligados em infraestruturas de código aberto. A nossa pesquisa contribui para a literatura em gestão estratégica e coompetição, mas mais importante para literatura em Sistemas de Informação, abordando a cooperação e concorrência no desenvolvimento de infraestruturas de código aberto por uma rede the indivíduos e organizações em interesse mútuo

    Digital Curation at Work: Modeling Workflows for Digital Archival Materials

    Get PDF
    This paper describes and compares digital curation workflows from 12 cultural heritage institutions that vary in size, nature of digital collections, available resources, and level of development of digital curation activities. While the research and practice of digital curation continues to mature in the cultural heritage sector, relatively little empirical, comparative research on digital curation activities has been conducted to date. The present research aims to advance knowledge about digital curation as it is currently practiced in the field, principally by modeling digital curation workflows from different institutional contexts. This greater understanding can contribute to the advancement of digital curation software, practices, and technical skills. In particular, the project focuses on the role of open-source software systems, as these systems already have strong support in the cultural heritage sector and can readily be further developed through these existing communities. This research has surfaced similarities and differences in digital curation activities, as well as broader sociotechnical factors impacting digital curation work, including the degree of formalization of digital curation activities, the nature of collections being acquired, and the level of institutional support for various software environments

    A Model of Open Source Software-Based Product Line Development

    Get PDF
    Software Product Line (SPL) and Open Source Software (OSS) have emerged as successful modes of developing software. There is an increased interest in developing suitable approaches for combining the promised advantages of SPL andOSS. Researchers and practitioners have been emphasizing the need of exploiting the ever growing repositories ofOSScomponents for developing SPLs. However, there is no conceptual model for guiding the process of developing OSS-based SPLs. In this paper, we propose a model for developing software product line using open source software. This paper identifies and elaborates the essential phases and activities of the proposed model of developing OSS-based SPLs. This model emphasizes the vital role of software architecture and asserts that software architectures ofOSScan be exploited to establish a SPL. To demonstrate this, we have evaluated Eclipse’s architecture for its potential to support different flavors of a system

    Open source software ecosystems quality analysis from data sources

    Get PDF
    Background: Open source software (OSS) and software ecosystems (SECOs) are two consolidated research areas in software engineering. The adoption of OSS by firms, governments, researchers and practitioners has been increasing rapidly in the last decades, and in consequence, they find themselves in a new kind of ecosystem composed by software communities,foundations, developers and partners, namely Open Source Software Ecosystem (OSSECO). In order to perform a systematic quality evaluation of a SECO, it is necessary to define certain types of concrete elements. This means that measures and evaluations should be described (e.g., through thresholds or expert judgment). The quality evaluation of an OSSECO may serve several purposes, for example: adopters of the products of the OSSECO may want to know about the liveliness of the OSSECO (e.g., recent updates); software developers may want to know about the activeness (e.g., how many collaborators are involved and how active they are); and the OSSECO community itself to know about the OSSECO health (e.g., evolving in the right direction). However, the current approaches for evaluating software quality (even those specific for open source software) do not cover all the aspects relevant in an OSSECO from an ecosystem perspective. Goal: The main goal of this PhD thesis is to support the OSSECO quality evaluation by designing a framework that supports the quality evaluation of OSSECOs. Methods: To accomplish this goal, we have used and approach based on design science methodology by Wieringa [1] and the characterization of software engineering proposed by M. Shaw [2], in order to produce a set of artefacts to contribute in thequality evaluation of OSSECOs and to learn about the effects of using these artefacts in practice. Results: We have conducted a systematic mapping to characterize OSSECOs and designed the QuESo framework (a framework to evaluate the OSSECO quality) composed by three artifacts: (i) QuESo-model, a quality model for OSSECOs; (ii) QuESoprocess, a process for conducting OSSECO quality evaluations using the QuESo-model; and (iii) QuESo-tool, a software component to support semi-automatic quality evaluation of OSSECOs. Furthermore, this framework has been validated with a case study on Eclipse. Conclusions: This thesis has contributed to increase the knowledge and understanding of OSSECOs, and to support the qualityevaluation of OSSECOs. [ntecedentes: el software de código abierto (OSS, por sus siglas en inglés) y los ecosistemas de software (SECOs, por sus siglas en inglés) son dos áreas de investigación consolidadas en ingeniería de software. La adopción de OSS por parte de empresas, gobiernos, investigadores y profesionales se ha incrementado rápidamente en las últimas décadas, y, en consecuencia, todos ellos hacen parte de un nuevo tipo de ecosistema formado por comunidades de software, fundaciones, desarrolladores y socios denominado ecosistema de software de código abierto. (OSSECO, por sus siglas en inglés)). Para realizar una evaluación sistemática de la calidad de un SECO, es necesario definir ciertos tipos de elementos concretos. Esto significa que tanto las métricas como las evaluaciones deben ser descritos (por ejemplo, a través de datos históricos o el conocimiento de expertos). La evaluación de la calidad de un OSSECO puede ser de utilidad desde diferentes perspectivas, por ejemplo: los que adoptan los productos del OSSECO pueden querer conocer la vitalidad del OSSECO (por ejemplo, el número de actualizaciones recientes); los desarrolladores de software pueden querer saber sobre la actividad del OSSECO (por ejemplo, cuántos colaboradores están involucrados y qué tan activos son); incluso la propia comunidad del OSSECO para conocer el estado de salud del OSSECO (por ejemplo, si está evolucionando en la dirección correcta). Sin embargo, los enfoques actuales para evaluar la calidad del software (incluso aquellos específicos para el software de código abierto) no cubren todos los aspectos relevantes en un OSSECO desde una perspectiva ecosistémica. Objetivo: El objetivo principal de esta tesis doctoral es apoyar la evaluación de la calidad de OSSECO mediante el diseño de un marco de trabajo que ayude a la evaluación de la calidad de un OSSECO. Métodos: Para lograr este objetivo, hemos utilizado un enfoque basado en la metodología design science propuesta por Wieringa [1]. Adicionalmente, nos hemos basado en la caracterización de la ingeniería de software propuesta por M. Shaw [2], con el fin de construir un conjunto de artefactos que contribuyan en la evaluación de la calidad de un OSSECO y para conocer los efectos del uso de estos artefactos en la práctica. Resultados: Hemos realizado un mapeo sistemático para caracterizar los OSSECOs y hemos diseñado el marco de trabajo denominado QuESo (es un marco de trabajo para evaluar la calidad de los OSSECOs). QuESo a su vez está compuesto por tres artefactos: (i) QuESo-model, un modelo de calidad para OSSECOs; (ii) QuESo-process, un proceso para llevar a cabo las evaluaciones de calidad de OSSECOs utilizando el modelo QuESo; y (iii) QuESo-tool, un conjunto de componentes de software que apoyan la evaluación de calidad de los OSSECOs de manera semiautomática. QuESo ha sido validado con un estudio de caso sobre Eclipse. Conclusiones: esta tesis ha contribuido a aumentar el conocimiento y la comprensión de los OSSECOs, y tambien ha apoyado la evaluación de la calidad de los OSSECOsPostprint (published version

    Software Engineering in the IoT Context: Characteristics, Challenges, and Enabling Strategies

    Get PDF
    L'abstract è presente nell'allegato / the abstract is in the attachmen

    Public Sector Open Source Software Projects -- How is development organized?

    Full text link
    Background: Open Source Software (OSS) started as an effort of communities of volunteers, but its practices have been adopted far beyond these initial scenarios. For instance, the strategic use of OSS in industry is constantly growing nowadays in different verticals, including energy, automotive, and health. For the public sector, however, the adoption has lagged behind even if benefits particularly salient in the public sector context such as improved interoperability, transparency, and digital sovereignty have been pointed out. When Public Sector Organisations (PSOs) seek to engage with OSS, this introduces challenges as they often lack the necessary technical capabilities, while also being bound and influenced by regulations and practices for public procurement. Aim: We aim to shed light on how public sector OSS projects, i.e., projects initiated, developed and governed by public sector organizations, are developed and structured. We conjecture, based on the challenges of PSOs, that the way development is organized in these type of projects to a large extent disalign with the commonly adopted bazaar model (popularized by Eric Raymond), which implies that development is carried out collaboratively in a larger community. Method: We plan to contrast public sector OSS projects with a set of earlier reported case studies of bazaar OSS projects, including Mockus et al.'s reporting of the Apache web server and Mozilla browser OSS projects, along with the replications performed on the FreeBSD, JBossAS, JOnAS, and Apache Geronimo OSS projects. To enable comparable results, we will replicate the methodology used by Mockus et al. on a purposefully sampled subset of public sector OSS projects. The subset will be identified and characterized quantitatively by mining relevant software repositories, and qualitatively investigated through interviews with individuals from involved organizations.Comment: Registered Report accepted at MSR'2
    corecore