1,812 research outputs found

    Holistic recommender systems for software engineering

    Get PDF
    The knowledge possessed by developers is often not sufficient to overcome a programming problem. Short of talking to teammates, when available, developers often gather additional knowledge from development artifacts (e.g., project documentation), as well as online resources. The web has become an essential component in the modern developer’s daily life, providing a plethora of information from sources like forums, tutorials, Q&A websites, API documentation, and even video tutorials. Recommender Systems for Software Engineering (RSSE) provide developers with assistance to navigate the information space, automatically suggest useful items, and reduce the time required to locate the needed information. Current RSSEs consider development artifacts as containers of homogeneous information in form of pure text. However, text is a means to represent heterogeneous information provided by, for example, natural language, source code, interchange formats (e.g., XML, JSON), and stack traces. Interpreting the information from a pure textual point of view misses the intrinsic heterogeneity of the artifacts, thus leading to a reductionist approach. We propose the concept of Holistic Recommender Systems for Software Engineering (H-RSSE), i.e., RSSEs that go beyond the textual interpretation of the information contained in development artifacts. Our thesis is that modeling and aggregating information in a holistic fashion enables novel and advanced analyses of development artifacts. To validate our thesis we developed a framework to extract, model and analyze information contained in development artifacts in a reusable meta- information model. We show how RSSEs benefit from a meta-information model, since it enables customized and novel analyses built on top of our framework. The information can be thus reinterpreted from an holistic point of view, preserving its multi-dimensionality, and opening the path towards the concept of holistic recommender systems for software engineering

    FLOW EXPERIENCE IN SOFTWARE ENGINEERING: DEVELOPMENT AND EVALUATION OF DESIGN OPTIONS FOR ECLIPSE

    Get PDF
    In positive psychology, flow is described as a holistic mental condition in which an individual delves into an activity with full concentration. Even in software engineering, the promotion of flow experience fosters effects such as positive affect, improved learning, and higher product loyalty in computer-aided environments. However, from a practice-based perspective it is not obvious how to design ICT to support flow experience. With this paper, we, therefore, contribute concrete design implications, paving the way for a good flow experience in ICT. This paper be-gins by examining the current state of flow research in the field of Human-Computer Interaction. We then go on to present a study comprising the development and evaluation of design options that aim to support flow in integrated development environments such as Eclipse, one of the most prominent open-source IDEs. The findings reveal practical implications on the use of four flow design options for software engineering and are integrated into a preliminary research framework

    GUMCARS: General User Model for Context-Aware Recommender Systems

    Get PDF
    Context-Aware Recommender Systems (CARS) are extensions of traditional recommender systems that use information about the context of the user to improve the recommendation accuracy. Whatever the specific algorithm exploited by the CARS, it can provide high-quality recommendations only after having modeled the user and context aspects. Despite the importance of the data models in CARS, nowadays there is a lack of models and tools to support the modeling and management of the data when developing a new CARS, leaving designers, developers and researchers the work of creating their own models, which can be a hard and time-consuming labor, and often resulting in overspecialized or incomplete models. In this paper, we describe GUMCARS - a General User Model for Context-Aware Recommender Systems, where the main goal is to help designers and researchers when creating a CARS by providing an extensive set of User, Context and Item aspects that covers the information needed by different recommendation domains. To validate GUMCARS, two experiments are performed; first, the completeness and generality of the model are evaluated showing encouraging results as the proposal was able to support most of the information loaded from real-world datasets. Then the structural correctness of the model is assessed, the obtained results strongly suggest that the model is correctly constructed according to Object-Oriented design paradigm

    Blinded by Simplicity: Locating the Social Dimension in Software Development Process Literature

    Get PDF
    The software development process is a complex human, intellectual and labor-intensive activity and human related factors have shown to be the most significant contributors to software system failures. Lacking the ability to identify or quantify these factors, software practitioners will not learn from the failures caused by them. Although, social factors give rise to high failure rates in software development projects they tend to be ignored. Business continues as usual. The inability for software engineers to attain a holistic and inclusive approach will leave the social dimension out and undermine the realization of a fully sustainable software development process.This paper builds on the master’s thesis with the same title completed in December 2019 at Stockholm University. The thesis demonstrates how research literature on software development processes addresses (or not) the social dimension of sustainability from a holistic point of view. The results indicate that the practice of dealing holistically with complexity including the social dimension is still underdeveloped. Further research is suggested regarding the development of adequate supporting tools, social skills, and managerial attitudes and behaviors

    Improving fairness in machine learning systems: What do industry practitioners need?

    Full text link
    The potential for machine learning (ML) systems to amplify social inequities and unfairness is receiving increasing popular and academic attention. A surge of recent work has focused on the development of algorithmic tools to assess and mitigate such unfairness. If these tools are to have a positive impact on industry practice, however, it is crucial that their design be informed by an understanding of real-world needs. Through 35 semi-structured interviews and an anonymous survey of 267 ML practitioners, we conduct the first systematic investigation of commercial product teams' challenges and needs for support in developing fairer ML systems. We identify areas of alignment and disconnect between the challenges faced by industry practitioners and solutions proposed in the fair ML research literature. Based on these findings, we highlight directions for future ML and HCI research that will better address industry practitioners' needs.Comment: To appear in the 2019 ACM CHI Conference on Human Factors in Computing Systems (CHI 2019
    • …
    corecore