A Multi-Level Didactical Approach to Build up Competencies in Requirements Engineering Yvonne Sedelmaier, Dieter Landes Faculty of Electrical Engineering and Informatics University of Applied Sciences and Arts 96450 Coburg, Germany { yvonne.sedelmaier, dieter.landes }@hs-coburg.de Abstract— Requirements engineering education at universities is a fairly difficult issue for various reasons. Among the most prominent causes is a lack of authenticity, i.e. too artificial settings that do not adequately mirror the complexity of real- world situations. We present an approach to requirements engineering education that tries to avoid some of these shortcomings, in particular by including requirements elicitation with real customers into an integrated didactic step-by-step approach. As it turns out, requirements engineering education is far more than assembling technical knowledge, but rather involves many non-technical skills that obtain a specific context- sensitive flavor in requirements engineering. Our didactic approach also addresses these skills, while resting on a sound pedagogical underpinning. Indications for the success of our approach are visible, e.g., in self-evaluations of the participants which are also summarized in the paper. Index Terms—requirements engineering, problem awareness, methodological skills, competencies, personal skills, real customers. I. INTRODUCTION It is commonly accepted that requirements are top success factor in software engineering projects, but, conversely, also a major reason for project failures. Therefore, providing IT students with solid requirements engineering skills is of paramount importance. In practice, however, teaching and learning requirement engineering is not too easy. Part of the problem is the fact that good requirements are essential in complex real-life projects, but time and resource restrictions prohibit instructors from running many such projects – typically, there is only one such project during university education. Often, such a project comes late as a capstone project that ties together everything that should have been learned before. Unfortunately, learning requirements engineering only theoretically does not work well either. Students tend to view many important issues in requirements engineering as commonplaces and fail to see their importance. It seems to be one of the big challenges for instructors to make requirements engineering education as descriptive as possible to make the matter more tangible for students. In particular, this encompasses mapping the complexity of real- world projects at least in part to a university context in such a way that the associated problems become evident for the intended audience. In this contribution, we present the didactical approach that we developed for requirements engineering education at Coburg University of Applied Sciences. Core ingredients of our approach are a realistic and integrated setting, which includes writing a requirements document for a complex application and, as of late, eliciting requirements from real customers. In our specific setting, customers play a double role: in addition to simply providing requirements, they also act as external experts for communication issues. Another main characteristic of our approach is the extensive active involvement of students in the learning process. In particular the latter aspect has a solid theoretical underpinning in constructivist didactics. An additional characteristic of our approach is a strong emphasis on non-technical skills which are particularly relevant for requirements engineering, but also gain a very specific, context-sensitive shape in this particular domain. The didactical approach that we conceived at Coburg seems to be quite successful since students value the importance of requirements engineering to a much higher extent and view themselves well equipped to deal with requirements engineering in practice. This finding is substantiated by a series of evaluations that we performed. In the remainder of this paper, we will first analyze difficulties in teaching requirements in more detail before we characterize key features of our didactical approach and their pedagogical foundation. We discuss lessons learned both from the perspective of instructors and of students, before we give a short summary and an outlook to future work. Teaching Requirements Engineering A. Challenges in Teaching Requirements Engineering Although requirements engineering is a core ingredient of software engineering, it is fairly difficult to teach and to learn. Teaching and learning software engineering is generally restricted to small toy projects which mirror real world problems only to a limited extent. This is due to several reasons: Early on, software engineering education often focuses on teaching and learning how to program a computer rather than