软工+C(1): 题目设计、点评和评分

时间:2021-07-12 13:16:07

// 下一篇:分数和checklist


如何设计题目

教学中的一个问题是老师出题太简单了,题目设计一开始上来就不紧凑,我认为一个好的课程应该上来就给你紧凑感,而不是先上来“轻松2-3周”。目前见到的程序性题目有几类,都可以分别作不同层度的扩展设计。

问答类型题目,这类题目最好要有进阶,否则容易变成水题:

  • 基础知识问答
  • 扩展知识问答
  • 高级深度问答

工具类题目,这类题目最好有明确要求:

  • step by step的操作记录,这也是以后写specification的基础训练
  • 对工具原理的理解和探索
  • 通过工具的使用,产出实际的作品,不能只是简单的Hello world
  • 能否自己做一个?怎样做?最小迭代是怎样的?
  • 对同类型工具做对比分析,学会做案例分析

语言语法类型题目,这类题目也要串起来,否则容易分散:

  • 从第1到第N道题目最好是同一个场景和上下文
  • 第i+1道题目最好能利用到第i道题目的结果
  • 最后一道题目最好是综合利用前N-1道题目
  • 第m次作业最好能利用到第m-1次作业

数据结构与算法题目,这类题目最好结合实际:

  • 有实际生活中的应用场景,例如北京地铁,电梯等
  • 从简单版本到复杂场景
  • 实现上要求进阶:
    • 算法,基本实现
    • 封装成类库,针对类库做好单元测试
    • 做成完整的App或者WebServer
    • 交付真实用户使用,反馈,改进

例如:

如何点评

有价值的点评是重要的工作,因为点评是对问题的反馈,反馈的越及时,反馈的质量越高,问题的迭代和改进就有越多丰富有内容的外部刺激。

点评应该有哪些目标呢?

  • 消灭零点评,这需要课程教师和课程助教的联合作业,意义在于有教无类
  • 带着问题点评,带着问题,才能让作业进入深水区
  • 做追加点评,如果点评收到回复,则应该进一步点评,不设上限
  • 带上相关链接点评,每个作业伴随丰富的外部链接,做到开放性和深度性
  • 主题反复,如果一个主题本身会随着作业的演化进阶,点评要前后连贯,甚至反复。

例如,这个学生回答的详细,我给他扩展了一些问答,如果题目设计不足,在点评环节可以做深度和广度发散:http://www.cnblogs.com/fantasticlzs/p/6432989.html

如何评分

评分是教学中重要的一环,评分是教学中迭代的最小粒度。

  • 评分应该要有具体的评分点,遵循对评分点加权平均的计算方式,具体参见构建之法
  • 评分应该有能区分好坏优劣,正确反应作业质量
  • 评分应该严格对照截止日期,过期0分,超过1周没交倒扣分数
  • 评分应该带着启发性小结、问题、新的超链接(参考点评一节)

例如: