Project Objectives
All the above limitations create a constant research interest in continuous re-thinking, re-aligning and re-evaluating RE practices to cope with practical challenges and emergent demands. Effective balancing the challenges of specificity, comparability and accuracy in a SPIRE project, by considering also resources’ constraints, is a practical problem, especially for SW SMEs interested in investing limited resources at a Software Process Improvement project. Field surveys [19] regarding the current practice of RE reveal that rather small subset of available techniques is actually utilized in practice by requirements engineers/project managers. We believe that there are possibilities for further research and empirical study towards more integrated and synergetic methodologies which will inter-relate available analysis methods into coherent, systematic and synergetic engineering processes.
This is actually the main research orientation of the SPRINT SMEs project. The project is expected to result in a well-defined, unified approach which will certainly improve the productivity, the quality and the adoption of RE in actual industrial settings and, particularly, for the case of SW SMEs. There has been some promising work in this research “hotspot” [20] which shows that further research is expected on how to integrate various RE methods and propose effective methodologies. Moreover, evaluation/empirical studies and benchmarking on how well research results cope with industrial problem domains are always beneficial for practitioners to analyze advantages and disadvantages of each proposed approach and get help on selecting from among the various solutions. Therefore, empirical research studies, such the ones that will be carried out in the context of the SPRINT SMEs project, are always expected to have a great impact on a RE process success.
To consider and satisfy collectively the above mentioned challenges of a RE process improvement project, SPRINT SMEs will suggest solutions from the unified application of the following analysis techniques:
- Multi Criteria Decision Analysis Techniques, such as the Analytic Hierarchy Process (AHP) and its extensions (e.g., Analytic Network Process) [21, 22, 23, 24, 25] as well as techniques from the fuzzy-based multi criteria decision making domain [26, 27, 28, 29, 30, 31]. These techniques will be applied to support the prioritization of improvement activities (according to a number of possibly conflicting criteria) and the packaging of the improvement issues in order to facilitate the determination of an appropriate plan for the SPI project implementation and deployment.
- Social Network Analysis-SNA [32, 33, 34] together with using agent-based modelling and simulation [35, 36] can be used to improve the control of an improvement project by analyzing how basic project entities (members of the company staff) communicate and collaborate together.
- Quality Assessment Techniques, such as the Quality Function Deployment-QFD [37, 38] and the Goal-Question-Metrics Technique-GQM [39], can be used to support the assessment of a software process improvement project by considering the perspectives of all stakeholders and calculating metrics to indicate the achievement of the project goals.
- Probabilistic Techniques, like Bayesian Belief Networks [15, 40, 41], can be applied to estimate the cost, the duration as well as the effort required to perform a SPI project.
- Contemporary Investment Analysis Techniques, like Real Options Analysis [42, 43, 44], can provide support to consider, from the perspective of uncertainty and risk, alternative process improvement decisions and their effects on organization financial costs/benefits.
Therefore, the objective of SPRINT SMEs is not to propose a new process modeling or analysis technique but to define a framework for the practical application and the unified/systematic combination of rigorous process analysis techniques.
The framework architecture will be composed of two major components, which represent basic research milestones of our work:
- A Requirements Engineering Process Knowledge Base, which will include, in an organized way, all required information for the assessment of an improvement project. This information will relate project metrics of past projects undertaken by a software company (or any availabe cross-company data, e.g., http://www.isbsg.org/) with corresponding requirements engineering practices. Data in the knowledge base will provide information about software process roles, process tasks, work products, project size and category, project team size, project complexity, project time/cost requirements etc.
- A Set of Techniques for the Decision Support of Requirements Process Analysis, Assessment & Improvement Planning. This set of techniques will comprise a decision support system of SPRINT SMEs for the selection and the unified application of the robust analysis methods which will be identified and specified during our research work.
The next Figure shows a generic process improvement scheme that follows the cyclic and continuous Plan-Do-Check-Act (PDCA) cycle of continuous process improvement paradigms [2]. This cycle constitutes a high-level process-oriented architecture for the SPRINT-SMEs framework. The framework analysis techniques will support the requirements of (P)lan, (D)evelopment, (C)ontrol and corrective (A)ctions phases of a RE process improvement project by considering process descriptions in the central Knowledge Base.
SPRINT SMEs: High-level process-oriented architecture