5,166 research outputs found

    A Study of Concurrency Bugs and Advanced Development Support for Actor-based Programs

    Full text link
    The actor model is an attractive foundation for developing concurrent applications because actors are isolated concurrent entities that communicate through asynchronous messages and do not share state. Thereby, they avoid concurrency bugs such as data races, but are not immune to concurrency bugs in general. This study taxonomizes concurrency bugs in actor-based programs reported in literature. Furthermore, it analyzes the bugs to identify the patterns causing them as well as their observable behavior. Based on this taxonomy, we further analyze the literature and find that current approaches to static analysis and testing focus on communication deadlocks and message protocol violations. However, they do not provide solutions to identify livelocks and behavioral deadlocks. The insights obtained in this study can be used to improve debugging support for actor-based programs with new debugging techniques to identify the root cause of complex concurrency bugs.Comment: - Submitted for review - Removed section 6 "Research Roadmap for Debuggers", its content was summarized in the Future Work section - Added references for section 1, section 3, section 4.3 and section 5.1 - Updated citation

    RELEASE: A High-level Paradigm for Reliable Large-scale Server Software

    Get PDF
    Erlang is a functional language with a much-emulated model for building reliable distributed systems. This paper outlines the RELEASE project, and describes the progress in the rst six months. The project aim is to scale the Erlang's radical concurrency-oriented programming paradigm to build reliable general-purpose software, such as server-based systems, on massively parallel machines. Currently Erlang has inherently scalable computation and reliability models, but in practice scalability is constrained by aspects of the language and virtual machine. We are working at three levels to address these challenges: evolving the Erlang virtual machine so that it can work effectively on large scale multicore systems; evolving the language to Scalable Distributed (SD) Erlang; developing a scalable Erlang infrastructure to integrate multiple, heterogeneous clusters. We are also developing state of the art tools that allow programmers to understand the behaviour of massively parallel SD Erlang programs. We will demonstrate the e ectiveness of the RELEASE approach using demonstrators and two large case studies on a Blue Gene

    Coopetition of software firms in Open source software ecosystems

    Get PDF
    Software firms participate in an ecosystem as a part of their innovation strategy to extend value creation beyond the firms boundary. Participation in an open and independent environment also implies the competition among firms with similar business models and targeted markets. Hence, firms need to consider potential opportunities and challenges upfront. This study explores how software firms interact with others in OSS ecosystems from a coopetition perspective. We performed a quantitative and qualitative analysis of three OSS projects. Finding shows that software firms emphasize the co-creation of common value and partly react to the potential competitiveness on OSS ecosystems. Six themes about coopetition were identified, including spanning gatekeepers, securing communication, open-core sourcing and filtering shared code. Our work contributes to software engineering research with a rich description of coopetition in OSS ecosystems. Moreover, we also come up with several implications for software firms in pursing a harmony participation in OSS ecosystems.Comment: This is the author's version of the work. Copyright owner's version can be accessed at https://link.springer.com/chapter/10.1007/978-3-319-69191-6_10, Coopetition of software firms in Open source software ecosystems, 8th ICSOB 2017, Essen, Germany (2017

    GroupRight : collaborative group management system

    Get PDF
    GroupRight is a comprehensive group decision-making platform for simplifying the organization of event scheduling, task management, and mass communication. Consisting of a website, iOS application and an Android application, GroupRight provides convenient tools for groups of all sizes to improve productivity. Users can quickly create and manage dynamic groups so that each member of the group can contribute to the overall system. Likewise, updates from individuals using GroupRights core tools are provided to the entire group to increase each members situational awareness

    Coordination in OSS 2.0: ANT Approach

    Get PDF
    Open source software projects are increasingly driven by a combination of independent and professional developers, the former volunteers and the later hired by a company to contribute to the project to support commercial product development. This mix of developers has been referred to as OSS 2.0. However, we do not fully understand the multi-layered coordination spanning individuals, teams, and organizations. Using Actor-Network Theory (ANT), we describe how coordination and power dynamics unfold among developers and how different tools and artifacts both display activities and mediate coordination efforts. Internal communication within an organization was reported to cause broken links in the community, duplication of work, and political tensions. ANT shows how tools and code can exercise agency and alter a software development process as an equivalently active actor of the scene. We discuss the theoretical and practical implications of the changing nature of open source software development
    • …
    corecore