《Software Engineering》 教学培训小结
一、简介
- 时间: 2018年 7月9日--7月11日
- 地点: 北京航空航天大学 计算机学院
- 内容:
- 《软件工程》课程教学组织介绍、
- 项目实践教学讨论与切身体验、
- AI 工具介绍
- 教学研讨
二、 主要收获
主要谈谈实践环节的收获、经验及教训。分结对项目和团队项目:html
2.1. 结对项目
任务:
主要是采用结对编程的方式完成一个词频统计软件。博客详细给出了需求 和我结对伙伴是来自武汉地质大学的尹志诚小伙子。
过程:
大概4个小时,完成了一些基本功能。完成的软件 Github 地址。介绍的博客见尹志诚的博客
收获:
(我在博客评论中也说起了)
- 结对的助教同窗学习能力强、学习方法好。表如今:对 Java 中不太熟悉的 api 函数,可以快速在线帮助文档里找到介绍,快速阅读并掌握其用法。
- 志诚同窗作事情时刻有提升作事效率的意识。如,咱们两个对 Intelij IDE 编程其实都不太熟练,可是志诚同窗在编程的过程当中,善于总结一些须要反复执行的操做,有意识地去百度一下这些操做的 IDE 快捷键,可以提升效率。BTW:补充一下,快速注释的快捷键是 command+「/」。
- 志诚同窗项目设计有条理。项目设计讨论时,采用了自上而下、逐步求精的思想。而且有意识地在设计过程当中遵循信息掩蔽原则、局部化。如将一开始 放在main.java 中的 map一、map2 移动到 lib.java中;合理调整public、private;有意识地封装一些反复使用的函数,如判断字符是不是字母、数字、分隔符等。固然,如今看来,用函数的方法,影响了程序的性能,由于须要对每一个字符进行判断,函数调用的开销很大。下一步应该改成正则表达式。
- 志诚同窗作事有担当、认真。晚上回去还修复了一个 bug。
教训:
- 需求文档读的不仔细,急于上手编程序。表如今,遗漏了2个功能,最终完成的软件没有实现这2个功能。错失告终对编程获奖的机会。
- 对一些技术采纳方案没有充分调研。对分词的处理采用 if... else 方式判断,处理起来程序结构显得冗长、复杂;在搜索分词解决方案时,我已经看到了正则表达式处理方式、而且也知道这种方式更优秀,但因为依赖与助教写的传统的处理方式,懒惰而不肯意说服助教采用较好的方式。
2.2 团队项目
-
任务:
主要团队完成『自动评测系统的设计』(alpha/beta阶段)。 需求简要描述
:在软件工程课程中,我的项目的测试一直是一个难以自动化的问题。不一样的学校的项目题目不一样,测试代码也不同,每一届助教都须要手动测试或费时费力写一个自动批处理测试的程序。但在助教们使用的过程当中发现,实际上大部分测试的大部分步骤都是能够固定下来的,好比说爬取Github仓库,命令行批处理运行等。但愿能开发一个软工OJ,它的扩展性比较强,能够稍微定制化。好比能处理数独、能处理四则运算、地铁线路规划这样的题目做业的自动断定测试。它不只能支持软工题目自动评分、还能支持代码查重、代码规范评分等,同时其定制化的成本不要太大,最好可以支持助教使用不一样的语言来利用平台。java
-
过程:
大概 1.5个半天+1个晚上(写文档),完成了一些基本功能原型设计。 介绍的博客见个人博客 和 郑老师的博客git
-
收获:
github
- 咱们团队成员组成全是老师,多数老师有过使用相似系统的经验。对需求把握比较准确;在考虑需求时,能从现实出发。
- 在设计时,围绕用户切实的需求
- 了解原型工具构建软件。能够用原型更直观地表达系统。并与团队成员沟通
- 学会妥协。意识到要尊重他人的意见,辩证接受他人观点。
- 学会有意识地向别人传递本身的观点;有意识地把大伙儿天南海北的 BS 揪回到讨论主题上来。
-
教训:
正则表达式
- 对别人的否认意见不够冷静,容易采用(半)讽刺的言语,不利于沟通。
- 对一些反应比较慢的队友没有耐心,合做气氛很差。
- 主导讨论话题的能力还不足。七嘴八舌之间缺少影响团队其余成员的技巧(语言技巧等)。
3、 其余点滴收获
- 跟邹欣老师接触,感觉到理想的力量;
- 跟罗杰老师接触,感觉到激情的魅力;
- 跟助教协同工做,感觉到年轻的活力。
其余:编程
- 北京的气候不错(居然没有沙尘暴,就是下了些雨,鞋子居然没有湿透)
- 北京的饭菜不错(这么咸也能够吃下去)
- 北京的地铁不错(居然能挤上去、挤下来)
- ... ...
4、补充
跟邹欣老师结缘源于2014年夏天。那时我正忙于完成博士论文的撰写。一天,我在微博上收到出版人周筠老师的信息,她说,说微软的邹欣正准备出版一本软件工程方面的教材,看到我在新浪博客上写的一些关于《软件工程》教学一些文字,问我是否愿意帮忙看看邹欣老师的书稿,提提意见或建议。我欣然接受了周筠老师的邀请,先后粗略看了一下书稿,惊奇于邹欣老师这本书的清新出奇的写法(相比于国内不少《软工工程》教材的老气横秋的笔法)。后来在与周筠老师断断续续的交流中,了解到他们的目标远远不止是出版一本骨骼清奇的《软工》教材,而是在国内《软工》教学的方法上引入 "作中学"的理念,再后来,发现邹欣老师他们的理想远不止于此:他们想在国内计算机专业教学中更多的引入"作中学"的方法。 难得的是,他们不但想了,还去作了。在这个过程当中,我也获得了不少帮助,在 南通大学计算机学院《软件工程》教学上作了必定的改革,有一些收获和教训。也算是丰富了人生的经历啦!api