Increasing Awareness in Distributed Software Development Workspaces Marco A.S. Mangan 1,2 , Marcos R.S. Borges 3 , and Claudia M.L. Werner 1 1 Programa de Engenharia de Sistemas e Computa¸c˜ ao – COPPE/UFRJ, Brazil {mangan,werner}@cos.ufrj.br http://www.cos.ufrj.br/~odyssey 2 Faculdade de Inform´atica/PUCRS, Brazil mangan@inf.pucrs.br 3 ucleo de Computa¸ ao Eletrˆonica and Instituto de Matem´atica/UFRJ, Brazil mborges@nce.ufrj.br Abstract. This work presents a middleware for collaborative applica- tions that increase product and workspace awareness information avail- able to users of computer-aided software engineering tools. This mid- dleware-based approach helps application developers to construct en- hanced tools, adapted to specific needs, reusing software components and existing applications. These enhanced tools must be designed to overcome some of the technical difficulties of collaboration in distributed software development scenarios, like the need of monitoring changes in remote workspaces. This paper describes the middleware architecture and intended usage, presents examples of enhanced tools, and proposes future case studies. 1 Introduction In the last decades, many organizations have adopted remotely located facilities and outsourcing in software production. Global Software Development (GSD) must deal with the strategic, technical and cultural issues of participants and teams dispersed over time and physically distant [5]. Distributed Software Devel- opment Environments (DSDEs) try to provide software developers with facilities that help to overcome some of the difficulties imposed by the separation over time and distance. For instance, communication and awareness breakdown inside virtual development teams are difficulties that are dealt with such environments. Collaboration facilities range from shared repositories, on-line and off-line com- munication channels to coordination and awareness mechanisms. This work deals with the difficulties of constructing such environments, and, in particular, on obtaining and managing awareness information. The most chal- lenging problems are that the enhanced environment should provide (a) adequate support for software development activities and, conversely, (b) useful awareness information for software developers. We propose a middleware-based approach that enables the creation of shared workspaces on top of pre-existent software G.-J. de Vreede et al. (Eds.): CRIWG 2004, LNCS 3198, pp. 84–91, 2004. c Springer-Verlag Berlin Heidelberg 2004