工程教育认证下基于项目驱动的软件工程教学设计

第 1 期
2019 年 1 月 10 日
计算机教育
Computer Education
中图分类号:G642
104
文章编号:1672-5913(2019)01-0104-04
工程教育认证下基于项目驱动的软件工程教学设计
邓 娜1,林 松2,熊才权1 ,康瑞华 1,閤大海1
(1.湖北工业大学 计算机学院,湖北 武汉 430068,2.海军指挥学院 战略教研室,江苏 南京 210016)
摘 要:分析传统“教师讲、学生听”
的教学模式不能有效培养学生使其具备认证所要求的各种能力的现状,提出并阐述利用工程教育认证的毕业要求和项目驱动教学法之间的契合度,设计软件工程课程的教学过程。
关键词:工程认证;项目驱动;软件工程;教学设计
0 引 言
2016年6月,我国正式加入国际上最具影响力的工程教育学位互认协议《华盛顿协议》,通过认证协会认证的工程专业,毕业生学位将得到《华盛顿协议》其他组织的认可,这将极大地提高我国工程教育的国际影响力[1]。自此,各大高等院校积极开展各个工程专业的认证准备工作,高等教育工作者也纷纷致力于工程教育认证方面的研究[2-3]。工程教育认证从各个方面对工程专业毕业生的能力提出了新的要求,同时也要求教育工作者解放思想、转换观念,以工程认证的毕业要求为输出导向,探索适应工程教育认证的新颖高效的教学模式。
软件工程导论是湖北工业大学开设的一门面向软件工程专业大二学生的专业基础课和专业特课,在该专业筹备申请工程教育认证的推动下,针对传统课程的各种局限和不足,我们提出基于项目驱动的软件工程课程的教学设计,以期提高教学质量,为学生达到各项毕业要求提前做好准备。
1 工程教育认证毕业要求
工程教育认证对工程类专业毕业生从工程知识、问题分析、设计/开发解决方案、研究、使
基金项目:国家重点研发计划项目(2017YFC1405403)
;国家自然科学基金项目(61075059,61300127);湖北工业大学绿工业科技引领计划(产品研发类)项目(CPYF2017008);湖北工业大学博士科研启动基金计划项目“基于自然语言处理的中文专利挖掘研究”(BSQD12131)。
第一作者简介:邓娜,女,讲师,研究方向为数据挖掘和人工智能,iamdengna@163。
用现代工具、工程与社会、环境和可持续发展、职业规范、个人和团队、沟通、项目管理、终身学习等不同的方面提出了12条毕业要求。这12条毕业要求大致可以分为理论素养、实践能力、个人素养3个类别。具体如下:
理论素养:工程知识、问题分析和研究这3个方面要求毕业生具备利用各种理论知识和科学原理来分析、解决和研究复杂工程问题。
实践能力:设计/开发解决方案和使用现代工具两个方面要求毕业生能利用现代工具来设计和开发复杂工程问题。
个人素养:工程与社会、环境和可持续发展、职业规范、个人和团队、沟通、项目管理和终身学习等7个方面要求毕业生对社会、环境负责,具有良好的团队合作能力和沟通能力,以及终身学习等个人素养。
2 项目驱动教学法
项目驱动教学法是一种培养工程人才的新颖的教学方法。它以项目为载体, 将课程讲授的主要内容穿插其中,注重课程理论体系的完整性, 实现理论实践一体化、传授知识与培养能力一体化、“教、学、做”一体化,特别适合于实践性较强的课程[4]。
跟传统教学方法相比,项目驱动教学法有以
第 1 期105
教育与教学研究
下不同之处:
(1)教学对象不同。传统教学方法适合于几乎所有的教学对象,通常采取“教师讲、学生听”的模式来讲授理论知识,这种教学方式较为呆板,教学效果不好;而项目驱动教学法特别适合于工程类专业学生,用项目来贯穿整门课程的教学,既让学生掌握了理论知识,也锻炼了工程实践能力。
(2)教学过程不同。在传统的教学过程中,教师依据事先定好的教学进程,以章节为主线,逐步教授各个章节的内容;而在项目驱动的教学过程中,教师可以不再受章节的限制,而是以项目的开展为主线,从项目的准备工作开始,到项目各个阶段的进行,再到项目的结束,在这些环节中,穿插着理论知识的教授,让学生体会到“纸上得来终觉浅,绝知此事要躬行”。
(3)教学目标不同。传统教学方法的教学目标简单单一,就是让学生掌握相关理论知识,而这个目标已经远远不适用于当前社会和工作岗位对学生的要求。为了培养满足社会需求的学生,不仅要求学生具备扎实的理论功底,更重要的是要求学生不能纸上谈兵,而是应该拥有解决实际问题的动手实践能力,而这正是项目驱动教学法的目标。
3 对应关系
通过分析工程教育认证对毕业生提出的12条毕业要求和总结项目驱动教学法的特点,发现这二者之间存在着一定的对应关系,见表1。
从表1中可以看出,项目驱动教学法跟工程教育认证的毕业要求有着高度的契合度。毕业要求中三大类别的能力和素养都能通过项目驱动教学法得到锻炼和培养。具体说明如下:
(1)在项目驱动教学法中,让学生在项目中穿插学习理论知识,跟纯粹通过教师“满堂灌”相比,更容易
让学生理解和掌握。更重要的是,学生在项目中遇到问题时,他们会有一个思考的过程,这个过程能帮助提高学生分析问题和研究问题的能力。
(2)项目驱动教学法能在理论与实践之间搭起一座桥梁。学生实际实现一个完整的项目时,从项目初期的设计,到项目中后期的开发,本质上,学生已经是在设计/开发复杂工程问题的解决方案了,而在整个过程中,项目所需的各种类型的现代工具就自然而然地使用熟练了。
(3)个人素养是工程教育认证特别要求的。这些素养很难在传统的教学过程中得到培养,而在项目驱动教学法中,项目实施中不可避免的交流、沟通以及团队协作,遇到问题需要主动学习、自主学习、独立思考等,都能在潜移默化中使个人素养得到培养和提高。
4 基于项目驱动的软件工程课程教学设计
软件工程课程是软件工程专业的核心专业课,它主要教授如何将工程化的思想应用到软件的开发之中。教学章节内容涵盖了从软件项目初期的可行性分析、软件立项到需求分析、概要设计、详细设计、实现、测试、维护等各个环节,跟实际的软件项目开发过程完全吻合。因此,软件工程课程非常适合于使用项目驱动法来进行教学。
以章节内容为覆盖标准,我们对传统软件工程教学过程进行改革。我们选择学生非常熟悉的图书馆管理系统为贯穿整门课程的软件项目,基于项目驱动法重新设计该课程的教学过程见表2。
表1 工程教育认证毕业要求与项目驱动教学法特点的对应关系
毕业要求项目驱动教学法的特点理论素养:工程知识、问题分析和研究学生在项目中穿插学习到理论知识
实践能力:设计/开发解决方案和使用现代工具学生实际实现一个完整的项目
个人素养:工程与社会、环境和可持续发展、职业规范、个人和团队、沟通、项目管理和终身学习学生在项目开发过程中,锻炼了沟通能力、项目管理能力,提高了团队协作能力,并养成了自主学习、独立思考和终生学习的好习惯
2019
106
计算机教育
Computer Education
基于项目驱动的软件工程课程教学过程具体如下。
(1)在课程开始时,教师向学生布置关于课程项目的任务,包括各个开发环节需要提交的文档和源代码等;由于图书馆管理系统是学生非常熟悉的小型软件系统,通常项目组人数在10~12人比较合适,因此向学生说明分组的人数要求;根据学生对编程语言的熟悉和掌握程度,选定项目开发语言。
(2)可行性分析是项目立项前的一个重要环节。在传统教学中,这一章的教学通常比较枯燥:由教师列出各种类型的可行性分析,包括政策可行性、技术可行性、成本/效益分析、SWOT 分析等,学生听完这些理论之后可能仍会觉得没落到实处,遇到一个真实项目时,会觉得无从下手。在项目驱动法中,由学生自行去搜集资料,做好每种类型的可行性分析并撰写好可行性分析文档。在这个过程中,学生独立思考了,并且通过团队协作完成了资料的调查和文档的撰写,对可行性分析内容的理解会更加深刻。
(3)真实软件项目有两种来源,一个是订单式软件,一个是非订单式软件。签订合同和软件立项分别标志着这两种来源软件的立项。在项目驱动法中,学生收集文档模板,自己尝试着去撰写平时甚少有机会接触到的合同以及立项建议书,这为他们以后立项真实项目打好了基础。
(4)软件需求分析的任务主要包括需求建模
表2 基于项目驱动的软件工程课程教学设计
项目环节
教学过程
准备工作布置任务、成员分组,确定开发语言
软件可行性分析以小组为单位,学生搜集资料,对图书馆管理系统进行可行性分析,并撰写可行性分析文档软件立项以小组为单位,学生根据搜集到的模板文档,对图书馆管理系统分别撰写立项建议书和软件合同
软件需求分析小组内成员间自行分配任务,对图书馆管理系统进行需求分析,包括需求建模和撰写需求规格说明书软件概要设计小组内成员间自行分配任务,对图书馆管理系统进行概要分析,包括体系结构设计、数据设计、接口设计和撰写概要设计说明书等
软件详细设计小组内成员间自行分配任务,对图书馆管理系统进行详细设计,包括算法的设计、过程设计和撰写详细设计说明书等
软件实现小组内成员间自行分配任务,对图书馆管理系统每个模块进行并行编程开发
软件测试小组内成员间自行分配任务,对图书馆管理系统进行各类测试,包括单元测试、集成测试、系统测试和撰写软件测试文档等
软件维护
小组内成员间自行分配任务,模拟真实使用场景,对图书馆管理系统进行维护,并撰写维护文档
和撰写需求规格说明书。需求建模又包括建立数据模型、行为模型和功能模型。在小组内,学生自行分配任务,承担建模的不同任务,如构建数据字典、ER 图、状态图、数据流图或者各种UML 图。负责不同建模任务的学生同时负责需求规格说明书中相关内容的撰写。在这个阶段,学生可以利用各类软件工具来提高需求分析效率,如IBM Rational Rose 等。
(5)软件概要设计的任务主要包括体系结构设计、数据设计、接口设计和撰写概要设计说明书等。在小组内,学生承担不同的概要设计任务,如设计数据库表、构建软件结构图、设计人机交互界面或者模块接口等。学生可以利用各类软件工具来提高概要设计效率,如Microsoft Visio 、SQL Server 等。
(6)软件详细设计的任务主要包括模块内部算法的设计、过程设计和撰写详细设计说明书等。学生承担不同的概要设计任务,如画程序流程图、NS 图等。
(7)软件实现是将设计变为可运行代码的一个环节。在小组内,学生各自负责部分模块的编程任务,使每一位同学的动手实践能力都得到锻炼。
(8)软件测试发现并改正程序中的错误。从单元测试到集成测试、系统测试,递进式的关系让学生对每一个层次的测试都非常清楚。
(9)由于最终课程中开发的图书馆管理系统不会有真实的用户,学生在小组间交叉扮演用户
第 1 期
107
教育与教学研究
角。在使用过程中报告的错误可以提交给项目开发小组进行改正性维护,由项目开发小组撰写维护文档。
在课堂以及项目开发的整个过程中,教师始终只扮演一个观察者或者解惑者的角,对学生遇到的共性问题和重点知识点进行解惑和讲解。每位学生参与了项目从可行性分析到维护的全过程,在实践中学习理论、思考问题,不仅锻炼了动手能力,强化了对理论知识的理解,还培养了团队合作、相互交流和主动学习的好习惯。这些能力和素养正是工程教育认证对毕业生的要求。
5 结 语
工程教育认证对工程类毕业生提出了更高的要求,要求他们具备解决复杂工程问题的能力,包括掌握扎实的理论知识、动手实践能力以及团队协作、终身学习等素养,而这些能力在传统教学中很难得到锻炼
和培养。利用项目驱动教学法与工程教育认证的毕业要求之间高度的契合度,我们对软件工程课程的教学过程进行了重新设计,以提高教学质量和学生素质。下一步研究工作是探索软件工程课程实践环节有效的教学模式。
参考文献:
[1] 中国工程教育专业认证协会. 协会概况[EB/OL].[2018-06-01]. /main!newsJumpView.action?menuID=010
10301&ID=1000000581.
[2] 余天佐, 蒋建伟, 任锐,等. 基于工程教育认证标准的持续质量改进——以Z 大学全国示范性软件工程专业为例[J]. 清华大学教
育研究, 2015(6): 104-111.
[3] 邓娜, 陈旭, 王春枝. 针对工程教育认证的软件工程课程教学思考与探索[J]. 计算机教育, 2017(7): 41-43.[4] 张白, 周春艳, 潘俊涛. 基于虚拟仿真软件的项目驱动教学方法研究[J]. 计算机教育, 2016(4): 129-132.
(编辑:郭田珍)
参考文献:
[1] 吴岩. 一流本科, 一流专业, 一流人才[J]. 中国大学教学, 2017(11): 4-12, 17.
[2] 郝兴伟, 徐延宝, 王宪华. 我国高校计算机教学情况调研与分析[J].中国大学教学, 2014(6): 81-86.
[3] 吴宁, 房琛琛, 任燕飞. 大班环境下基于SPOC 的混合教学设计与效果分析[J]. 中国大学教学, 2016(5): 38-43.[4] 刘茜, 李廉. 快速推进计算机基础教学改革的“三个阶段”[J].计算机教育, 2017(12): 63-64, 68.
[5] 冯博琴, 郑庆华. 计算机精品资源共享课建设与协同创新模式探索[J]. 中国大学教学, 2013(8):8-11, 16.[6]
王友富. MOOC 背景下的教材形态与研发策略初探[J]. 中国编辑, 2016(2): 63-67.
(编辑:郭田珍)
4 结 语
随着人工智能、虚拟现实、物联网等信息技术的发展,计算机在各学科研究中的重要性和人才培养的必要性愈加凸显,计算机基础教育的质量也在一定程度上影响着本科教育的质量,完善的课程体系是学生
实现知识有效掌握的基础。MOOC 的兴起及线上线下相融合的教学模式探索,为实现计算机基础课程体系化教学提供了可能。借助学校、高等教育出版社和
“爱课程”平台的支持,我们已完成了计算机基础系列在线开放课程建设,已在当年度秋季学期上线发布;结合MOOC 教学,我们启动了计算机基础系列教材编写,设计了纸质教材与在线课堂双向关联、教学内容动态更新的新形态教材建设策略。试图通过线上线下教学资源的深度融合,构建出体系化、独立领域的计算机基础学习环境,使学生通过“理论学习+设计实践”,初步具备一般计算机软硬设计能力,满足专业研究的需求。
(上接第103页)

本文发布于:2024-09-22 17:31:31,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/4/462343.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:项目   设计   学生   工程   分析
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议