Software development is knowledge-intensive as well as collaborative work carried out by several persons. In this type of education, project-based exercises are conducted in order ...
Agile practices are arguably improving the productivity of small, co-located software development teams. In this paper, we describe an approach that tries to overcome the constrai...
Code clones are generally considered to be an obstacle to software maintenance. Research has provided evidence that it may not always be practical, feasible, or cost-effective to ...
Production of a large-scale software system involves quite a few software components. It is very common to develop such software components in a distributed environment consisting...
Today, most cooperative systems support primarily either asynchronous or synchronous (real time) cooperative work. We feel that both synchronous and asynchronous cooperation are e...