339,735 research outputs found

    Network-aware Evaluation Environment for Reputation Systems

    Get PDF
    Parties of reputation systems rate each other and use ratings to compute reputation scores that drive their interactions. When deciding which reputation model to deploy in a network environment, it is important to find the most suitable model and to determine its right initial configuration. This calls for an engineering approach for describing, implementing and evaluating reputation systems while taking into account specific aspects of both the reputation systems and the networked environment where they will run. We present a software tool (NEVER) for network-aware evaluation of reputation systems and their rapid prototyping through experiments performed according to user-specified parameters. To demonstrate effectiveness of NEVER, we analyse reputation models based on the beta distribution and the maximum likelihood estimation

    Applying Dynamic Integration as a Software Infrastructure for Context-Aware Computing

    Get PDF
    Much of the software engineering literature examines techniques and practices that help us to build systems that we have been building for many years already. While there is merit in seeking ways to raise the floor of software engineering practice, we also have an obligation to research software design issues that push the envelope of existing computing technology. One of the features of future interactive computing environments is that they will provide context-aware services that leverage off of knowledge of a person's physical state and surrounding environment. With the proliferation of network-based computing services that are a characteristic of an emerging ubiquitous computing society, there is a real issue with providing a software infrastructure that will support context-aware services. In this paper, we examine software engineering work on component integration and introduce a prototype infrastructure that provides a dynamic and scalable context-aware computing environment. We will describe how we have applied this component infrastructure to build a futuristic personal information management system involving automatic cooperation between desktop, network and mobile services

    Software Engineering for Development: A Position Statement

    Get PDF
    There is little work on targeted methodologies to develop IT applications and content in a developing world environment. This paper argues for a methodology called Socially Aware Software Engineering that we are busy formulating based on firsthand experience building Information and Communication Technology solutions. Our method is based on a classical user-centred approach from Human Computer Interaction combined with aspects of Participatory Design and cyclical software engineering practises. These approaches are wrapped into an iterative Action Research paradigm in order to directly include the community-based users of our systems. I conclude with suggestions on changing the nature of tertiary curricula in developing countries in a way that integrates this socially aware software engineering methodology

    Requirements engineering in open innovation: a research agenda

    Full text link
    In recent years Open Innovation (OI) has gained much attention and made firms aware that they need to consider the open environment surrounding them. To facilitate this shift Requirements Engineering (RE) needs to be adapted in order to manage the increase and complexity of new requirements sources as well as networks of stakeholders. In response we build on and advance an earlier proposed software engineering framework for fostering OI, focusing on stakeholder management, when to open up, and prioritization and release planning. Literature in open source RE is contrasted against recent findings of OI in software engineering to establish a current view of the area. Based on the synthesized findings we propose a research agenda within the areas under focus, along with a framing-model to help researchers frame and break down their research questions to consider the different angles implied by the OI model

    Transfer Learning for Improving Model Predictions in Highly Configurable Software

    Full text link
    Modern software systems are built to be used in dynamic environments using configuration capabilities to adapt to changes and external uncertainties. In a self-adaptation context, we are often interested in reasoning about the performance of the systems under different configurations. Usually, we learn a black-box model based on real measurements to predict the performance of the system given a specific configuration. However, as modern systems become more complex, there are many configuration parameters that may interact and we end up learning an exponentially large configuration space. Naturally, this does not scale when relying on real measurements in the actual changing environment. We propose a different solution: Instead of taking the measurements from the real system, we learn the model using samples from other sources, such as simulators that approximate performance of the real system at low cost. We define a cost model that transform the traditional view of model learning into a multi-objective problem that not only takes into account model accuracy but also measurements effort as well. We evaluate our cost-aware transfer learning solution using real-world configurable software including (i) a robotic system, (ii) 3 different stream processing applications, and (iii) a NoSQL database system. The experimental results demonstrate that our approach can achieve (a) a high prediction accuracy, as well as (b) a high model reliability.Comment: To be published in the proceedings of the 12th International Symposium on Software Engineering for Adaptive and Self-Managing Systems (SEAMS'17

    Socially Aware Software Engineering for the Developing World

    Get PDF
    While the social effects of Information Technology (IT) have received much attention there is very little work on targeted methodologies to develop IT applications and content in a developing world environment. This paper describes a methodology called Socially Aware Software Engineering we are busy formulating based on firsthand experience building Information and Communication Technology solutions. Our method is based on a classical user-centred approach from Human Computer Interaction combined with aspects of Participatory Design and cyclical software engineering practises. These approaches are wrapped into an iterative Action Research paradigm in order to directly include the community-based users of our systems. We outline three cases studies based on our evolving method. The paper concludes with suggestions on changing the nature of tertiary curricula in developing countries in a way that integrates this socially aware software engineering methodology
    corecore