一. 邹欣老师:http://www.cnblogs.com/xinz/archive/2012/01/08/2316717.html请同学们仔细阅读这篇文章对教学大纲修改的意见。比对我学院教学大纲http://www.cnblogs.com/mjxyrj/p/5123817.html,根据邹欣老师的大纲设置要求,我们学校的教学大纲可能需要做哪些调整,可能的优势或缺点是什么?
邹欣老师开头就从他个人的学习和教学经历来论述,他认为给学生具体的, 能实践的, 能马上看到因果关系的教材和练习, 是激发学生兴趣, 好奇心, 求知欲的好方法。 因为他就是这样学习编程和软件开发的。 所以他对 “习而学”的方法很有好感。软件工程有理论的部分, 有工程的部分; 有艺术的部分, 有手艺的部分; 在同学们达到理论/艺术的阶段之前, 大量的练习是必须的。而我校的教学大纲要求:采取校企合作共同办学的培养模式,利用双方先进的教学理念、丰富的教学资源、技术研发资源和应用实施经验,与时俱进,共同探索,培养高素质应用型专业人才。
简而言之,邹欣老师认为软件工程教学要从实践出发,通过兴趣、好奇心、求知欲来让学生主动学习,然后要通过大量的练习来巩固理论、扎实基础;我校校纲则认为要利用大量先进的理念、技术、经验和资源来培养”应用型“人才。注意”应用型“这个字眼,说明我校从目的而言也是要培养针对于实际应用的人才,而不是空谈理论的庸才,区别只在于培养方式的不同。我校的要求是:
1.掌握基本的人文和社会科学知识,具有良好的人文社会科学素养、职业道德和心理素质,社会责任感强。
2.掌握软件工程学科的基础理论和基本知识,熟悉软件需求分析、设计、实现、评审、测试、维护以及过程与管理的方法与技术,了解软件工程规范和标准。
3.经过系统化的软件工程基本训练,具有参与实际软件开发项目的经历,具备做为软件工程师从事工程实践所需的专业能力
4.掌握软件测试平台、配置管理软件和项目管理软件的使用;
5.具有良好的职业素养,具备从事软件服务外包所需的语言沟通、流程规范、开发技能等知识;
6.具有初步的外语应用能力,能阅读本专业的外文材料,具有一定的国际视野和跨文化交流、竞争与合作能力;
7.软件服务工程方向要求熟悉软件服务工程行业国际和国内相关的开发、设计、管理和质量标准,熟悉企业管理基本知识,并能熟练运用国内外标准开展软件服务工程项目设计开发工作;具备软件服务工程、管理和数据服务的能力。
8.金融服务工程方向要求掌握金融基本知识,具备一定的现代金融工具知识,具备扎实的数理分析和运用数学模式的技能,熟悉软件工程行业国际和国内金融相关领域的开发、设计、管理和质量标准。
9.网络系统运维外包方向要求能够系统地掌握网络工程方向所必须的基本理论、基本知识、基本方法和基本技能,具有良好的科学素养,具备一定的国际交流能力,有较强的实践能力、创新精神和持续发展潜力。
10.新媒体技术外包方向要求能够系统地掌握新媒体技术方向相关的必须的基本理论、基本知识、基本方法和基本技能,具有良好的科学素养,具备一定的国际交流能力,有较强的实践能力、创新精神和持续发展潜力。
11.了解计算机科学与技术特别是软件工程的发展动态,熟悉计算机软件行业应用情况,了解相关行业领域知识,能通过不断学习使自己的专业能力保持与学科的发展同步;
12.具备终身学习的意识、自主学习的能力和团队协作精神以及社会交流的能力。
而邹欣老师通过对一个中国211大学的软件学院的本科教学计划要求为基础,做了如下修改:
- 把基础实践课放到大一, 一开始就要动手.
- 所有的课程的上机时间都加倍, 相应减少授课时间。老师在讲台上反复讲 “数组从0开始…”,不如在电脑上试试。
- 把 <计算机新技术与产业发展> 放到大一上学期, 并用 <浪潮之巅>, 等反映行业变化, 生动活泼的著作作为教材 (原教学计划无教材)。 希望能让大一的同学知道 “学计算机软件能做什么?” “计算机行业是怎样一个有意思的行业”。
- 把基本的测试技术作为 “软件测试技术入门”, 放到大一。 其余的部分作为 <高级软件测试技术>
- 针对软件工程的毕业生职业发展, 调整了两门课程的 必修/选修性质。 (例如: 把 <形式化方法> 变为选修课, 把软件项目管理, 人机交互技术变成必修课 )
- 大部分数学和物理课都推迟一到两个学年上课, 这样到了大三同学们可以根据实践的体会, 更好地学习。 另外有同学在大三时决定考研, 他们正好可以好好学习高等代数, 争取考个好分数。如果是大一就学了, 那大四都忘了, 还要从头学一遍, 浪费时间。 离散数学对于计算机软件专业的学习还是很有用的, 仍然保持在第一学期。
- 专业选修课放到大二下学期 - 大四上学期。
- 在软件工程课中, 强调团队合作 , 在其它编程语言课程中适当引入结对编程, 代码复审等方法。
- 对学生学习编程语言有明确代码量的要求. (每种语言 3000 行以上. 程序行数不包括空行, 注释行, 单字符行)。
10. 对学生要有明确的实训/实习要求, 要到高水平的企业去, 而不是去低水平的企业混日子。 可以在短学期安排, 学生也可以自行安排。
11. 争取所有学生能用主流程序设计语言 (C, C++, Java, C#, 网页前端语言 JS, php, 基本数据库, 基本文件系统) 写实用的软件。
12. 要求所有学生在入学时就建立一个自己的专业博客, 记载自己的作业, 专业上的成长与体会, 毕业找工作时展现这个博客即可。
13. 教学资源的建设, 老师和学生一起, 持续地把关于这门课的课件/资料/问答 都汇集起来形成结构化的wiki.
就我个人来看两种要求的区别会造成我校的学生出现以下优缺点:
优点
1.我校学生有着良好的人文素质和道德水平,对社会具有一定的责任感。
2.掌握软件工程专业必备的知识和技术,具有实际的操作和经历。
3.具有先进的理念和思想,与时俱进,熟悉新技术的发展和应用。
4.根据发展方向能够跟上国内外业界的前沿,并有着良好的交流能力。
5.具备自主学习、终身学习的意识,重视与团队的合作。
缺点
1.上机实践的课时较少,并且和理论课时间差太久,等到上实践课的时候容易忘记之前学的知识。不能做到将课堂上讲的理论融会贯通。
2.数学和物理课程较早,拖慢了专业的进程,许多大一新生用不上这些知识,等需要用时已经过了太久估计都忘了。
3.对学生没有具体的练习要求,学生课后太过松散,课程知识吸收不够。
4.对于学生的学习进度没有总结和调整,使得学生不适应课程的节奏。
修改建议:
1.适当调整课程安排,使得上完理论课能及时跟上实践课,并适当增加实践课。
2.数学和物理的课程一时半会专业用不上,等到需要用上的时候才去学,在上机实践中会更容易记住需要运用到的知识。
3.老师可以适当安排一些课后的联系内容,然后让学生做出总结。
二.请同学们浏览比对网易云课堂微专业提供计算机系学科四年制课程体系,对你已经修读(大一)或者正在修读的慕课可以进行浏览比较。云课堂的课程体系与我院的教学大纲有什么区别?为什么它要这样设置呢?你的理解是什么?
优点:
- 作为现实的大学,我校能根据企业的需求而针对性的给学生足够的知识和建议。
- 学生与学生,学生与老师之间的互动对比起一个人独自学习更有趣,也更难发现许多一个人发现不了的问题。
缺点:
- 云课程没有固定的上课时间,学生可以根据自己的时间安排上课。
- 许多问题不需要特地去问,网上已有前例可以查找。
- 云课程可以一个地方有疑问可以停下反复查看,课堂学习则不能因为某人走神停下。
- 我校学习没有节奏感,有时候不根据教材来讲,跳过某课时,使得学生不能即使跟上老师的思路。
作为网络课程,云课程可以由学生自己需要选课学习,时间安排也可以自己定,这减少了课程的压力,不徐不缓的节奏也能保证学生的知识吸收。
三.通过网络搜索(百度)、知识论坛(知乎、CDSN、维基、豆瓣等)、在拉勾网或智联招聘了解学校教学大纲中设置的每一门课程(名字)分别代表什么含义,在什么领域,解决什么问题。
C语言:C语言是古老而长青的编程语言,它具备了现代程序设计的基础要求,它的语法是很多其他编程语言的基础,在系统程序、嵌入式系统等领域依然是无可替代的编程语言,在各类编程语言排行榜上常年占据前两名的位置。 本课程是后续的操作系统、编译原理、体系结构等课程的基石。
计算机导论:计算机专业导论课程既是计算机专业的入门课程,又是计算机专业学习的指南。计算机专业是做什么的,仅仅是“用计算机语言编程序”吗?计算机专业学生毕业后将做什么样的工作?在计算机专业又能学到什么课程,为什么要学习这些课程,这些课程对学生毕业后会有什么影响?这些问题都将在本课程中为你回答!
数据结构:数据结构是计算机程序设计的重要理论技术基础,是计算机学科的核心课程。其教学要求是:学会分析研究计算机加工的数据结构的特性,以便为应用涉及的数据选择适当的逻辑结构、存储结构以及相应的算法,并初步掌握算法的时间分析和空间分析技术。
四.你感兴趣的课程(学校大纲内包含或者不包含)包括哪些?为什么?你能为你的职业方向,重新设计你可能需要学习的课程体系吗? 你应该从哪里着手获取信息和建议?
我对web技术感兴趣,因为它可以教我怎么学习制作网页。我认为需要从编程语言学起,代码是计算机的基础,所有的一切都要以它为根本。我可以从网络上或技术交流群里获取信息和建议。