项目驱动教学法在ASP.NET课程中的实践
2015-06-24张栋冰
张栋冰
摘要:ASP.NET课程是计算机软件工程专业高年级开设的综合性开发课程,课程的突出特点是实践性强。在此课程中引入项目驱动教学法,可以增强学生们的学习积极性。通过把项目任务细分为分散知识点,可以帮助学生更快掌握编程技巧,提高学习能力。项目驱动教学法适合在计算机操作课程ASP.NET中使用。
关键词:项目驱动;教学方法;ASP.NET;分组合作学习
中图分类号:G64 文献标识码:A 文章编号:1009-3044(2015)11-0146-02
The Practice of Project-driven Teaching Method in ASP.NET Course
ZHANG Dong-bing
(School of Computer Science and Technology, Huaibei Normal University, Huaibei 235000, China)
Abstract: The course of ASP.NET is a comprehensive developing course in senior class of Computer software engineering specialty. Strong practicing is its characteristics. Project-driven teaching method is introduced into this course to enhance the initiative for student to study. Project is divided into several knowledge unit which helps student quickly mastering programming skills and improving study skills. This method is suitable for Computer operation course of ASP.NET.
Key words: Project-driven; Teaching method; ASP.NET; Group cooperative learning
1 项目驱动教学法
项目驱动教学法是指通过实施一个完整的项目工作而进行的教学活动。此模式采取小组讨论、协作学习的方式,使学生的学习过程变成一个探究问题、解决问题的过程,特别适合于计算机软件设计课程的教学。哈佛大学工商管理学院在其软件设计课程也曾实施这一课堂教学模式。
项目驱动教学模式是把完整的教学过程进行分解,成为一个个小型的教学活动和学生工作项目,从而把教学的特点、工作环境、所使用的工具与设备、活动项目及其内容、操作标准和从业要求等要素准确而又较为详细地描述出来。基本思路是:提出一个问题,引导学生进行开发,在教学过程中,以完成所提出的完整的开发项目为目的,将设计项目贯穿整个教学过程的始终,以项目的各个模块的构建过程为线索,有条理、有步骤的安排教学活动。利用项目驱动教学法,学生的身份就从一个学习者变成了一个工作者,考虑问题的思路也从我要跟着老师做什么变成了我自己该怎么做,从而提高了学生学习主动性和积极性,有利于克服讲授型教学法的弊端,使学生从整体上领会课程的思想,在实际项目开发中,提高分析问题、解决问题的能力,为毕业后的IT行业工作打下坚实的基础。
2 课程介绍
ASP.NET课程是语言类的学习课程,一般在大学三年级以后开设,以扩大学生们的专业知识面,并为学生拓宽就业口径。在教学大纲中要求,通过本课程的学习,学生应能熟练地掌握C#语言基本知识,熟悉.NET开发环境,掌握服务器控件、ASP.NET常用对象、ADO.NET数据库编程、ADO.NET数据库高级操作、ASP.NET Web服务、配置ASP.NET应用程序等相关技术,学会基于Web的动态网络开发。
因为本课程是一门实践性较强的课程,在课时分配上以上机实验为主,结合课堂理论讲授为辅。所以课堂教学以项目驱动式教学方法为主,结合分层教学法使用,使学生达到熟练掌握课程内容的目的。课后作业是课堂知识的延伸,分为必须完成的作业和建议完成的作业。期末考试成绩由平时成绩和期末答辩成绩组合而成,同时突出平时成绩所占比重。
3 项目驱动教学法在ASP.NET课程中的具体实践
教学过程结合学习过的其他前期课程,对大学期间的课程内容进行整合,包括数据结构、软件工程、软件测试、数据库原理、SQL SERVER、计算机网络等课程,将这些课程的知识渗透到教学过程中,使学生在分工合作的设计过程中,总结并应用学过的课程。
3.1 提出任务,选取项目
在课程开始阶段提出整体任务,要求学生在一个学期的学习过程中,使用每个阶段学习到的知识,设计出一个有一定规模的系统,在课程结束时进行考核。
选取项目时,教师要注意项目的规模不能太大也不能太小。太小的话,项目中所涉及到的知识点比较单一,学生不能全面的掌握所学技术;但是,项目也不可太大,以免使学生产生畏难情绪,影响学习热情。因为学生管理系统是进行程序开发时的一个基本的、简单的、小型的信息管理系统,所以本课程在学期开始时,就给学生们展示出一个设计好的学生信息管理系统,使学生们看到设计的最终效果,激发兴趣,并起到抛砖引玉的作用。在一个学期的学习过程中,围绕这一系统设计的各个方面,将课程内容划分为若干单元,基本覆盖到课本及教学大纲所要求的所有知识点,从而使学生带着学习任务来进行一个学期的学习,并在学期结束时交出完整的系统。
3.2 分组合作,分层教学
因为在实际软件开发中,一个优秀的软件系统不可能是一个人独立完成的,而是由项目组的成员分工合作,大家共同完成。所以,对于学生们来说,最好在学校学习期间能够有小组合作的经历,便于和工作环境进行对接。
在教学过程中,首先请学生们自行组成3-5人的学习小组。小组成员的质量与教学效果的好坏有直接关系。所以,在分组时,应考虑动手能力强的同学跟动手能力弱的同学的搭配,考虑组内同学们的设计能力分布的不同,考虑男女同学在不同能力上的不同,从而由学生自由结合形成小组,然后由教师再进行适当调整,使整个小组的成员结构趋于合理。
同时,因为学生接受能力学习能力的差异,在教学过程中会出现“饥饱不均”的现象。也就是说,有些学习能力动手能力强的同学,可能会对于老师课堂上讲的内容很快就领会、掌握,并动手操作成功;但是有些同学可能即便加上课余时间也捣鼓不出一道程序。这样,在具体的课堂实施上,任课教师就要仔细观察并清楚了解学生的学习情况,并有针对性的为不同的学生提出不同的要求。这就要求教师在课下做大量的准备工作,以便在课堂上游刃有余的根据实际情况,为不同程度的同学,提出不同的设计要求,从而鼓励那些动手能力弱的同学不畏困难,完成设计;同时引导能力强的同学进行创新,做更多的探索,激发他们更大的学习热情。
3.3 具体实施
在进行具体的项目设计时,首先要求学生回顾软件工程课程中学过的软件开发的几种开发模型,分析在本设计中可以使用什么模型进行设计,以此复习巩固并应用软件工程课程中学到的知识。然后,按照需求分析、软件设计、编码、测试的步骤,逐步分析每个过程中所用的知识及要考虑的要点。然后,在具体设计过程中,引入面向对象设计方法进行软件设计。设计过程中涉及到算法时,要求学生能够利用数据结构与算法课程中学过的知识,完成算法设计。在设计数据库时,要求学生必须熟练掌握并使用在数据库原理及SQL SERVER操作与实践课程中学到的知识,为今后的工作拓宽知识面。
由于学习过程及项目设计是分组完成的,小组成员之间有相对固定的分工。这就要求老师要及时提醒并了解学生对知识点的掌握情况。小组中的成员要经常在组长、系统设计、程序开发、数据库设计、测试人员这几个角色之间进行转换,了解其他同学所做模块的内容,保证每个同学都掌握了课堂知识点。所以,在课堂上,老师不仅是知识的传授者,项目工作的引导者,同时还是一个敏锐的观察者,有力的监督者,合适的调控者,及时的对学生的知识点掌握情况和分组情况作出相应对策。
3.4 答辩考核
传统的考核方式主要是笔试,此方式对于理论性课程的重要性和合理性毋庸置疑。但是,对于操行性较强的课程来说,则应该采取与课程特点相对应的考核方法。所以,在ASP.NET程序设计课程的考核方法中,我们摒弃了传统笔试的方式,而是采取平时成绩+期中测试+期末答辩的形式。平时成绩根据学生的出勤情况及作业完成情况进行评定,期中测试通过期中上交的程序打出成绩,然后重点要求学生在期末完成完整设计后,在班级中以小组为单位公开进行答辩。
期末答辩的内容是小组所设计的项目,答辩过程跟计算机专业毕业答辩的过程近似。首先要求组长对小组分工及项目功能做整体说明,然后由小组内的每个成员讲述自己所做的工作,最后由老师和同学向小组任意一位成员提问。如果项目不仅实现了预期功能,而且设计精美,功能合理,使用了新技术,每一位小组成员都能够清楚表述并回答提问,可以考虑给予满分鼓励。尽管学生的设计还有待改进的地方,但是对于没有走出校门的学生,能够协调沟通、合理分工、自主学习、综合运用各科知识完成一个相当不错的软件系统,还是要给予一定的鼓励的。
4 总结
项目驱动式教学方法适合于在计算机操作实践课程中使用。它突破了传统的教学模式,以完整项目为驱动,任务细分为一个个的知识点,使学生在日积月累的学习中逐步积累编程技能,直到最终完成整个程序。在此过程中,学生的学习更有目的性,能够更加有针对性的学习课本和课外知识,更加渴望能够顺利完成任务,得到一个满意的系统,所以学生创造性的主动性被极大的激发出来,从而走上良性循环的编程道路。学生们在学期结束后写出的课程总结中,都表达出了一个共同的思想:项目式的学习过程调动了我们学习的主动积极性,小组分工合作提高了我们与人沟通的能力,ASP.NET课程的学习增强了我们的计算机技能,老师的教导让我们受益匪浅!从用人单位反馈回来的信息,我们的毕业生在工作中表现出很好的自学能力,善于与同事沟通,编程能力很强,绝大多数学生能够胜任公司的大多数工作岗位,并有少数同学能够在很短时间内崭露头角,成为公司不可多得的优秀人才!
参考文献:
[1] 蒋丽峰. 应用型本科网络程序设计课程教学改革研究[J]. 福建工程学院学报,2008(5).
[2] 李晓翠,陈敏,叶晓舟.地方本科院校计算机专业项目驱动教学模式的研究[J].中国电力教育,2014(4).
[3] 刘桂阳,王娜,齐瑛,刘金明,马铁民.基于项目驱动的开放式教学模式探索与实践[J].牡丹江师范学院学报(自然科学版),2015(2).
[4] 陶玲妹,蒋翔.“ASP.NET程序设计”项目教学设计[J].软件导刊,2012(10).
[5] 彭耶萍.软件专业案例和项目驱动教学模式研究[J].考试周刊,2014(3).