228,040 research outputs found

    Evaluating groupware support for software engineering students

    Get PDF
    Software engineering tasks, during both development and maintenance, typically involve teamwork using computers. Team members rarely work on isolated computers. An underlying assumption of our research is that software engineering teams will work more effectively if adequately supported by network-based groupware technology. Experience of working with groupware and evaluating groupware systems will also give software engineering students a direct appreciation of the requirements of engineering such systems. This research is investigating the provision of such network-based support for software engineering students and the impact these tools have on their groupwork. We will first describe our experiences gained through the introduction of an asynchronous virtual environment ­ SEGWorld to support groupwork during the Software Engineering Group (SEG) project undertaken by all second year undergraduates within the Department of Computer Science. Secondly we will describe our Computer Supported Cooperative Work (CSCW) module which has been introduced into the students' final year of study as a direct result of our experience with SEG, and in particular its role within Software Engineering. Within this CSCW module the students have had the opportunity to evaluate various groupware tools. This has enabled them to take a retrospective view of their experience of SEGWorld and its underlying system, BSCW, one year on. We report our findings for SEG in the form of a discussion of the hypotheses we formulated on how the SEGs would use SEGWorld, and present an initial qualitative assessment of student feedback from the CSCW module

    The 3C cooperation model applied to the classical requirement analysis

    Get PDF
    Aspects related to the users' cooperative work are not considered in the traditional approach of software engineering, since the user is viewed independently of his/her workplace environment or group, with the individual model generalized to the study of collective behavior of all users. This work proposes a process for software requirements to address issues involving cooperative work in information systems that provide distributed coordination in the users' actions and the communication among them occurs indirectly through the data entered while using the software. To achieve this goal, this research uses ergonomics, the 3C cooperation model, awareness and software engineering concepts. Action-research is used as a research methodology applied in three cycles during the development of a corporate workflow system in a technological research company. This article discusses the third cycle, which corresponds to the process that deals with the refinement of the cooperative work requirements with the software in actual use in the workplace, where the inclusion of a computer system changes the users' workplace, from the face to face interaction to the interaction mediated by the software. The results showed that the highest degree of users' awareness about their activities and other system users contribute to a decrease in their errors and in the inappropriate use of the system

    An investigation into computer support for cooperative work in software engineering groups

    Get PDF
    The research of this thesis relates to Computer Supported Cooperative Work (CSCW) in the context of software engineering, and in particular software engineering education. Whilst research into group working has tended to be directed towards CSCW, very little research has been undertaken on group working within software engineering. Linked with CSCW is groupware, which is the class of tools that supports and augments groupwork. This thesis represents an attempt to contribute to the understanding of the groupware needs of software engineers, and to identify and trial groupware that supports software engineering activities. An infrastructure has been developed providing virtual environments, for use by both collocated and geographically distributed software engineering students, to support their groupwork. This infrastructure comprises of synchronous and asynchronous groupware, in the form of desktop video conferencing, and a shared information workspace. This shared workspace has been tailored from the groupware tool, Basic Support for Cooperative Work (BSCW).Within this thesis, hypotheses have been formulated as to the student use of these virtual environments. These hypotheses concentrate on the areas of: organisation and coordination of tasks, the level of cooperation that occurs within the phases of the software lifecycle, the usage of the functions within a shared workspace, and what importance is placed on the role of synchronous communication within software engineering student groupwork. Through a series of case studies it was possible to determine the outcome of these hypotheses using various data collection methods. These methods include questionnaires, focus group meetings, observations, and automatic monitoring of workspace activities. The outcomes of this thesis are that the hypotheses regarding organisation and coordination, and, the role of synchronous communication within software engineering, have been proved. Whilst the determination of the level of cooperation during the phases of the software lifecycle has not been proved, the use of functions within the shared workspace has been partly proved

    Two Case Studies of Subsystem Design for General-Purpose CSCW Software Architectures

    Get PDF
    This paper discusses subsystem design guidelines for the software architecture of general-purpose computer supported cooperative work systems, i.e., systems that are designed to be applicable in various application areas requiring explicit collaboration support. In our opinion, guidelines for subsystem level design are rarely given most guidelines currently given apply to the programming language level. We extract guidelines from a case study of the redesign and extension of an advanced commercial workflow management system and place them into the context of existing software engineering research. The guidelines are then validated against the design decisions made in the construction of a widely used web-based groupware system. Our approach is based on the well-known distinction between essential (logical) and physical architectures. We show how essential architecture design can be based on a direct mapping of abstract functional concepts as found in general-purpose systems to modules in the essential architecture. The essential architecture is next mapped to a physical architecture by applying software clustering and replication to achieve the required distribution and performance characteristics

    Tool construction for the British Airways SEE with the O<inf>2</inf> ODBMS

    Get PDF
    Software engineering environments (SEE) support the construction and maintenance of large-scale software systems. They integrate tools for the production and maintenance of documents such as requirements definitions, architecture definitions or user manuals. Very few SEE tools meet all the developers' requirements. Some requirements that are important in practice have not been appropriately addressed. These are inter-document consistency handling, version and configuration management and cooperative work. We claim that the reason for current tools not meeting these requirements is the fact that the required database support for maintaining documents is only now becoming available. The British Airways SEE meets these new requirements. Its tools were constructed using the O2 object database management system, which has been extended to become a database management system for software engineering. We discuss the experiences we made during tool construction for this SEE

    A synchronous cooperative architecture for the PROSOFT software engineering environment

    Get PDF
    This paper shows the evolution of a software engineering environment (SEE) called PROSOFT to support the formal development of groupware applications. This environment, which is centered in the data-driven approach for software development, evolved to support cooperation in the software development process. Its transition is founded in a client/server communication model called Distributed PROSOFT that provides software mechanisms to permit concurrent use of the environment resources. Thus, this paper presents a formal model that provides an object middleware with synchronous handling and version support for the objects created with the software tools integrated to the environment. Cooperative PROSOFT is presented as an architecture for the formal development of groupware applications that permits the formal validation of cooperative applications specified under its paradigm. A consequence of this work is the integration of the advantages found in formal specification techniques to the groupware development that provides the development of higher quality groupware applications than those obtained with the use of traditional techniques.Ingeniería de SoftwareRed de Universidades con Carreras en Informática (RedUNCI
    • …
    corecore