JUCS - Journal of Universal Computer Science 30(5): 645-673, doi: 10.3897/jucs.110894
Software Process Improvement by Managing Situational Method Engineering Knowledge
expand article infoRazieh Dehghani, Raman Ramsin
‡ Sharif University of Technology, Tehran, Iran
Open Access
Abstract
Organizational processes have been recognized as valuable knowledge assets. Situational Method Engineering (SME) processes are particularly valuable as they are used for engineering other processes: SME processes help construct bespoke Software Development Methodologies (SDMs) for specific software-engineering project situations. Every SDM has a Software Development Process (SDP) at its heart, which specifies the activities that should be performed throughout the project, the products that should be produced, and the people that should be involved. Existing SME methods suffer from certain weaknesses that are rooted in loss of knowledge within their processes; for instance, the method engineers' experience, which is a kind of tacit knowledge, is not properly captured and utilized in these processes. Managing SME process knowledge helps alleviate these weaknesses through reusing the software developers' experience and maintaining the method engineers' knowledge. We propose an evaluation framework that can be used for assessing an SME method's ability to manage process knowledge. We also provide a model that guides the improvement of existing SME methods in their support for Knowledge Management (KM), and also helps engineer new SME methods that provide adequate KM support. We have assessed the applicability of the proposed evaluation framework and improvement model by using them to enhance eight prominent SME methods, and also by applying them to four industrial case studies.
Keywords
Software Process Knowledge, Software Process Improvement, Knowledge Management, Software Development Methodology, Situational Method Engineering