《现代软件工程》作业2: 寻访信息学院同类课程

我们寻访了信息学院兄弟院系,发现“软件工程”课程开课情况如下:

 

电子系

计算机系

自动化系

软件学院

学分

3

3

很遗憾,本科生没有开设该课。

3

课时

3*16

3*16

3*16

开课院系

计算机系

计算机系

软件学院

性质

专业任选

专业任选

开课时间

大四上

大四上

大三下

以下我们对各个系的软工课程作分别说明。

电子系

我们采访了电子系选修这门课的若干同学,在借阅相关程资料并参观课程网站之后,颇有感触,下面逐一道来:

课程概况:

计算机系老师所开,电子系选课人数30左右,同时课堂另一半还有环境生物机械甚至人文各种院系的学生。有课程主页(http://soft.cs.tsinghua.edu.cn/blog/?q=node/1194)。

除了书面作业之外,有一个分组大项目,要求每组注册课程主页中的svn,但是不要求写blog。

课程进度:

内容

评论

作业

课程介绍(一个星期)

开门见山唬倒众人:列举调查显示30%失业大学生来自计算机和英语等专业警醒众人做iT需勤奋,枚举各种现实中昔日iT巨头违背"软工规律"不幸日薄西山无力回天之悲情结局教导众人不好好学习"软工"小心未来摔跤。

阅读代码,写读后感

软件编码(一个星期)

 

搬弄教条解析C++代码风格,卖弄图论分析循环选择语句复杂度。没有详细文档,课后亦无作业。

 

软件过程(两个星期)

 

列举定义,概念,特点,属性,科普不同模型优缺点,一堂课80页ppt。

小组作业,任选一个软件验尸,2000字中文报告

需求分析(一个星期)

 

一堂课136页ppt,密密麻麻全是汉字,飞一样的感觉。

 

软件设计(一个星期)

继续科普

 

软件测试(一个星期)

继续科普

 

软件管理(一个星期)

继续科普

 

标准化(一个星期)

继续科普

 

回顾

一曲未完,戛然而止

总结与感想,总成绩中的10分

课程项目:

该课程要求3-5人一组,分组按照软件工程周期设计制作并发布一软件。大致浏览便可估计其课程质量效果如何:

1. 拼图游戏Puzzle:

image

2. 空间塔防游戏:

clip_image002

3. NES模拟器:

clip_image004

4. 网页三维棋类游戏:

clip_image006

5. 网页打豆豆游戏外挂:

clip_image008

6. 帮你做作业之电子电路实验面包板设计大师:

clip_image010

7. 基于android的手机通信管理系统:

clip_image012

8.网络学堂助手:

clip_image014

9.猜数字游戏:

clip_image016

10.三国杀3v3主帅外挂:

clip_image018

大作业时间分配:

image

大作业特点:

游戏占主导:绝大多数project与游戏相关(游戏本身,模拟器,外挂……),2个项目与学习辅助相关,而只有一个项目不属于这一类(android手机通讯录)

Deadline驱动:要求提交需求设计报告前2天开始写需求报告,提交展示前2天撰写用户文档。

文档极其耗时:每个文档都长篇大论,恨不得把可能出现的不同窗口画面全部截图,把每一个源代码的类和函数都解析一遍。

设计与Coding占主导:其他时间(例如测试,发布,维护)都忽略不计,没有人接着继续开发。

课程感想,收获,以及评论:

1、通过project学习了各种编程语言,svn的使用。

2、通过这门课程做了一个游戏,玩了玩,非常高兴。

3、通过这门课知道了企业是怎么push一群程序员干活,也知道了程序员应该怎么完成上级的任务。

4、这门课就是科普。

5、这门课还教予我们作为程序员怎么管理压力,原来程序员这么苦。

6、上课经常睡觉……内容实在枯燥。但是相反课下组内交流很多。

7、最后这门课老师诚实地告诉同学们,其实按照传统软件工程方法太笨重,效率太低,现在很流行团队小作坊化运行,单凭程序员的高素质管理团队,反而高效。

 

软件学院

软件学院在大三下的时候开设软件工程,中文授课,使用清华教材,3课时。上课过程中主要讲解了课本上关于软件工程的知识和理念。课程的主要内容是在课外时间的项目开发。考核方式没有参考软件使用的用户量,很大程度通过文档计划的实现情况来进行考核,同时根据技术深度和工作量来进行考核。和软件学院之前的课程相比,这门课给学生以自由发挥的机会,让学生选择自己感兴趣的题目开发软件。但是,课程中开发的软件基本上在课程结束后都没有继续维护。

软院的部分同学表示:

感觉这门课的收获很大,能学到很多软件管理上的知识。同时课堂纪律比较好,翘课、逃课的人不多。

部分学生项目

  • 在线PNP:是一个纸牌一样的游戏。该小组由五人组成,时间均匀分配。项目代码量相当多(设计前台,没有估计),课后所花费的时间很多。
  • 社交网站:四个人一个小组,代码量上万行。这个小组提前撰写好了一个开发文档(类似进度管理的文档),在每个限定的期间做好相应的工作,并由老师检查。课后所用的时间比较多,一般每周至少半天时间讨论,每一个人工作时间10小时以上。

计算机系

计算机系的白老师在大四上开设软件工程专业任选课。课程的主要内容同样是小组实现的软件项目。

由于和其他任选课程相比需要的时间较多,大部分同学都没有选修该门课程,因此我们寻找采访对象也遇到了一些困难。计算机系的软件工程课项目同样是自选题目,代码量视实现状况不同区别很大,从一两千行到一两万行不等。

按照被采访同学的说法,在软工课程中可以学习到软件工程的基本常识,包括UML使用,软件设计方法,用户需求分析等等各个方面。但是和计算机系其他课程相同的特点是,上座率极低,一度出现教室内学生不到十人的状况。而且课程结束之后,这些知识也基本没有掌握。即使如此,被采访的同学也表示软件工程课程非常有用:“回头你要是找不到工作了,跟人说你上过软工就能有人找你写代码去”

posted on 2011-03-04 22:29  take it and go  阅读(1004)  评论(0编辑  收藏  举报

导航