摘要: 2017年7月更新: 《构建之法 - 现代软件工程》第三版已经出版。(第三版的豆瓣讨论,第二版,多看 电子版, 对我的采访,微博) **** 这是迄今为止采用《构建之法》 的情况 (很多学校采用了网上课堂 + 网上助教的形式,可以前往围观, 这是一个老师写的开课步骤): 注:排名按照学校所在地大致由阅读全文
posted @ 2011-11-27 23:32 SoftwareTeacher 阅读(71151) 评论(26) 编辑
摘要: 1. 团队成员介绍 介绍每个成员(照片,主页,技术特长,在团队中担任的角色)。 建议拍一张有创意的合影。 在介绍的时候,可以采用艺术照等形式, 保护同学的隐私,不想说明真实姓名的也可以用昵称。 2. 如何决定个人贡献分, 如何决定 alpha 阶段后换组 团队项目一般有 alpha 和 beta 阶阅读全文
posted @ 2018-09-19 14:44 SoftwareTeacher 阅读(20) 评论(0) 编辑
摘要: (软件工程作业汇总) 第一周的博客作业 (这是历届学生的练习中, 从各个老师的作业中汇集而来,特别是北航的作业,东北师大的作业) 1. 介绍自己,建博客 在 cnblogs.com (博客园)建账号。关注老师和助教,关注一些和你一起上课的学生。练习如何写博客, 上传代码。 博客格式的详细说明 很多人阅读全文
posted @ 2018-09-17 10:33 SoftwareTeacher 阅读(53) 评论(0) 编辑
摘要: 软件工程的作业 很多老师反映软件工程的作业题不好出,学生做的“大作业”也是了无新意。怎么办?师生们身处轰轰烈烈的软件产业的大环境,但是在软件工程课上做的题目却是非常简陋,没有起到应有的作用,这的确是一个很有讽刺意义的事情。有很多因素导致这一结果,这些因素都是可以克服的,在这里不再啰嗦吐槽了。怎么出一阅读全文
posted @ 2018-09-16 08:09 SoftwareTeacher 阅读(44) 评论(0) 编辑
摘要: 一个很有趣的软件工程/编程作业,如果把汉字构成的规律运用在 2048 + 俄罗斯方块这样的游戏中,会有什么效果呢? (链接1, 链接2) 既然是软件工程的作业, 那就要体现出一些工程的特性: 作业要求: 1) 学生自行从网上找到经典俄罗斯方块游戏的代码, 这应该有很多版本,找一个适合当前学生技术水平阅读全文
posted @ 2018-07-28 14:21 SoftwareTeacher 阅读(194) 评论(0) 编辑
摘要: (草案) 时间:2018年7月初 (暂定 7/9 - 7/11) 地点: 北京航空航天大学 活动:为期三天的软件工程教案设计培训和软件专业教育方法的讨论 1. 论坛主题演讲 “构建之法教学改进” 构建之法的教学是如何演进到目前的形态的,有什么经验教训和启发。 2. 结对锻炼软件工程中的单元测试和效能阅读全文
posted @ 2018-04-23 15:17 SoftwareTeacher 阅读(380) 评论(0) 编辑
摘要: 他山之石,可以攻玉 世界上很多大学都有不错的教学方法, 例如我们曾经的助教总结他在国外的学习经历,可以看出老师和学校对于如何教好课是花了心思, 有很多投入的。 一门课怎么上: https://zhuanlan.zhihu.com/p/20610349 怎么设计长期好用的 教学系统 另外,在2012年阅读全文
posted @ 2017-09-02 06:17 SoftwareTeacher 阅读(1270) 评论(0) 编辑
摘要: 在用 "做中学 (Learning By Doing) " 方式讲授编程和软件工程课的时候,我们认为助教在其中起了很大的作用。 在近几年的助教工作中,大家积累了很多经验和教训,这本身就是一门学问 - (范飞龙的经验 刘乾的经验, 陈彦吉同学布置的第一次作业, 畅畅同学的总结, 龚晓婷的总结,刘伟康的阅读全文
posted @ 2017-08-27 11:47 SoftwareTeacher 阅读(1100) 评论(0) 编辑
摘要: 实践最简单的项目:WC 实践是理论的基础和验证标准,希望读者贯彻“做中学”的思想,动手实现下面的项目,并和别人的成绩相比较,分析产生差距的原因。 1. 实现一个简单而完整的软件工具(源程序特征统计程序)。2. 进行单元测试、回归测试、效能测试,在实现上述程序的过程中使用相关的工具。3. 进行个人软件阅读全文
posted @ 2017-08-25 08:00 SoftwareTeacher 阅读(787) 评论(2) 编辑
摘要: 下面的题目, 从简单的数据结构开始,让同学们逐步练习。 第一步: 像《构建之法》的人物阿超那样,花二十分钟写一个能自动生成小学四则运算题目的命令行 “软件”, 分别满足下面的各种需求。 下面这些需求都可以用命令行参数的形式来指定: a) 一次可以出一千道道题目,并且没有重复的,把题目写入一个文件中。阅读全文
posted @ 2017-08-23 14:24 SoftwareTeacher 阅读(1381) 评论(2) 编辑
摘要: 结对编程 – 计算最长英语单词链 《构建之法》练习题 大家经常玩成语接龙游戏,我们试一试英语的接龙吧:一个文本文件中有N 个不同的英语单词, 我们能否写一个程序,快速找出最长的能首尾相连的英语单词链,每个单词最多只能用一次。最长的定义是:最多单词数量,和单词中字母的数量无关。 例如, 文件里有: A阅读全文
posted @ 2017-07-05 09:52 SoftwareTeacher 阅读(924) 评论(2) 编辑
摘要: 考考考,老师的法宝;分分分,学生的命根。 以《构建之法》为核心的软件工程课已经在全国几十个学校开展了好几年,由于采用 Learning by doing (做中学) 的方法, 同学们通过实际的作业获得分数,逐渐累积并转换为最终分数,而不是等到期末的考试得到一个分数。 这种方式有很多好处,但是也引起一阅读全文
posted @ 2017-05-07 04:01 SoftwareTeacher 阅读(954) 评论(0) 编辑
摘要: /* * 这是 《构建之法》 第三版的草稿 */ 3.2 软件工程中的几种思维误区 正如我们在第一章讲的那样,软件有很多特性,软件开发有它自己独特的规律,如果不了解这些特性,软件工程师就会产生不符合实际的想法,在开发过程中走很多弯路。软件的模块之间存在着各种复杂的依赖关系,由于软件的不可见性和易变性阅读全文
posted @ 2017-01-08 16:51 SoftwareTeacher 阅读(949) 评论(1) 编辑
摘要: 构建之法 17 章 人,绩效和职业道德 (<构建之法> 第三版草稿) 2016/12/23 17.1 领导力 在软件开发过程中,有很多平等合作,但是也有上下之分的领导/被领导关系,即使都是平级的员工之间,也有老师傅/新人,某领域的专家/新手之间的指导关系。 在口语中,很多人认为领导就是管人的,名称大阅读全文
posted @ 2016-12-24 08:21 SoftwareTeacher 阅读(1466) 评论(12) 编辑
摘要: 现在网上有很多关于动态显示排序过程的小工具,小程序。 1) https://visualgo.net/sorting 2) http://jsdo.it/norahiko/oxIy/fullscreen 3) http://coolshell.cn/articles/4671.html 我们能否也做阅读全文
posted @ 2016-11-28 07:56 SoftwareTeacher 阅读(313) 评论(1) 编辑
摘要: 个人或结对编程项目 英语单词词频统计程序 (最新版本在这里) 实现一个命令行程序,支持几种模式下的单词词频统计 Implement a console application to tally the frequency of words under a directory. For all tex阅读全文
posted @ 2016-11-25 05:02 SoftwareTeacher 阅读(518) 评论(0) 编辑