Teaching Distributed Requirements Engineering: Simulation of an Offshoring Project with Geographically Separated Teams
Daniel Moritz Marutschke, Victor V. Kryssanov, Patricia Brockmann · 2020
Offshoring software development projects are often conducted with a client and a requirements engineering team in one country and development teams in another country. The geographical distance, time zone differences, language and cultural differences can introduce significant challenges to the elicitation and communication of software requirements. In this paper, a cooperation between two universities in Japan and Germany to teach students distributed software requirements engineering is described. An international software development project was simulated, with the requirements engineering team in Japan and the development teams in Germany. This research highlights a unique aspect rarely explored in software engineering education. Instead of equally distributing team members in each country, one requirements engineering team consulted with clients on site in Japan while the development of the software prototype was outsourced to four engineering teams in Germany. Students cooperated remotely using cloud computing tools to perform requirements engineering and to develop a prototype of a laboratory scheduling and management system. Real-time communication was limited to one 90 minute class session per week. Student opinions were surveyed at the beginning and at the end of the semester to evaluate their learning processes. Results of these surveys show significant changes in students' estimations of the relative importance of different challenges to conducting distributed requirements engineering.