Reports of software a development projects that miss schedule, exceeds budget and deliver products with poor quality are abundant in the literature. Both researchers and the industry are seeking methods to counter these trends and improve software quality. Software Process Improvement is a systematic approach to improve the capabilities and performance of software organizations. One basic idea is to assess the organizations’ current practice and improve their software process on the basis of the competencies and experiences of the practitioners working in the organization. A major challenge is to create strategies and mechanisms for managing relevant and updated knowledge about software development and maintenance. Insights from the field of knowledge management are therefore potentially useful in software process improvement efforts to facilitate the creation, modification, and sharing of software processes in any organization. In the work presented in this thesis, we have made an overview of empirical studies on the effect of knowledge management in software engineering. We have categorized these studies according to a framework and we report findings on the major concepts that have been investigated empirically, as well as the research methods applied within the field. We have also investigated two main strategies for knowledge management, codification and personalization, through the application of four concrete methods in a software process improvement setting: Mentoring, Rational Unified Process, Process Workshops and Post Mortem Analysis. We have classified the work in this thesis within three main themes: RT1: Previous research on knowledge management in software engineering. RT2: Application of knowledge management to improve the software process through codification of knowledge. RT3: Application of knowledge management to improve the software process through personalization of knowledge. The main contributions are: C1: An overview of the research literature on empirical studies of knowledge management in software engineering. C2: A method for tailoring the Rational Unified Process to the development process of a software consulting company. C3: Improvements of the Process Workshops method by contextualization. C4: Improvement of the root-cause analysis phase of the lightweight Post Mortem Analysis for more effective project retrospectives. C5: Proposed methods to increase the learning effect of mentor programs in software engineering.
Identifer | oai:union.ndltd.org:UPSALLA1/oai:DiVA.org:ntnu-1693 |
Date | January 2007 |
Creators | Bjørnson, Finn Olav |
Publisher | Norges teknisk-naturvitenskapelige universitet, Fakultet for informasjonsteknologi, matematikk og elektroteknikk, Fakultet for informasjonsteknologi, matematikk og elektroteknikk |
Source Sets | DiVA Archive at Upsalla University |
Language | English |
Detected Language | English |
Type | Doctoral thesis, comprehensive summary, info:eu-repo/semantics/doctoralThesis, text |
Format | application/pdf |
Rights | info:eu-repo/semantics/openAccess |
Relation | Doktoravhandlinger ved NTNU, 1503-8181 ; 2007:152 |
Page generated in 0.0249 seconds