Empathy in Software Engineering Education: Evidence, Practices, and Opportunities

该研究通过系统综述 43 项文献,揭示了共情在软件工程教育中从边缘软技能向可评估的教学要素转变的趋势,并提出了将其结构化融入课程以培养具备伦理意识、协作能力及包容性设计思维的未来软件工程师的实践路径。

Matheus de Morais Leca, Kim Johnston, Ronnie de Souza Santos

发布于 Tue, 10 Ma
📖 1 分钟阅读☕ 轻松阅读

Each language version is independently generated for its own context, not a direct translation.

这篇论文就像是在给未来的软件工程师们做了一次“体检”和“处方”,主题是:在教人写代码的时候,我们是不是也该教他们“读心术”(即同理心)?

为了让你轻松理解,我们可以把软件工程教育想象成培养一名“超级厨师”

1. 背景:以前只教切菜,现在要教“懂食客”

过去,培养厨师(软件工程师)主要关注硬技能:刀工要快(代码写得快)、火候要准(系统运行稳)。大家觉得,只要菜做得好吃,客人自然满意。

但现在的研究发现,光有刀工是不够的。如果厨师完全不懂食客的心情、口味偏好,甚至不知道有些食客对某些食材过敏(比如残障人士的需求),那么做出来的菜可能很难吃,甚至让人生病。

这篇论文就是去调查:现在的学校是怎么教这些“厨师”去理解食客(用户)和队友的?

2. 研究方法:翻阅了 43 本“烹饪笔记”

作者们像侦探一样,在 2001 年到 2025 年的文献库里,翻找了43 篇关于“工程教育中如何培养同理心”的研究论文。

  • 发现了一个时间差:在 2014 年之前,大家几乎没怎么讨论过这个事(就像厨师学校突然停办了 13 年关于“懂食客”的课程)。
  • 最近很火:从 2021 年开始,特别是软件工程领域,突然开始疯狂研究怎么教“同理心”。

3. 核心发现:两种不同的“教学流派”

论文把工程教育分成了两类,它们教“同理心”的方式很不一样:

🏗️ 传统工程教育(如土木、机械):像“道德哲学家”

  • 怎么教:他们把同理心看作一种高尚的道德品质
  • 比喻:就像教厨师要“有良心”,要关心社会,要懂得反思“我做的菜会不会伤害到穷人”。
  • 手段:多开会讨论伦理、写反思日记、去社区做志愿服务。
  • 目标:培养一个有社会责任感的工程师。

💻 软件工程教育:像“用户体验设计师”

  • 怎么教:他们把同理心变成了一种具体的工具可测量的技能
  • 比喻:这不仅仅是“要有良心”,而是像给厨师发了一套**“食客心理分析工具包”**。比如:
    • 同理心地图:画一张图,标出食客在什么情况下会生气、会开心。
    • 人物画像:虚构一个具体的“挑剔食客”,让厨师时刻想着他的需求。
    • 模拟体验:让厨师戴上特制眼镜,模拟视障人士看菜单的感觉。
  • 目标:培养一个能设计出更好用、更包容产品的工程师。

4. 好处:为什么非要学这个?

研究发现,学了“同理心”的工程师(厨师),有以下超能力:

  • ** teamwork 更顺畅**:团队吵架少了,大家更能互相理解。
  • 设计更聪明:能发现那些“隐形”的需求(比如老年人字体太小看不清),避免做出没人用的产品。
  • 更有道德感:不会为了赶进度就忽略隐私或安全问题。
  • 工作更有劲:因为知道自己在帮真实的人解决问题,而不是冷冰冰地敲代码。

5. 困难:为什么还没普及?

虽然大家都知道好,但教起来很难,就像让一个习惯了“只讲数据”的厨师突然去“感受情绪”:

  • 课表太满:学校觉得“写代码”才是正经事,“懂人心”是软技能,没时间排课。
  • 很难打分:代码写得好不好,编译器一跑就知道;但“有没有同理心”怎么打分?很难量化。
  • 学生抗拒:很多理工科学生觉得“我是来学技术的,不是来搞心理分析的”,或者觉得那些模拟体验太假、太尴尬。

6. 结论与未来:从“选修课”变成“必修课”

这篇论文最后呼吁:
同理心不应该只是软件工程师的“选修课”或“锦上添花”,它应该像“刀工”一样,成为核心技能的一部分。

未来的软件教育应该把“理解人”这件事,像教“写循环语句”一样,拆解成具体的步骤、工具和考核标准,融入到每一个设计课程中。

一句话总结:
未来的好软件,不仅要是聪明的(代码无 Bug),更要是温暖的(懂人心)。这篇论文就是告诉学校:别只教学生怎么造机器,忘了教他们怎么理解使用机器的人。