教学软件开发

2024-06-22

教学软件开发(精选十篇)

教学软件开发 篇1

1 教学软件开发流程优化的必要性

计算机的出现与信息技术的进步使得教学软件的开发尤为火热。但是教学软件的质量却往往被人们忽视。数量庞大的教学软件并不一定全都是高质量的产品, 开发者应当在建立可持续发展的这种大体模式下, 即研究科学严谨的教学软件的开发过程中, 更应该注意教学软件开发流程的优化。

2 教学软件开发流程的优化措施

2.1 Flash的优化

在教学软件开发过程中, 常常利用flash制作设计交互和矢量动画, 所以对flash进行优化十分有意义。

2.1.1 优化制作flash电影所需要的素材

图形的描绘: 尽可能多的使用“实线”, 而“虚线”和“点线”这种变化型的线条应尽量少用。

位图的压缩:在flash里面, 位图的压缩应该保证内定值以JPEG的形式来压缩, 保证所有位图既能选择个别位图进行压缩设定, 又可以一次性统一进行压缩设定, 做到根据不同的需要而进行不同的压缩设定。

电影文件字体的处理:减少使用字体类型, 选择一两种为最佳, 如果需要改变字体的风貌, 则可以通过对字体进行加粗、改变大小、改变颜色或者变形等等方式实现。

为了降低动画播放时CPU的计算压力, 对所需要用的向量图进行构图的时候, 要遵循简单原则, 对一些不是很重要的构图节点, 可以忽略。

对于Flash内定的基础字体可以多运用:在电影里面使用大量中文文字的时候, 一些特别花俏的字体尽量少用, 目的是为了压缩文件的大小。此外, 如果文字显现在文字栏位里的话, 记住在对话框里勾选“不要包含字体外框”选项, 这样也是可以缩减文件。

为了避免字体由于被打散而以图形的形式储存, 增大文件大小, 在设置的时候不要选“修改/ 打散”选项。图形也不要打散, 甚至应该先将图形群租起来。

2.1.2 交互设计的优化

(1) 要把重复利用的图形设定成“符号”。

(2) 呈现动画的时候, 多使用“移动渐变”少使用“逐帧渐变”。

(3) 为了不影响Flash动画的处理过程, 在同一时间内做的动作要少一些, 安排对象产生的动作在时间上要尽量错开。

(4) 做好电影下载传输速度的检测, 查看是否存在影帧过大的情况, 凡是超过红线的就表示电影播放到此处时会有停顿。

(5) 对没有运行的元件要及时清理, 单击图库右上角的“Option”, 执行“选项/ 选取未使用的项目”清除用不到的元件。

(6) 对于交互程序, 能用则多使用, Flash里提供的Action可以实现动漫功能, 利用它完成与制作渐变动漫类似的功能, 那么使用Action会减小软件大小。

2.2 VB在CAI教学软件开发中的优化技术

VB是基于windows的面向对象可视化开发工具, 利用VB开发CAI教学软件具有开发效率高, 设计灵活, 生成的软件界面好看, 还可以将声音, 文字, 图像, 动画等多媒体很好的结合在一起, 但还可以从速度上以及它的大小进行优化。

2.2.1 真实速度的优化

(1) 不要运用Variant变量, Variant变量是VB的缺省变量类型, 它是一种没有加上类型说明的变量, 为了使应用程序的实际速度加快, 应当不要使用这种类型的变量。因为在运行的时候Variant变量会转化成为其他更加适当的数据类型, 在转化的过程中消耗了一定时间, 降低了运行的速度, 因此应当避免使用。

(2) 选择使用最好的数据类型。在应用程序当中, 要减少使用Currebcy Single和Double变量, 更多的使用Long整型变量。

2.2.2 显示速度的优化

(1) 将容器的Clip Contrls属性设置为False。设置好后, 在重画控件本身之前, VB不会用背景覆盖控件, 当窗体包含大量控件的时候, 就可以提高显示的速度。

(2) 合理的使用, Auto Redraw。把它设置为true的VB就可以使用, 位图重画这个窗体或者控件, 如此一来可以大大的提高显示速度, 但是这个方法也有不足, 在提高重画速度的同时, 会降低图形方法的, 因此要合理使用。

2.2.3 感觉速度的优化

(1) 隐藏暂时不需要使用的窗体。对于那些暂时不用到的窗体, 可以把它隐藏起来, 这样可以提高显示的速度, 还有感觉速度, 当再次打开使用的时候, 只需要简单的使用Show方法就可以了, 节省加载的时间。

(2) 运用进度显示器和等待光标。这是针对一些时间延迟而使用的, 通过给用户提示, 让用户明白这个应用程序并没有悬挂起来。

2.2.4 大小的优化

通过缩小用程序的大小, 减少加载时间, 提高速度。

(1) 减少控件的数目。在设计程序的时候, 适当减少控件使用, 也可以将许多控件设计成控件数组, 这样也可以减少加载时间, 提高速度。

(2) 合理使用标签控件取代文本框。因为标签控件占用资源少, 文本框占用Windows的资源比较多。

(3) 清理无用的代码和无用的变量。对于那些残留的死代码和无用的变量要及时的清理, 避免过多的无用代码占用资源, 降低运行速度。

3 总结

在信息发展迅速的时代, 教学软件开发者必须紧跟时代步伐, 在注重数量与效率的同时更应该着重于产品的质量。质量过硬才有更大的消费市场, 也有更大的发展空间。相关部门也要加强管理力度, 力求各个方面共同进步。

摘要:在信息化的时代, 各种教学软件层出不穷, 但是质量参差不齐。本文将针对现如今教学软件开发的必要性进行分析, 找到问题并提出一些建设性的意见, 以确保教学软件能够有效地在科学求真的基础上结合软件工程、教学规划等相关理论进一步优化。

关键词:教学软件,优化措施

参考文献

[1]钟名扬.教学软件开发流程的优化研究[D].北京师范大学, 2006.

[2]钟名扬, 刘美凤, 杜媛等.教学软件开发流程优化研究初探[J].中国远程教育 (综合版) , 2007, (5) :70-73.

教学软件开发思想和模式 篇2

略论“超越具体课堂教学过程”的教学软件开发思想和模式

摘要:面向课堂教学的多媒体教学是一线教师最为关心的现代教育技术,但软件普适性不足的问题大大制约了其发展。解决这一问题必须在软件设计开发环节建立“超越具体教学过程”的思想和模式,建议采用一线教师和专业人员共同参与的渐增型开发模式,协调好双方主体的关系。文章还探讨了“超越具体课堂教学过程”的教学软件的特点,并就两个案例进行了简要分析。

一、引言

计算机辅助教学在中小学教学中的应用,从目前来看,主要方式是在课堂教学中通过演示、示范操作或个别学习来辅助教学过程。由于大班级教学组织形式的现状和教育者的主客观条件,这种应用方式的存在具有合理性,并将在相当长时间内仍保持主导地位。而基于网络的计算机辅助教学还存在很多软硬条件上的困难。在对教师的调查中,面向课堂的教学软件也是他们的主要需求。

从目前所使用的软件资源来看,面向课堂教学的商业软件所占比例很小(商业软件主要转向“家庭教师”和辅助备课系统),学校和基层电教部门的自主开发,特别是教学实施者参与下的自主开发,是主要的软件资源来源。随着多媒体技术的发展和平台型开发工具的普及,中小学教师参与开发多媒体辅助教学软件可行性越来越高,热情也越来越高,并逐渐成为优秀教师的参考条件之一和教师掌握现代教育技术的基本要求。

但从目前的现状来看,基层教学软件开发的水平发展不快,理论支持不足,鲜有推广价值大的软件作品。

因此,本文探讨的主要对象是面向课堂教学的辅助教学软件的开发思想,主要涉及基层软件开发,但对于商业开发也具有研讨意义。

二、教学软件的课堂普适性问题

目前基层教学软件开发除去媒体制作和编程水平的局限性,首要问题表现在实施环节的课堂普遍适用性。普适性差的首要原因,是很多软件的设计和具体特定的课堂教学直接关联,因而无法适用于多数的课堂。其主要表现在:

1.固化教学过程

以板书展现为主线,分条分目呈现,“一二三四”、“引入”、“小结”,将教学的过程基本固化。或将具体问题的导入、分析、解决过程逐层展现,同样是教学过程的固化。更有甚者,一个软件覆盖一节课的教学过程,从上课问候到下课再见都一应俱全。试想,这样的软件如果换一个老师,甚至是同一个老师换一种教学思路,都将导致软件的不适用。

2.线性思维的程序设计,缺乏基本的交互性

我们知道,软件技术区别于传统媒体技术的根本特征就在于交互性。而直接体现教学过程的软件,在设计中总停留在“先什么、再什么”的思维框架中,经常创作出线性的软件,如卡式结构、翻页结构、线性动画。在线性结构的软件中,媒体是按顺序出现的,基本没有什么规范的交互,往往是单击鼠标或按任意键就到了下一页;要到达某一特定页就要先经历之前所有的过程,误操作提前进入下一页就得从头再来。线性的软件交互性差,灵活性差,不但不能广泛适应课堂教学,甚至在特定的课堂上(设计所预定的实施者)使用都存在很大问题。

3.采用简单刺激,智能化程度低

受传统教学设计的支配,软件设计中也模拟传统教学过程。具体表现如:需要板书或讲解的时候给文字信息,需要挂图或投影片的时候给图形画面,需要动作模拟的时候给动画或视频,为吸引注意加入华丽的背景或特别的声效,做练习正确错误时给千篇 一律的声音或文字反馈。这样的软件往往是对传统教学过程的图解化,对于降低知识陡度,解析教学难点作用并不大,主要的功能还在于引起学生的注意,增加直观性,对学生的认知心理作用还属于“刺激─反应”型。

4.特例叠加,缺少媒体连续性

很多教学内容是研究事物的连续动态变化,比如数学中的图像变换,物理中物理参量的变化,生物中的生理活动过程等。由于教师在教学过程中往往可能通过几个特例进行研究,因此软件也被设计为几个特例的叠加,比如几个特殊值代入,或特例到特例之间的变化过程。不同的教师由于教学角度的不同,往往需要有目标的选择自己需要的特例或特殊值,甚至用整体和连续的方法研究问题,这样软件的普适性又会成为问题。只有媒体能满足全程连续的变化,并能灵活控制,才能真实展现事物运动,保证适用于更多的教学过程。目前的软件较少能够做到。

5.多级分支的浏览结构

目前教学软件开发中比较推崇的结构组织形式是多级分支,多层页面。这种形式的软件容易组织,结构清晰,容易实现模块化,但其容易出现的问题却不易觉察。由于对象散布在过多的页面上,彼此之间有联系的需求就得不到体现,更容易成为简单呈现的媒体;即使在其中实现超文本的链接,也只是简单的跳转而已。因此,只要收集和创作大量的多媒体素材,然后用多级分支结构进行组织,大型软件就做成了。这样使软件设计走向简单化,软件仅仅成为素材的浏览器。这样的软件与课堂教学虽然不是线性对应,但在媒体应用方式上依然与传统课堂教学过程相对应。

此外,过多过深的页面层级,会使课堂操作繁复,到达特定内容的线程加长,且用户容易迷航。

以上教学软件中普遍存在的普适性的缺陷,可能带来以下问题:

1.软件设计水平停滞不前

很多热情参与软件开发的教师,在若干次开发实践后,始终在低水平、低效益上徘徊,难以有新的突破,逐渐失去开发热情。

2.软件一对一适用,难以广泛推广

一个软件对应一个人或一种教学过程设计,不能广泛适用不同的教师和不同的教学设计,因而无法推广。

3.重复开发的必然性

由于软件和具体教学过程相对应,使得重复开发成为必然,几乎每一个课堂多媒体辅助教学的实施者都需要“量身定制”自己的软件。很多老师迷惑,为一节课,下几天、甚至几个月的功夫值吗?如果对每一课(或很多课)进行这样的开发是不现实的,那么教师运用现代教育技术岂不走向了穷途末路?此外,重复开发的另外一个理由是,对已有软件的质量并不接受。

4.基层开发软件的交流和共享难以突破

除了小农经济思想作怪,软件普适性差成为影响软件交流和共享的主要因素。试想,拿到别人的软件,通常无法上到课堂上,顶多是观摩参考借鉴,共享的意义就会大打折扣,交流的热情也会消退。现在互联网上的很多大型教育网站、个人站点都提供辅助教学软件上传和下载,为基层软件开发交流提供了有效的方式,但软件本身难以共享,却是更难以解决的。

从笔者下载的大量辅助教学软件来看,基本上都是针对课堂教学的,其中多数设计制作水平比较初级不说,直接对应具体教学过程的又占了相当多数。

三、传统媒体的开发思想和模式是问题产生的根源

辅助教学软件所运用的是软件技术,是一个有别于传统媒体技术的交互式系统。但就目前的计算机辅助教学软件开发的主流理论来看,却较少运用软件工程理论,而是遵循普通媒体制作的基本方法,集中体现在对“脚本”的重视。其开发模式可以表述为“教学设计――脚本编写――编码实现”,与软件开发的一般模式“需求分析――软件设计――软件编码”是有明显区别的。

对于“脚本”的解释是,表演戏剧、拍摄电影等所依据的底本。它本身是一个依据时间轴的规定性解释系统,由脚本到媒体是一个“实现”直观化、可视化的过程。我们一般强调由有经验的学科教师来编写脚本,并强调必须是“分镜头脚本”,解析为一个画面如何布局,对象何时以何种方式出现,用户发出什么动作后系统发生什么动作;用什么方式进入下一个画面,再重复这一套。依据这样脚本的作品当然更像一个传统媒体作品。

同时,脚本来源于“教学设计”。教学设计在这里指的是某个人的或某种特定的教学设计,实质上是教学过程的设计。教学过程“转换”为脚本,脚本再“实现”为软件,这样的软件必然与具体教学过程相关,失去了不同教学设计的选择。

由此看来,教学软件与具体教学过程相关的问题,源于传统媒体的开发思想和模式。实现与具体课堂教学过程无关的教学软件开发思想,还需要借助软件工程的一般原理,用符合软件工程的方法指导开发工作。

当然,软件工程通常是开发“大”程序的方法、工具和管理模式;而基层通常的教育软件开发还只能称之为“小”软件,不可能完全对应软件工程的规范流程。但软件开发就是软件开发,并不是传统的媒体制作,它无论怎样的“小”,其基本思想必须能体现软件开发的思想。其关键就在于必须能够超越具体的课堂教学过程,使软件能适应更多的课堂和教学实施者。

四、“超越具体课堂教学过程”的教学软件开发思想与模式

“超越具体课堂教学过程”是指课堂教学软件从内容上指向教学专题,而非课堂教学程序,功能上能较好的覆盖课堂教学需求又能独立于教学过程而存在,以便于广泛适用于相关课堂教学的软件开发思想。

1.面向专题的软件选题

软件开发要超越具体的教学过程,首先要改变其设计的面向对象,由面向教学过程转为面向教学专题。因此软件选题的对象不是一堂课,而是一个任务;可以是一个章节的教学内容,也可以是跨章节的相关要素,我们统称为专题。针对专题的软件就可以形成课堂教学的平台型软件,可以充分支持课堂教学而不局限教学过程。

比如,数学中的图像变换问题,物理中的落体与抛体问题,生物中细胞分裂问题等,都是一些典型的重点和难点内容,有必要作为专题来研究,同时是一些能够“可视化”的适宜媒体表现的专题。

软件选题对于成功的开发具有关键意义,需要进行必要性、可能性和软件价值的论证。在严格的大型开发管理中要形成“软件计划任务书”。

2.教学需求分析作为软件设计的依据

教学需求就是预期在课堂教学中,都需要什么样的媒体、什么的媒体组织形式、什么样的操作方式、对象或参量间什么样的动态变化关系等。它不对应某个具体的教学过程,但可以对所有教学设计中可能被用到的特性(内容的或功能的)加以分析,对教学需求要素尽可能的发掘,筛选其中有意义的要素,尽可能在设计中加以涵盖。

有了对软件需求的界定,才能够根据目标进行软件的设计。包括界面和风格设计,模块结构设计,功能设计,主要对象或参量之间动态变化的描述等。

需求分析和软件设计原则上要形成“软件需求规格说明书”和“软件设计说明书”,但在实际的开发中可以只体现为一份说明书。甚至在较小的软件开发过程中,软件的的需求和雏形就在设计者的头脑中形成,用口头交流的方式传递。

对于说明书,在专业领域需要用专门的形式化语言来描述,但这对于很多专业计算机人员可能都存在着困难。通常用自然语言加直观图示的描述是被许可的,有可能的话可以给出程序的模块结构图或流程图。

3.共同参与的渐增型开发模式

软件开发最常用的两种模式是瀑布型和渐增型。

瀑布型开发模式遵循软件开发生命周期的划分,大致是“计划――需求分析――设计――编码――测试――维护”这些阶段,每一阶段完成确定的任务后就交给下一阶段。“教学设计――脚本编写――编码实现”的开发流程也试图体现这一模式。但显然,瀑布型开发模式比较适合于软件需求比较明确、开发技术比较成熟、工程管理比较严格的场合下使用,基层教育软件的开发显然达不到这样的要求。

渐增型开发模式并不要求一开始就有一个完整的软件需求定义,通常是从部分需求出发,先建立一个不完全的系统,由需求者和设计者充分体验和交流,加深对软件需求的理解,反复扩充和完善。学科教师作为软件的需求者,由于对计算机媒体缺乏深刻的理解,往往不能结合计算机的表现形式提出很好的软件需求任务,需要专业人员的帮助和在开发过程中不断认识、不断发掘有意义的需求要素去丰富和完善系统。最初完成的不完善系统称之为原型,可以是界面或模块结构的躯壳,或主要的媒体表现形式的示范,能够有效的成为学科教师和专业人员结合的媒介。因此,渐增型开发模式更适合于基层教育软件任务的特点。

渐增型开发模式实际上并不需要严格按软件生命周期的各个阶段来划分,其有关的软件文档也并不要求一开始就是完善的,可以在开发过程中逐渐形成。

此外,软件的测试、修改和维护等,是软件开发的应有之意,此处不再讨论。

五、“超越具体课堂教学过程”的教学软件的基本特征

1.交互性

交互性主要指人机之间的交互,用户通过交互界面输入信息进行控制和请求,计算机则通过交互界面提供信息和动作。从某种意义上来讲,人机交互能力的强弱,是计算机软件能否被使用者接受和信任的关键。“超越具体课堂教学过程”的教学软件首要特征就是很强的交互性,主要体现在以下方面:

(1)用户对软件进程控制能力

对软件的运行状态,用户必须有很高的控制能力,如动作的启动、停止、重放,内容的跳转,速度的控制,参量的选择等等。绝不能出现播放媒体时无法中断,进入一个练习后答案不正确就陷入死循环等。

媒体的线性组织方式是降低用户控制权的方式,即便是为用户提供翻页结构,仍不能保证直达目标。

(2)功能特性自由取舍

在软件设计中,对于有意义的教学需求都尽可能地体现在软件的功能特性中,但是,并不是每一位教师或每一节课都可能用到这些特性,使用的`时机、方式也不尽相同。因此,软件应设置若干特性的唤起方式,如开关项按钮等,以保证除主体内容外,多数的功能特性都可由用户自由取舍。

(3)友好的用户界面

友好的用户界面是软件易于学习、使用的关键,同时能大大提升与用户的亲和力。友好的用户界面应简单明了,符合常规,风格一致,反馈提示丰富得当,有良好的容错性。

如缺少明显的交互提示标志,让用户盲目寻找功能特性;画面自动变化,没有用户干涉的机会;按钮或提示方式、部位频繁变化,用户不容易掌握规律;过多的用户键盘输入,又缺少缺省值;误操作将导致软件出错或锁死等等常见现象,都是界面不够友好的表现。再如用滑块拖动或数字增减按钮,就比直接输入大量参数友好得多。

2.智能性

软件的智能性相对于软件简单刺激的媒体展现方式。如果要求软件的采用有助于学生意义建构的过程,就首先要体现软件内部诸因素、诸对象之间的互动关系。

比如事物的运动变化总是受特定因素或参量的影响,而参量变化和事物运动之间的关系往往是教学的关注点。如果软件中对象自动变化就成为简单展现;而通过用户主动干涉参量变化,导致对象的运动变化,就体现了事物内部的联系。

3.界面集成化

界面集成化是针对推崇多级分支和多层页面的程序结构而言的。多级分支结构的教学软件的缺点前文已有论述。

主张尽可能减少页面层级,在单一的界面内集成更多的对象、功能和特性。过多的对象不可能,而且也不主张在单一界面上平铺堆砌,而应该给用户随时激发、唤起、打开和关闭有关对象的权限,不转换界面就能实现更多的操作。同时,因为对象在同一界面内存在,就有可能通过算法实现交互技术,实现对象间的互动,体现事物内在的联系和运动规律。实现这样的互动远比对象素材本身要难得多。

六、基层教学软件开发适宜的组织方式

这里所说的软件开发的组织方式指的是参与开发的人员之间的关系。目前最为常见的是学科教师同专业人员(如计算机教师)的合作开发。如果强调“超越具体课堂教学过程”的思想,那么对于开发工作的参与者,都会产生新的要求。

1.以项目任务为核心,突出双方的主体性

以项目任务为核心,即指向一定的教学专题,而非特定的教学过程。这样,学科教师不再是教学过程的记录者或教案的搬家者,专业人员也不再是脚本的实现者,双方都成为共同任务的创造者,双方的主体地位才能得以发挥。

2.将软件设计过程看作交流协作过程

通常成功的教学软件制作过程并不是一个信息沿“教案――脚本――软件”单向流动的过程,而是“基本需求――软件原型――新的需求认识――新的软件模型……”这样一个循环提高的过程。这个过程需要学科教师和专业人员深入持续的交流、对软件反复体验尝试来实现。

3.专业人员要善于理解学科教师的思路,善于指导和提升教师的思想

让一个学科教师提供一个成熟的书面软件任务说明是不现实的,即便教师能提供,专业人员能否深入理解还存在很大问题。专业人员要善于在协作交流中领会教师的思路和意图,对于软件教学性、科学性的要求必须有学科教师的认同。同时,教师对于计算机的特有功能领会不深,提出的要求往往不能体现计算机的特点和优势,这时,专业人员就应该提出建议,帮助教师扩展思路,优化设计。

4.学科教师必须投身软件开发的过程,才能有发展和突破

提出一个任务或完成一个脚本,就等着软件被生产出来,这种期望是不现实的。投入开发过程,不但是保证软件质量的需要,同时是学科教师在开发领域发展和突破的需要。学科教师投身软件开发过程,可以体验软件任务的形成过程、软件的设计过程、素材的收集过程、功能的设想和实现过程,以及相关文档的形成过程,才能深入理解软件技术的特点,学会教学软件需求分析和软件设计的方法。

更进一步,如果学科教师能够较好地掌握开发技术,则更有可能成为优秀的教学软件开发人才。

七、“超越具体课堂教学过程”的教学软件开发实例

1.正弦函数图像变换发生器见于www.k12.com.cn中国中小学基础教育教学网“教学软件交流中心”,或mosw.yeah.net。

正弦函数图像变换是高中代数的重点和难点问题,其课堂教学的主要需求可概括为:

一定范围内任意改变A、ω、Φ三个参数的值,函数图像随即发生动态的变化。任意多个状态的图像都可留有痕迹,以便相互比较。任何状态都可以提供当前函数值与自变量关系的列表,以便对照图像与描点结果是否吻合。

系统设计开发最终结果的界面如图1。

图1

函数当前图像(一个周期)以系列小球表示,其轨迹由A、ω、Φ三个参数决定,用户可以有多种方式在0~5的范围内自由改变参数:一种方式是键盘输入,通过“输入[?]”的三个按钮激活;另一种是通过拖动屏幕左下方的三组滑块来改变参数,同时还提供了键盘、刻度值和渐变按钮来驱动滑块的移动。变化的步长也可以由用户改变。

在小球轨迹处于任何状态时,都可以通过“描线”功能描绘一条曲线,其粗细可控,颜色随机产生;座标系中可多条曲线共存。曲线可随时被“擦除”,重画。画曲线时如果选择“标注”功能,则可为曲线标注解析式。小球轨迹还可由“屏蔽”功能暂时屏蔽。

小球轨迹处于任何状态,都可点击“列表”按钮,打开当前函数值与自变量特殊值之间的列表。如图2所列为图1中当前小球轨迹的函数值和自变量列表。

图2

本软件可以适用于所有相关内容的课堂教学,做到了超越具体课堂教学模式。

2.植物细胞的有丝分裂本软件精简版见于www.k12.com.cn中国中小学基础教育教学网“教学软件交流中心”,或mosw.yeah.net。本软件获得首届全国网络课程和多媒体课件大奖赛二等奖,首届全国中小学电脑制作及设计作品制作活动教师组二等奖。

细胞分裂是高中生物的重点和难点。这一生理过程牵涉到生命很本质的变化,对于学生建立良好的生物学科观很有意义,同时对学生认识微观世界的能力、观察和想象能力、概括和表述能力、绘图能力、实验动手能力、数形结合能力等的培养都是良好的知识载体。但这一生理过程实在是难以观察,实验也有难度,认识起来非常抽象。基于植物细胞有丝分裂这一专题,现概括的提出以下教学需求:

①软件必须展现植物细胞有丝分裂全过程的清晰、连续的模式化的动画。

动画可以自如播放,可以任意分阶段播放,可以控制速度,可以随时掉转到动画的任一画面。

②为帮助学生对各个时期特征的掌握,教师可能用到描述各时期特征的文字信息和口头讲解。

③在对细胞研究的基础上,教学中还可能需要针对一个染色体在细胞周期中变化进行专题研究,系统也应能够提供相应的信息。

④在对模式图研究的同时,必须提供显微镜下的实际照片相对照学习。包括各时期的典型照片和非典型的照片,以及不同角度的照片等。

⑤对于展现显微镜下细胞周期实际变化的视频信息,如能与模式化动画对照则更有利于形成完整的认识。

⑥对于研究细胞周期中染色体、DNA、染色单体的含量问题,属于能力提高还是应试问题,有一定争议。系统应该包含此内容,备教师上课之选。

⑦可提供针对最基本知识的交互式练习,备课堂之用。

基于以上需求,程序开发最终结果的主要界面如图3所示。

图3

①动画与动画的播放控制达到目标。

动画窗口之下的几个按钮和录像机操作类似。长滑杆为进度滑杆,滑块被拖动时动画就相应跳转。滑杆上方的各时期的按钮被点击可以在区间内播放动画。短滑杆为速度控制滑杆。最后,点击动画窗口,可以打开和关闭动画窗口,这个不起眼的功能,以备课堂教学中可能有的需求。

②同步辅助功能,是本软件的一个亮点。

四个同步选项中的一个或多个被选中时,其动作的发生是依据动画进程自动协同控制的。即动画进行到哪个时期则展示哪个时期的内容,如板书信息、口语讲解、各时期典型照片;“同步曲线”若干图像的变化与动画完全同步。这体现了知识内部的关联,有利于学生的意义建构过程。三条曲线都有各自的开关,可以打开和关闭。

③其他媒体的组织。

“图片”按钮导致在展示区(图3中座标系及图像区域)展示图片,并提供翻页结构导航栏,同时提供弹出菜单方式的直接跳转操作。

“图例”按钮导致进入以一个染色体为例的专题研究,是一个进退自如的动画控制及一组相关交互。

电影,由屏幕下方的一排“小摄像机”图标启动相应的电影,单击带禁止符号的图标中断播放。图标位置和细胞分裂的相应阶段对应。

④课堂练习、辅助文献、帮助文件等,则不在此界面下出现,而进入子程序操作。

所有操作都可使用键盘和鼠标两种方式。

教学软件开发 篇3

摘要:随着信息技术在教学应用的深入,教学软件的需求量不断增长。由于开发团队及开发方法的不足,导致教学软件不但质量良莠不齐、开发成本过高、开发周期过长,而且会出现重复开发、使用困难等问题。而基于软件工程开发模式,可以缓解教学软件危机,降低开发成本,提高软件开发成功率。

关键词:软件工程教学软件软件危机开发模式

0引言

随着计算机技术在教育领域的深入应用,教学软件的需求量不断增长,虽然理论上教学软件的应用可以降低教师的工作量,提高教学质量,但实质上,教学软件的消费比低、应用范围窄、灵活性差、重复开发严重,不能满足当前日益增长的教学软件的需求。这些问题可称之为“教学软件危机”。该危机的出现是因为没有正确的开发理念所造成的,要消除这些危机,就要有正确的软件开发方法和开发模式。结合软件工程学和已有的软件开发经验,我们可以从中探索出一种基于软件工程的教学软件开发模式,这种模式可以缓解教学软件危机,降低开发成本,提高软件开发的成功率和产出率。

1软件工程的基本理论

软件工程是指导计算机软件开发和维护的工程学科。采用工程的概念、原理、技术和方法来开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来,以经济地开发出高质量的软件并有效地维护它。

软件危机是指在计算机软件的开发和维护过程中所遇一系列严重问题。包括如何开发软件以满足对日益增长的需求和如何维护数量不断膨胀的已有软件。

软件工程借助工程的理论来指导软件开发,大量软件开发实例证明了采用软件工程方法进行开发,可以消除或缓解软件危机,提高软件开发的成功率和产出率。

软件方法学中使用最广的是传统方法学和面向对象方法学。不管采用何种软件方法学,在软件开发中都包括问题定义,可行性研究、需求分析、软件设计、编码和单元测试、

综合测试软件维护这几个阶段。问题定义是弄清楚“要解决的问题是什么”。可行性分析是对所定义问题是否有可行通得过的解决方法。需求分析是准确地描述目标系统必须做什么,是发现、求精、建模、规格说明和复审的过程。软件设计又分概要设计和详细设计。概要设计是以比较抽象概括的方式提出解决的方法,详细设计就是把解法具体化。编码和单元测试是写出正确的容易理解、容易维护的程序模块。综合测试是通过各种类型的测试使软件达到预定的要求。软件维护是通过各种必要的活动使系统持久满足用户的需求。

2基于软件工程的教学教学软件开发过程

教学软件也是软件,因此软件工程的开发理论同样适用,考虑其特殊性,我们必须同时结合教育学和心理学的理论进行开发。借助软件工程成功的开发经验,我们把教学软件的开发分为一下几个阶段:

2.1问题定义开发者首先弄清楚要解决什么问题,即为什么要这个教学软件和要达到的目标。比如开发《C语言程序设计》这一门课的教学软件,这门课目前教学主用教室板书和上机练习,或用零散的课件和实例进行教学。在教室板书容量少,有些知识也讲不清楚;采用零散的课件和实例教学要好些,但是由于课件零散,缺乏整体性,教师每次备课必须花大量的时间进行查找和整理,费时费力。我们开发这一门课的教学软件就是为了解决以上这些问题。我们可以初步构思该软件所要达到的目标。如提供教学软件、练习和试题库、资料和案例、问题答疑和操作帮助等。

2.2可行性分析首先对要开发的教学软件进行市场调查,主要调以前有没有这一门课的教学软件,如果有,存在那些优缺点,经过分析在决定有没有必要开发或重新开发。如果有必要开发,则需要提出各种可能实现的方案,然后针对这些方案从技术、经济和社会因素等分析其可行性。比如开发《C语言程序设计》这门课的教学软件,就需考虑所用到的技术能否达到开发目标。还有开发周期,开发人员配置,开发费用和版权问题等,如果一切可行就可进入下一个阶段。

2.3需求分析需求分析是分析、求精、建模、规格说明和复审的过程。需求分析的第一步是了解用户情况,发现用户面临的问题;第二步是通过与用户反复交流获得用户的基本需求,第三步是对用户的基本需求反复求精细化,最后得出目标系统完整、准确和具体的要求。如开发《C语言程序设计》这门课的教学软件,首先是了解目前各门课的教学情况。

通过与学生、教师的交流,充分了解目前教与学中存在的不足,以及他们希望开发的教学软件所能达到的效果。可以通过创建原型的方法征求教师和学生的意见。经过多次反复交流反复修改直到与用户意见达成一致。写出相应的需求报告,建立相应的模型并进行认真的审查,符合要求侯再进入下一步。

2.4课件设计首先对教学软件进行分解,分成若干子系统也就是模块化,比如《C语言程序设计》这门课的教学软件按照其目标和功能我们可以划分成以下几个模块(图1):

接着下来对模块进行细化,主要确定整个教学软件框架和风格以及系统流程图及伪代码,考虑到教学软件的特殊性,在设计模块时还必须遵循教育学和心里学的原则,比如知识点的安排,界面风格设计等都必须考虑有利于教师的教和学生的学。

2.5收集和整理素材前期工作完成后,就进入了程序编制步骤。首先根据模块功能及伪代码的内容,收集相关素材,例如整理文本、横扫图片、创作图像和动画、制作片头等。注意素材尽量做成积件式,这样有利于提高素材的重用率,降低软件的大小。

2.6制作合成程序员根据需求分析和界面风格,完成各自模块的制作,也就是根据总体的框架结构和伪代码进行编程,将确定的素材寓意制作、运用,并进行单元测试,然后把各自模块合成进行综合测试,还可通过试用的方法进行综合测试,从而发现并修改存在的错误和不足。

2.7运行维护软件试用正常,可以发布,转入正常试用阶段。当然由于学科是在不断变化的,因此所开发的教学软件也应不断维护和修改,如及时修改所发现的错误和漏洞,完善存在的不足,优化用户界面,扩展新增模块等。

3开发人员的配置

在教学软件的开发过程中,开发人员的配置也是至关重要的。在很多商业教学软件不能推广使用的原因之一就是缺乏专业教师和学生的参与。而是很多教师开发的教学软件不能长久使用,其原因是缺乏专业的计算机开发技术,致使开发的教学软件功能低下,很难更新和使用。因此教学软件的开发队伍要配置合理。一是必须有学科专家参与,他们对课程熟悉,对软件所能提供的功能有选择判断能力;二是必须有计算机专家,即计算机开发技术人员。她们熟悉开发平台,有丰富的开发经验,能准确实现需求,完成功能的实现。当然一般还需要根据软件的规模和开发周期来配置一定数量的开发技术人员。另外还要建立完善的开发管理制度,在教学软件开发中学生也是不容忽视的一群开发实体,通过她们可以了解目前教学的优缺点,以及对所开发软件的期望值,还可以同感哦他们测试所开发的软件,帮助我们尽可能多的发现错误和不足。

4结语

教学软件开发 篇4

在传统的教学中, 通常是把学生做为知识灌输的对象, 老师教什么学生就学什么, 从不去考虑学生的思维发展方向, 严重的影响到了教学质量与教学效果。而作为教育改革后的新时期教学, 主要是以培养具有实践能力和创新能力的人才, 从而来满足社会发展的需求。所以, 情境教学模式的引用填补了传统教育上的不足, 为教育改革后的重要产物, 使学生在知识获得上提供了更多的帮助。

1 情境教学的概念和特点

情境教学法的核心就是激发学生的学习情趣和学习情感, 从而提高学生的学习质量。其主要内容就是为了达到预期的教学目标, 创设或引入具有一定感情色彩, 并且和教学内容相关的情境和氛围, 引导学生进行真实的体验, 从而激发了学生的学习兴趣, 帮助学生对知识的理解与记忆, 达到最终的学习目的。情境教学法通过借助情境的建设, 为学生提供轻松、愉快的学习氛围。

1.1 情境教学法具有抽象、简单的特点

在情境教学发的运用上, 教师应充分发挥想象力, 对于所创造的情境要尽量以轻松、简单为主, 从而使学生能够更好的理解与记忆。情境教学发不仅能开拓学生思维的发展, 提高学生的学习效率, 还可锻炼学生的事物辨别能力, 对学生综合素质的培养给予了很大的帮助。

1.2 情境教学法可激发学生的学习兴趣

爱因斯坦曾说过“兴趣是最好的老师”, 从而说明了兴趣在学习中有着至关重要的作用。兴趣是激发学生学习的内在动力, 是有效发展思维的重要支撑。据研究表明, 没有了学习兴趣, 在学习中仅仅只能发挥出50-60%的学习能力, 可见兴趣是有效开展学习的关键因素。所以在情境教学法的应用中, 教师应用心设计出一些有趣的情境来帮助学生学习, 从而使学生更有效、更深入的参与到情境中, 提高了学生的学习质量。

1.3 情境教学法可激发学生的创新力

情境教学法在帮助学生提高学习质量、培养学习兴趣、加强知识理解记忆的同时还能够有效提高学生的创新能力。因为在情境教学法应用当中, 学生会根据情境设定的中任务来采取相应的解决方法, 而在问题的解决上, 解决方法也是多种多样, 学生通常会选择其中最简单的一种方法来解决问题, 所以在问题思考上就不在是仅限与一种答案, 从提升学生的思维宽度, 提高创新能力。

2 情境教学法在软件开发教学中的应用

软件开发课程较其他课程相比有着很多的不同之初, 它不论是在教学策略、评价标准还是教学目标上都有着自身的特点。下面以情境教学法如何有效运用在软件开发教学中进行说明:

2.1 情境教学法中的角色扮演情景

在软件开发教学中, 首先由老师对学生进行分组, 每组三到五各人, 并推选出一名小组长, 负责小组内人员的安排。其次由每组成员分别扮演项目经理、程序员、系统分析员和虚拟客户等, 其中的程序员让每位同学都要扮演一次, 其它职务可以随机筹钱决定或由教师制定, 可使学生在不同的活动捉弄过担当不同的角色。通过情境方法的演练, 使学生成为情境的感受者、创造者和参与者, 不仅发挥出了学生的学习兴趣, 更可通过抽象化内容对情境中所蕴含的知识、技能经行掌握, 提升学生的感情态度及价值观温, 增强学生对软件开发教学的时效性和感染力。

2.2 情境教学法中的真实案例讨论情境

由于软件开发需要对应的系统进行架构, 这对于没有开发背景的学生来说, 在理解软件架构方面就带来了一定的困难。例如教师在教授“Web服务课程“时, 首先需要让学生了解“面向服务体系结构”及相关的”服务代理“等概念, 但是这些概念都是相关软件知识, 理解起来较为困难。

所在此情境教学的应用上, 教师可以选择一个学生们都较为熟悉的“网上购物”的列子让学生进行讨论, 完全按照淘宝购物的整个流程, 分为买家和、卖家、淘宝网的商务模式, 从而实现“面向服务体系构架模式”理解和学习。此外, 在讨论的过程中, 教师可通过对学生操作过程中存在的问题进行指导, 并举例说明, 提高学生的记忆程度。

2.3 情境教学法中探究问题情境法的运用

在软件开发教学中的情境教学法应用上, “探究问题情境法”的步骤是首先给学生安排任务, 提出相对问题来引发学生的思考, 并带领学生进行相关的实际操作和研究, 实现以学生为主进行教学, 从而帮助学生对实践操作能力的掌握。教师在进行知识讲解之前, 需要让学生自行理解讨论编写教程, 理解编写的教程中有没有不足之初, 是否可进行改进, 或换一种编写方式;在学生讨论之后提出新鲜的解决方法, 让他们对自己所提的方法来进行实践操作来加以验证, 如发现想法中存在着错误或难以实现的理论, 便通过实际讨论进行自主完善, 从而使学生对知识的掌握程度有了很大的体高。而通过以上的“探究问题情境”的方法来激发学生的积极性, 可使学生更为自主的去发现问题研究问题, 从而在学习的过程中得到快乐, 有效的活跃了课堂的气氛, 是学生在不知不觉之中便学会了所学的内容, 提高学生的技术操作能力与技术掌握程度, 培养了学生的问题分析和问题解决能力。

2.4 情境教学法中多媒体情境法的应用

如今, 我国已进入信息化时代, 多媒体应用技术已广泛的应用到课堂教学之中, 这种教学方式可以将教学的相关内容通过多媒体技术以影响的形式进行呈现, 为学生提供了一个文图并茂的教学情境, 从而使学生可更直接更形象的对所学知识进行掌握。多媒体情境法主要是借助幻灯片、音乐影像等多媒体技把学生融入到教学的情境当中, 将抽象的内容进行了具体化, 使复杂的概念知识简单化, 以多个角度的向学生传递知识;多媒体情境法的最大优势就是让知识成多元化的形式主动去接近学生, 而不是向传统的教学那样, 去让学生自己去接受知识。如老师在讲述Java输出输入流时, 如果以单纯的理论概念来进行教授的话, 其复杂程度让学生很难听明白, 所以引入多媒体技术可以进行动态图片、文字、音效的演示, 从而将繁琐的软件知识进行生动形象的展现出来, 从而使学生更容易接受。

3 结语

实践证明, 情境教学法可充分调动起学生的创造性和积极性, 优化课堂教学, 使学生在知识学习上更加简单。而只有这样的教学方式才可以提高课堂的教学效果, 提升教学教育质量, 从而培养出符合时代发展的高素质高技能型人才。

摘要:情境教学的实施并不久远, 是传统教育日益更新的产物, 为教育改革中的重要组成部分。它改变了以往传统的“填鸭式”教学方法, 使学生的主体性得到了更大的体现。本文针对目前软件开发教学的单一性、学生主动学习的缺乏性及创新意识的缺失性等问题, 提出了采用情境教学法激发学生学习兴趣, 创设使学生感到轻松愉快、活跃和谐的情景, 从而帮助学生提高软件开发学习的积极性与主动性, 提升学生的创新意识, 培养出高素质高技能的人才。

关键词:情境教学,软件开发,实施,应用

参考文献

[1]纪良浩, 李琳皓, 段小林.对“C程序设计”课程实践教学的探讨[J].重庆电子工程职业学院学报, 2009 (04) .

[2]柏雪飞.“阶梯式”教学方法在《C语言程序设计》教学中的应用[J].新课程学习 (综合) , 2010 (12) .

[3]纪良浩, 李琳皓, 段小林.对“C程序设计”课程实践教学的探讨[J].重庆电子工程职业学院学报, 2009 (04) .

[5]刘晓光.建筑类高职院校《3ds max》课程教学方法的探讨[J].电脑知识与技术, 2011 (02) .

教学软件开发 篇5

1.1软件开发相关课程项目式教学改革的理念

本文通过总结近两年的实践经验,形成如下教学模式和理念:

1.1.1课程融合、团队协作

本文综合应用了几门课程的教学内容,同时综合应用一门课程不同部分的教学内容,找到项目教学与案例教学的不同之处,形成了项目教学团队,讨论、分工、协作,对项目教学规律、教学特点有深刻的认识和系统的研究,在教学内容、教学实施、教学质量及课程考核办法和教材建设方面也进行了许多有益的探索。

1.1.2案例实施、需求驱动

本文选择有实际应用价值的、社会急需案例,不是脱离实际虚构的,要求学生从已有知识和原理开始入手,分析项目、订制工艺和实施办法。而实践所得的结果又考问学生:是否是这样?是否与书上讲的一样?通过完成项目把理论与实践有机地结合起来。

1.1.3互教互学、注重创造

项目教学法由学生与教师共同参与,学生组成小组共同完成一个项目。学生的活动由教师组织和指导,又给充分发挥学生的自主性和积极性留下足够的空间。学生除了向教师学习,主要通过完成项目在实践中学习,向其他学生学习,完成某个项目也可能有多种方案可选择,在这个过程中锻炼各种能力,这也是与案例教学(一般可以个人单独完成)不同的地方。

1.1.4多元化教学模式

引入了“企业项目实训”的思路。针对大一、大二学生设置专业实习,对大三学生实施项目强化,对大四学生进行企业级应用类实训,目前在東软、中软、百度、谷歌等公司均有我院毕业生。

1.2软件开发相关课程项目式教学设计

1.2.1软件开发相关项目的选择

项目教学的一切活动都围绕项目这个载体来设计与开发,项目的选择与设一计的好坏直接关系到项目教学的成败。项目的选择要遵循以下原则:首先,项目应贴近实际社会工作;其次,项目的规模要适中,综合考虑学生实际能力;最后,在符合教学内容的前提下,应具有一定的创新性。

1.2.2设计的原则

第一,把握以学生为主体的原则,在计算机教学改革中,以学生为主体,教师为辅助,充分发挥学生的主动性。

第二,以实践为中心的原则。在实践中应用旧知识、发现新知识、解决问题、提高技能,符合斯金纳的教学系统小步子化理论。

第三,学习环境、协作资源有效支持的原则。在计算机教学中采用项目教学法,首先要求学校硬件设备要跟得上,使学生有足够的上机时间;其次要寻找或教师自己补充编写教材,保证每门课有大量的实例、习题;第三,对教学内容模块化,制定合理科学的教学目标、教学过程、教学方法,学生通过每节课充分的、有步骤的、系统的练习后,能达到熟练掌握教学内容的目的。

1.2.3项目教学的步骤

本文通过以下思维导图,展示了软件开发相关课程项目式教学改革的过程:

2总结

软件开发相关课程项目式教学改革能够让学生在教师的指导下寻找解决问题的途径,最终完成项目,得到结果,并进行展示和自我评价。信息的收集,方案的设计,项目实施及最终评价,都由学生负责。学生按照分工承担其中某个部分的工作,但要参与该项目的全过程,了解并把握整个过程及每一个环节中的基本要求。

本文提出的模式的教学方法, 是对传统教学模式的一种突破, 也是适应现代社会发展的一种需要, 通过项目教学改革,在最大程度上缩短了学校培养的软件人才与能胜任实际岗位人才之间的距离,解决了社会人才需求与学校培养人才供应之间的错位问题。有广泛的应用价值。

参考文献

[1] 李坤,赵阳,宁静.软件开发相关课程项目式教学改革[J].吉林工程技术师范学院学报,,25(03):25-27.

[2] 苇丽梅.项目教学法在计算机程序设计课程中的应用[D].上海:华东师范大学,.

[3] 微玉.项目教学法综论[J].广西教育,(09):21-23.

基于web的教学软件平台开发 篇6

但是,现行的教育教学软件存在很多问题,如:缺乏先进的理论指导和实践应用检测;简单、重复、大同小异是现时教育教学软件的一个通病;数据结构不规范,不按《教育资源建设技术规范》开发、设计、制作教育教学软件,共享性差;缺乏人性化的界面,比较死板,而且产品的稳定性、兼容性、可交互性较差等。而教学软件平台的开发将会有很好的前景。

一、教学软件平台的功能前景

1.教学资源管理系统的功能前景

教学资源管理为教学资源建立了虚拟光盘塔,如:各种类型课件。它把光盘资料压缩存储在硬盘上,并支持文件分层管理以及网络共享,通过internet实现远程教学、远程演示。在设计上包括的功能特性有:

(1)界面操作简单方便。仿资源管理器设计,客户端通过WEB浏览器来实现课件点播,操作简单,轻松上手。

(2)具有虚拟光盘塔功能。系统具有虚拟光盘塔功能,光盘内容可保存在虚拟光盘塔中,通过网络让多人同时读取光盘内容,达到资源共享。

(3)课件管理。提供方便的增、删课件功能,并支持同一科目不同课件,同一课件多个不同版本。

(4)课件点播。在任何教室中均可根据教师的要求和需要,从服务器中点播课件,每一个课件可让多人同时点播,每个人也可以分别点播不同的节日。可扩展的业服务器或服务器集群支持多达50个点播的并发访问。

(5)分类索引。采用树型菜单,可以有效地将视频节目依据教师的需要加以分类,以便让每个人在点播时,以最快的速度,就能点播选到想要的节目内容。

(6)维护工作量小。工作站只需安装IE浏览器,即可进行课件点播,使用方便,无需维护。

2.课件管理系统的功能前景

课件的类型多种多样,涉及文本、图形、图像、动画、视频、音频等等,同时课件的大小区别也较大,从几kb到几十、上百mb,现有的技术条件对课件的管理方法提供如下可选的实现方案:

(1)将所有的课件资源均灌入数据库中。采用该课件管理万法,数据存储量较大,后台数据库系统需要采用MS、SQL、SERER2000等大型的数据管理系统,通过下面的技术可以实现课件的灌入:一是将课件集中起来,在后台采用C/S模式,使用PowerBuilder等数据库开发工具开发应用程序,该程序应具有课件的灌入、查询、修改、添加和安全性设置等基本功能,二是采用B/S模式,合法用户可通过动态交互网页实现课件灌入后台数据库中。

(2)将课件以目录方式保存在服务器中,而在数据库中只保存课件的基本属性。采用该方法,在数据库中保存课件的一些基本属,性,比如:课程编号、课程名称、课程简介、可见保存位置的目录索引等等。同样可通过在后台采用C/S模式开发数据管理的应用程序或通过B/S模式创建动态网页实现课件基本属性的灌入和课件的服务器保存。

综上所述,课件管理采用的设计思路为:课件以目录方式保存在服务器中,后台数据库存储课件的基本属性,通过课件基本属性关键字索引查找相关的课件,同时考虑到课件开发者的分散性和课件完成时间的不确定性采用B/S模式实现课件基本属性的灌入和相应课件的服务器保存,课件安全性保障通过代码实现。

由此可见。教育软件的循环模型能够有效克服现阶段教育软件的问题,促进教育软件发展,降低系统运行成本。

3.考核评估管理系统的功能前景

考核评估管理包括:题库、试卷、号试、练习、报表、分析等功能。在设计上包括功能特性:

(1)题库管理。为创建教学题目资源的规范化管理平台,题库支持任意多学科、多种难度层次、多种类型(如:单项选择题、多项选择题、判断题、完型填空、阅读理解)的题目。题目的内容和解答支持大文本格式。可自由维护、扩充,可以分学科、分章节制作题库。

(2)组卷管理。定义的试卷可以重新编辑、排序、删除、调整,可以自动生成一份WORD文档,也可以把现有的WORD等文档资料存到系统里,内容不受限制。可以方便设置试卷版面,可以插入密封线,后续版本可以自动生成试卷答案和答题纸。

(3)自动评卷。判断题、单选题、多选题由计算机自动批卷、自动评分。

(4)网上答题。建立试卷的电子文档化管理。可以自由设定参加考试的人员,可以指定一个年级、一个班级或者一个人。能够进行在线测试、反馈分析、支持局域网在线考试及非正常中断,所有考试结果自动存放服务器上,在线考试设置监控。

(5)统计分析功能。提供试卷成绩的分析,试卷的分析,可以以图形的形式形象地统计出及格率、各分数段的人数等信息。

(6)试卷。在输入窗可以快速输入试题,可以快速输入理科公式,输入时可自动排版,可自动生成题库格式,可以将网上的试题轻松转化为系统题库格式,同时可以对试题进行重新排版。

(7)轻松建立题目生成模板。可以将WORD中任意选中的部分添加到系统工具栏上,制作一套适合于自己的模板易如反掌。所有的试题录入,添加试题信息,试题编辑,试题查询,试题组卷,试卷打印等操作可以全部在WORD环境下进行。

4.知识库管理系统的功能前景

知识库管理对教学教研所掌握的各种新知识新技术新信息进行科学管理和内部共享。它可以轻松开辟新的兴趣小组知识分类专栏,任何教学研发知识分类专栏。在设计上包括功能特性:

(1)信息分类管理。针对不同性质的信息进行分类,可以自定义分类,并且无限划分子分类,同时提供灵活的信息存储管理方法。

(2)信息版本控制。针对有需要的文档和信息,在每一次文档和信息改变的时候生成一个新的版本,支持版本的审核和回滚。

(3)多用户协作:支持多个用户对同一篇文档进行工作,同时也可以对信息进行实时的在线讨论。讨论信息可以和原信息一起存放和显示,方便查阅。

(4)信息审批。针对需要的信息提供信息审批的功能,可以预先定制信息的审批流向和审批逻辑,支持并行和串行审批流程,而且完全可以由用户定义。

(5)信息检索。提供强大的搜索引擎,支持全文检索、关键字检索等多种高效的检索信息方法。

(6)信息发布。通过电子仪表板技术。对信息的界面和模块发布内容可以轻松进行修改,同时可以针对不同模块支持各种不同数据来源;对信息的发布属性和内容可以灵活定义,支持单物理信息映射多逻辑信息。

(7)信息订阅。为了方便用户能够快速获取信息,司以通过用户自己订阅感兴趣的内容,在订阅内容有改变的时候通过电:子邮件或IE浏览器提示的方式进行提醒。用户定阅的内容选择非常方便,支持对特定消息类别、文档等多种选择方式,数据的来源也可以是自己内部或外部数据源。

三、信息化发展的条件

教育信息化的发展是一项系统工程,不仅要全面把握,同时需要重点出击。一是政府重视,政策引导,出台有利于教育信息化发展的政策和计划,并通过制定和执行这些政策和计划,在宏观上调控教育信息化的发展进程,并为教育信息化的持续发展指明方向。二是重视基础设施和信息资源的建设。除了拨款和设置专项经费用于学校添置电脑设备,上互联网和建立校园网等基础设施的建设,建设一流的高质量的信息高速公路外,还要投入重金用于同教学配套的信息化资源的开发和研制,设立专门的教育门户网站和教育信息中心,为教师提供服务。三是重视教师培训。教师培训将成为教育信息化的一大关键。为了避免教师的技术应用状况滞后于技术的发展,要加强教师信息技能与信息素养的培训。四是资金投入。除了保证政府对教育信息化的绝对支持外,还要积极吸纳社会各界对于教育信息化的参与和支持。

教学软件开发 篇7

关键词:企业流程,软件开发,项目教学

1 引言

高校就业红牌专业分为二类, 一类如“法律事务”、“工商管理 ”等供大 于求的专 业 ; 另一类是 长年占据 红牌榜的“计算机应用技术 ”、“电子商务”等IT专业群 , 属于人才培养质量达不到企业要求的专业。

在软件领域, 只有少数人从事标准协议、编程语言等基础软件研发。这些人确实需要比较深厚的相关知识。但更多从事的是应用型技术工作, 对他们的能力要求是掌握一、二门编程语言, 运用各种工具, 在了解客户所在行业领域知识基础上针对客户需求提出解决方案, 并以程序呈现。

高校学生经过适当的培训之后, 完全能够从事一般软件开发工作, 并且在进入软件行业后, 能够随着项目经验的积累, 技术层级不断提升, 职业生涯发展前景广阔。

把软件企业工作流程内化到教学过程中, 把知识要求融合到软件开发项目教学中, 采用真实企业流程开发模式。这种模式根据企业项目开发流程, 把一个完整的教学过程分为:项目立项、项目计划、需求分析、系统设计、 编码测试、项目答辩、项目总结7个阶段, 教师就是项目经理, 学生就是程序员, 项目经理打破课程界线, 具备若干门课程的贯通能力, 分阶段指导学生 (程序员) 完成若干个从功能模块到小型、中型项目。学生从开始完成简单的功能模块中体验成就感-->建立自信心-->激发兴趣, 再到完成更大的项目, 体验更大的成就感-->更强的自信心-->更高的兴趣, 形成良好的学习体验。

2 软件开发教学

依据真实企业流程开发模式把教学过程严格按照企业流程顺序实施, 摈弃传统教学模式, 避免学生学过却不知能做什么、知道能做什么但不知道怎么做、没有真正的企业开发经验等一系列企业诟病的缺点。本模式将一个完整的项目开发贯穿整个教学活动中, 每阶段学生目标明确。

2.1 项目立项

一门专业技术课程开始 前 , 教学过程 从项目立 项开始 ,让学生有一个明确的学习目标: 这门课程的学习我能干什么,企业是怎么开始一个真实完整项目的。

立项是软件开发项目管理流程中一个 非常重要 的环节。立项是去确定软件项目的目标, 立项决策是否正确直接决定整个项目的成败。立项也是软件项目正式启动之前对项目的功能、人员安排、时间控制、 风险规避等进行计划的 过程 ,目的就是为了确定项目的方向及可用资源, 保证项目的实施是可行的, 且有据可依。

编写文档也是软件开发中重要的环节, 高校专业教学环节中一般忽视文档编写, 为提高学生项目开发经验, 文档编写是本教学模式重要内容之一。

本阶段提交立项文档及资料包括: 程序员 (学生) 提供《项目立 项及开发 规划说明 书》、项 目原型 ; 项目经理 提交《项目立项评审报告》。

2.2 计划

通过项目立项学生知道了学习目标, 根据企业流程下一步实施项目计划, 该阶段是项目开发环节的一个里程碑, 标志着项目真正开始。相关专业技术虽然还没开始, 但学生开始体验企业真实开发流程。

项目计划是用于协调所有项目计划编制文件、指导项目执行和控制的文件, 是实现成功的系统的路线图。它提供了一种手段来通知每个人希望他们做什么及何时完成。它帮助项目经理使管理层了解项目状态和调整特殊的资源。逐项列记的 “一览表”协助对任何变动的影响进行迅速评估。项目计划为今后项目的任务划分和估算提供了有用的信息。

项目计划阶段文档及资料包括项目开发计划表、项目开发计划评审报告。

2.3 项目需求

本阶段是让学生对本门课程所能实现的项目所要实现功能有一个全面印象, 也进一步熟悉企业开发流程。

软件需求宽泛地讲, 需求来源于用户的一些" 需要", 这些" 需要" 被分析、确认后形成完整的文档, 该文档详细地说明了产品" 必须或应当" 做什么。是用户对目标软件系统在功能、行为、性能、 设计约束等方面的期望。

国内软件业的痼疾是人们并不清楚究竟该做什么, 但却一直忙碌不停地开发。

需求的重要性在于开发软件系统最困难的部分就是准确说明开发什么。最困难的概念性工作是编写出详 细的需求 ,包括所有面向用户、面向机器和其他软件系统的接口。此工作一旦做错, 将会给系统带来极大的损害, 并且以后对它修改也极为困难。需求是产品的根源, 需求工作的优劣对产品影响最大。

本阶段最后各项目小组需要提交下列文档:《需求规格说明书》、《XX班项目过程监《需求规格说明书评审报告》、控表》。

2.4 系统设计

系统设计是新系统的物理设计阶段, 根据系统分析阶段所确定的新系统的逻辑模型、功能要求, 该文档详细地说明了产品相关功能“怎么做”。通过本阶段学生对整体项目和即将学习的相关专业技术有一个全局观。

在用户提供的环境条件下, 设计出一个能在计算机网络环境上实施的方案, 即建立新系统的物理模型。一个好的软件设计至少会提高软件的质量、节约开发成本。设计是需求的根源, 设计工作的优劣对产品影响最大。

本阶段最后各项目小组需要提交下列文档:《系统设计说明书》、《XX班项目过程监《系统设计说明书评审报告》、控表》。

2.5 项目编码与测试

本阶段工作贯穿整个专业技术授课过程中, 学生不再盲目地学习, 通过前期项目开发流程的熟悉, 学生现在对如何实现项目中的功能模块充满了期待。本阶段也是提升学生技术关系阶段。

编码是按照“项目开发计划”阶段制订的编码计划, 由各小组成员用所掌握的技术实现分配的功能模块; 项目经理和项目组长通过“敏捷开发”监控编码的进度和开发过程。

编码过程贯穿至专业课程授课过程中, 确保学生每天有固定的编码时间, 其次在技术复习环节中穿插安排一次项目编码课, 方便教师对项目进行管理。项目经理可以利用此次项目编码课, 集中讲解项目中的共性问题, 以此保障项目的正常开发进度, 从而确保项目的最终完成。

测试阶段是按照“项目开发计划”阶段制订的计划按照小组成员交叉测试的原则检测项目的功能完成情况, 并由测试人员填写“项目测试报告”。

2.6 项目答辩

课程结束后项目也基本结束, 根据企业开发流程学生开始准备项目答辩。刻意培养学生表达能力也是项目答辩的目的之一。

项目答辩是一种有组织、有准备、有计划、有鉴定的比较正规的审查项目的重要形式。

本阶段最后各项目小组提交下列文档:《XX小组XX项目验收报告》、《XX项目答辩评分统计表》。

2.7 项目总结

《项目总结报告》是对项目期间工作加以总结 , 分析和研究、肯定成绩、找出问题、得出经验教训、 摸索软件开发规律, 用于指导下一个项目的开发, 少犯错误, 提高工作效益同时也促进项目组成员提升团队合作意识、团队技 术能力成员成本意识以及团队成员间的相互了解。 本阶段最终也是为了提高学生技术学习的成就感。

《项目总结报告》包含的内容 : 项目基本情况、项目的完成情况、任务及其工作量总结、 项目进度、项目总结、收获和不足、团队合影 (形式活泼一点, 印象深刻一点)、研发过程花絮 (视频) 等。

本阶段程序员提交《项目总结报告》, 同时程序员将项目运行效果截图, 再使用录屏软件将运行效果录制成视频文件打包上交。

至此, 一门专业课程结束。整个教学模式中学生不仅掌握了相关开发技术, 也通过依据真实企业流程实施的项目教学过程充分体验了企业开发流程, 积累了项目经验。

3 结语

教学软件开发 篇8

作为校级特色专业, 笔者所在学院的软件工程系近年来积极推进特色专业建设进程, 设有软件开发、软件测试及移动软件开发3个专业方向。在西华大学特色专业建设基金的资助下, 各专业方向的课程体系建设日趋完善。 由于实践教学贯穿于高等人才培养的全过程, 是提高人才培养质量、实现高等教育目标的关键环节[1], 软件工程学科和软件产业不断发展, 以及全国对高素质软件人才需求量激增的形势下, 针对软件工程学科实践性极强的特点, 学校较大幅度地增加了实践类课程和环节所占的比例。 “移动软件开发项目实训”是近年来新开设的移动软件开发方向学生必修的一门很重要的专业实践课程, 这门课将为培养更加符合社会实际需要的移动软件开发人才打下坚实基础, 因此迫切需要研究和探索该课程的教学方法, 以更有效的手段和方式提高教学质量。本文将从分组安排与项目选题、教师课堂讲授环节、学生实践实施环节、课程考核方式等方面进行研究。

1合理分组, 严格筛选项目选题

“移动软件开发项目实训”课程开设在大三下学期。 此时学生已经学完了大多数基础及专业课程, 移动软件开发方面也已经具备了Android平台下的开发基础。对于该阶段的学生来说, 急需在大四的专业实习及毕业设计到来之前做好更充分的实战准备。因此, 该课程的教学目标是:使学生学会移动软件开发项目的需求分析、设计、实现及测试相关技术, 能将之前学到的点状知识和技能集结到面, 同时整合训练各种移动软件开发所涉及到的主要技能点, 为学生将来从事实际的移动软件开发工作做好技术准备。本课程不再采用前期程序设计语言实训课所采用的单元式训练为主、综合训练为辅的方式, 而是采用实战项目的方式, 让学生完整地实现一个综合性的中小型项目。

在该课程的第一堂课上, 由教师对整个课程的概况和目标进行介绍, 并给出该门课程的进度安排, 让学生了解整个项目实训流程。接着进行分组安排, 采用自由组合的分组原则, 要求每组2~3人, 并推选一个技术和沟通能力较强的学生为小组长。相对教师直接指派而言, 自由组合的好处是各小组成员配合更加默契, 课后的交流合作更易展开。而且学生中已有自发组织的软件开发兴趣小组, 这样他们可以保持兴趣小组的组合来进行实训, 更易于出成果。分组结果可能存在某些小组成员开发能力都较强, 但某些小组成员开发能力都较弱的情况。对于较强的小组, 可鼓励他们发挥创新精神和主观能动性, 多在设计方面出新点子, 在项目中大量使用新技术。课程结束后可鼓励其将成果用于参加一些竞赛, 如Android平台软件开发大赛等。对于较弱的小组, 则可降低对创新性的要求, 建议他们选择一些注重基本技术的项目, 即适于边学边练进而对技术的应用达到一定熟练程度的项目, 这样能减少学生的畏难情绪, 激发学生的学习兴趣和动力, 使学生对移动软件开发的学习由被动变为主动, 以便更好地将书本上学到的知识转化为实战经验。教师对移动软件开发中的几大技术进行介绍, 提出实训项目选题要求 (如要求不重题、要具备实用价值、要涉及不少于3个较大的技术面的综合应用等) , 并安排各小组根据自身的兴趣进行课后选题调研。

第二次课则由各小组作选题报告, 汇报选题背景及意义, 阐述项目涉及的主要技术面, 其余各小组可给出建议和意见。这样既可集思广益, 又避免了小组选题内容过于雷同。由教师进行审核和点评, 工作量或涉及的技术面达不到要求的小组需重新选题, 直至题目通过为止。教师要严把选题关, 避免出现小组找寻现成源码项目抄袭的现象。

2学生分阶段提交项目文档, 进行阶段汇报

实训项目在规模和技术上应是企业实际开发项目的浓缩, 因此要求是一个完整的项目。按照软件工程的思想和规范, 至少包括需求分析、软件设计、编码实现、软件测试、进度控制、项目成果这6个工作过程, 再根据具体情况, 添加版本控制、文档书写、项目发布等工作过程, 从而更加真实地模拟企业项目[2]。结合移动软件开发项目的特点, 以及各小组题目涉及的主要技术面, 各小组可根据自身项目情况对项目进展进行阶段规划和裁剪。教师则按照所有小组都会经历的开发阶段收取小组提交的阶段项目文档, 听取小组的阶段汇报, 进而评估其开发进展情况。

题目确定后, 课程内容分阶段完成, 各小组需按阶段要求提交相关文档, 主要阶段包括:

第一阶段:在完成系统背景及功能概述和需求分析后, 提交需求规格说明书。

第二阶段:进行软件系统功能界面规划及总体架构设计, 提交软件设计文档。

这两个阶段由小组成员共同讨论完成。学生在这两个阶段同步进行开发前的技术准备工作, 包括Android平台及Eclipse工具的使用, 以及相关技术知识的复习等。

第三阶段:小组长分配开发任务, 各成员分别进行自己所负责模块的实现与测试。此阶段持续时间较长, 过程中要经历期中检查, 各组需提交各模块的开发文档及已完成部分的代码。

第四阶段:进行集成测试, 提交测试报告。

第五阶段:进行系统优化与改进。

第六阶段:程序打包发布。

第七阶段:教师验收项目, 检查实训报告。

第八阶段:期末项目验收答辩, 答辩通过后整理提交相关文档及代码。

教师事先通过学校的课程中心网络平台建好“移动软件开发项目实训”课程网站, 将编制好的课程阶段进度表上传提供给学生下载使用, 以便学生对整个课程安排心中有数。学生提交阶段成果也通过课程网站进行。

3教师及时进行阶段总结及讲评

在整个实训过程中, 教师要在3个阶段集中进行阶段总结及讲评。课程第一阶段完成后, 教师根据各小组提交的需求规格说明书进行一次集中讲评, 及时发现问题并要求小组整改, 避免因需求分析阶段的失误而导致最终软件不合要求的情况发生。

第二阶段完成后, 教师根据各小组提交的软件设计文档再进行一次集中讲评, 以便及时纠正小组设计中的不合理之处。

第三次阶段总结安排在期中检查后, 在各组提交部分模块开发文档及代码后, 教师及时发现学生技术上的问题, 对各小组项目开发中的典型性技术问题进行汇总及解答。虽然各组开发设计的主要技术面不完全一样, 但仍采用集中讲评, 目的是对用到相关技术的小组起到引导和提升作用, 同时让未使用到该项技术的学生学习借鉴。毕竟各组项目涉及的技术面有限, 因此应尽量全方位提升学生的知识和技术面。

4强调课后不断线

“移动软件开发项目实训”课程总共只有48个学时, 每周3学时, 共16周, 因此要想学生在如此有限的课时内通过这门课能有更多的收获, 课后的继续学习必不可少。 因此, 教师一定要对各小组提出项目开发课后不断线的要求, 对于各自完成的部分, 各小组成员要尽量抽出共同的课余时间聚在一起继续完成。笔者所在学院的实验中心未被上课占用的机房对本院学生是免费开放的, 这为各小组课余在机房继续进行项目开发提供了平台。

移动软件开发技术发展非常迅速, 新技术层出不穷, 更新很快, 教师既要引导学生采用课堂上学到的知识和技术进行项目的设计和开发, 也要在课后随时关注行业最新进展, 保持对新技术的敏锐触角, 也即课后对新知识新技术的了解和学习要不断线。

5强调过程考核, 注重答辩环节

为了使学生在实训过程中能够真正地提高他们的实践动手能力以及分析问题、解决问题的能力, 能够独立完成一定规模难度软件的开发, 除教师自身要努力提高个人授课能力和改进实训方案之外, 还要有一套完善的考核机制对学生在实训过程中的表现和成绩进行评价, 使学生能够对自己有一个正确的认识, 及时看到自己的不足和差距, 并调整自己的学习方法[3]。移动软件开发项目实训是通过任务来驱动学习的, 让学生能够在完成任务的过程中不知不觉地熟悉和掌握最主流的技术, 因此有必要通过阶段性考核, 给学生定期施加压力, 有助于他们更好地完成最终的实训任务。

在课程进行的一、二、三、四阶段, 学生均要提交相关的阶段文档材料;在课程的第七、八阶段, 学生将提交实训报告、最终的源码及相关文档。这些可作为教师进行过程考核的依据, 教师可据此对学生的阶段性成果进行考核。 同时, 为培养出具有良好职业素质和操守的软件从业人员, 对学生的学习态度和纪律性也要严格要求并纳入考核范围, 所以教师每次课上要对学生的出勤情况进行考核。 同一小组的学生, 教师要根据其表现和承担的开发任务量给予不同的成绩评定。

6结语

“移动软件开发项目实训”是一门实践性很强的课程, 能集中训练和提高学生进行移动软件项目开发和设计的实际技能, 是移动开发方向的核心专业实践课程。根据该课程的实际实施情况来看, 本文关于该课程的教学方法激发了学生的动手兴趣和积极主动寻求解决问题的热情。 但由于该课程为近年新开实践类课程, 其教学内容也应紧随移动软件行业的发展而不断更新, 所以其教学方法和措施目前还处于初探阶段, 尚需持续不断地总结、改进、探索和创新。后续可考虑从两方面着手改进:一是与企业合作, 引进真实项目进行实训[4];二是设计开发一个基于软件交付过程的平台, 以便在软件交付过程的各个阶段, 由教师设定学习任务、考核指标, 通过学生提交的成果, 教师输入判定的各个项目成绩, 然后由系统自动生成学生最终的考核成绩, 从而改进实训教学手段[5]。

摘要:针对近年来新开设的“移动软件开发项目实训”课程, 结合实际教学经验, 对该课程实际教学进行了总结, 提出了一种可操作性强的教学模式, 从分组安排与项目选题、学生实践实施环节、教师教学实施环节、课后补充实施环节, 以及课程考核方式等方面对教学实施过程中的各项措施进行了探讨。

关键词:移动软件,项目实训,实践教学,教学方法

参考文献

[1]王皖陵, 吴光龙.计算机专业实践教学体系的建立[J].实验室研究与探索, 2007, 26 (6) :85-87.

[2]黄能耿.基于工作过程的软件实训项目设计[J].无锡职业技术学院学报, 2010, 9 (2) :59-61.

[3]张必英, 胡文.计算机软件校内实训过程的管理[J].实验室科学, 2011, 14 (1) :180-182.

[4]郑晶, 张恺.校企合作培养软件人才的探索与实践——论高校中的软件实训[J].科技咨询导报, 2007 (25) :235.

教学软件开发 篇9

关键词:目标,项目,课程

《c++高级编程》课程是游戏软件开发教学中的一门专业核心能力培养课程。该课程的先修课有《c++编程基础》、《数据结构》等课程, 后续课有《DirectX图形开发》、《单机及网络游戏设计》等课程, 通过对本课程的学习, 学生们将从软件基础编程真正步入游戏软件编程。

一、课程开设原因

首先因为c++语言开发的程序具有执行高效等一些特性, 是目前网络游戏开发的首选语言, 根据《2008年中国游戏市场调查报告》显示:目前60%以上的网络游戏是由c++程序开发的。其次调查中华英才、智联招聘、中国人才热线等一些人才招聘网站可以看到, 50%以上游戏开发岗位均要求熟练掌握C++高级编程技术。

二、课程设计思路与培养目标

本课程的设计思路是:建立真实的工作过程, 设置典型工作任务, 充分利用企业的成熟项目、先进技术和专业经验等优势, 使学生的培养过程真正实现以学生为主体、工学结合。

游戏开发人才培养方向针对的核心岗位有两个:游戏编程和游戏测试。通过对岗位调查报告进行分析汇总, 这两个岗位对《C++高级编程》这门课程提出了以下培养要求:树立良好的游戏开发思想、熟练掌握和运用C++语言特性进行游戏软件开发, 同时培养良好的沟通能力、自觉的规范意识、独立分析问题解决问题的能力。

根据课程设计思路, 结合岗位调查报告分析, 《C++高级编程》的课程培养目标是:首先、通过公司化的任务设置和团队模式来培养学生良好的团队精神和独立分析、解决问题的能力, 使学生具备行业认可的通用能力。其次、通过对专业经典项目的设置, 培养学生良好的游戏编程思想, 并用工程技术将这种思想实现, 使学生掌握良好的专业核心能力。另外、适当安排一线企业游戏软件开发工程师参与综合项目实践的整个过程, 以公司的岗位要求全程指导学生综合项目实践, 针对性培养学生岗位专用能力。

三、课程设计实施

课程设计实施过程包括项目总体安排和教学过程具体实施两部分, 下面我们将对其分别进行详细阐述。

(一) 项目总体安排

技术项目的开发主要包括两个, 第一个是图书管理系统, 第二个是综合项目:连连看 (单机游戏) , 这两个项目的安排是由简单到复杂的递进关系。对于图书管理系统, 学生们非常熟悉, 因为每个人都去图书馆借过书, 对整个借书流程非常了解, 所以这个项目的开发相对简单、易操作。第二个项目连连看游戏开发难度加大, 因为游戏软件的开发和MIS系统类的软件开发还存在着很多的不同。它除了预定功能的实现以外, 还要求对用户 (也就是游戏玩家) 进行一个综合的考虑。

另外在每一个项目的实施过程中, 引入游戏开发企业的项目机制:明确任务、项目准备、分析需求、项目实施、项目测试和项目验收六个环节, 真实模拟企业项目实施流程。这几个环节, 将在下面的项目具体实施过程中进行详细的讲解。

(二) 教学具体实施过程 (以综合项目:连连看 (单机游戏) 为例)

1、项目确定

为什么要选择这个项目呢?原因是:第一, 这个游戏学生非常感兴趣、非常熟悉。第二, 通过专业课老师或公司技术人员的指导, 学生开发任务可以实现。第三, 有助于培养学生们良好的游戏开发思想。

2、项目准备

在这个环节采用任务实施主体多元化和实施内容多样化的形式。授课教师要对项目所用到的知识进行讲解和应用演示, 学生要组成团队、确定负责人, 负责人要完成团队分工并以团队的形式进行资料准备。这个环节主要锻炼学生们团队合作、分析解决问题的能力, 最终实现行业通用能力的培养目标。

3、分析需求

首先两个小组为一对, 分别扮演用户玩家与项目开发者角色, 站在不同角度共同去分析需求。另外, 邀请游戏软件公司的技术工程师给学生详细介绍公司是如何分析需求。同时, 借阅游戏软件开发企业成熟项目的一些开发文档, 供学生们参考学习。最后每个小组完成分析需求、功能分解。

4、项目实施

在此过程中主要强调项目实施注意事项, 比如, 程序开发标准化。因为学生在以前的程序开发中, 往往对许多细节不太在意。例如, 在命名一些项目名称, 功能模块的时候, 往往会使用123, abc这样的命名, 经常出现这种开发内容他人无法阅读的情况。这在公司中, 是被严令禁止的, 因为一个项目的开发, 往往都是团队, 最需要的就是沟通协作和资源共享。正像一句话说的“细节决定成败”, 所以要让学生树立一种良好游戏开发思想, 专业核心能力得到培养。这个环节的最后, 学生们除了要完成作品以外, 还要完成开发文档的撰写。

5、项目测试

众所周知, 一个游戏产品上线运营之前, 都要进行严格的内部测试和公开测试。这个环节我们也引入了项目教学, 学生们完成游戏开发以后, 要进行内部测试, 内部测试呢, 小组之间互为玩家, 进行测试和修改。内部测试以后, 每个小组邀请其他班级的同学, 来试玩本小组开发的游戏, 进行公开测试, 收集意见。结合这两个部分, 完成测试报告。特别建议, 在这个环节一定要使学生对游戏测试引起高度, 因为这直接关系着一个游戏项目今后运营的成败。

6、项目验收

项目验收采用综合评分制, 其中包括小组互评部分、特邀玩家测评部分、项目答辩部分 (评委由专业课老师和企业一线工程师共同组成) 、项目总结部分, 其中要特别说明的是项目总结部分, 项目总结是指项目完成后对项目进行角色换位思考、模拟再实现、完善测评的一个综合过程, 是技术熟练掌握的一个再提高过程。

四、课程设计问题思考

我们在进行项目教学, 同时企业也在进项目开发, 那么为什么项目在企业进行的那么顺利高效?为什么企业的员工在项目实施过程中那么积极努力?

针对这个问题, 我们通过走访企业开展调查, 总结得到的答案是:每个企业不仅有严格、完善的考核机制, 而且企业的内部竞争激励, 每一位员工在竞争压力面前, 时刻身怀危机意识, 只有努力拼搏、大胆创新才能在个人核心竞争力上具有优势。那么, 在校学生参与项目实践的动力是什么呢?我们老师做为项目的实施负责人不可能像企业的老板一样, 去扣工资, 炒鱿鱼, 我们靠什么调动学生的积极性呢?通过调查和讨论, 发现只有严考核、重奖励才能使学生充分融入项目教学全过程, 充分发挥参与项目实践的积极性。所以我们认为严格的课程考核和优厚的奖励措施是我们整个课程设计顺利执行的保证。

参考文献

[1]童寅山.独立游戏开发分析[J], 程序员:游戏创造, 2006 (10) .

[2]李桂芹.提高游戏开发人才培养水平的困难与条件[J], 经济研究导刊, 2009.

教学软件开发 篇10

一、前言

1. 传统教学模式存在的问题

侧重理论教学, 直观性较差, 教学课程的设置也存在各种问题, 有的学生甚至没有学过软件工程等前导课程, 很难真正培养学生的软件开发能力。实践与理论脱节是目前软件开发教学中存在的主要问题。

2. 项目教学法综合实训

以项目为导向的教学策略是针对计算机软件开发类相关课程具有的工程性和实践性特点提出的, 它以一个完整的项目贯穿于整个课程教学过程的始终, 以项目的构建过程为线索安排教学步骤。

二、关于“软件开发”项目实践课教学改革研究

1. 教学模式改革

软件开发项目实战采用“项目/任务”实训模式, 内容来源于企业的真实项目, 通过对项目的开发将学生所学的专业理论知识、单项操作技能综合地应用于实践, 培养学生系统、完整、具体地解决实际问题的能力。项目的选择要求具有生产性、可操作性和成果可展示性。项目要有符合标准和商业经营要求的、轮廓清晰的说明, 并能够在一定的时间范围内完成。实训过程中注意培养学生收集信息、制定计划、实施计划和自我评价的能力, 并注意安排小组工作, 锻炼学生团队协作的能力, 注重学生关键能力与综合素质的培养。

2. 推行“以学生为主体, 教师为主导”的项目小组教学模式

为了学生能够对于实际项目的体验更加深刻, 在课程的一开始, 就让学生按照个人意愿组成项目小组, 项目管理者采用民主轮换制或优胜劣汰制, 选取一个现实中较大的有实际应用价值的软件项目, 给出包含项目干系人, 需求、风险、回报等内容的课堂报告, 以此为基础, 在整个课程期间完成该项目。结合课本中各个部分的知识和需求, 分别进行有关项目计划、项目启动、项目过程、项目完成的课堂报告。在课堂进行实际项目的报告和评审会议的模拟, 让其余小组模仿软件客户, 进行报告的小组模拟项目开发团队。

3. 教学内容与时俱进

根据我国软件人才培养的发展目标, 课程组研究如何面向企业, 培养适合企业实际需求的软件人才, 紧跟学术办的最新理论和企业界的最佳实践, 不断更新教学内容, 要保证教学内容对先进技术的跟进, 介绍一些目前已经推出或比较成熟的新方法, 采用项目教学, 精讲软件开发过程和开发方法。

4. 加强实训, 提高学生的动手能力。

通过调查发现, 有高达90%的学生通过学期末的综合实训, 理解更掌握了在学习过程中曾经模糊的知识, 认为通过综合实训能将所学知识应用到未来的项目开发实践中。要达到预期的实训效果, 设计有效的实训项目是一个关键问题, 实训项目设计的优劣和项目描述清晰程度会直接影响实训效果。在学期末的项目综合实践教学过程中, 我们采用案例教学来设计实训项目, 学生不再对项目实训感到无所适从, 而是可以从已有的项目中去感知、升华、创新已有的项目, 学生可以尽其所能地应用所学知识、通过贯通各门课程知识来完成实训项目, 实训效果很好, 部分学生能有非常好的发挥, 为学生的下一步学习建立了信心。

5. 资源充分共享, 教师定期交流

教师的教学课件及有关资料充分共享。教师之间定期交流, 将好的教学成果和方法拿出来大家分享。这大大促进了教师水平的共同提高, 从而有效地保证本课程教学质量的提高。同时可设置网上辅导答疑平台, 促进教师与学生的交流, 及时发现不足。

6. 考核与评价

在软件开发项目实践课最后的综合实训中, 只有具有了严格的质量评估与审核体系, 才能使得实训更具有高效性。综合实训的评价分为两部分:一部分是指导教师的评价, 主要是过程评价, 占总成绩的40%;二是答辩演示评价, 主要是对作品的评价, 占总成绩的60%。

三、教学设计

1. 项目或任务的设计

由具有企业开发经验的指导教师根据软件工程师的职业要求设计一项要求学生完成的综合性项目, 制作出一个实训指导书, 在实训指导书中根据实训大纲的要求明确实训目的、实训内容、实训组织方式、参考指南和实训考核方式等重要内容, 学生在实训指导书的指导下具体实施实训。首先老师对实训项目提出业务需求, 讲解应用的环境、功能要求、技术要求以及实训组织方式, 然后组合出每个小组的成员, 选出项目小组长, 每个小组对功能模块分工分配, 确定每个人所承担的功能模块;各小组讨论需求分析, 每个人撰写模块的详细需求分析报告。

2. 展示实训项目的运行框架

通过展示实训案例的运行框架, 可以使学生对实训项目有一个总体的、感性的认识, 对实训项目的功能、性能有一个初步的了解, 对实训项目的操作过程和逻辑有一个初步的把握。通过展示实训项目的运行框架, 学生思考所展示项目存在的问题, 可以较快地切入项目, 进而可以改进、提升和优化项目的功能和性能, 为学生开发更优的项目奠定基础。

3. 组织学生分析案例, 在框架程序中预设问题, 提高学生的学习积极性

引入若干实际项目案例让学生分析, 让学生以项目小组为单位进行讨论和抢答, 可以提高学生的学习热情, 使得学生从被动学习变为主动学习, 调动课堂情绪。几乎每个案例分析的课堂都异常活跃, 学生也由以前习惯使然的谨慎观望, 到后来积极思考和讨论发言, 综合能力得到极大提高。

4. 项目或任务的组织实施

设计:老师以其中某个模块为例, 讲解所使用技术和技术线路;然后进行模块设计和数据库库表设计, 模块之间接口的定义, 数据库中测试数据的准备。

编码:老师对学生的模块设计和库表设计进行点评, 指出其中的问题和修改意见。在编码过程中, 老师要对学生进行指导, 帮助解决问题。学生之间应互相配合, 及时修正模块设计中的错误。

系统集成和测试:本情境的典型工作任务是小组模块集成和功能测试小组成员之间相互配合, 完成整个系统的集成;可以选择另一个小组开发的系统, 根据他们的需求分析报告, 撰写测试用例;最后, 进行功能测试并提交测试报告。

项目发布:部署项目、提交成果。学生将实训成果进行演示, 学生提交可以部署的包和按工程组织的源代码, 老师对各个项目小组的成果进行考评。

5. 监控实验过程, 培养学生研发能力

应用多媒体互动环境, 方便师生教与学电化教学——计算机辅助教学和演示手段, 是目前最受欢迎的, 最便于使用, 效果最理想的教学演示环境。

四、结束语

上一篇:五菱班下一篇:调强适形放射