Design thinking in software requirements: What techniques to use? A proposal for a recommendation tool
Abstract
Design Thinking (DT) has been incorporated into software processes by teams from startups to large companies, used in problem exploration fostering innovative solutions, and integrated into agile methods to satisfy the real stakeholders' needs. DT places the customer needs up-front and helps to empathize with users, examining their behaviors, and producing outcomes focused on users' demand. A set of techniques, like personas and user journey, can be used to support this human-centered approach. Selecting which technique to use might be challenging since factors such as the application scenario, stakeholder engagement level and previous knowledge of the problem-to-be-solved may vary from case to case. Therefore, this paper presents an ongoing research that aims to develop a collaborative tool with the purpose of providing recommendations about potential DT techniques to be used in the support of requirements engineering activities. Our tool proposal was developed from results of a DT session that identified the collaborative tool as a proposal solution, a requirements elicitation activity to define the tool scope, and an interview-based early experimental study with professionals that use DT in industry. Our preliminary results show that our proposal has the potential to contribute to professionals that apply DT in requirements engineering by suggesting the most suitable techniques according to the established context.