PATRONES DE PROYECTOS PARA GESTIONAR EL CONOCIMIENTO EN ORGANIZACIONES DE DESARROLLO SOFTWARE
Diego Martín de Andrés
Javier García Guzmán
The improvement of software processes within software development organizations is a very complex task that can be solved by following knowledge management strategies. In this area, the definition and use of process patterns is a proven approach to apply knowledge management strategies in software development organizations. One of the main burdens for the effective application of process patterns in the software industry is the difficulty of formalizing knowledge about the development process themselves.
This doctoral thesis presents sdpFramework, a framework to manage software project patterns. This framework is capable of formalizing knowledge regarding software development projects, including software engineers’ previous experience, development methodologies, reference frameworks and lessons learnt. The framework is composed of:
• A model called sdPP, made up by the knowledge elements necessary to cover the knowledge needs of software engineers.
• A methodology that covers the phases of the knowledge life-cycle about project patterns
• A technological platform called sdpReuser, capable of managing the sdPPs during the phases of project patterns’ life cycle.
An embedded case study was carried out during the research of this thesis.
The first part was an empirical study at the University Carlos III of Madrid, where twelve junior software engineers used the project patterns described in this research work. The evidences and findings obtained during from this empirical study indicate that the correctness of the project pattern formalizations depends on the relevance of the bibliographic sources used for their creation, the implementation of strategies to share knowledge among the personnel involved, and the previous experience in the business areas related to the information systems being developed.
In the second part an experimental validation was carried out, where 48 software engineers applied the sdpFramework. From the results obtained, we studied the factors that help improving the software product quality when using the sdPP proposal. We analyzed the effort required to implement the activities proposed by sdPP in order to introduce the knowledge about an sdPP into a development project. Finally, we evaluated the usefulness of the sdPP knowledge elements in each of the phases of its life cycle.
Link to Teseo - Spanish platform for published thesis: