Software Engineering and Game Design
A Comprehensive Approach to Support the Requirements Analyst Before, During and After Requirements Elicitation Interviews
Project Description
Requirements engineering is the set of activities concerned with determining and communicating the expectations for a new or modified product, and the contexts in which it will be used. Requirements elicitation, i.e., the practice of collecting these features, called requirements, is the first of these activities and is recognized as a critical and difficult stage in the development of software systems. Among the available elicitation techniques, interviews with stakeholders are the most commonly used in practice. Normally, they involve two actors: a customer and a requirements analyst; and their goal is to allow the knowledge transfer from the first to the second one so that the analyst can collect precise, correct, and complete requirements. The importance of interviews is widely recognized and many of the factors that might affect the knowledge transfer in interviews have been analyzed. However, a comprehensive approach to improve the effectiveness and the quality of requirements elicitation interviews has not been studied yet. This research aims at filling this gap by providing a set of novel techniques and tools to support the analyst before, during, and after the interview.
The "before support" is concretized in developing a training for students and inexperienced analysts to teach them, with a hands-on approach, how to perform interviews, how to avoid the most common mistakes, and how to recognize ambiguous situations and exploit them to discover hidden knowledge. This part of the research includes also the creation of a course for undergraduate students to allow them to better develop their skills as analysts. The "during support" is a tool-based approach which uses biofeedback and voice analysis to help the analyst during the interview in identifying the increasing level of frustration in the customer, which might cause mistrust in the analyst. Finally, the "after support" consists of a protocol that uses an external observer to analyze recorded interviews to extract additional knowledge from them and possibly to identify additional common mistakes. This research has the potential to dramatically improve the requirements elicitation process, and consequently the software development process. This can lead to better software, thus benefiting the large segment of the population that uses and relies on software.
Project Department
Software Engineering and Game Design
Project Status
Seeking researchers; multiple positions available; preferred majors: computer science, software engineering, social science
Researcher Requirements
Students will be hired to work on the project for a variable number of hours; minimum 10 hours/week
Responsibilities for computing-related majors include:
- Running interview experiments with external participants
- Act as requirements elicitation interviewers
- Analyze the data collected through experiments
- Work on the correlation between biofeedback and interviewee inputs
Responsibilites for social science majors include:
- Running interview experiments with external participants
- Analyze the data collected through experiments
- Work on the correlation between biofeedback and human emotions
Project Duration
The project begins in January 2018. The end date is variable (the project will end in 2020).
Contact
Dr. Paola Spoletini
pspoleti@kennesaw.edu