Learn More
Projects where developers are geographically distributed and with high personnel turnover are usually considered to be hard to manage. Any organisation that successfully handles such projects merits closer analysis so that lessons can be learned and good practice disseminated. Open Source Software projects represent such a case. One important factor is good(More)
The activities of configuration management and version control are common to a number of engineering tasks. These activities are particularly important for software engineers since they, during most of a system life cycle, have to deal with a growing number of versions of a single component, and to rebuild the complete system in different ways using(More)
Distributed projects are generally recognized as being more complex and adding a number of new challenges to project management. Configuration management (CM) can be considered the infrastructure of all types of project being they co-located or distributed and lack of CM or badly implemented CM will hurt any type of project. In this paper, we take a closer(More)
Versioning of components in a system is a well-researched field where various adequate techniques have already been established. In this paper, we look at how versioning can be extended to cover also the structural aspects of a system. There exist two basic techniques for versioning intentional and extensional and we propose a unified extensional versioning(More)
Any organisation that produces high quality software merits a closer analysis of their methods such that good techniques can be transferred to other organisations. Open Source Software projects is such a case. We make explicit their underlying process for handling change management and analyse to what extent their success can be attributed to good process,(More)
In this paper we report on our experiences from developing and using a tool to provide optimal support during cooperative development of hierarchical documents. The main problems in cooperative work is to maintain an overview of how the document is evolving, and at the same time to maintain a complete version history. We extend traditional version control(More)
This paper reports on experience from teaching basic software engineering concepts by using Extreme Programming in a second year undergraduate course taken by 107 students. We describe how this course fits into a wider programme on software engineering and technology and report our experience from running and improving the course. Particularly important(More)