发布时间:2022-09-22 16:28:22
序言:写作是分享个人见解和探索未知领域的桥梁,我们为您精选了8篇的软件教学样本,期待这些样本能够为您提供丰富的参考和启发,请尽情阅读。
截止到2020年5月7日,我已在线上完成教学任务88节课,主要承担的是软件教学课程,经过一段时间的线上教学,结合之前在课堂上与学生面对面授课的经验,做出以下总结。
针对我承担的软件案例制作类课程,包括影视节目与频道包装,影视剪辑艺术,栏目包装与特效实训等课程,线上教学的优劣势明显,下面我先总结一下线上教学的优势。第一、线上教学的最大优势是可以将课程直播回放,制作包装案例时,每一个操作步骤衔接非常紧密,逻辑性很强,而且步骤繁多,杂乱,并且不便于记在笔记本上,无法像其他理论课程那样,知识点明确,便于整理与记忆。因为特效制作与调节必须结合调节后的效果变化,才能掌握到位,没有严格规范,所以技术与经验的积累过程很难通过笔记来实现,而相比线下教学,在机房做完一遍案例之后,无法满足每个学生的重播需求,线上视频教程就具有很大优势。其次、视频特效软件属于熟练性技能,因为所教的是大三学生,距离实际工作时间还有将近一年,课程结束后,长时间没有练习操作,特效剪辑等技能性能力会有大幅度削弱,而线上教学课程存储时间长,可以在需要时,反复观看课程内容,将对技能熟练度恢复起到决定性帮助,使课程能够一直伴随在学生身边,在需要时可以随时选择性复习。最后、在素材,软件安装包,插件安装包以及相同类型课程的线上对比讲解方面有着巨大优势,相比线下上课时,文件传输需要时间很长,而且不易保存,需要学生随身携带U盘上课,以及损坏、中毒、丢失,线上传输省却了中间环节,而且可以提前传到群里让学生上课前下载完毕,上课时直接操作。在讲到弄个案例特效或剪辑时,可以当场与学生共同查看网络视频或者网络课程,进行类比或对比分析制作。
而相比线下教学,线上教学的缺点也十分明显。首先、课堂纪律无法保证,无法监督学生在干什么,点开教学视频或者进入到直播中之后到底有没有观看,或者有没有溜号精神不集中等现象,在哪里出现困惑,哪里已经讲透不用赘述,无法第一时间得到面部表情反馈。现在的网速和教学软件达不到所有人都开视频而且不卡顿的程度。开视频与在课堂上的观察还有很大不同。其次、线上不稳定因素太多,断电,断网,网络卡顿,设备突然故障等可影响教学质量的外在因素过多,很难保证每堂课80多名学生所能接受到同样的教学效果。最后、对于软件课来说,最困难的是指导学生操作环节,相比于线下机房授课,教师无法迅速的看到学生操作界面,并且查看一个特效工程每一个效果的指标参数,只能通过视频聊天,远程操控,而课堂上学生数量很多,每解答一个问题就得视频一次,或者让学生发一组图片,影响解答效率,影响教学质量。
最后本人觉得目前线上教学无法完全代替线下教学,而线上教学的优势也是线下教学需要保留的,线上线下灵活结合是以后教学工作的突破口,讲优势集中,达到超出预期的教学效果。
关键词:软件测试;案例教学;实践教学
中图分类号:G642
文献标识码:B
文章编号:1672-5913(2008)06-0031-02
1软件测试课程教学现状
软件测试作为控制软件产品质量的重要手段,目前在国内也开始热起来。国外软件厂商早就极为重视软件测试,目前欧美等软件产业发达国家的软件企业里,软件测试和开发人员的合适比例达到1∶1,甚至不少企业测试人员的规模已超过了开发人员。而国内,在被调查企业中,测试人员与开发人员比例为1∶5的企业高达36.4%,比例为1∶2的企业占31.8%,比例为1∶1及以上的企业仅占31.7%。随着产业和企业的发展,企业必然需要大量的测试人员。据国内某大型招聘网站的调查数据显示,2007年1至6月软件测试工程师年供需比达到1:50,人才极度稀缺。
软件测试人员为什么会有如此稀缺?国内相关人才培养的滞后远不能满足过旺的需求,这是导致测试人才供不应求的根本原因。目前国内开设相关专业和课程的高校寥寥无几。各大高校及相关部门对相应的市场需求反映过慢,造成了供需方面的矛盾。一方面市场缺口巨大,企业苦于招不到合适的人才;另一方面一些应届毕业生或IT从业人员想从事软件测试相关工作,但由于没有相关经验及基础理论知识而被拒之门外。
目前大部分高校没有开设专门的软件测试课程,软件测试只是软件工程课程的一部分,所涉及的软件测试相关知识非常有限。即使开设了软件测试课程的高校,也面临着师资力量匮乏、学生学习积极性不高和教学资源不足等困难。目前比较好的软件测试教材和参考书不多,而且软件测试实践环节所需要大量的案例也不足,这也在一定程度上加大了老师上课的难度,也是很多老师不愿意上软件测试课程的原因。
2教学目的和授课方式
我校计算机学院审时度势在3年前就开设了软件测试课程,该门课程是软件工程专业的必修课。通过软件测试知识体系的学习,使学生了解软件测试的发展现状,掌握软件测试的方法和技术,熟悉软件测试过程管理,从而具有独立承担测试项目的实施能力,具有测试策划、管理、实现和判断能力;通过实际的案例分析,并选用合适的测试工具实施软件测试,让学生掌握一套主流测试工具的具体应用,并且掌握技术流程、软件测试方法、测试管理、配置管理以及技术文档的写作等;最后,引导部分对知识技能掌握比较好的学生对软件测试某一方面的问题进行深入研究,为其后续的发展铺好道路。
鉴于以上的教学目的,本课程采取理论授课与上机实践相结合的授课方式,并辅之课堂和网络讨论、案例分析。本科教育最重要的是要为所学专业打下坚实的基础,所以该课程的54个学时中,用于基本概念和理论、工具分析和使用的理论授课时间为36个学时,用于案例分析讨论、实验操作的上机实践、研究分析报告占18个时间。
3软件测试课程教学探索和实践
3.1软件测试理论课主要教学内容
软件测试理论课内容包括以下6部分的内容:第一部分软件测试综述。共使用4个学时讲解软件缺陷的概念、软件测试的背景、定义、目的和原则;软件开发过程和软件测试的关系、软件质量的概念和软件质量管理。
第二部分软件测试基础知识。本部分是该门课程的重点,共使用12个学时讲解,内容包括静态测试和动态测试的概念及方法、黑盒测试和白盒测试的概念及方法,其中黑盒测试和白盒测试的概念和方法又是该部分的重点内容。黑盒测试主要讲解等价类划分法、边界值分析法、因果图法、决策表法、错误推测法等常用方法的概念和使用方法;白盒测试主要讲解覆盖测试(包括语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、组合覆盖和路径覆盖)、路径测试、最少测试用例数计算等内容。
第三部分测试文档。内容包括测试计划、编写和跟踪测试用例、缺陷管理,共用6个学时讲解。
第四部分运用测试技术。该部分主要讲解软件测试三大阶段单元测试、集成测试和系统测试的概念和方法,其中系统测试具体分为配置测试、兼容性测试、文档测试、软件安全性测试、恢复性测试、压力测试、性能测试、正确性测试。最后综合所学知识完成一个网站的测试实例。该部分共使用8个学时的时间。
第五部分软件测试自动化。共用4个学时讲解和演示目前常用的自动化测试工具。
第六部分软件测试的现状和未来。由于该课程是在大四上学期开设,学生都面临毕业找工,所以设计2个学时针对毕业学生讲解软件测试职业以及对测试人员的要求。
为了保障软件测试课程的教学水平,提高教学效果,我们主要采用案例教学法。一些典型的、难度适宜的、有针对性和代表性的案例的收集成为案例教学法实施的难点。案例的收集我们主要通过以下几种途径:
(1) 从实习企业中收集
(2) 从学生毕业设计中收集
(3) 从学生上机作业及课堂作业中收集
(4) 从教材及参考书中收集
(5) 从互联网中收集。案例的选择遵循典型性、针对性和系统性原则,收集到的案例可以作为理论课讲解时的实例,也可以作为实验课的基本素材。
3.2强化实践教学环节
软件测试课程实践教学环节包括两个方面的内容:实验课实践环节和课外实践环节。实验课实践环节共设计了8个实验,分别是4个基础实验,3个专项实验和1个综合性设计性实验。两个完整、系统的实验案例贯穿其中:C/S结构的学生学籍管理系统,来源于数据库原理课程大作业;B/S结构的网上办公自动化系统,来源于毕业设计。实验内容涵盖了理论课程的大部分重要知识点。详细实验项目内容见下表:
要想使学生真正具有独立承担软件测试、软件配置、软件维护、软件实施等方面的能力,18个学时的课堂实践是远远不够的。所以除此之外,还设计了课外实践环节。课外实践有针对性地设计了目前软件测试方面比较受关注的热点和难点问题,让学生进行分组,每组5~8人,确定一名小组长对整个组的成员进行管理,确定小组研究方向,然后就该方向利用图书馆科技文献资源或互联网进行深入研究与分析,在学期末每组提交一份学术报告汇报学习研究情况。
参考文献
[1] 钟元生. 软件测试实践教学特色的构建实践[J]. 电化教育研究,2006,(10):62-65.
1计算机软件教学视频课件的应用特征
1.1视频课件中的教学内容具有连续性特征
相比其他专业学科来说,计算机软件专业中涉及的教材内容本身就具有一定的连续性特征。与之相对应的,计算机软件教学视频呈现的课件内容也应该具备一定的连续性。尤其是关系到计算机软件课程综合性较强的设计项目教育环节,具备连续性的视频教学软件更加能够让学生将新旧知识联合在一起,从而更好地在项目开展的过程中,实现对计算机软件知识的迁移和应用。同时,学生在面对实训操作类计算机软件工程项目时,也需要将所学知识有机地连接在一起,通过新旧知识的迁移和应用完成计算机软件类工程项目的学习。
1.2具有学习平台计算机软件化的特征
在计算机软件专业课程教学工作中,教学视频的播放本身就是以特定的软件平台作为媒介而展开的,例如,教学视频课件可能是以图像处理软件photoshop作为平台而播放的,有可能是以网页设计软件dreamwave作为平台播放的。与此同时,教育工作者在制作软件,教学课件时,还可能会将图像处理技术或网页设计软件中的相关技术应用在内,然后在课堂中将本堂课程的教学内容以视频课件的形式展现给学生,然后教育工作者需要配合课件中罗列出的教学内容,在投影设备上实现对计算机软件的操作和应用,这样有利于让学生将课件中的理论教学课程与多媒体设备下教育工作者实际操作示范过程有机地融合起来。总而言之,计算机软件专业课程在教学过程中,无论是课件的播放还是教育工作者实际操作的展现,都要以计算机软件作为媒介向学生进行展示。
1.3计算机软件教学视频课件具有操作性较强的特征
在计算机软件教学课程中,教育工作者提前设计好的视频教学课件,需要配合某一特定的软件操作为例,通过课件中理论知识内容与软件实践操作相结合,开展本堂课程的内容讲解。计算机软件专业课程相比于高等院校其他专业的教育教学内容来说,具有逻辑性较强、实践操作性较强等学科特征,而其中最为突出的就是计算机软件课程的实践操作价值。以高等院校计算机软件专业课程教材中《计算机网页设计》HTML标签设计的讲解为例,如果教育工作者在开展本堂课程的教学讲解是单纯地采用课件对本堂课程的理论知识教学内容进行罗列,是远远无法达到本堂课程的教学目标的,同时也无法展现出计算机软件专业的实践操作性特征。而高等院校的学生,大多数都是初次接触计算机软件专业知识,由于缺乏基础知识的铺垫,关于网页设计这样的抽象教学内容,很难得到透彻的理解。因此,教育工作者可以考虑将计算机软件教学课件与软件实践操作示范教学相结合,通过文字性的叙述以及实践动手操作示范,突出计算机软件课程实践应用性的特征[1]。
2高等院校计算机软件教学专业中视频课件应用存在的主要问题
2.1课件的编排组织缺乏规范性
视频课件在高等院校相关专业中的应用,不仅仅是为了拓宽教学内容展示的渠道和途径,同时,视频课件的应用还肩负着组织教学活动流程、提示教育工作者下一项教学内容的重要价值,但是在高等院校的计算机软件教学专业中,却没有很好地突出视频课件规范性和组织性的功能,这也是教育工作者制备视频课件中的不足之处。很多应用在课堂中的视频课件中,并没有体现出本堂课程教学内容的层次性,课件中所展示的教学内容缺乏系统性和结构性,并且没有形成相对独立且又相互连接的知识模块,这也导致视频课件在计算机软件教学课程中的应用只是简单地对教学内容进行展现,但是却无法突出组织方面的层层递进特点。此外,还有很多教育工作者对于计算机视频课件的制作以及课堂展示缺乏操作熟练性,在操作过程中可能由于个人技巧问题出现了多种意外状况,这也导致视频课件无法发挥出真正的教学价值,同时也削弱了教育工作者参与课件制作的热情和积极性,导致课件的应用效果大打折扣。可见这种凌乱而缺乏组织的课件编排方式,对于计算机软件教学课程效率和质量的提升意义不大[2]。
2.2课件呈现和展示方式不够灵活
当前,高等院校内部,许多计算机软件专业课程的教育工作者认为,教学课件的呈现无非就是将纸质版的教学内容转化为电子化的展示方式。因此,在课件的制备以及展示过程中,通常只是将书本中纸质版的教育文字内容简单地展示为普通的教育框架结构,这种单一的课件展示方式无法有效地提升教学工作中的针对性和目的性,同时,零散的课件内容呈现方式也无法使学生将精力都集中在同一项计算机软件课程项目中,虽然这种课件呈现方式将纸质化的教学内容呈现为电子化的教学内容,但其本质还是灌输式的填充性教学。为了改变这一现状,教育工作者必须明确,电子课件的展示和应用并不仅仅是对于纸质版教学内容呈现方式的转化,而是要在电子课件中注重对于教学知识内容的层次排列以及有机整合,通过配合课堂时间展示,将视频课件作为一种重要的辅助教学资源,利用其多元化的媒体展现形式,在课件中将文字语言、动画视频以及图片色彩集于一体,使得抽象化的计算机软件教学内容更加生动立体[3]。
3高品质计算机软件教学视频课件在专业课程中的应用策略
3.1注重视频课件内容的连续性以及实用性价值
计算机软件视频课件的实用性价值主要是教育工作者在课前准备课件的过程中能够清晰地在视频中反映出计算机软件的具体操作流程和步骤,这样方便学生能够在课上或课后学习中,通过对视频的观看结合书本理论、文字语言更加清晰地掌握计算机软件的操作流程以及操作技巧。而计算机软件视频课程的连续性则是指教育工作者在制备课件时,应该注重新旧知识的连接以及教育内容之间的连续性。尤其是高等院校的计算机软件专业课程中,很多学生都是第一次接触专业知识,虽然前期的基础性内容学习起来较为简单,但是基础性知识的教学内容往往较为零散。因此,教育工作者在制作课件时,应该注重将基础性教学内容之间的连续性展现出来,通过深度挖掘基础知识之间的关联性,帮助学生在课堂中得到较为完整的体系化知识框架[4]。
3.2对课件中的教学内容进行灵活的编排和组织
在制作视频课件时,关于教材内容的组织方式并不是简单地将课本中的理论知识直白地呈现出来,而是应该在编排的过程中注重突出知识结构的层次性和顺序性,同时,还能够建立起相互独立却又相互连接的知识模块,使得学生能够在观看视频课件后,在脑海中建立起与本堂课程教学内容相关的知识框架体系[5]。通过这种结构化、层次性的教育素材编排和组织方式,不仅能够让学生意识到本堂课程中学习的重难点内容,同时,还能让学生站在整体的角度上,在脑海中将所学知识有机地排列起来,对于帮助学生构建思维框架体系,培养学生的高阶思维能力具有重要价值。因此,在制作计算机软件视频教学课件时,必须要注重对于课件内容的灵活组织和编排,突出课件内容的结构性以及层次性,尤其是关系到本堂课程的教育重点内容还应该加以强调,让视频课件以有序且灵活的方式呈现在学生面前,同时,学生也能够从中有所收获,构建起更加全面的知识结构框架体系[6]。
3.3重视对软件操作步骤的重现
高等院校的计算机软件专业课程中,有许多软件操作技术相对来说较为复杂。如果在讲解的过程中单纯地为学生讲解操作步骤,那么整堂课程将会显得过于抽象。因此,教育工作者针对这类型课程,可以将软件操作的全过程体现在视频课件中,使视频操作与书本文字理论知识结合在一起,学生通过反复观看更加了解软件操作的技巧[7]。例如,在学习代码控制软件操作这节课程时,教育工作者可以将代码操作的全过程以视频展现的方式呈现在视频课件中,在进行演示时,只需要通过粘贴代码就能够完成具有一定目标性的代码操作过程。而在课后环节,学生可以将课件内容拷贝下来,参考视频中代码操作的步骤完成学习任务。因此,教育工作者在制作专业课程视频课件时,应该注重对于部分操作技术的可重现性,尤其是对于一些具有一定技术难度的操作环节,应该将操作步骤完整地展现在课件中。但是,这种可重现性的操作设计并不是必要的,而更加适用于一些相对较为复杂的操作流程[8]。
3.4使视频课件媒体的呈现方式更加多元化
高等院校的计算机软件课程书本知识本身较为枯燥,因此,教育工作者在制作视频课件时,应该将动画视频、文字语言、声音图像有机融合在一起,通过更加生动立体的方式展示本堂课程的教学内容。尤其是针对计算机软件课程来说,对于一些大篇幅的文字描述,可以配合树形结构图或图像说明的方式,对软件的应用流程进行立体化的展示。尤其是在制作视频课件时,教育工作者应该选择一些以操作应用结果为主的图像内容展示在学生面前,让学生直观地看到通过一系列操作步骤能够得到的结果,从而激发学生实践操作的学习信心。而针对教材中一些相对抽象的软件教学内容,还可以通过视频加文字的方式进行再现,这样的视频课件展示效果是传统的口述知识传递教育方式无法比拟的。与此同时,教育工作者还可以配合一些趣味性的视频片段或声音,有效地激发学生的学习兴趣。而在课堂教学中,教育工作者可以采用“课件展示、演示操作、课件展示”这样的重复性步骤,使学生通过反复地观看实现对于知识的巩固和深度理解,有效地提升计算机软件课程的教学效率。
4结语
综上所述,计算机软件视频教学课件不只是对于书本教材内容的平面呈现,更应该注重课件内容的层次性和连续性,通过加入更加丰富的课件元素,才能够使视频课件的教学价值更好地凸显出来,有效地提升计算机软件教学课程的教育效果。
参考文献
[1]顾敏.视频教育资源在高校计算机教学中的应用分析[J].科技展望,2016,26(34):313,322.
[2]乔帆,余咏潮,赵志青,等.基于智能语音控制技术的计算机辅助教学系统在动物外科教学中的应用[J].中国高等医学教育,2017(3):7-8.
[3]卢珊.开发计算机软件教学视频课件研究与实践[J].时代农机,2017,44(6):201-202.
[4]车元媛.微课在大学计算机教学中的应用研究[J].电脑知识与技术,2017,13(24):146-147,158.
[5]方悦昕.用录屏软件制作流媒体网络课件的简便方法[J].电脑知识与技术,2008(18):1756-1758.
[6]吴林.视频教学模式在高校计算机教学中的实践研究[J].科技资讯,2018,16(20):176,178.
[7]姚志均,陈舒涵,孙磊,等.翻转课堂模式及其在计算机编程课程中的应用研究[J].计算机教育,2019(2):167-171.
关键词:开源;化学;教学;软件
一、引言
化学教学的实践性和操作性很强,但是不是所有的实践都可以用文字描述、概括清楚,例如,反应机理的验证、复杂分子三维结构可视化等,因此、在进行理论教学的同时,需要利用计算机软件对理论知识进行说明,以加强学生对理论知识的理解和掌握。这样首先就面对一个软件选择的问题。尽管有许多软件可供选择,但大部分都是付费软件,与其相对应也有自由软件,但是很多都是试用版或者功能、时间限制版。随着开源软件的蓬勃发展,为化学教育提供新的多样性选择。开源软件即开放源代码的软件,是指在有关许可协议方式的规范下,任何人能够自由获得、拷贝、研究、改进以及分发其源代码的软件。广义的开源软件指任何公开源代码的软件。开源软件具备可免费使用以及公布源代码等主要特征、使用开源软件的优势在于学生一旦懂得操作,即可在工作中可以使用;与其相反,付费软件有可能因为没有购买版权,即使懂得操作也无法公开使用以及出版,不能够做到学以致用。开源软件从系统分,有DOS系统、Windows系统、Linux内核、以及跨平台如JAVA;从功能分,有资料提供软件、结构建模软件、化学编辑软件、反应机理软件、分子模拟软件等。开源软件目前主流仍旧在Linux系统,这对于初学者有一定的难度,但是随着Windows一统天下的局面终结,系统平台也趋于多元化,IE浏览器的终结伴随国外opera、Chrome、 firefox和国内Maxthon、360、QQ等群雄并起的局面,以及手机平台iOS和Android纵横驰骋,足可一见其斑。
二、开源软件在化学教学中的应用
ChemPaster是一款用于编辑化学式的软件,与同类软件相比,其对无机化学式和有机化学式都提供了完美的支持。无需生成中间档案便可将化学式插入各种主流文件处理程序中。提供基本绘图功能,可以直接实现仪器的绘制。提供许多绘制好的仪器图片。Math-o-mir是个强大的公式编辑器。FX Chem Struct提供给教师使用的化学图表工具,内置所有化学符号可供使用。Chemix是一个实验仪器仿真软件,类似Chemoffice实验模块的Flash程序。Veusz可以绘制各种科学图表,内包含Python程序库。
2.资料提供软件
常见的资料提供软件包括ChemHandbook、SCIfinder。与其对应开源软件有基于Java完成的Polyhedron Search可以利用化合物的多面体特征以及对称性进行网络搜索;HSC Chemistry是世界上使用最广泛的热化学计算应用软件。对于合成化学的教学,Systematichem Syntheses Viewer是一大福音,其内嵌的可视器与SysChem公司的网站数据库联合,提供常见目标产物的合成路线。Toxtree是一个有毒化合物的分析工具,可以通过插件对不同的制作方案进行分析,它使用Java编写,可以支持多平台。Kalzium是一个显示化学周期表的程序,还可以根据分子式显示元素的三维立体图,并测量原子之间的距离,其化学方程式配平器还可以实现将化学方程式配平。
3.结构建模软件
常见的付费结构建模软件包括ChemDraw、ChemWindow、Chemsketch、ISISDraw,其中Chemsketch是自由软件,但是更高一些功能则需要付费。在开源软件中,Avogadro是一个交叉平台上的开源的高级分子编辑器和显示程序,可以使用在计算化学、分子建模、生物信息学、材料科学和相关领域中。它提供了强大而灵活的插件功能,界面也非常的友好。GAMGI是用于linux上的一个图形界面来查看和分析原子结构信息程序,对于分子、晶体、玻璃、液体等也比较适合。对于大分子例如蛋白多糖等,可以采用CueMol可视化,它还可以看到分子3D结构并有渲染功能。PyMOL采用可扩展的模块方式,可以方便地集成到其他应用程序中。比较受欢迎的还有Rasmol和Jmol,这是一个相对较弱的三维显示软件。不过它不能编辑和创建分子模型,只有可视化功能。一般情况下,与ISISDraw连用。也可以单独使用,功能也比较简单,容易操作。有特色的是其跟踪日志功能,这里要注意Jmol的开发者特别约定了元素、残基、氢键等各种结构特征的颜色配置。WebLab Viewer Pro自身能够编辑和绘制分子模型,同样功能简单,除了拥有一般三维结构模拟软件的特点以外,它表现生物分子和晶体结构的能力应该说是同类软件中最强的。这就使一些蛋白质分子和高分子有了较为恰当的表示方法。SketchEI主要采用MDL和MOL格式搭建分子结构。另外,还有Chemitorium也是一个比较简单的结构建模程序。
4.反应机理软件
Kintecus通常用于模拟化学反应动力学,也可以研究燃烧反应的平衡和酶反应等。ChemMaths是一个化工计算软件,内嵌EquationsPro包含超过400预设的反应式,DataPro包含超过3000化合物,UnitsPro可以进行超过200个单位转换,ProsimGraphsPro可以展示化工过程,其可以预测化学性质、临界常数、热力学性质,表面拉力等。ReactionLab是一个用于Matlab的工具箱,用于模拟化学反应过程。PyQuante用python写成的量化计算软件。python是种脚本语言,所以,它的计算效率不如c、c++、fortran,因此,在对计算时间比较敏感的一些任务中,基本不可能用python。通常的计算化学软件,由于历史原因很多都是用fortran。Python在计算化学更多的是用来处理不是很大的数据,或者进行文件操作。虽然不像Jaguar,Gaussian或者GAMESS那样快,但是容易理解,易于修改。它目的是提供一组设计得很好的工具,使科学家可以构建自己的量子化学程序,而无需全部自己书写源代码。因此,它可以作为一个教学模型,学习量化程序包的底层机制。流体力学软件OpenFOAM与OpenFVM可用于化工设备中流体流动、传热、传质与反应的计算。
5.分子模拟软件
Towhee软件是明尼苏达大学化学系SiePmann小组在美国能源部支持的复杂体系研究项目的基础之上建立起来的, 由蒙特卡洛分子模拟代码组成,基本功能包括单组分、多组分吸附等温线;最先为预测流体相平衡而设计,主要使用基于特别设计的处理采样分子构象的算法的原子力场,随后扩展到一些系统、多种不同的力场以及固体(或者至少多孔性的)相中。另一个著名的是LAMMPS,最初由美国能源CRADA(Cooperative Research and Development Agreement)联合两家美国能源部实验室和三家公司研发的。 它是一个用于计算大规模体系的经典动力学代码。LAMMPS基于丰富的力场和边界条件,可以模拟原子、聚合物、生物、金属或者颗粒体系。GROMACS是分子动力学软件包,用于模拟含几百到几百万粒子体系的牛顿运动方程。它特别适用于生物分子,如,蛋白质、油脂等有大量复杂健作用的体系,但是由于GROMACS在计算非键作用(这占了模拟的主要部分)时相当快,因此,也可广泛应用于非生物体系,如聚合物。
三、总结
积极鼓励开源软件进入化学教育领域,特别是进入基础教育和高等教育领域,对于未来高端教育技术的跨越式发展无疑是一支强心剂。因此,肩负知识创新重担的年轻教师有责任也有义务在化学教育领域大力推广开源软件。
参考文献:
[1]叶海鹏.开源软件教育探析.软件导刊,2006(10):3-6.
[2]张文正.开源软件在高校中的应用参考.现代教育技术,2008,18(10):110-113.
[3]袁小龙,李晓霞,郭力,等.开源软件在化学数据库分子结构检索中的应用.计算机与应用化学,2008,25(09):1144-1146.
[4]杨晓光.开源软件在化学工程学科中的应用初探.时代教育,2014(06):25.
随着会计实训软件系统的迅速发展,提高会计软件实训教学质量成为我们会计教学的的重点和难点。文章分析了会计实训软件的发展,阐述了会计实训软件教学中存在的问题,并探讨了提高会计实训软件教学质量的方法。
关键词:会计实训软件;人才培养方案;慕课
21世纪是信息化的社会,信息科技在人类生产生活中迅速推广和应用,成为世界发展的重要特征。使用会计实训软件进行教学是会计类专业实践性教学环节的重要组成部分。无论在专科还是在本科的办学层次上,都会有计划的安排一定量的实践教学课时,通过教学培养学生会计认知的能力并掌握其使用技能的的方法,但是这一教学环节存在一些问题,如课时太少、训练目标和方法单一、综合性不强等等,随着会计教学本身不断的创新发展,有必要重新认识会计实训软件教学,探索解决当前问题的方法对策。
一、当前会计软件实训系统的发展
1.会计实训软件的仿真性
各类会计实训软件大多数都模拟真实企业场景,还原会计软件在企业实际工作中的真实情况,让学生有身临其境的感觉,在网络上完成会计岗位的虚拟实习。所用原始凭证和数据材料甚至来自真实企业的全套业务。无论企业经济业务资料、业务单证界面、会计业务操作界面、会计岗位的管理和切换会计业务流程及角色都高度仿真。
2.会计实训软件的灵活性
在会计软件实训中,教师可事先设定学生学习的范围,在学习的过程中可监控学生的学习进程,可设定学生的作业,并自动记录检查完成情况及记分。有利于教师对整个实训教学进行必要的管理,使实训教学向着确定的目标进行并完成。
3.会计实训软件的扩展性
教师可自行新增课件或各种类型的实习企业相关资料,可自定义报表格式及计算方法以适应不同行业,实现报表的自动计算。
4.会计实训软件的易用性
只需要在一台服务器上安装,老师与学生的机器不需要安装任何软件,只要有windowsIE浏览器即可,可实现跨机房、跨校区的应用。
二、当前会计软件实训教学中存在的问题
1.会计软件实训教学的课时安排太少
当前会计老师虽然已认识到会计专业实践性很强,可是模拟实训课程时间安排还是太少,目前大多安排的课时是36学时,相当于一周的时间。在这一周时间里,学生要利用会计实训软件系统从认识到熟练完成企业一个季度以上的会计处理,工作量非常大。学生对各专业实训的业务流程,往往是知其然而不知其所以然,影响实训的质量和效果。还有较为“聪明”的学生就选择偷懒,抄袭其他学生的作业,拿到所需学分,达不到实训的目的。
2.会计软件实训教学训练手段单一
目前大多数的会计软件实训系统都是针对各学科专业知识的需要,实训内容选择企业中某一时期的经济业务进行模拟实训,采用单用户的方式进行模拟手工操作。与实际工作中的会计电算化软件的衔接还有很大差距。
3.会计软件实训教学的指导教师经验不足
会计软件实训教学不同于传统教学,除了需要会计专业的各方面知识外,还需相应了解网络信息、数据库等相关的知识结构,这对指导教师自身素质的要求很高,短时间内不可能获得这些经验。
三、完善会计软件实训教学的方法
1.重视会计实训课程在会计专业人才培养方案中的地位
在国家的中长期教育改革和发展纲要中就指出:应以教育出为社会服务的应用型人才为终级目标。应用型人才的培养应以行业需求为本位,以专业能力为核心,注重知识的复合性、现实性和应用性,强调学生实践和解决问题能力的培养,以便更好地适应服务社会。所以在我们的专业人才培养方案中应按照会计专业课程设置的顺序,以模块的形势将会计实训软件与相关的理论课程作为有机的结合,适当提高课时量,注重各专业会计理论与实训软件教学的综合性,提升学生自己的应用实践能力。
2.会计实训软件教学的教师培养
由于我国会计法规体系和会计实训软件系统的更新速度很快,也给我们教师提出了更高的要求,为了跟上时代的步伐,还应该加大对授课教师的培训工作。除了专业知识外,也必须学习相关的计算机、数据库、互联网等综合性知识,必要的时候还应该派教师到企业去,增加实际工作的经验,使教师的教学水平得到快速提高。
3.会计实训软件教学的综合性
在会计实训软件教学过程中,除了各专业的单项实训外,还要与其他软件相互结合,进行综合性的实训教学。例如可采用人机对抗的方式,学生采取组队竞争模式去虚拟经营一家工业(商业)企业,在实训软件平台上通过运营、账务处理、电子报税、税务稽查等模块,从会计主管、总账会计、成本会计、出纳等的角度去全面关注企业决策、财务管理、筹资投资、市场营销等相关知识和实务技能。使学生亲临其境体验企业的真实运营环境,自主经营业务,拓展经营思路,训练学生在开放的平台发挥创新能力,团队协作,完成各项任务,提高共同创造企业价值的能力。
4.会计实训软件教学的创新性
“互联网+慕课”这种现代化学习方式,正在改变着传统教育的模式和格局。通过打造会计实训软件课程信息平台方式进行“慕课”的开发,让更多的教师参与其中,相互促进、相互交流,资源共享;通过线上课程和线下教学实现“翻转课堂”,以学生为主体,在教学任务的指导下进行主动、个性化的学习,更有利于不同层次的学生的学习。综上所述,在会计实训软件的教学过程中,应不断调整人才培养方案,应用全新的教学理念,以学生为主体,促进学生主动构建自己的会计知识体系,掌握会计工作技能;应不断探索会计实训软件教学改革发展的新途径,培养符合现代化会计行业发展的合格人才。
参考文献:
[1]王晓炜,吕志明.会计信息系统与实验[M].北京:清华大学出版社,2006.
[2]李文秦,用友ERP-U8(V8.61)财务软件实验教学质量提升的思考[J].内蒙古财经学院学报,2011,9(4).
关键词:软件工程;工程能力;案例教学
中图分类号:G642 文献标识码:A
Abstract:Taking the educational program for outstanding software engineering as a background,we briefly analyze the course of software engineering with respect to its position in the whole curricula system, and then explore an issue taking place in the teaching practice.A strategy for improving the teaching effect is proposed after the analysis.Our practice indicates the strategy is helpful to the students for highlighting the understanding of software design.
Keywords:software engineering;engineering ability;case study
1 引言(Introduction)
“卓越工程师教育培养计划”是教育部于2010年6月启动的为期10年(2010―2020年)的重大改革项目。该项目旨在全面提高我国工程人才培养质量,对于计算机专业则是要求其以新的教学改革尝试,培养具有高工程素质的卓越软件工程师。笔者以这一计划为大背景,围绕软件工程专业课教学,深入探讨该门课程的性质及课堂教学策略,以期能够引导学生通过学好软件工程,成为一名卓越的软件工程师。
2 软件工程教学中存在的问题及分析(The analysis for issues taking place in teaching software engineering)
软件工程是核心专业课[1,2]。该门课程能将先前学习的程序语言,面向对象思想,算法设计与分析,网络原理,数据库建模,开发工具等综合地融合到一起,在设计层面使之成为一个整体的工程方案,解决需求分析中的领域问题。作为软件工程专业的学生,应当通过学习软件工程这门课程,综合地领会各种基础课程在软件建模中的具体应用,并通过分析和设计案例,体会现实需求与抽象设计的转换之美,为将来成为一名软件工程师打好基础。然而受教学资源、课时以及学生自身条件等诸多因素限制,在实际教学过程中,学生更倾向于较快地进入编程阶段,而对早期的分析设计阶段认识不足。由于软件工程专业的学生,在长远规划上,应被培养成为软件设计人员或软件工程师,而不应是专职编码人员,因此对于教学期间出现的这种现象:易倾向编程而非重点优化设计,应当给予重视并在授课策略上作调整。笔者认为出现这种现象的原因可归结为:
(1)预修的课程较多强调编程,较少关注设计,导致一种惯性思维――跳过设计直接编程。如C++语言,授课时更多的是讲解如何编写一个类型、构造函数的编写规则,以及继承、重载、多态等编写规则和运行原理,而较少用标准制图的方式描述类型的设计以及类型间的逻辑关联。
(2)不是所有的预修课程学生都能透彻领会,依据“短板原理”,未领会的理论将使学生在设计阶段卡壳,想不出哪些理论方法可使设计进行下去,导致学生设计热情锐减。例如学生对网络原理理解不深,将影响数据传输协议的选用。
(3)从需求分析中抽象必要的设计词汇,并将这些词汇通过绘图、编档以展现业务逻辑,是一种必要的设计能力。然而,这种能力对于工科学生而言较为薄弱。部分学生词汇贫乏,导致设计时的逻辑、时序关系不清晰,给接下来的设计带来不便,从而失去设计的乐趣。如从需求中抽取动宾短语绘制业务流程图,部分学生对词性把握不当或选词不妥,使得词汇在语义上有重叠,直接导致制图过程不顺畅,而这会为后续设计,如从动宾短语映射功能类型带来麻烦。
(4)案例规模较小,学生在头脑中简要构思即可编程实现。案例规模小,学生不能通过案例感受设计的重要性,往往是先编程后补文档。这直接导致一个后果,一旦需求变动,整个程序和文档几乎要重做:这不是软件工程的初衷。反之,一个规模较大、层次分明且兼具扩展性的设计对于开发软件的成败是决定性的,通过观摩此类软件设计,能使学生感受到设计给编程带来的便利。
(5)缺乏使用开发工具的经验,不能很好地在设计概念和编程概念之间进行映射。比如选用在.Net框架下开发软件,由于学生不具有一定的使用经验,想不出设计在转为具体编码时可能面临的问题,甚至对于设计能否编程为可用的软件都缺乏信心。尽管有观点认为做设计时不要陷入技术细节,笔者也同意这一说法,但对一个技术经验不足的学生片面强调设计只会使学生认为软件工程课程虚飘,落不到实处。相反的,一旦学生有开发工具的使用经验,那么设计和编程会在学生头脑里往复映射,使学生心理上有掌控感,因此即便设计上出现问题,学生也极有可能自行寻找办法修正。
3 软件工程教学策略探讨(The discussion for software engineering teaching)
基于前一部分的讨论,笔者认为软件工程在教学策略上要强调三个方面:
(1)设计与代码的转换方式。即在为软件建模时,挑选典型的图例为学生展示相应的代码转换,体现编程与设计是相辅相成的。
(2)选取规模适中的案例并结合软件工程的设计元素,强调建模时准确抽取词汇的重要性。软件工程涉及的编档和制图在本质上都是词汇,准确的抽取词汇能使得文档和图纸在整体上层次分明,归属明确,在各自的具体表达上也能逻辑合理,时序清晰。
(3)使用工具为软件模型映射实现框架。通过映射框架并作讲解,能使学生掌握软件的基本建制方法,还能刺激学生学习使用建模或编程工具的热情,使得进一步编码以完善软件成为可能。
为了在讲授软件工程时强调这三方面,笔者在实际教学期间形成以下策略:
(1)结合真实企业案例,主体讲解抽取词汇,制图和编档。重点讲解词汇的层次性,以及词汇与制图、文档的关联。
(2)选取代表性制图,实际演示如何转化为必要的函数并进行初步的类型封装。重点体现于函数名称和类型名称上,只要能体现制图逻辑即可,不需给出函数或类型的具体实现。
(3)参照较为完整的软件模型,演示如何配置主干对象以形成可运行框架。重点讲解相关设计元素与可运行框架的对应关系。
4 软件工程教学策略的实践效果(The practices of our software engineering teaching strategy)
为了实施前文提出的软件工程教学策略,笔者所在单位深入企业调研,与企业合作,主要目的有三个:其一,获取企业在用人方面的实际需求,如希望毕业生能重点学习哪些语言、平台;其二,邀请企业提供建议,定制专业课程,如与Oracle合作共建专业体系;其三,由企业提供真实案例供教学使用。这些目标都与2013年ICSE(International Conference for Software Engineering)大会中给出的调研结果不谋而合[3,4]:一定程度上说明,软件工程的教学是离不开企业案例的。应用本文教学策略的结果是令人鼓舞的,主要表现为:
(1)学生通过观摩整个案例的设计文档,并参照关于编档和制图的讲解,能够理解案例的设计逻辑,对于制图时用到的标准图形元素能够自然的接受并记忆。再加上课堂上对个别典型制图如活动图、时序图做编码上的映射,学生能更好地体会图纸与编码之间的转换方式,增强了学生编制软件的信心。
(2)以练习题的形式要求学生重新手绘当堂指定的图纸,以加深记忆有关制图。只是观摩、参看,不足以掌握和消化必要的制图方法,往往是“提笔忘字”,知识点认识模糊。只有要求学生再现图纸,真正落实到纸面上,才能有助于细节的把握,也能促使学生重新审视整个图纸的逻辑关系,以此巩固加深记忆。实际教学效果良好,学生能自主地讨论并基本再现指定制图,同时,能够认识到良好、标准的制图对软件建模的作用,不再认为软件工程是空洞无物的理论。
(3)通过参考制图及演示图纸如何转变为可运行框架,不仅提高了学习软件工程的兴趣,同时也带动了学好工具软件的积极性。在学生基本理解和记忆了必要制图之后,我们实际演示并建立了软件的可运行框架,如以.NET为平台,使用Visual Studio工具建立配置文件并初始化必要的主干对象,使整个程序框架能够运行[5]。通过这种方式,学生能够感受到软件的基本制作步骤,并对学习必要的工具和完善其余的软件代码产生了极大的兴趣。
(4)学生自组讨论软件设计文档并能提出编码时可能碰到的问题。基于可运行框架的演示,学生能主动地参照设计文档在头脑中构建软件模块,对于构建时可能有问题的地方,能主动地先行自组讨论,再与教师提问确认。有时尽管限于认识不足,教师的解答学生不能完全理解,但学生仍能清楚地知道问题出在哪里,以及需要补充哪些知识点。
5 结语(Conclusion)
本文对软件工程教学当中存在的问题以及成因进行了探讨,继而给出了一种软件工程教学策略。该策略强调软件工程的课程重点是理解和掌握有关的建模理论,而不是要求学生掌握建立软件的所有方面。在软件工程的课堂上重点仍应是设计,而不是编程。笔者不否认编程经验对良好设计的支撑作用,但能理解标准的软件工程理论并能掌握运行框架的建立方式,对于软件工程的课程教学而言已足够。至于具体的完善工程的实践经验,则有待于在卓越工程师的职业生涯中继续实践、完善。
参考文献(References)
[1] 蒲保兴.软件工程课程教学改革与实践探索[J].软件,2011(5):114-115.
[2] 荀启峰.应用型卓越软件工程师培养模式探讨[J].软件工程师,2014(2):42-43.
[3] Chris J. Pilgrim.Industry Involvement in ICT Curriculum:A Comparative Survey[C].2013 ICSE,Advanced Software Engineering Education,1148-1153.
[4] Andrew Meneely.Samuel Lucidi: Vulnerability of the day:concrete demonstrations for software engineering undergraduates[C].2013 ICSE,Advanced Software Engineering Education,1154-1157.
[5] Donis Marshall.我们在微软怎样开发软件(第1版)[M].北京:人民邮电出版社,2009.
作者简介:
1.1课程资源
课程资源是涵盖理论课和实验课的各种相关资源信息,主要包括课程介绍、教学大纲、实验大纲以及课程相关资料等。这个模块为学生课下自主学习提供了非常有针对性的资源,对课堂教学是一个很好的补充。
1.1.1理论教学资源
课程介绍:是对课程的主要内容、课程的特点、课程学习的目的和任务等多方面作一个总括性的简介方便学生对课程有一个总体的把握与了解。教学大纲:主要包括课程教学的内容与要求,对每章节的知识点、重点和难点进行说明,阐述具体的教学安排和课时分配,便于学生按照大纲的指导进行学习。教学日历:用来描述课程的进度安排。学生可以通过查看教学日历,事先预习教学内容,使得课堂学习更有目的性和针对性,提高了教学效率。授课教案和课件:这是学生自主学习最重要的部分,包括各章节的文字教案和多媒体教学课件。如果学生课堂上没有完全理解授课内容的,可以带着问题在课下继续进行自主学习,能调动学生的自主学习的积极性,提高教学效果。预备知识:列出学生已经学习过的与软件工程设计有关的课程目录,如程序语言、数据库、操作系统等,引导学生复习一些在软件工程中需要涉及到的相关知识。
1.1.2实验教学资源
实验大纲:根据课程实验的要求组织实验项目,编写实验大纲,主要包括各个实验的实验目的、实验原理、实验内容和实验环境等。注意实验项目内容应从简单到复杂对学生进行引导,给学生留下充足的学习思考空间,引导学生自主学习的方式和解决问题的方法,课程设计要求:主要包括分组情况、任务分配、任务书的规范说明、提交方式、打印格式和成绩核定方法。此外,还可以给出实验日戈表和课程设计计戈表等实验详细信息,使学生能合理规划好整个实验环节所要完成的任务。
1.2项目任务
该模块主要包括项目实例,方便学生学习和了解;建立项目题库,学生可以选择项目,完成实验任务。
1.2.1项目实例
教师根据学生的知识结构和实际情况,虚拟设计一两个小型系统,作为项目实例,如停车场管理系统、借还书管理系统等。贯穿软件生命周期整个过程,从问题定义、可行性分析、需求分析、总体设计、详细设计到调试分析和软件测试,给出项目的全过程设计。学生通过实例学习,对软件工程开发项目有全面的认识和了解,知道软件生命周期的各个过程应该做些什么,如何进行可行性研究,需求分析的任务是什么,采用什么分析工具,怎样能全面周到的做好总体设计规划,详细设计阶段的设计说明书的作用是什么,系统模块如何划分,程序实现的方法有哪些,怎么设计软件测试方案以及软件维护说明书。
1.2.2项目题库
教师可为学生准备一些软件项目,如停车场管理系统,在线考试系统,图书管理系统,学生信息系统,银行卡管理系统,教材定购系统,工资管理系统,设备管理系统等,建立项目题库,每个项目配备相应的项目任务书,以便学生选择项目,下载相关的项目任务书,完成项目计划。项目题库中的项目,要不断更新。项目的来源可以根据企业的需求、也可以是教师自己的科研项目,要对各个项目进行共同讨论,决定项目的可行性,并根据教学要求和课程特点,对实际项目进行剪切或划分成子项目,使其具有可操作性和实践性,便于学生操作和实训。
1.3软件工具
该模块是配置相应的软件工程实验软件,主要提供建模工具和编程软件的下载,便于学生完成项目的分析过程,实现系统功育旨。
1.3.1建模工具
对几种uML统一建模工具进行简单介绍,并提供软件下载,安装方法和使用教程。学生可以采用不同的分析工具,建立系统的分析模型,并做好需求分析和系统设计。主要的建模工具有MierosoftOffieeVisio、RationalRose和powerDesigner三种。MierosoftOffieeVisio中引进了软件分析设计功能到代码生成的全部功能,可以更轻松地将流程、系统和复杂信息可视化、可以创建多种类的图表。RatiollalRose主要是对开发过程中的各种语义、模块、对象以及流程、状态等进行比较好的描述,能从各个方面和角度来分析和设计,对系统的代码框架生成有很好的支持。P*erDesigller是一种数据库建模工具,允许使用一种结构化的方法有效地创建数据库或数据仓库,它还提供了直观的符号表示,使数据库的创建更力口容易,并使项目组内的交流和通讯标准化。
1.3.2编程工具
给出几种软件开发工具,如结构化编程语言或面向对象的编程软件(c、c料、JAvA、DELPHI),以及sQL、P*erbuilder等开发工具,并提供软件下载和安装方法,供学生选择编程软件,编写程序,并测试软件。
1.4文档资料
该模块主要列出整个项目所要提交的各类文档资料。此外,还应该提供统一格式的实验报告和课程设计任务书范本,便于学生下载,并按要求填写内容。项目文档:主要包括有可行性分析报告,需求规格说明书,项目计划书,总体设计报告,详细设计说明书,软件系统的程序代码,软件测试报告以及用户使用手册等。规格说明:可以给出一些规格说明的样例和标准,学生可以使用非形式化、半形式化和形式化等方法描述需求分析规格说明,详细设计规格说明,并给出系统各部分的设计规格说明书。鼓励学生学习和使用形式化的方法描述规格说明,例如:有穷状态机、Petri网以及z语言等,这样可以用数学方法研究和验证规格说明是否正确,并消除二义性。
1.5成绩评价
该模块主要给出实验教学各阶段的成绩考核方式及评定标准。课程实验中,上机操作占课程实验成绩的50%(含平时上机操作和考勤),课程实验需要提交的文档和报告占50%。课程设计因为是分小组进行,成绩评定可以分成个人成绩和小组成绩两部分,个人成绩主要根据个人在小组中所分工作多少和完成工作情况来确定,小组成绩则由各个小组阶段成绩和系统最终验收的情况来确定(如系统是否达到需求规格说明中的功能性、提交的文档是否全面和规范,源程序编写是否规范、可维护性等)。每个项目组都应该进行汇报,展示自己的成果,由教师和其他同学组成评审团,对每个项目组的汇报进行评审和打分,提出修 改意见和建议。汇报结束后,,教师要进行总结点评,并写出评语。既要评价项目成果,也评价学生的表现,帮助学生整理学习内容,鼓励学生的积极性。
2网络辅助教学
建立软件工程实验课程网络教学平台后,如何让学生充分利用平台资源进行网络学习,也是必不可少的关键部分。整个教学实践过程可在教师引导下,学生自主管理,分工协作,这样既锻炼了学生参与项目管理的能力,又训练了学生之间的团队合作精神。有了网络学习平台,在理论课程学习的同时,学生可以分三个阶段完成软件工程实验课程:l)网络学习:该阶段主要学习课程资源,同时,学生进行选题,分小组和分派任务,进行项目的可行性研究和项目的需求分析。2)课程实验:该阶段主要是让学生学习建模工具,通过使用建模工具,完成项目的分析过程,并进行系统的详细设计,划分系统的各组成模块,给出系统的各部分设计规格说明书。3)课程设计:该阶段主要是根据项目的需求规格说明书和系统设计文档,采用合适的程序设计软件完成对整个系统的代码编写,遵循代码的开发规范。设计测试用例,对系统进行测试,并提交相关文档。成绩评价部分由教师来完成,每个阶段都要进行阶段性评价,并根据项目的最终完成情况给出整体评价。要着力培养学生软件工程开发工具的应用能力,要求学生按规定提交项目要求的各种文档,形成较为科学的综合成绩评定方法。
3结束语
软件工程内容广泛[6-7],原则、原理、方法和技术很多,既有理论又有实践,抽象、枯燥是该课程的特点之一,若用双语教学无异于“雪上加霜”,进一步增加了枯燥和乏味。为了提高教学效果,增强趣味性,进行讲课的再设计非常重要。教学大纲的基本内容首先要完成.
2软件工程课程的教材选取
软件工程学科最早从国外引入,以美国为首的发达国家将软件工程教育与软件产业紧密结合,出版了一批优秀的有影响力的经典教材,国际著名软件工程权威Roger.S.Pressman所著SoftwareEngineering:APractitioner’sApproach被世界上很多著名高校选为软件工程课程的教学用书[8],该书内容丰富,全面、系统地展示了软件工程的最新技术和发展,“在国际软件工程界占有无可置疑的权威地位”[6],国内很多985高校都将该书作为教材,我国机械工业出版社、清华大学出版社等纷纷购买该书的版权,目前,该书已经出版第7版,在国内可见到不同出版社的十几个版本,说明该书被业界的认可度高。我们在双语教学软件工程课程时也一直使用Roger.S.Pressman的教材。该书内容丰富,价位相对较高,教学中只能用其中的一部分。双语教学对学生来说本来难度就大,所以导致绝大多数学生不买书也不看书,影响了教学效果。为此,在学校的支持下,笔者编写了规划教材《软件工程》,并在清华大学出版社出版,作为学生的中文教学参考用书,教学中的课堂教学内容则仍然全部为英文。这样,学生们既领略了国际大师的精髓思想和内容,同时也降低了接受难度,课下可以通过阅读中文教材,进一步体会英文内容或不理解的内容。
3软件工程课程的教学实践
3.1课前认真准备
为了提高学习效果,我们在第一次课将全部英文PPT拷贝给学生,使他们对内容、进度、难点有所了解,便于预习和复习,教学进行中再不断细化和充实。即使对非常熟悉的内容,在每次上课之前笔者都要认真准备,反复思考,对这一次课的主要内容进行归纳,找出重点和难点,确定时间分配,确定上课时的几个关键时间,笔者一般把上课内容分为2部分,每部分都在一节课(50分钟)内完成。另外,确定几个时间点,对于重点内容和难点多花时间,对于便于接受的内容或者看书能容易看懂的内容,则尽量少花时间。对于一些非常重要的理念性知识,教师直接给出大师的原话,让学生们去感受原汁原味的大师思想,如在讲授第6章“软件测试”内容时,直接给出国际软件大师Myers提出的3条“Softwaretestingobjectives”,以及10条“Softwaretestingprinciples”[9],让学生们感受理念性的基本思想,以及科技英语的基本表述。为了丰富教学内容,每一部分教师都介绍一些著名的参考文献,引导学生去进一步探索和学习。
3.2努力增强教学内容的趣味性
学生普遍对软件工程课程兴趣不大[10],为了调动他们的学习积极性,讲课不能太深奥。一旦学生听不懂了,就更没有兴趣了。为提高他们的学习兴趣,我们根据内容的难易程度安排讲课节奏,并增加互动环节,吸引学生的注意力,使他们在注意力转移的时候将兴趣重新回到课程上来。为了提高学生的学习兴趣,增强教学效果,要考虑如何让他们接受课程内容。有些知识本身就很枯燥,如何让这些枯燥的东西变得有趣,需要对这些知识进行“加工”和“包装”。为此,教师在幻灯片制作上下功夫,尽量使PPT漂亮、精美、有动画,接近学生,文字中必须有插图,同时增加一些有趣的内容,活跃课堂气氛。针对双语教学趣味性差,课程本身内容枯燥的特点,尽量增加趣味性,如在讲软件体系结构的时候,要求好的软件结构尽量成为mosque形式,避免pancaked结构。为了使大家印象深刻,笔者举了一个脑筋急转弯的例子,“一个体重40磅的女生能否用重1磅的锤子砸烂一块重1吨的石头”,几乎所有同学都认为不可能,因为女生的体重太轻,力气不够,锤子的质量也太小。可是当笔者给出答案,这块石头形状为扁平的时候,同学们一致认为这个女生不费吹灰之力就会把石头砸碎,同时一下子就联想到了软件结构,pancaked结构没有力量,就像一块扁平石头一样没有力度,很容易被打碎,这样的软件结构应尽量避免。
3.3努力使教学内容既有质又有量
除了提高自身的教学水平和知识能力以外,每堂课都要内容充实、丰富,不走过场,不让学生感觉这次课来不来都可。每次课要力争达到的效果是,如果学生不来,通过课下自学要比来上课花更多的时间和精力,并且很难达到上课的效果,这样才能使学生感到听课有价值。为此,教师一方面增加信息量,让大家感觉每次课都有收获,不上课就会有损失,课上增加很多课本之外的内容。对于每项技术、方法都讲它的起源、来龙去脉,为了让同学们听着有趣,笔者每次都要收集很多相关资料,介绍一些人物、故事、技术的起源。另一方面,为了增加信息量,每次都有效、合理地使用多媒体,让多媒体成为必不可少的重要工具。实践表明,使用多媒体可以使教学内容的信息量增加近一倍,但不能成为黑板的替代品,每一页PPT的信息量也不宜太多,否则会影响效果,特别是文字性的PPT不能一闪而过。在多媒体的使用上要重视动画、图片和趣味性。在讲授的过程中,要让每一页PPT停留的时间能让多数学生完整地阅读完,否则起不到好的效果。为了使PPT美观有吸引力,笔者增加了很多相关动画、剪贴画,自己还拍摄了以校园风光为主的很多标志性的背景照片,让PPT接地气,不但使PPT增加了可理解性,也更贴近了同学们的学习和生活。
3.4正确处理学风建设中出现的问题
针对目前高校高年级中普遍存在的必修课选逃,选修课必逃的现象,笔者也采取了一些应对措施,全方位提高出勤率。单纯点名不能起到应有的效果,人来了心不来等于没来。笔者采取的措施一是提高学生的学习兴趣,增强内容的故事性、趣味性,讲授时增加书本上没有的内容,让学生感觉上课值得,不来有损失,自己课下难以补上。二是表扬先进、促进学习,对于作业完成情况好的学生给予表扬,增强好学生的学习积极性,带动其他人赶超先进。对于抄作业的现象,这本来也是教学中屡禁不止的现象,不可能杜绝,关键是如何处理、如何面对。第一次发现有完全雷同作业时,在课堂上只说现象、不说具体是哪个学生,他感到不妥时就会收敛。此外,在批阅作业时,对抄作业和被抄作业的学生,除认真给他们批阅作业以外,最后在双方的作业本上均写一句醒目的大字“你的作业与某某某的完全一样”。有时三本、四本甚至五本作业都雷同,笔者并不追查谁是原始作者,谁是抄袭者,而是在几个同学的雷同作业上都醒目地用红笔写上“你的作业与某某某、某某某、某某某的完全一样”,两次以后就再也没有抄作业的现象了。虽然作业数量明显减少了,但交上来的作业确实都是原创,原创的人为了自己的作业“清白”,不让别人抄袭,抄袭的人也不好意思再去抄了,有效地杜绝了抄袭现象。三是重视过程考核,增加期中考试,对期中考试成绩落后的学生提前敲警钟,不是等到期末“秋后算账”,可最大限度降低不及格率。对于学习自觉性高,期中考试不理想的学生,则能起到鞭策的作用,使其奋起直追。期中考试成绩好的同学,在享受喜悦的同时会更加积极,以保持领先,并在期末取得更好的成绩。实践表明,每次期中考试后,出勤率都会显著提高,学生的学习积极性也会提高,学习风气也会改进。
4结语