2,620 research outputs found

    Simulated self-organization of a peer to peer awareness network

    Get PDF
    A simulation process and tool used to test and evaluate the algorithms necessary to optimally arrange a peer-to-peer distributed awareness system for Software Engineering

    A self-organising awareness system for distributed software engineering

    Get PDF
    Software engineers and other collaborative disciplines rely on informal "out-of-band" communication for ef- fective coordination of their activities, especially in agile methods. This type of communication is lost when development is distributed, with consequent deleterious effects on engineer effectiveness. In order to effectively support distributed software engineering, a replacement for this informal communication must be found. Much previous research focussed on either synchronous awareness such as radar views and shared editors, where participants were distributed in space not time, or asynchronous awareness such as change notification, which did not explicitly support concurrent activities. A unified approach is necessary to support software engineering. Furthermore, requiring co-location of engineering teams is not possible in today's marketplace where development is often outsourced, consequently a definite requirement for awareness tools to replace informal communication exists. To implement an awareness tool capable of providing awareness of activities distributed both in time (asyn- chronous awareness) and space (synchronous awareness). The tool will not rely on a centralised reflector; instead information will be distributed over a peer-to-peer network arranged using a self-organisation algorithm. Consequently awareness information need not travel more than a few hops from its originating peer, reducing network load and increasing relevance of information received. Unlike reflector-based CSCW systems, the network will scale and will not have a single point of failure in the reflector. Furthermore, without the need to setup a reflector, there is the capability for ad-hoc awareness, using low-complexity peer discovery by local broadcast for example. The tool will be integrated with the Eclipse development environment. The files a user is currently editing will determine the data they are interested in and fuzzy similarity metrics will be used to compare the collections of each peer in the network in order to drive the self-organisation process. To evaluate the success of self-organisation, a simulation approach will be used before deploying the algorithms in the wild. To evaluate the effectiveness of the awareness provision, initial deployment and controlled experiments will be conducted within the Distributed Software Engineering group at the University of Lincoln and a later version of the tool will be trialled with existing Eclipse user

    WETICE 2004 Evaluating Collaborative Enterprises (ECE) Workshop - Final report

    Get PDF
    A summary of the fifth Evaluating Collaborative Enterprises (ECE) workshop which ran on June 14th at University of Modena, Italy. The overall theme of the workshop this year was evaluation within the software lifecyle rather than as a separate activity. Each of the five papers touched on this subject and the subsequent winner of Best Paper covered it thoroughly. Concerns about the level of interactivity within the workshop and WETICE itself prompted a format change to ``paired-paper'' sessions with plenty of discussion time. Several outstanding issus were identified during the discussion, including development of ``evaluation components'' alongside software components, the need to convince managers of the business case for evaluation and meta-evaluation of popular techniques with a view to avoiding studies that select inappropriate techniques or rely too heavily on one type of technique

    Historical awareness support and its evaluation in collaborative software engineering

    Get PDF
    The types of awareness relevant to collaborative soft- ware engineering are identified and an additional type, "historical awareness" is proposed. This new type of awareness is the knowledge of how software artefacts re- sulting from collaboration have evolved in the course of their development. The types of awareness that different software engineer- ing environment architectures can support are discussed. A way to add awareness support to our existing OSCAR sys- tem, a component of the GENESIS software engineering platform, is proposed. Finally ways of instrumenting and evaluating the awareness support offered by the modified system are outlined

    Supporting collaborative grid application development within the escience community

    Get PDF
    The systemic representation and organisation of software artefacts, e.g. specifications, designs, interfaces, and implementations, resulting from the development of large distributed systems from software components have been addressed by our research within the Practitioner and AMES projects [1,2,3,4]. Without appropriate representations and organisations, large collections of existing software are not amenable to the activities of software reuse and software maintenance, as these activities are likely to be severely hindered by the difficulties of understanding the software applications and their associated components. In both of these projects, static analysis of source code and other development artefacts, where available, and subsequent application of reverse engineering techniques were successfully used to develop a more comprehensive understanding of the software applications under study [5,6]. Later research addressed the maintenance of a component library in the context of component-based software product line development and maintenance [7]. The classic software decompositions, horizontal and vertical, proposed by Goguen [8] influenced all of this research. While they are adequate for static composition, they fail to address the dynamic aspects of composing large distributed software applications from components especially where these include software services. The separation of component co-ordination concerns from component functionality proposed in [9] offers a partial solution

    Evaluation of an awareness distribution mechanism: a simulation approach

    Get PDF
    In distributed software engineering, the role of informal communication is frequently overlooked. Participants simply employ their own ad-hoc methods of informal communication. Consequently such communication is haphazard, irregular, and rarely recorded as part of the project documentation. Thus, a need for tool support to facilitate more systematic informal communication via awareness has been identified. The tool proposed is based on the provision of awareness support that recognises the complete context of the evolution of software artefacts rather than single events. Peer-to-Peer (P2P) networking has been successfully employed to develop various distributed software engineering support tools. However, there are scalability problems inherent in naive P2P networks. To this end a semantic overlay network organisation algorithm has been developed and tested in simulation prior to deployment as part of a forthcoming awareness extension to the Eclipse environment. The simulation verified that the self-organisation algorithm was suitable for arranging a P2P network, but several unexpected behaviours were observed. These included wandering nodes, starved nodes, and local maxima. Each of these problems required modification of the original algorithm design to solve or ameliorate them
    corecore