Skip to Main Content
Software development process consists of many knowledge intensive processes, among which requirement elicitation process is perhaps the most critical for the success of the software system. Requirement elicitation process is intended to gain knowledge about user's requirement or need. Usually, the selection of requirement elicitation techniques is based on the company practice or on the personal experience. Moreover, there is a little guidance available on how to select elicitation techniques for a new software project. In this paper, we first provide a brief overview of the techniques available to support requirement elicitation process and identify their contextual applications. Next, we developed a framework to select elicitation techniques for a given software project based on the alignment of project's contextual information and the elicitation techniques. We demonstrate the applicability of the proposed framework by using illustrative examples and show how the framework uses the contextual knowledge of the software being develop to select useful requirement elicitation techniques.