一句话:介绍一门在双轨敏捷下整合需求工程与交互设计的软件工程课程,并总结四年教学经验。
软件工程与人机交互长期各自发展,业界需要两者紧密协作,双轨敏捷等整合方法已在工业界出现,但学术界少有课程覆盖,也尚无论文报告相关课程。本文介绍一门在双轨敏捷背景下整合需求工程与交互设计的课程,采用传统与翻转课堂结合、项目式学习,学生针对真实利益相关者设计并实现有用、可用且愉悦的软件系统。作者总结过去四年的课程设计与教学经验,旨在说服、启发并帮助他人开设类似课程,将交互设计推向敏捷软件开发前沿。
The fields of Software Engineering and Human-Computer Interaction have traditionally evolved in parallel, with little cross-pollination, both in industry and academia. However, effectively delivering software products offering superior user experiences requires a tight collaboration between professionals from both fields. In recent years, some approaches combining the two perspectives have been proposed in industry, including dual-track agile software development. Yet, very few courses cover those integrated approaches in academia, and it appears that no publication so far has reported the existence of a scholarly course covering dual-track agile. This paper introduces a course that addresses the divide between Software Engineering and Human-Computer Interaction through an integrated approach to requirements engineering and interaction design, in the context of dual-track agile. The course design combines traditional and flipped-classroom delivery, together with project-based learning. During the course project, students learn to design and implement software systems that address real problems and satisfy real stakeholders' needs by being useful, usable, and enjoyable to use. This paper documents the author's experience designing and teaching the course over the past four years. It aims to convince, inspire, and enable others to teach similar courses, bringing interaction design to the forefront of agile software development.