Ocjp

Páginas: 23 (5596 palabras) Publicado: 29 de junio de 2012
Socio-Technical Support for Knowledge Collaboration in Software Development Tools
Yunwen Ye1,2
1

SRA Key Technology Laboratory, 3-12 Yotsuya, Shinjuku Tokyo 160-0004, Japan 2 Department of Computer Science, University of Colorado Boulder, CO80309, USA
yunwen@cs.colorado.edu

Abstract. Software development is inherently a knowledge-intensive and distributed cognitive activity. From thisperspective, one of the major issues in user-centered software development tools is to provide support for knowledge collaboration between the developer and the external knowledge resources, which include both information in repositories and knowledgeable peers. This paper describes two prototype systems CodeBroker and STeP_IN that we are developing. The two systems combine to provide continuous supportfor the acquisition and application of external knowledge resources, designed to follow a design principle we call layered information-on-demand.

1.

Introduction

Software development is inherently a knowledge-intensive and distributed cognitive activity [16]. It requires knowledge from several different domains. Few developers, if any, have all the knowledge needed in their own heads. Theknowledge is distributed between the developer and the external world [9], and the development of a software system requires learning from and integrating the knowledge of various external knowledge sources in the world. Knowledge in the world comes from cognitive tools that support programming and knowledgeable collaborating peers. The development of software is therefore no longer confined to anindividual software developer but has to rely on distributed cognition by reaching into a complex networked world of information and computer mediated collaboration. Most existing software development tools have not paid enough attention to the above viewpoints: they are either product-oriented or process-oriented. Earlier CASE tools have mainly focused on the management of products generated in theprocess of software development, and those later process-oriented tools have mainly focused on the management of the process that dictates how software development should be conducted. Both groups of tools are methodology-oriented because those tools are developed based on an adopted software development methodology to support and manage activities of software development sanctioned by themethodology. Consequentially, such tools view methodology as the most important thing and thus often

require that programmers adapt their practice to incorporate the new methodology. Needs and concerns of tool users (software developers) are not fully considered. In contrast, the user-centered perspective--in this case, the developer-centered perspective, focuses on the behavior of software developers andaims at providing support for the cognitive process of software development [10]. Since software development is a process of progressive crystallization of software developers’ knowledge into a system, lack of needed knowledge is one of the major reasons that cause poor quality and productivity [8]. To create convivial tools that are consistent with the cognitive process of software developersrequires the provision of means for software developers to acquire the needed external knowledge as easily as possible. Usability of software development tools in this vein goes beyond the careful layout and design of interfaces, but also include considerations of the way when the external information is presented, how the information is accessed and presented. Another major shortcoming of existingsoftware development tools is that most of them are designed to support individual software developer, although the design process now is inherently distributed. Although there are tools that support the coordination and cooperation of developing software systems, such as concurrent version control systems and groupware systems, but those tools mostly considers coordination and cooperation...
Leer documento completo

Regístrate para leer el documento completo.

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS