现代软件工程 学生自我评价表
每年上完 <现代软件工程课>, 我都要收集同学们对自己上课前/后的评价。这样可以看到同学们到底在什么地方得到提高, 提高了多少. 这样可以分析课程设计各个环节的效果, 以便跟踪和改进。
下面是我使用的自我评价表:
匿名调查,整个学期, 你在这门课平均每周花_________ 小时 (包括上课时间)。 你在这门课中写了大约 ______________行代码. please write down you anonymous self-assessment, 1: minimal level; 3: basic theory; 5: basic theory and working knowledge; 8: can effectively use it as a professional; 10: complete fluency in both theory and practice. 请填写你上课前后的水平评估。 填 [1..10] 数字即可,数字参考: 1: 最低水平; 3: 基本的书面知识; 5: 基本的理论和实践知识, 可以通过企业面试; 8: 可以像专业人士一样自如地运用; 10: 全面精通理论和实践。 |
表格由 15 - 18条问答组成, 有些条目的覆盖范围略有重复,下面是具体的条目:
Software Engineering(SE)Overall / 对软工整体的理解 |
SE: Requirement (需求分析,典型用户,场景,创新) |
SE: Project Management (项目管理,风险管理,spec) |
SE: Design (架构设计,模块化设计,接口设计) |
SE: Design (效能分析,效能改进) |
SE: Implementation (阅读代码的能力,实现,单元测试) |
SE: Test (测试方法、测试工具、测试实践、代码覆盖率) |
Software Tools (performance tool, version control, work item, TFS) |
Code Review/Writing Solid Code (代码复审/代码规范/代码质量) |
Programming Language (C/C++/C#/Java) (pick one language) |
App development: Web/Mobile/PC (choose one) |
Task Plan, estimation and Prioritization (计划任务,估计时间和优先级) |
Task Execution (按照质量要求、按期完成任务) |
Work with others (协同工作,提供反馈, 说服别人) |
Presentation (报告项目状态,提出想法,写博客等) |
大多数同学都很客观地填写了反馈, 有些条目有较大提高, 有些条目提高很小, 或者没有。 但是每年都有一些 “噪音”,例如有人填自己课前水平都是“1”, 课后都是 “10”。 这本无妨, 我一般把这些明显的噪音去掉。 不过, 今年的噪音似乎更奇怪了。这是几个例子:
例1: 在报告每周花费10小时, 总共写了3000 行代码之后, 这位同学报告了他的比较。 在两个项目中, 他的水平由上课前的10 (全面精通理论和实践), 变成了课后的1。 看来我这门课上得误人子弟。
这位同学也是, 艺术地表达了上课一无所获的心情:
这位干脆就是省略号了… 你懂的。
同学们有大约半小时的时间填写这个反馈, 我想他们是经过考虑的。 花了这么长时间上课, 居然毫无收获, 甚至有些地方由 10 变成 1, 原因在哪里? 请选择:
a) 同学们随意填的 //辛辛苦苦上了一个学期, 得到这样的结果, 有些伤不起。 改进: 以后多提醒
b) 老师讲课的确不好, 并有吸星大法, 把一些同学的功力由十成变成一成. //改进: 以后换老师 (这里有以前学生正式的评价)
c) 同学们没学好 //改进: 重修
d) 其他…