时间:2023-03-13 11:03:54
导语:在数据库实训总结的撰写旅程中,学习并吸收他人佳作的精髓是一条宝贵的路径,好期刊汇集了九篇优秀范文,愿这些内容能够启发您的创作灵感,引领您探索更多的创作可能。
关键词:数据库应用;课程建设;课程体系
中图分类号:G642.0 文献标识码:A DoI: 10.3969/j.issn.1003-6970.2012.03.038
On the Database Application Course Construction
LIN Qin-Hua
(Sichuan Information Technical College, 628017)
【Abstract】Course construction proposition for database applications, the author mainly from three aspects were elaborated: Summary of the course curriculum system of higher vocational institutions; followed by a brief description of the courses offered since the opening of the hospital from, including the teaching content, teaching and support. Final summary of the course should be how to build.
【Key words】Database Application; Course Construction; Course System
1 《数据库应用》在高等职业院校课程体系中的作用
从大量的用人单位招聘软件开发人员、信息处理人员、数据维护人员等岗位信息来看,数据库应用是必须掌握的基本技能之一,并且要求熟练,特别是微软在中国占用相当大的市场,其SQL Server更是企业用人必须掌握的基本技能。因此《数据库应用》是高职院校计算机及其相近专业的必修课程。
在高等职业院校中,该课程一般放在大一下学期开设。在我院的软件技术专业课程体系中,其先修课程为《计算机应用基础》,后续课程为PHP程序设计、C#程序设计、Java程序设计等项目开发课程,起到承上启下的作用。该课程对培养学生数据、信息的收集、处理能力,数据库软件的应用能力,数据系统分析能力,数据库设计和开发能力,信息系统开发和维护能力等起着重要的作用。同时也为其他数据库软件(ORACLE等)快速学习和使用打下坚实的基础。
2 我院《数据库应用》开设情况
我院的前身是四川省电子工业学校,当时主要开设DOS平台下的数据库应用,包括有DBASE、FOXBASE、FOXPRO等。从2000年开始,在电子信息、计算机等各专业开设Windows平台下的数据库,有Visual FoxPro、Access等。2004年升高后,在第一届软件专业班开设了《SQL SERVER 2000应用》课程。从2008年开始,我院开始对数据库应用这门课程的教学模式进行改革,确立SQL SERVER 和Orcale为数据库主流教学。
2.1 课程主要内容
当前,我院开设的《数据库应用》课程总共64学时,4个学分。依据《数据库应用》课程标准,主要讲授以下内容:
本课程的教学内容以任务为导向,分解为7大能力,每个能力又分解成若干个任务,在教学过程中体现教、学、做合一。
2.2 教学保障
2.2.1 教学资源
该课程所需要的实训设备主要是机房和网络,而我院大部分的教室均为多媒体教室,还有个基础实训中心,其包括6个实训室(每个实训室48~55台微机不等),因此实训的条件已经达到要求。而且学院各部门的数据处理特别是教务系统、图书管理系统等提供了很好的教学实训环境。
2.2.2 师资队伍
强大的师资队伍是教学质量的重要保障条件。在我院,该课程归属于软件教研室。软件教研室共有12名教师(教授1人,副教授2人,讲师8人,助教1人),其中更有10人均为双师。同时,为了提高师资水平,我院定期组织师资培训学习班,让老师和校外及企业专家们互相交流、学习经验。
3 课程建设
提高《数据库应用》课程建设质量,其根本目的是要提高课程总体教学质量。即:教学保障需要提高;提高学生的自觉性。
3.1 提高教学保障条件
正所谓“巧妇难为无米之炊”,没有教学保障,课程建设就只能是一句空话。教学保障可从以下几方面进行提高:
(1)必备硬件条件。当前,我院的公共机房安装有SQL SERVER 2005,且能够实现广播教学,基本教学条件是具备的。但公共机房不开放,学生课后无法练习。因此,最好能够建立数据库专门实训室,且实现开放。
(2)软件条件。2008年,我院对《数据库应用》课程进行改革,建设了院级精品课程。在精品课程中,包括了该课程的教学内容、课后练习、实战项目等,资料已经比较齐全。但课程教学录像等还未上网,因此该课程还需要进一步的建设。
(3)师资队伍。有项目开发经验的教师,在讲课过程中更能激发和引导学生。让教师到软件公司锻炼后,再来上该门课程,更有利于教学质量的提高。
(4)加强考核。考核不是目的,但却是必须、有效的手段。谁上课、谁出题的这种方式,并不能很好的体现公平,也不利于教学质量的提高。教考分离则是解决该问题的有效途径。我院采用的是建立题库,期末考核时学生进入系统,随机抽题。但题库中的题量有点偏少,特别是项目部分。因此,还需要加强题库建设。
3.2 提高学生的自觉性
学生是学习的主体,老师只能起到引导的作用。目前,高职院校普遍存在一个问题:学生的学习习惯不好,依赖老师,学习的自觉性欠缺。要提高教学质量,最关键的还是要调动学生学习的积极性、主动性。
4 总结
《数据库应用》是一门专业基础课程。有了学院提供的丰富的硬件、软件条件,有了老师们的正确引导,学生发挥出各自自觉性,才能很好地提高学生的数据处理水平,达到学院、学生双赢的目的。
参考文献
[1] 李志中.Visual C# 2008数据库编程实训教程.清华大学出版社.2010
关键词:数据库原理;实训;教学改革;独立学院
中图分类号:G642 文献标识码:B
文章编号:1672-5913(2007)10-0051-03
1引言
山西大学商务学院作为一所独立学院,教学定位就是要培养应用型人才,使学生在毕业后,能尽早的适应工作岗位需要。但是在长期的教学工作和指导毕业设计的过程中,笔者发现了一些具有典型意义的现象。以往不少成绩优秀的学生完成四年本科学习之后,在最后的毕业设计中面对实际问题需要进行数据库系统框架的构建的时候,完全不知道从何处开始着手。抛开其华丽的前台界面,他们设计的后台数据库和数据表的结构,甚至可以用简单幼稚来形容。由此产生的系统隐性逻辑漏洞,使这些毕业设计作品毫无任何实际意义,完全成为应付毕业答辩的摆设。
究其原因,就是这些学生实践经验极其匮乏,动手能力差,无法将以前学过的数据库理论知识与实际开发相联系。在这样的背景下,我们开设了“数据库系统概论”的实训课程。该课程的教学以“数据库系统概论”为理论课程,SQL Server 2000软件作为实验环境,并编写了专门的实训指导书,全部实训内容围绕该课程的各个知识点展开,以实现知识、技能优化整合。
2实训教学的目标
作为一门与“数据库系统概论”相结合的实训课程,本课程的教学着重于训练。课程本身没有任何“考点”,所有内容均与《数据库系统概论》书中的内容同步。学生在实训的过程中应掌握的并非一些抽象的概念,而是去锻炼一系列具体的实践能力。实训课程着重在以下几个方面对学生的能力进行培养。
2.1学习兴趣的培养
经常有一些计算机专业的学生,在一个学期结束之后,完全不知道数据模型为何物、有何用途。如果学生对于专业根本不感兴趣,那他就不可能把这个专业学好。乌申斯基曾说过这样一名话:“没有兴趣的强制性学习,将会扼杀学生探求真理的欲望”。所以教师应特别注意教学方法的选择,以保持和提高学生的学习兴趣。
因此,只有当学生自觉主动地投入到学习中时,才能说明此课程的教学是成功的。
2.2独立解决问题的能力
长期应试教育的结果使得部分学生不能正确理解知识、能力的关系,尤其不能正确认识他们之间的区别。他们甚至认为,知识、能力是等同的,都可以通过考试分数来衡量,较高的考试分数似乎就意味着较强的能力,受到这种传统应试思想的影响,很多学生知识的积累与能力的培养完全依赖于课堂上老师的教学内容。
这种完全依赖与课堂教学的被动应试模式所造成的恶劣后果,在大四的毕业设计中全部暴露出来,学生除了课内的理论知识之外一片茫然。笔者在指导毕业设计的过程中,发现他们所开发系统往往缺乏整体的规划,早期数据库整体架构设计时考虑不周而导致的逻辑漏洞,在后期的调试阶段表现为系统功能上的重大缺陷。使系统陷入无休止的“修改―引发新问题―再修改”的恶性循环中,并最终导致整个系统的重构。因此,一定要学生自己去思考,将学生独立解题的思维当做教学的根本目的来着重培养,以积累其解决实际问题的能力。
2.3实践经验的积累
传统的延续多年的本科教学使得本科生可以学习到一大堆前人在实践中总结出来的抽象理论和概念。学生在课本上可以找到每一条理论定义的基本原理和推理过程,例如数据的抽象、完整性控制等。但就缺乏将这些从实践中得到的基本原理再重新应用到实际工作中的能力。究其原因,就是学生用计算机解决实际问题的能力不足和实践经验的匮乏。
学生的能力应不仅仅限于数据库的设计与构件,而需要具备数据库结构的优化和重构的能力。这就需要我们在强化理论教学的同时,应重视学生实际动手能力的培养,让学生亲手去做。只有培养好学生的动手能力,让学生参加一些简单数据库系统的构建,积累最基础的数据库架构设计经验与常识,才能使学生在后续的课程中充分理解数据库的设计与核心思想。
2.4自学能力的培养
笔者在与已毕业的往届学生的交流中,经常会听到他们埋怨学校教学内容“过时”,并未教给他们任何“实用”的东西。比如,当前最流行的图像处理软件、最新版本的开发语言等等。此类情况在考试成绩优秀的学生身上出现的尤其明显。在独立学院教学中,学生最需要掌握的不是课堂上死记硬背的知识点,而是自学、自行消化新知识的能力。计算机技术的发展日新月异,其中软件的升级和更新更是使人目不暇接,今天在大学课堂中学习的理论知识是没有多少能够在毕业之后直接应用在工作中的。
要解决这个矛盾,只有加强对学生自学能力的培养,使学生能够主动积极地学习,根据的需要,及时更新自己的知识结构,以适应社会的需要。
3教学内容的结构
3.1理论教学
在实训课程中,课堂教学与上机实验的课时比例是1/3。在有限的课堂教学中,主要是对学生们实验课过程中普遍出现的典型问题进行总结归纳,并结合理论教材内容联系实际进行分析。指导学生由理论过度到实践,将学生碰到的具体疑问及时解决。同时在实验课中表现优秀的学生可以有机会向大家演示自己的作品并介绍自己的实现算法,这样还可以锻炼学生的表达能力,展示其思维过程,重点培养其创造性思维能力。
3.2实验教学
(1) 实验进度安排
实训教学中设计了三个阶段:基本技能培养、综合模块设计能力的培养和系统设计能力的培养。第一阶段主要通过验证型实验,对理论教学中的原理、定义进行验证性的学习并予以掌握,进一步加深课堂教学的感性认识;第二阶段通过综合模块的设计,让学生根据题目要求,将前一阶段所学到的知识综合应用,在实验的过程中进行阶段性的汇总;第三阶段通过课程设计,培养学生正确的设计思想,分析和解决实际问题的能力和勇于探索的创新精神。
(2) 实验题目
受学时数的限制,为学生上机实验所提供的每一个实验题目都需要周密考虑、精心设计。力求在有限的课时中获取最佳的教学效果。为此我们编写了专门的实训指导书,所设计的实验题目遵循了以下几点:
1) 所有的题目都出自实际应用中遇到的问题:排除传统的技巧性解题,避免出现在理论教材的习题中常见的仅仅针对关键字和语法特点的题目,以免误导学生陷入学习误区,长时间在语法细节上转圈,单纯为完成习题而解题。
2) 在基本技能培养阶段的实验题目具备一定的针对性,所有题目的内容与理论教材中各个知识点相对应,围绕着“数据库系统概论”教学计划中的各个知识点进行实际训练,使学生能完整、准确、有条理的掌握课程的各个基本知识点。
3) 在综合模块设计阶段的实验题目具备一定的概括性,这时题目的数量有所减少,但每一道题目的内容同时涵盖上一个教学阶段中涉及到的多个知识点。让学生在完成实验的同时通过实践手段对自己近期所学的知识进行阶段性的总结。
4) 在系统设计阶段的题目即课程设计的题目,课程设计是学生在学完一门课后应用本课程知识和以前积累的知识所进行的综合性、开放性的训练。实验题目应具备高度的综合性,其题目涵盖到课程中的所有重要知识点;同时跨越课程界限。要求学生在完成设计的过程中除应用数据库课程的相关之外同时采用之前学习过的软件开发语言来设计系统前台操作界面。实现多门专业课程知识的综合应用,以培养学生工程意识和创新能力。
(3) 实验过程指导:
实验课组织形式是有意识地将理论教学内容和实验内容相结合,教师在理论课上应指导学生做好实验预习。实验课时首先由教师利用课件讲解实验内容及相关注意事项,然后学生自己动手操作,教师对学生只进行方向性指导,帮助学生理解题目和把握设计方向。学生在教师的指导下,根据给定的实验题目,自己设计实现方案、步骤。只要总体目标达到,教师可不作特别具体的要求,让学生多角度、多方位地思考,培养学生进行科学研究的能力,使他们探索性地解决所提出的问题。
3.3成绩评定
(1) 考核的方式与标准
实训课程的考核包括教学环节的考核和实验环节的考核,两者分别进行,两者之和为课程的总成绩。教学环节的考核与实验环节的考核同时完成。教学环节考核不通过者,实验环节的考核成绩作废。实验环节的考核包括报告和答辩两种形式。要求做的实验必须做,缺一次实验将不参加最终成绩的评定,任何一个实验题目不能完成也不参加最终成绩的评定。
(2) 成绩的构成
学生在校期间参加专业课程的学习时,最为关注的问题往往是如何能通过考试。而实训课程本身并不设置专门考试,该课程最终的成绩通过学生每一次上机实验课作业的得分(占40%)和平时到课率(占20%)课程设计(占40%)的得分计算而来。因此,只有平时重视理论联系实际,勤思考、勤动手的学生,期末才能获得好的成绩。这样不仅可以提高学生在上机实验课中的积极性,也减轻了学生考试的压力。
4结论
通过一个学期的实践,实训课程取得了良好的教学效果,学生们摆脱了死记硬背的学习方法,学习起来轻松、活跃和主动;课程设计的过程中,气氛活跃,互动性很好,有许多学生还利用了大量的休息时间,投入到课程设计中去。经过实践和探索,不仅提高了解决实际问题,而且还培养了学生的团队合作能力和创新精神。
学生从开始学习计算机起,就会不断遇到新的技术、新的软件,在教学中注重培养学生解决问题的能力和创造性,多提供运用知识的机会,教会学生怎样学习就显得特别重要。只要努力地去培养学生的动手能力、自学能力和解决问题的能力,让他们思考、实践、主动摸索,学生毕业后才能尽早的适应工作需要,成为应用型人才。
参考文献
[1] 萨师煊. 数据库系统概论[M]。 高等教育出版社,2000.
关键词:ZigBee;教学项目;温度传感系统
中图分类号:TP274 文献标识码:A 文章编号:1009-3044(2013)24-5485-02
1 项目简介
高职教学过程中,由于物联网专业的兴起,作为新一代网络的建设,国家投入了很多资源发展物联网产业。在教育层面,在国家的鼓励下,许多高校开设了物联网专业,本科以上则培养开发研究型人才,中高职则侧重于技能方面的培养。但是现行的ZigBee技术书籍理论和应用并不紧密,直接应用于中高职教学带来一定的困难。因此,通过开发具体项目的方法让学生从项目实训中获得相应知识并提高其动手实践能力。
本项目将使用Freescale的ZigBee芯片和温度传感器DS18B20作为硬件平台,采集的环境的温度数据保存至数据库。项目拓展一:上位机程序开发,将数据库中的采集信息实时通过电脑、智能手机平台中图形显示;项目拓展二:调温设备控制,通过环境温度的变化,当温度达到上限时,自动开启空调制冷,当温度达到下限时,自动开启空调取暖。
2 硬件设计
随着无线网络的发展,ZigBee已应用于工业生产、日常生活等各个环节。ZigBee技术已发展比较成熟,作为物联网的核心技术,众多硬件厂商加入ZigBee联盟。
Freescale最新推出一款低功耗、高集成、高性价比的ISM(工艺、科学和医疗)射频芯片— MC12311,这款芯片基于ZigBee技术,内部集成了一个UHF射频收发器和一个超低功耗的8位单片机(MCU) ,RF(射频)收发器工作频率包括315MHz,433MHz,868MHz和915MHz等频段,芯片内部是一个8为的单片机并内置RC振荡电路及丰富的接口,在硬件选型时MC12311应用在物联网应用项目(智能家居系统、安防系统、环境监测、智能农业等)是一个理想的选择。
DS18B20是一款高可用的温度传感器,其外观结构类似于三极管,三个引脚分别为GND,DQ,VDD。根据应用图1可知,GND接地,VDD接外部电源+5V,DQ接4.7K电阻上拉。
根据DS18B20逻辑结构图2可知,其内部带有64位的ROM单元和9字节的暂存器单元,程序可以读取暂存器相应字节获得16位的温度值,然后依据应用要求通过程序将温度数据有数字量换转为摄氏度。
在这个环节中我们只需要让学生了解MC12311射频芯片和温度传感器DS18B20的基本原理,理解项目的硬件详细设计,掌握如何获取温度值并将数据显示在数码管中即可。
3 软件设计
软件设计是设计一个采集系统,将数据保存在数据库中。计算机利用串口与硬件系统控制器相连,通过软件平台将采集的数据保存在数据库中,这样作为上层软件开发系统可以进行拓展项目。
根据学生在前期学习内容,软件平台使用C#进行开发,C#对串口编程和对数据库的操作比较方便,学生有这方面的开发基础,软件后期开发扩展性强。数据库采用Mysql,因为系统采集数据,在数据库中只需要记录时间、采集点、采集数据等信息,数据量较小,数据结构相对比较简单,所以采用轻量级数据库Mysql。
对于学生的拓展项目,可以使用C#程序设计软件将数据库中的数据通过图像实时展示,这样可以通过Android,Mac OS,Windows等系统平台实时显示。
4 教学资料开发
当温度传感系统项目开发完成后,将项目整理为ZigBee项目实训,项目开发过程的资料做为实验指导书,对学生进行为期两周的实训。
学生通过两周的实训项目的开发,深入理解物联网基础知识,还可以将所学习的知识转化为其基本技能,实训项目还设置了拓展项目,对已掌握基础知识的同学,在已开发的项目进行深入开发。学生通过项目实训,可以根据实际项目的需求选取合适的硬件和相应的开发软件,开发相应的物联网应用系统。
5 总结
本项目通过一个实际的温度传感系统项目开发,采用MC12311芯片组建了一个ZigBee网络,引入了温度传感器DS18B20,设计了硬件系统和软件系统,完成了环境感知系统项目开发。
在项目开发过程中对项目开发软、硬件资料的整理为项目化教学资料,对高职物联网相关专业学生进行为期2周的项目开发实训。
参考文献:
【关键词】教学模式;行动导向;五位一体
【中图分类号】G640
【文献标识码】A
【文章编号】1672—5158(2012)10-0034-01
一、课程定位
《SQL Server 2005数据库设计》是软件技术专业的一门核心课程。是软件技术专业培养方向中,JAVA程序员、NET程序员、数据库管理员、信息系统管理员、软件测试员等所必须掌握的数据库知识学习,重在培养学生对SQL Server2005数据库的操纵与设计的能力。开设于新生入学第一学期,后续课程有C#程序设计、ASENET程序设计、JAVA程序设计、J2EE程序设计、ORACLE数据库设计等。它对后续两线课程都起着重要的支撑作用。是一门处于重要地位的职业基础课程。
二、课程设计的整体思路
课程以企业用人为依据、以提升职业能力为目标,针对岗位群所需解决的工作任务为导向进行基于工作过程的课程开发。按照由简单到复杂分划分为7个学习情境,数据库基础、安装与配置、基本操作入门、数据库编程、数据库高级操作、前台语言访问后台数据库、数据库综合设计。每个学习情境又根据工作任务的独立和先后连贯性分解为子情境,每个学习情境或子情境下对应一个或多作实训任务。即全程共有18实训任务,3个综合实训任务。而且随着课程的深入将会出现新的项目载体如(图书馆管理系统),以培养学生对非教学过程中的数据库进行操作和设计的能力,直至数据库综合设计阶段,将会出现更多个实际项目载体,通过组建项目开发团队,要求学生通过分工配合,完成对项目的需求分析,系统功能的确定,并能根据功能和业务规则对所选项目的数据库进行分析与设计。培养学生的职业能力、职业意识,从而为实现与就业岗位“零距离”奠定良好的基础。
三、课程教学的组织与实施
1、教学模式的探索
在教学中尽可能本着突出职业导向,以学生为主体,突出能力训练为原则,在教学、教改中慢慢摸索、不断实验,总结出了该门课程的教学组织模式:基于行动导向的教、学、做、训、评合一的一体化教学模式。实现了课上有考核,课下有任务训练的新的高职教育评价要求。在实际运作中教学环节分为五大步骤:即预习与探究——做与导——查与训——考与评——巩固与拓展。
单元课程中,由于在网络机房授课,一人一机,借助凌波多媒体教学软件,不但可以充分实现在做中学,在学中教,增加了训(查与训)、评(考与评)环节,即实现了在做中训、在训中考,在考中评。不但实现了“教学做合一”,而且能达“教、学、做、训、评五位一体”。
2、教学方法和手段的运用
示范法、分组法、鼓励法、讨论法、对比法,典型案例法、设问法将贯穿整个课程单元教学之中。但是对于不同的学习情境的学习,为能够突出重点,突破难点,培养学生各方面能力可恰当选用行动导向的教学方法,除了学习情境1-6,采用了任务驱动、项目引领教学法外,学习情境7综合数据库设计主要采用情境模拟法。
在软件行业,一个项目的开发,是由一个软件开发团队共同配合完成的。在该门课最后一个情境一一数据库综合设计中模拟实际职业工作进行教学,在学生中构建多个项目开发团队,进行角色分配。如项目经理,项目助理,程序员(即对应组长、副组长,成员)组织教学和实施,在项目总监(教师)的调控、监督指导下,各项目组成员分工配合,共完成一个管理信息系统的需求分析任务,并进行数据库分析与设计工作。在这个过程中,不但让学生对课程的教学内容有一个全面的复习、巩固和提高,同时会培养学生进行数据库的分析与设计能力,初步体会软件开发工作中的最重要的一部分(需求分析所做的工作),也能让学生在学校的环境氛围中对自己未来的职业岗位有一个比较具体的、综合性的理解,有利于学生全面职业素质的提高。为了保障这一环节顺利实施,效果有保证,教改组制定了多项规章,并形成文件,如《项目小组划分原则》文件、《各岗位职责》文件、《项目验收与答辩要求》文件和一系列的过程监控文件和激励办法等,使学生在团结协作中收获了知识、积累了经验、提高了动手能力、增强了就业力。但学生模拟实际工作中也难免会暴露一些个人弱点,如胆小,协调能力较差、团队意识较弱等。但最终在老师和同学的帮助下能够意识到不足,并加以改正,最后同样收获了成功和喜悦。
四、实践教学效果
课程组的授课教师,经验丰富、技能娴熟、加之以德高身正,教学方法得当,深受学生爱戴和好评。在院、系举行的《sQLSever2005数据库设计》公开教学中曾多次得到学院督导处、教务处领导及系部老师的一致肯定,曾获“一创新、二特色、三突出”好课的评价;学生项目小组在此门课的学习后结合一门开发语言,开发设计了多项小型的应用管理系统软件,和网站。本课程的精品课程申报网站和网络课堂,就是项目小组同学第三学期的一项作品。课题组老师曾带领学生多次参加各类省级职业技能大赛荣获一、二等奖。
五、课程特色
1、教学模式有特色
《SQL Server 2005数据库设计》采用了基于行动导向的教学模式,且实现了教、学、做、训、评五位合一。形成师生之间的良性互动,增强了教学效果,学生活学活用的能力充分展示出来,培养了学生的创新能力。
2、教学方法有特色
课堂教学使用的教学方法中,任务驱动法、情境模拟法、项目引领法都是属于行动导向教学法。其中情境模拟法,轻松实现了企业工作环境与课堂教学环境的高度融合,实现与就业零对接。如今黑龙江农垦职业学院软件技术专业其他课程也正借鉴此教改成果,在教学中逐步推广和使用。
3、教学手段有特色
课程的教学课件均使用思维导图软件(Mind Manager)制作,结构清晰,动感性强。使学生的思维紧密跟随着教师,同又有思维的发散,开发锻炼了学生的右脑机能。在线考试系统和网络课堂的开发实现了教学同步,提高了效率,也为学生业余自学提供了保障。
关键词:软件专业;项目实训;项目教学;教学改革
中图分类号:G642 文献标识码:A 文章编号:1009-3044(2013)01-0116-03
随着全球信息化进程的加快,社会对计算机人才的需求与日俱增,特别是近几年我国软件外包产业对软件人才的需求出现很大缺口,企业急需应用能力强、有实践经验和一定学习创新能力的毕业生。然而,尽管每年计算机软件专业毕业生数量增长很快,由于知识脱节、缺乏动手能力和实践经验,真正满足企业需求的毕业生数量有限,因此,出现了毕业生就业难,中、高端企业招人难的局面。归根结底,高等院校针对计算机软件人才的培养方式不能适应职业需求,尤其在教学实践环节上,存在许多不足。我院针对传统实践教学环节的不足,结合现代企业项目管理模式,对软件专业进行了项目实训教学实践。
1 校内实践教学的现状
计算机软件的特点在于知识更新快,实现的技术手段更新快且多样化,软件人才需要不断更新知识,掌握最新的实用技术。为了适应职业需求,许多学校开设了主流软件技术课程,如.NET, Java (J2EE) , Oracle等,并针对课程开设了各种形式的课程实践以培养学生的综合能力。但现有的实践教学存在很多不足:
1)实践针对孤立知识点,缺乏知识点的关联性。大多数课程的实践教学安排在理论教学的2~4个学时之后,针对理论教学内容安排上机实践小作业,这种教学实践以知识点分割,不能将课程的整体内容系统的联系在一起,无法完成针对课程的综合能力训练。
2)实践针对具体课程,缺乏与前置课程、后续课程的关联性。这种实践教学往往放在理论课程结束后的1~2周,针对理论课程安排课程实践,实践项目中涵盖本课程的主要知识点,但却忽略了与相关课程的关联,且因为学生的专业知识有限,只能采用虚拟项目进行实践,往往与实际脱节,造成学生对所学知识理解不深,不能理解所学知识的实用价值,不利于调动学生的学习主动性。
3)实践缺乏系统化、工程化项目,难以达到项目工程化管理和开发的训练目的,不能培养团队合作意识。企业往往采取系统化、工程化的方式进行软件开发,在项目下划分子项目、模块、子模块等,开发人员分成小组,既完成本组的工作,也要与其他小组配合工作。实践教学中往往由于学时和教学资源的限制,不能用真实项目或仿真项目进行实际开发,无法真正给予学生实际项目实践经历。
4)实践缺乏真实或仿真的实训环境,使实践过程缺少指导与监督。许多高校的实践环节安排在计算机房进行,教师布置实践任务,学生上机完成实践内容,但项目式实训要求在项目进行的各环节有必要的项目跟踪和监督机制,一旦发现问题,需要小组会议,甚至需要项目会议进行讨论,一方面,计算机房无法提供讨论的场地,不能满足实践的需要,另一方面,计算机房无法对学生进行统一管理,不能有效的监督学生的出勤、工作进度等信息。
5)实践缺乏软件开发与管理的行业规范,无法将学生带入真实的项目中训练,造成校内实践教学与实际项目管理开发方式的脱节。
2 项目实训教学实践
针对校内实践教学存在的问题,我院面向软件专业学生,采取自愿报名的方式,开展了为期30天的项目实训教学实践。我院与南大富士通软件公司进行校企合作,选取计算机基础教学部的教学管理系统为实训项目,采用,C#语言,Oracle10数据库系统,windowXP环境进行开发,并引进南大富士通软件公司项目管理和开发规范指导项目。
2.1 实训环节
项目实训分7个环节:
1) 项目启动
项目启动安排在实训的第1天,为了让实训学生了解整个项目计划和目标,邀请了南大富士通的项目主管和技术主管介绍软件项目知识以及业内相关标准和规范。业内专家的经验对学生更有说服力,以此调动学生参与的积极性和主动性。启动报告之后,由专业教师带领学生构建系统开发平台,使学生尽快进入项目。
2) 理论基础训练
报名参加实训的学生基本具有必要的专业基础,包括程序开发语言,数据库基础,软件工程基础。但很多学生对先前所学的专业课程都有所生疏,因此在项目启动后的一周由专业教师带领学生巩固基础知识,并以小型管理信息系统的Demo为例,设计数据库,针对某一具体功能完成对数据库的增、删、改、查操作。一方面学生可以通过Demo熟悉相关的专业知识,如系统需求分析,功能模块划分,数据库设计规范,SQL语言的应用;另一方面,给没有.Net编程经验的学生一个熟悉的过程,以便很快适应实训项目开发。
3) 项目训练
项目训练包括几个阶段:需求分析、功能设计、系统详细设计、数据流分析、数据库设计、编码、测试、用户手册制作。全过程按照南大富士通软件公司的项目流程标准化运作。在项目需求阶段进行项目分组,按功能模块划分成6组,每组5人。在需求之后的每个阶段,都邀请南大富士通的专业人员做相关的知识介绍和操作流程,然后每组由2个教师带领完成本组的模块。期间每个阶段,小组都进行阶段小组会议评审,阶段工作完成后,开项目评审会议,及时对项目工作进行监督和调整。
4) 项目中期汇报与评价
在项目中期,即编码工作之前,由各项目小组进行项目汇报,包括进度情况、后期工作量预计,难点问题等,并由带队教师对各小组成员的工作进行评价。
5) 项目结题
项目完成后,由各小组对本组负责的模块进行总结,演示模块功能,并听取其他小组或教师的意见和建议,作为对小组的评价的参考;由富士通项目经理对本项目进行整体评价和总结,提出改进意见。
6) 实训调查与总结汇报
对参与实训的学生进行问卷调查,调查内容包括对项目内容、项目难度、项目形式的满意度调查,项目中学生在软件流程、业内规范、实现技术方面的收获,以及对项目的意见和建议。每组抽取一个学生代表进行总结汇报。
2.2 项目实训的保障条件
1) 项目实训的软件保障
采用南大富士通软件事业本部的过程规范(SWN)组织软件开发过程,在项目需求开发阶段完成RS(调查)、BD(基本设计)、FD(功能设计),在技术方案阶段完成SD(结构设计)、DD(详细设计)、MI1(编码)和MK(测试)。并采用富士通公司的过程改进框架支持系统SPIF统一管理数据,进行版本控制和数据分析,使所有开发的参与者能随时确认整体项目的进度情况。采用企业的标准化开发规范,学生能真正投入实际软件项目开发过程,在锻炼学生动手实践能力的同时利于培养职业意识和职业素养。
2) 项目实训的硬件保障
我院针对本次实训专门组建实训基地,模拟公司环境管理,采用专用服务器支持项目开发、采用指纹打卡设备记录出勤情况,为每位实训学生分配专用机器,提供专用会议室进行小组讨论,全程30天封闭管理,让学生身临其境感受职业氛围,全身心的投入实训学习。
3 实训效果评价
通过对实训的全程监督和实训调查,实训取得显著成效,体现在以下几方面:
1) 实训项目按时完成,全程文档、说明书齐备。通过30天的努力,实训团队完成了计算机基础部教学管理系统的开发和主要文档工作,虽然存在一些小瑕疵,经后期改进,现已投入使用。
2) 加深了学生对软件开发流程的理解。80%的学生在实训调查中表示“从未这样深刻的理解软件开发”,特别是需求开发阶段的重要性以及对后期开发工作的影响。本次实训将学生认为“软件开发就是编程”的观念彻底扭转,90%的学生认为此次实训非常贴近实际工作。75%的学生认为实训有助于理解标准化、系统化的开发方式,而并不是片面强调个人技术。
3) 培养了学生自主学习意识和学习能力。项目实训以学生为主体,教师为主导,通过项目任务分配使学生具有责任意识,在遇到困难或问题时,主动学习,向带队教师请教,极大的提高了学生的自主性和积极性,通过项目锻炼,63%的学生认为自己的学习能力得到较大提高。
4) 增强了学生的团队合作意识。通过分组开发、小组讨论,学生对团队合作有了深刻的认识,不仅需要团队分工,还要相互配合协调,听取意见,做出调整,才能使整个团队的开发工作顺利进行。实训结束后92%的学生愿意在此参加这种形式的实训。
4 结论
本文介绍了面向软件专业学生进行的一次项目实训实践,经过多方面努力,取得了较好的成效。下一阶段的任务将在本次实训的基础上总结经验,做进一步改进,扩大实训规模,最终将项目实训纳入专业培养体系。
参考文献:
[1] 李方圆,邱建雄.面向软件外包的项目实训教学探索[J]. 电脑知识与技术,2011,7(25):6302-6304.
[2] 冷淑君.以项目为中心构建新型教学模式的实践与思考[J].中国电化教育, 2008(258):76-79.
关键词:高职;SQL数据库技术;教学方法
中图分类号:TP3-4 文献标识码:A文章编号:1007-9599 (2011) 07-0000-02
Vocational "Database Application Technology" Teaching Methods Research and Practice
Xu Qingquan,Zhao Hongning
(Lanzhou Foreign Language Vocational College,Lanzhou730100,China)
Abstract:This article from the current structure of vocational college students in the actual situation of students,student characteristics,combining with SQL database technology course requirement.Explains how to carry out teaching for vocational students,focuses on SQL database technology curriculum reform and practice of teaching experience,courses for SQLServer features case method is proposed,task-driven approach and the combination of a variety of teaching methods,and detailed analysis was carried out with the example,for teaching vocational colleges has a positive significance.
Keywords:Vocational;SQL database technology;Teaching methods
一、前言
随着网络技术的不断深入,Access、Visual FoxPro等集中式数据库已不能适应发展的需要,微软公司推出的SQL Server以其丰富的功能及优越的性能占据了很大的市场份额。为此,众多学校都开始开设《SQL数据库应用技术》这一门重要的计算机专业课程,以适应社会发展的需求。然而,高职校院部分学生的文化基础更显薄弱。但社会对大学生的要求不会降低,即大学就要为社会培养合格人才。因此,作为高职院校的教师,就要不断地研究自己的学生,研究他们的基础,研究他们的特点,研究他们的认识规律,因材施教,不断改进自己的教学方法,以提高教学质量,为社会培养更多技能型合格人才。文中以本人在该课程中的教学活动作为实例,结合该课程的特点,探讨了教授该课程的多种教学方法手段,并在具体的教学应用中取得了良好的效果。
二、开展SQL数据库技术课程教学研究与实践
由于部分学生文化基础薄弱,尤其是数学功底差,逻辑思维能力不强,加上SQL数据库技术又是一门全新的课程,对于计算机应用技术、计算机教育等专业的学生尤其是文科学生来说,这是一门比较难学的课程。笔者认为,要学好SQL数据库技术,学好程序设计,首先要帮助学生明确学习程序设计的目的,端正学习态度,增强学习信心。要给学生讲清楚,当今社会,计算机已经非常普及,毕业后有了工作,在您的办公桌上可能就摆着一台电脑等您使用。仅仅会Word、Excel是不够的,许多问题是需要编写程序来解决,但并不是所有的程序都要靠计算机专业人才编写,如果您既会编写程序,又熟悉本领域的工作,那您的优势就是其他人无法替代的,在激烈的竞争中您就可以立于不败之地。所以,学习程序设计不是为了考试拿学分或者拿证书,考试只是一种手段,最终目的是学习程序设计的思想,掌握程序设计的方法,以便以后应用。
明确了学习目的,自然就有了学习的动力。为了要让基础好的学生能学的更好,让那些基础比较薄弱的学生也要有所收获,对大纲要求掌握的内容一定要让每个学生都掌握,具体在SQL数据库技术的教学过程中,我们是从以下几个方面的应用来体现教学方法的。
(一)采用案例教学法,明确数据的组织形式
采用案例教学法,可提高理论知识的教学效果。由于数据库应用技术课程的理论部分比较抽象难懂,学生在学习的过程中容易产生厌倦的心理。而案例教学法符合人们的认知规律,它注重学生的创新能力和解决实际问题能力的培养,它能循序渐进地引导学生掌握相应的知识和技能,可大大缩短教学情景与实际情境的差距。如果在理论课教学中穿插案例教学可以加强学生的感性理解和认识,达到好的效果。
开始学习SQL数据库技术,不少学生就被大量的概念和似懂非懂的专业名词搞的晕头转向,但有一个问题是如论如何要弄清楚的,这就是SQL数据库技术对数据的组织形式。具体地讲,就是数据库系统(DBS)---数据管理系统(DBMS)--数据库(DB)---表(TABLE)的概念及其之间的关系。它们贯穿整个课程,也是数据库设计的一个重要基础知识。这个问题似乎比较简单,其实不然。课程中,数据库系统的概念是这样定义的:所谓数据库是指文件、数据、文档和SQL对象相关数据的集合。这是一个纯数学式的定义,不仅如此,定义中用到的DBMS、DBS、计算机软硬件和用户对象的概念学生几乎还是一片空白,怎么让他们去理解由原本还不理解的概念构成的更新的概念呢?有必要用实例来说明这些概念。学生最熟悉的环境就是学校,就以学校为例。学校有许多数据要处理,如学生的学号、姓名、年龄、成绩等,教师的姓名、职称、所任课程等,具体的数据最终是被放在“表”中,为了提高表的操作效率,一个表中不宜设置太多的字段。例如,学生的数据就可以放在学生表、成绩表、选课表等几个表中。又可以将有关系的多个表放在同一个数据库中,所以,数据库就像是一个容器,虽然名字叫数据库,但它里面放的不仅是存放实际的数据的物理表。而且还存放许多管理操作使用数据的其他对象,都是以文件的形式存放在计算机中的,要进行学校管理,或者说要对学校的数据进行处理,还需要编写程序,创建如视图、存储过程等其他重要的数据库对象等等,这些也是以文件形式保存的,为了便于管理,将这些有关学校管理的文件、数据等放在一起,就构成了“学校管理数据库”。在SQL数据库技术中,项目的表现形式就是项目管理器。至于如何创建项目,学生可能会想象得比较复杂,以为需要做好多事情,但在SQL数据库技术中创建一个DB却出奇地简单,用菜单操作,只要输入一个数据库名称就万事大吉了。表就比较麻烦一些,但这是后续教学知识单元的事情,到时候学生会渐渐加深理解的。
(二)采用类比学习教学法,明确数据的两种管理方式
所谓类比教学法,是将课程中两件相类似的事物通过比较,在共性的基础上,找出差异点加以区别的教学方法。这种教学方法可以帮助学生避免重复记忆共性部分,只要记着差异即可。采用类比学习教学法,可增强学生学习的兴趣。对比学习教学法是教师依据学生的能力、所具备的知识等相关因素,将学生学习内容前后比较进行教学的一种方法。促进学生彼此主动积极地参与学习,从中既可以建构出自己对学习内容的系统知识,又能够完成整个小组的共同目标。这样,不仅增强了学生学习的兴趣,还提高了他们与人合作的能力。在此过程中,学生始终处于主体地位,教师是学生学习的组织者、服务者和导航者。其结果是学生既学到了知识,又培养了分析问题、解决问题的能力,更重要的是提高了学生的自学能力。
SQL数据库技术对数据的管理有两种方式:交互方式和程序命令方式。所谓交互方式就是人和计算机相互交流。交互方式又有两种途径:通过SQL数据库技术提供的菜单进行交互和命令窗口书写命令进行交互。菜单方式比较简单,容易掌握,一开始要鼓励学生多使用菜单进行操作,使用菜单操作,使学生开始感到SQL数据库技术并不是很难学,甚至会产生一种成就感,这有助于提高学生的学习积极性。然后再逐渐转向程序命令方式。学生常常会问,既然菜单交互方式简单,为什么还要命令方式?必须让学生清楚,菜单方式适用于比较简单的问题,同时菜单也不包括SQL数据库技术的全部功能,对于复杂点的问题就要用命令方式更多是用命令编写程序的方式来解决,所以要多用命令方式,以便熟悉命令,为编写程序做准备。
目前,高职计算机类课程程序设计学习涉及两种程序方式:结构化程序设计和面向对象程序设计。SQL数据库技术课程后续知识单元,程序设计基础就是涉及最基础的结构化程序设计的内容,顺序结构,分支结构和循环结构是结构化程序设计的精髓,是结构化程序设计的主要思想,必须好好掌握。学生在后续《java程序设计》等课程中将学习面向对象程序设计,而面向对象程序设计的基础离不开结构化程序设计的主要思想,只不过增加了更新的软件工程思想,即面向对象的思想。面向对象程序设计是当前程序设计的主流,在学校里学习程序设计的目的是进行程序设计的基本训练,应该把精力放在最基本、最常用的内容上,细节上不必死抠。即使将来不用SQL数据库技术而要用其它面向对象程序设计语言编写程序,学习新的面向对象程序设计语言的过程,您会感到犹如行云流水一般,因为哪一种面向对象程序设计语言,其编程思想都是一样的,无非是学习一种新的语法格式罢了。
(三)采用任务驱动教学法,组织好实训课
采用任务驱动教学法,可培养学生的自学能力。任务驱动教学法的基本过程可分为提出任务、分析任务、学生自主学习、交流讨论、解决问题及总结经验等几个阶段。其核心是在教师精心为教学设计的任务驱动下,学生通过各种学习形式完成任务。在此过程中,学生始终处于主体地位,教师是学生学习的组织者、服务者和导航者。学生既学到了知识,又提高了学生的自学能力。
SQL数据库技术是实践性非常强的课程,组织好实训课是学好这门课的一个重要环节。高职院校的学生有一个明显的特点是动手能力较强,大多数学生对实训课比较感兴趣,这是一个非常有利的因素,当然,也不排除一些学生有想玩游戏想上网的动机,所以,教师必须组织好实训课。我们是这样做的,每次实训课前就告诉学生下次实训的内容,让学生清楚在实训课上自己要完成什么任务?实现什么功能?要用什么命令?要用什么格式?对课本上的例题不能只照书本机械地进行操作,一定要明确每一条语句的作用,要在执行前预测结果,并且要能举一反三。
(四)采用循序渐进教学法,熟悉命令格式应用
采用循序渐进教学法,可培养学生的学习能力。循序渐进教学法的基本过程是由简单到复杂学习过程,循序渐进教学法可以巩固学生的基础知识,循序渐进教学法本身就要求能做到前后衔接,环环紧扣,如果有一个地方“短路”就无法再“渐进”。循序渐进的起点就是基础知识,学生只有层层夯实基础才能打通难题的命脉。其核心是教师教学过程由简单到复杂设计,学生通过层层夯实基础学习形式完成。在此过程中,学生始终处于主体地位,教师是学生学习的组织者、服务者和导航者。其结果是学生既学到了知识,又培养了分析问题、解决问题的能力,也提高了学生的学习能力。
SQL数据库技术的命令比较多,大多数命令都有可选项,让学生熟悉所有命令是困难的,也没有必要。重要的是让学生熟悉常用的命令,熟悉命令的基本格式,对于可选项,一定要让学生知道在什么情况下才需要可选项?需要哪个可选项?例如,select命令,仅格式就一二十行,差不多占满半页书。如果一开始就给学生讲格式,那学生不云里雾里才怪呢。我是这样分步教学的。
第一步,先让学生找出必写的保留字:select-from
并告诉学生这就是SQL数据库技术-select查询的基本格式,并通过例题让学生记住这个基本格式。重点让学生弄清楚两个问题,一是如何用这个基本格式查询不同的信息,或者说是从表的横向上要查询哪些字段,即select和from之间要写什么?如何写?字段的顺序怎样影响查询结果?二是表是在什么地方被“打开”的?即from后面写什么?
第二步,扩展为条件查询:select-from-where
基本格式查询结果是表中的全部记录,一般称为无条件查询,如果只要查询表中满足一定条件的某些记录,即从表的纵向上查询部分记录,就需要有where可选项,这就是条件查询。
第三步,如何使用可选项group by和order by
无条件查询和条件查询的结果都与原数据表中的次序相同,如果要查询结果按照某种条件进行分组就要使用可选项group by;如果要查询结果按照某些字段进行排序就要使用可选项order by。
第四步,让学生明确查询可以是基于单表的,也可以是基于多表的;对于多表查询要让学生理解多表之间是如何实现关联的?
在SQL数据库技术select查询语句教学过程中,通过采用循序渐进教学法,熟悉命令格式及应用,进一步加深对SQL数据库技术select的理解,同时也进一步巩固已经学过的有关命令。以上这些基本内容要求每个学生必须很好掌握,至于嵌套查询、自联结查询等就不一定要求所有学生都能很好掌握。
三、结束语
总之,根据对数据库应用技术课程教学目标、教学内容、教学方法等方面的研究,并通过多年的教学实践,笔者发现,如果在该课程的教学过程中,能针对不同的学习对象和环境,将案例教学法、对比学习教学法、任务驱动教学法等多种教学方法相结合,灵活加以应用,则可达到取长补短的目的,能收到理想的教学效果。同时,如能运用现代化的多媒体教学手段,则可进一步提高教学效率。如采用多媒体教学课件可帮助学生加深对知识的理解与消化,增大课堂信息量。再如建立网络教学环境则可为教师和学生提供交流的场所、个性化的自主学习空间,既解决了学生课后自学、查找资料、答疑等问题,又能以快捷的信息反馈机制和优质的教学服务促进教学发展。灵活使用多种教学方法适用于各类教育,但从当前实际情况来看,案例教学法、任务驱动教学法等对于高职院校更具有实际意义。
参考文献:
[1]丁宝康.数据库实用教程(第二版)[J].北京:清华大学出版社,2009
[2]史朝.对我国高等教育大众化的探讨[J].高等教育研究,2010
[3]陈建平.基于数据库教学选材与教学策略[J].肇庆学院学报,2009
数据库是计算机科学的一个重要分支,是数据管理的一门较新的技术,也是信息系统的核心和关键。SQL Server 数据库作为一个优秀的关系型数据库,在信息系统中有着广泛的应用,许多高校都选择SQL Server 数据库作为数据库技术课程的软件平台。如何有效地进行SQL Server 数据库教学,培养学生的实际应用能力,为学业和就业两个层面有效对接,是我们一线教师不断思考的问题。本人结合自己多年的高职SQL Server 数据库教学实践,对高职SQL Server 数据库教学作出一些思考。
1 激发学生学习SQL Server 数据库的热情
由于近年来高职院校的招生规模不断扩大,高职学生的入学门槛也不断降低,学生素质也相应下降。高职院校的教师首先面对的问题就是如何激发高职学生的学习热情,不能让枯燥无味的理论知识影响学生的激情。高职教师一定要引导学生认清当前的就业形势,让其知道当前社会对数据库管理员和数据库工程师的需求量比较大,让其明白深入掌握SQL Server 数据库的技术和取得“数据库工程师”等含金量较高的认证非常重要,有了这些就业就会变得非常容易,待遇也非常不错。以此来让学生了解学习SQL Server 数据库的重要性,从而有效激发其学习热情。
2 制订有效的人才培养方案
高职教育就是既能够满足社会对人才的需要,又能够满足学生个人职业的可持续性发展。教育部对高职教育的相关文件也指出要围绕“能力本位”对学生进行工学结合的培养模式。高职院校可以根据当前社会的发展形势,科学地制订人才培养方案和教学内容。在SQL Server 数据库教学中,教师可以先介绍数据库系统、数据库系统结构、数据模型等相关基本概念,让学生对SQL Server 数据库有一个整体上的认识;然后再向学生讲解数据库恢复技术、安全性、完整性及并发控制等数据库系统和数据控制的相关知识。最后教师要对数据库系统进行分解教学,对每一部分进行详细的讲解,这样可以帮助学生理清思路,全面完整地认识数据库系统。另外,对于教学中关系代数、关系演算、关系数据理论等理论性较强的内容,教师一定要善于运用通俗易懂的语言解释相关概念,借助一些生动形象的实例进行阐述。
3 灵活采用教学方法
根据高职学生的特点,项目教学法、任务驱动法是SQL Server 数据库教学中较为常用的教学方法。在采用项目教学法时,教师可以选取某个网站系统的数据库项目,进行分析和演示,学生对此项目进行探讨,然后正式实施项目,学生对项目成果进行演示并阐述,教师对其进行总结归纳,并对学生的作品进行评估和拓展。项目教学法是将知识点融入到项目训练中,在让学生掌握数据库相关设计的同时学习了对应的技能,项目教学法可以激发学生的学习兴趣,调动学生的学习积极性,发挥学生的学习主动性,从而培养学生学习能力和创新能力。项目教学中,教师根据项目的背景引入项目后,要让学生讨论和完成,教师要多巡视,对学生在实训中遇到问题要及时给予指导,在结束后,教师要对项目及时点评和总结。
任务驱动法是建构主义教学理论中的教学方法,强调通过任务或问题支持学生积极参与学习活动,使学生成为学习的主体,通过设计真实开放的学习环境,诱发学生进行问题的探索。SQL Server 数据库课程的实践性很强,对学生的理论知识要求和实际操作技术都有很高的要求,强调学生要有一定的自学能力和分析与解决问题的能力。在采用任务驱动进行SQL Server 数据库教学时,教师首先要根据学生的实际情况设计出有利于学生思考和探索的任务,使学生能够根据自己的内在需要去探究和学习;然后,教师将所设计的任务分解成若干个子任务,这部分子任务要隐含新的知识点,在学生实践中,教师要主动巡查,及时点拨,当学生完成相关任务后,教师要有针对性地选取一些典型作品进行展示,并由作品的制作者本人进行讲解,其他学生进行讨论交流,然后教师进行分析与评价。
摘 要:本文提出了一种全新的软件项目开发综合实训模式,该模式以实际项目贯穿始终,以软件工程思想贯穿全线,围绕学生完成一系列递进的典型工作任务来组织实训内容,覆盖不同课程串联不同知识。该模式是工作过程导向在软件技术实训教学上的运用,对当今高职院校进行课程改革具有重要的参考价值。
关键词:工作过程导向;学习情境;典型工作任务;项目开发;综合实训
中图分类号:G642 文献标识码:B
1 实训教学的现状和对策
我院的软件技术Java开发方向主干课程的设置包括:“Java程序设计”、“数据库基础及应用”、“JSP程序设计”、“UML基础与Rose建模”、“软件工程”、“软件测试”、“J2EE技术”。在每门课程的最后阶段都安排了课程实训,在此过程中,学生以个体或小组形式完成一个相对真实的工作任务。课程实训可以训练学生将该课程中不同的知识和技能串联起来,加以综合应用解决实际问题。由于各门课程相对独立,即使完成以上所有课程的课程实训,学生还是难以参与软件开发的全过程,难以获得对开发过程的整体把握。即使进入专业学习结束后的毕业设计阶段,由于毕业设计教学环节与大学生毕业就业成为近年来我国高校的一个非常突出的矛盾,尤其是高职高专院校的毕业生面临着严峻的就业形势,许多学生在最后一个学期几乎都在外出找工作,提前就业上岗。高职高专院校本来就学制短,毕业设计教学环节形同虚设,严重影响了正常毕业设计教学环节的实施和毕业生的水平。
在近几年的专业建设和课程改革中,我们越来越认识到培养学生的软件开发能力、团队合作能力、工程应用能力的重要性。为此,我们专门针对高年级学生设计和开发了工作过程导向的、具有专业总结和综合性质的项目开发综合实训,通过项目实践开阔学生视野,锻炼学生的团队意识和工程意识,全面培养学生的职业素养和工程应用能力。
2 基于工作过程的高职软件项目开发综合实训设计思路
基于工作过程的高职软件项目开发综合实训设计思路包含“两个贯穿一个分解一个覆盖”:即“工程项目贯穿”、“软件工程思想贯穿”、“典型工作任务分解”和“不同课程覆盖”。
2.1 工程项目贯穿
“工程项目贯穿”,即以一个工程项目全线贯穿于整个实训过程,学生从步入实训基地开始接受项目,到最后提交一个按照操作程序、操作规范完成的,满足一定质量标准的开发成果。在确定项目时,应该把握好以下两个原则:
第一,实训项目应具有一定的应用价值和实际意义。实训项目最好以实际项目为背景,或者直接就是从实际项目提炼而来,与企业实际生产过程或现实商业经营活动有直接的关系。这样的项目能培养学生的实战经验,极大地激发学生的积极性。但是要注意,业务流程太专业太复杂的项目不适于拿来作为全程的实训项目,因为这类项目在前期的业务分析和理解上将耗费太多的时间和精力,不利于后续工作的展开。
第二,要根据教学内容和专业培养目标确定项目内容与项目难度。高职软件技术Java开发方向旨在为社会输送合格的熟练的Java程序员,而J2EE编程是Java程序员追求的最高目标,所以我们确定的实训项目具有总结性和综合性,并具有一定的挑战性。经过前导课程“J2EE技术”的学习和实践,学生已经具备了用Servlet+JSP+JaveBean (EJB)或struts框架来实现MVC架构的能力,在实训项目中我们鼓励学生整合Struts、Hibernate和Spring三个框架,综合运用J2EE的组件、框架开发技术,开发一个满足J2EE架构的多层的企业应用。
2.2 软件工程思想贯穿
在传统的“软件工程”教学中,软件工程是一门独立的理论性较强的课程,学生们缺乏实战经验,难以在参与软件开发的全过程中获得感性体会,理解软件工程的精髓。
为了培养软件工程意识,使工程化思想成为学生从事软件开发工作的行动指南,我们将软件工程思想贯穿于整个综合实训的始终。综合实训以成熟的软件开发模型为基础,以具有一定应用价值和实际意义的项目为背景,学生以开发团队的形式,按照软件开发流程,在规定的时间点完成指定的任务,经历需求分析、建模、设计、编码、测试、部署的软件工程全过程。综合实训模拟企业运作机制,模拟企业中实际存在的项目压力和工作压力,模拟真实企业开发环境,以项目的进度检查作为监控,以项目开发成果作为最后的考评。学生在实训过程中,都有机会承担项目经理、设计人员、编码人员、测试人员等全部或部分岗位角色的职责,学生的综合能力得到极大的提高。
2.3 典型工作任务分解
典型工作任务是“基于工作过程”实训课程开发的精髓。所谓“任务”就是要求学生做一件事,重要的是,这件事是按实际工作的要求来操作的,包括操作程序、操作规范、质量标准等。学生在完成各项“任务”后,会呈现出不同的“结果”。这个结果是非标准答案的,即每个学生或每个团队的作品可以不一样,对作品的评价不是简单的对与错,而很可能是好与差。而“典型工作任务”能呈现出职业的典型的工作内容和形式,在整个企业的工作大环境里具有重要的功能和意义。
在工作过程导向设计原则的指导下,结合软件行业的岗位需求,通过分析完成软件开发需要完成哪些典型工作任务,我们设计了基于工作过程的实训流程。该流程以一个软件项目贯穿始终,将整个软件开发过程分解为一系列递进的实训情境,在每个实训情境要求学生完成一个独立的工作任务,完成所有的实训情境就完成了整个软件项目的开发。
基于工作过程的项目开发综合实训流程如图1所示,整个实训由递进的6个实训情境构成(水平方向),它们对应的工作任务依次为“需求分析”、“搭建开发环境”、“设计”、“编码”、“集成和测试”、“项目部署”。垂直方向则反映了为完成某项工作任务所采取的步骤和要提交的工作成果。
图1 基于工作过程的软件项目开发综合实训流程
2.4 不同课程覆盖
按照工作过程导向设计原则,将整个软件开发过程分解为递进的6个实训情境,每个实训情境覆盖了不同的课程内容。表1列出了每个实训情境对七门主干课程的覆盖情况,可以看到,它彻底地克服了传统的课程体系只重视每门课程自身的实验,缺乏覆盖不同课程,串联不同知识和技能的综合性实验的重大缺陷,它使得相对独立的各门课程整合在一起,使整个实训成为一个有机的整体。这样的训练能使学生将以前的所学融会贯通,能有效地培养学生的综合应用能力和创新能力。
3 基于工作过程的高职软件项目开发综合实训的实施
3.1 实训项目举例
依照确定项目的两个原则,我们把为我院开发“教学资源管理系统”定为综合实训的第一个项目,要求运用Struts、Hibernate和Spring三个框架,开发一个满足J2EE架构的多层的企业应用。
该项目的业务需求是“主要完成对多媒体课件和各种多媒体素材资源的管理,方便对各种电子教学资源进行分类维护,包括浏览,查询,下载;为教师提供一个方便快捷的课件渠道,把制作的课件或搜集的素材上载到该系统,实现资源共享。本系统分三级用户:系统管理员,教师用户、普通用户(包括学生);包括以下四个方面的功能:普通用户资源浏览和下载;普通用户资源检索;教师用户资源上载;管理员系统维护”。
项目开始时,教师只给出较为粗略的业务需求,给学生留有足够的发挥空间。因为“教学资源管理系统”就是为学生和教师服务,非常贴近学生的学习生活,理解起来没有任何障碍。至于界面做到什么样子,功能做到何种程度,留给学生在撰写详细的需求分析报告时去确定,教师需要把关的是工作量和技术难度,不能太简单而达不到实训的效果,也不能太难无法实现而挫伤学生的积极性。
3.2 实训组织方式
实训采用4个人一组,每人负责一个方面的功能开发,每组设一个项目组长,项目组长除负责一个方面的功能模块开发外,还负责各模块集成。由项目组共同提交一份需求分析报告。个人一旦选择某方面的功能开发,就要全权负责该部分的设计、编码和单元测试。此外,在测试情境中,开发小组进行角色转换,变成测试小组,选择别的小组开发的软件进行测试。
3.3 实训进度安排和任务要求
本综合实训历时一个月,共72学时(4周*18课时),进度安排如表2所示,各院校可根据自己的情况作适当调整或根据需要增加学时。下面是每个情境的具体步骤、任务要求的详细描述。
3.3.1 情境1:需求分析
本情境的典型工作任务是撰写详细的需求分析报告。
(1) 首先老师对实训项目提出业务需求,讲解应用的环境、功能要求、技术要求以及实训组织方式。
(2) 实训小组组成,组合出每个小组的成员,选出项目小组长。
(3) 每个小组对功能模块分工分配,确定每个人所承担的功能模块。
(4) 各小组讨论需求分析,每个人撰写模块的详细需求分析报告。
本情境结束后,要完成以下任务:
老师要汇总出小组划分、成员分工;
项目小组提交一份详细的需求分析报告。
3.3.2 情境2:搭建开发环境
本情境的典型工作任务是搭建J2EE开发环境。我们选择的开发环境为:
操作系统:Windows NT /Windows XP
Java 平台:JDK1.6 以上
服务器:JBOSS 4.0.4
数据库服务器:MySQL 5.0
开发平台:MyEclipse 5.5
建模工具: Rational Rose
单元测试:Junit
功能测试:手工测试
(1) 首先老师对开发环境进行讲解;
(2) 学生在自己的机器上完成以下任务:安装JDK环境、安装JBOSS服务器、安装MySQL服务器、安装MyEclipse集成开发工具、安装Rational Rose建模工具、安装Junit。
本情境结束后,要完成以下任务:
1) 学生在自己的机器上完成环境的搭建和测试。
3.3.3 情境3:设计
本情境的典型工作任务是撰写详细设计文档。
(1) 老师对需求分析进行点评,指出其中的问题和修改意见。
(2) 老师以其中某个模块为例,讲解所使用技术和技术线路。
(3) 进行模块设计和数据库库表设计,模块之间接口的定义,数据库中测试数据的准备。
本情境结束后,学生要完成的任务:
对需求分析报告进行修改和完善。
撰写详细设计文档,包括类图和时序图。
详细设计包括以下组件的设计:模型实现类和DAO组件;业务逻辑组件;MVC层组件;表现层组件
撰写数据库表的设计以及测试数据,数据库表设计包括库表名称、字段定义,测试数据以表格的方式形成。
3.3.4 情境4:编码
本情境的典型工作任务是依照设计进行代码编写,以及单元测试。
老师对学生的模块设计和库表设计进行点评,指出其中的问题和修改意见。
在编码过程中,老师要对学生进行指导,帮助解决问题。学生之间应互相配合,及时修正模块设计中的错误。
本情境学生要完成的任务包括:
修订详细模块设计和数据库库表设计;
用测试数据填充数据库;
制定编码进度;
模型实现类和DAO组件的编码和测试;
业务逻辑组件的编码和测试;
MVC层组件的编码和测试;
表现层组件的编码和测试。
3.3.5 情境5:系统集成和测试
本情境的典型工作任务是小组模块集成和功能测试。
(1) 小组成员之间相互配合,完成整个系统的集成。
(2) 选择另一个小组开发的系统,根据他们的需求分析报告,撰写测试用例。
(3) 进行功能测试并提交测试报告。
本情境完成,学生要完成以下任务:
将小组内各成员开发的模块进行系统集成;
选择另一个小组开发的系统撰写测试用例,进行功能测试,并提交测试报告。
3.3.6 情境6:项目
本情境的典型工作任务是部署项目、提交成果。
(1) 学生将实训成果进行演示
(2) 学生提交可以部署的包和按工程组织的源代码
(3) 老师对各个项目小组的成果进行考评。
(4) 老师对整个实训进行点评。
本情境完成,学生要提交以下程序和文档:
源代码和可以部署的包
实训报告
4 新的综合实训模式对教师提出了更高的要求
基于工作过程的高职项目开发综合实训,覆盖面广,综合性和工程实践性强,要求按照软件工程的要求,指导学生进行软件项目开发实训,因而对指导教师的教学素养、主导作用、工程实践经历提出了更高的要求。为此我们组建了一支以具有工程实践经验的核心教师为首,由各科任课教师组成的教师团队。进入实训项目的教师必须首先对项目本身有足够的认识和理解,并且亲自做过,才能在其参与指导的实训情境中指导学生完成该情境所指定的典型工作任务。而核心教师经历过企业软件开发项目的全过程,熟悉软件开发项目的管理过程,熟悉软件开发程序的设计规范、调试过程、软件质量测试方法,以“项目经理”的身份指导学生进行软件开发实训,其关键作用是不可置疑的。
同时,新的综合实训模式必须有新的教学观念、讲授模式和管理模式。在实训过程中绝对不能再是“教师讲授学生听”,而是以学生为主体,以任务为驱动,教师重点放在讲解每个任务的需求,完成该任务所要采用的知识、方法、工具和步骤,然后由学生自己进行分析、建立问题模型,自己掌握开发的进程。教师则更象一位项目经理,控制项目进度,评定软件质量。
5 结束语
基于工作过程的高职项目开发综合实训,是一种全新的软件项目开发综合实训模式。该模式以工程项目贯穿始终,以软件工程思想贯穿全线,围绕学生完成一系列递进的典型工作任务来组织实训内容,覆盖不同课程串联不同知识。该模式是工作过程导向在软件技术实训教学上的运用,对当今高职院校进行课程改革具有重要的参考价值,同时对指导教师提出了更高的要求。
参考文献
一、现状
教学现状:近年来,随着高职高专学生基础知识掌握程度的普遍下降,出现了计算机专业对计算机理论基础上的教学出现了弱化的现象,如《数据库原理》这门课中有关数据设计中规范化理论内容的教学,因为该部分要求同学们有一定的理论知识,许多高职高专学校数据库的教学大纲,很少出现这部分内容。社会现状:目前,我国主要是以中小企业为主,甚至还有不少的微型私人企业,计算机的应用水平还比较低,主要停留在上网收集信息的阶段,管理系统有待进一步的开发,现在管理系统的设计都离不开数据库的设计,要设计一个好的数据库,必须掌握一定的数据库设计理论知识———规范化理论。
二、规范化理论学习的必要性
在任何企事业单位,管理是一项重要的内容,如何提高管理水平,一个很重要的手段是通过计算机的应用。计算机应用的一个很重要的方面是管理信息系统的开发,而数据库的设计是管理信息系统开发的基础,数据库规范化理论是指导进行数据库设计的理论基础,因此,要求学生对规范化的理论知识一定要掌握、理解。只有对规范化知识的掌握和理解,才能保证学生设计的数据一致性、完整性。笔者曾经历过一些已经走上工作岗位的同学数据表的设计,他们是将所有的字段都存在一个表中,这种情况的出现,我们认为与同学们对数据库设计的规范化理论掌握程度有一定的关系。高职高专的培养目标是培养一个具有一定的动手能力的人,学生如何提高动手能力,掌握一定的理论知识是基础,因此,在高职高专的教学中,存在着理论与实际应用的矛盾,但必要的理论知识的掌握是必需的。
三、教学方法
数据库规范化理论是数据库原理教学的难点,是设计合理的数据库的基础,因此,在数据库理论知识的教学过程中,一定要学生加强对相关知识的掌握,采用循序渐进的方法进行教学,从教学和实践环节来看,注意以下几个方面的问题可以加强对该知识点的掌握。
(一)理解基本概念。在对数据库规范化理论的掌握过程中,首先是对一些概念的掌握。在规范化理论中,除了最基础的关系、元组、列(属性)外,其他的相关概念有:候选码、主属性、非主属性、函数依赖、完全依赖、部分依赖、传递依赖、多值依赖、1NF、2NF、3NF、BCNF。因对4NF范式的理解难度有点大,在规范化教学中,可以不要求学生掌握。另外,根据笔者多年的实践,对于一般的管理系统,只要建立一个能达到BCNF范式的关系就可以了。对这些概念的理解要一步步循序渐进的进行。
(二)进行实例分析。范式的教学内容比较原理化,也比较枯燥,因此在教学过程中,为使学生更好地实现对概念的理解,举例说明,营造一定的场景是关键,要尽量让课堂气氛活跃,让学生开动脑筋,积极参与。举例说明要使学生对每个概念都要理解掌握,这时互动很重要,现在的高职高专学生都缺乏自学的主动性,因此,必须围绕教材,对每个概念相关的实例充分说明。
(三)实例综合设计。对任何知识的掌握,如果没有一个完整的实例演示数据库的结构,就会使同学失去整体感,而在具体设计时,就会出现这样那样的错误,因此,完整的实例演示是必不可少的。实例可以选同学们比较熟悉的系统,给定一些功能,提出一些要求,和同学们一起分析系统数据库的创建,以加快同学们对概念的理解,如:在综合设计过程中,首先要和同学们一起分析实例的具体功能;实例中相关的实体;实体的属性组成;实体间的相互关系;根据前面的分析,建立一个符合与实际应用,让设计者和用户都可以理解的数据库系统,设计出满足规范化理论的数据库。使设计出的数据库冗余度最小,尽可能地避免更新异常、插入异常和删除异常。
(四)结合专业实训。对设计理念的掌握要结合数据库原理与应用的专业实训,分成小组,对小组成员设计的数据库进行审核和提问,使同学们对规范化理论有更进一步的掌握。当然,对数据库知识的理解和掌握,也要求同学们要博览群书,将理论知识和实际操作结合起来。另外,要多多参加实际的设计,有专家对同学们的设计成果进行点评,这样,有利于同学们对规范化知识的掌握,从而设计出更好的数据库。