基于工作过程的“Java系统开发”课程开发与研究
李敬伟 孙波
摘要:如何仗课程教学与职业需求相适应,是当前我国高等职业教育改革的重点之一。文章主要从课程目标、课程设计思路、课程组织、教学方法、课程考核几个方面对“Java系统开发”课程进行了一些研究,探索并实践了一种以工作过程为导向,以实际软件系统项目作为驱动,注重理论知识和实践技能结合,突出学生职业技能训练和专业素养,实现对学生全过程、全方位培养的课程培养思路。
关键词:工作过程;Java系统开发;课程开发
“Java系统开发”课程是计算机软件技术专业的专业核心课程,也是Java程序设计课程的后续课程。在前期对软件开发企业进行充分调研的基础上,结合大学生目前就业市场的具体需求,能够充分满足软件企业人才需求,使学生在毕业之后能够在公司直接上岗,顺利实现无缝对接,从而能够真正提高软件技术专业学生培养质量。
1.课程目标
本课程以Java程序设计课程为基础,以Java软件开发工程师岗位能力要求为标准,结合软件开发方向职业岗位应用需求设置,是软件开发技术专业核心课程。通过本课程的系统的理论学习和完整大型应用软件系统项目的开发训练,在毕业时,能够达到的水平。在课程的学习中,培养学生坚忍不拔的性格、语言表达能力、自我学习能力和分工合作的能力。通过课程系统的理论学习和实践锻炼,使学生能够掌握利用Java知识进行软件项目开发应具备的知识,学生能够达到Java软件开发工程师相应的应知应会目标,并能够使用所学知识和技能从事软件开发相关任务,初步实现从学生到职业人的顺利对接。
2.课程设计思路
2.1课程设计理念
由于“Java系统开发”课程具有较强的实践性,在设计上打破了传授的以理论知识为主的模式,从典型的工作任务出发,结合Java软件开发工程师的职业能力设定培养目标。对于课本上的理论知识要求学生能够看懂,够用即可,将实践技能和实训项目内容作为课程的重点。课程的设计理念主要有:
(1)校企合作。主动与企业开展深入合作,共建专业、共同开发课程、共建共享实训基地。由校企建立的合作教学指导委员会共同制定课程教学大纲,并不断完善和更新。將Java软件开发工程师作为学生毕业后得职业定位,并依据此定位优选和整合课程内容,以实现校企的无缝对接。校企双方共同确定课程的典型工作任务和职业能力,共同明确本课程的教学目标,共同确定学习情境,并参与教学内容的选择和排序、教学方法的探讨及考核标准的制定。
(2)以职业能力培养为重点。在课程设计中,首先是按照核心职业能力的要求,把理论学习、动手能力培养、分析与解决问题能力的培养充分结合于特定的发展情景及实训任务、项目中;其次是引导学生树立协调、合作的观念和竞争意识,使学生走上工作岗位后,能够利用在校学得的知识和经验,为提高现代企业管理绩效、降低企业运营成本、增强企业核心竞争力作出贡献;再次是充分考虑学生的身心发展特点,合理运用学习迁移理论,科学选择教学媒介,灵活运用不同教学方法,充分调动学生参与教学活动,做到爱学、会学、会用,以全面强化职业能力培养实效。
(3)以就业为导向。将“为就业服务”的理念融入课程改革和课程建设中,通过与行业企业合作进行基于工作过程的课程开发与设计,突出了课程的职业性要求。为了让学生尽早地体会到职业环境。
2.2课程设计思路
(1)精选课程内容。前期组织团队教师对相关软件开发企业的进行调研,通过组织教学专家、专业教师、企业技术一线人员进行分析,制订适合于本课程教学资源开发、教学实施、并符~Java软件开发工程师的岗位能力标准,进而制定相应的课程大纲,确定教学目标。整个课程教学内容围绕一个完整的软件系统项目的开发过程开展,将课程划分为9个相对独立的学习情境。提高了学生应用知识、协同开发的能力,使学生形成良好的编程习惯和整体设计概念。
(2)产学结合。将部分课程内容移到课堂外、移到教室外的实训基地一软件开发企业。在实训基地内,由软件开发企业一线开发人员作为教师参与到课程实训中,主要负责指导学生进行软件系统项目开发、学生考核等。
(3)课内与课外相结合。为了培养学生学习的兴趣和动力,鼓励他们参加由各级教育部门和各个行业协会或公司组织的软件类编程竞赛。最终,使他们在掌握Java软件开发技术的同时,又养成了良好的学习习惯。
3.课程内容组织
3.1理论教学的组织
依据软件企业软件开发岗位应具备的工作能力,采用螺旋推进式的学习过程,不断引入各个知识点,明确所需知识、能力和素质要求,进行课程理论内容选取。根据“超市商品进销管理系统”的开发过程划分学习情境,在课程理论知识的选择上坚持“够用、适度”原则,课程理论内容贯穿整个“超市商品进销管理系统”开发过程,并按照系统的开发过程分为9个学习情境,理论部分内容开发过程进行整合。各学习情境前后螺旋式递进,使课程各部分理论内容能够充分将知识有效融合。
3.2实践教学的组织
(1)阶段实训。根据课程9个学习情境的安排来设置阶段实训,通过实训来巩固的理论知识。阶段实训以设置好的9个学习情境小模块为内容,完成一个小功能的设计和实现。
(2)课程实训。在课程结束后,安排为期两周的课程实训,要求学生完成课程实训任务之后,能够得到一个功能基本完善的软件系统“超市商品进销管理系统”。两周的课程实训,以项目小组的形式组织,每组3~5人,要求每个学生都要参与代码编写和测试。同时,让学生在小组中模拟真实软件开发团队中的各种角色,体验从需求分析到项目完成的全过程。
(3)课程兴趣小组。教师组织学生建立Java兴趣小组,组织学生参与一些力所能及的项目科研开发,使得学生可以加强理论联系实际,培养项目团队精神。结合教育部门、行业协会或公司组织的各类竞赛,由教师引导学生积极参加,是学生能够在更多的平台上展示自己,增强学生探索能力和刻苦钻研的能力。
4.课程教学方法
课程在教学过程中主要采用了以下几种教学方法。
4.1启发式教学法
在给学生讲解程序设计时,不是简单地给出程序清单,而是从分析问题入手,继而找出解决问题的方法,再给出算法,最后编写出完整的程序。在此过程中,最关键的是每一步都采用与学生探讨的方式,启发学生,鼓励学生在思考中解决问题,从而掌握独立分析问题、解决问题的方法。依据班级学生人数,将学生分成若干个项目组,在项目实施的各个工作环节都要展开小组讨论,以解决当前问题和确定下一个工作步骤。在一个项目小组中,每个小组成员都有不同的岗位“角色”,每一个人都有一个侧重岗位,具体负责项目组完成该岗位的工作任务。
4.2案例教学法
项目案例与课程内容相结合,案例教学贯穿在课程的9个教学情境中,通过“程序案例”-“知识点说明”-“编程实践”-“分析不足”-“实践再提高”几个教学过程,培养学生实际应用能力。首先完成9个教学情境阶段项目案例开发全过程,之后再进行模块组合和测试检验最终成果。针对项目案例开发过程中关键技术的应用,以项目案例为驱动,运用多种方式启发学生独立思考,通过对项目案例的不断学习和总结,培养学生的建模能力和逻辑思维能力,营造自主学习、合作学习、研究性学习和探索性学习的学习氛围。
4.3教学做一体化
利用人手一台电脑的教学做一体化的布局,教师利用多媒体设备在教学区讲授知识,学生可以独立进行编程开发,一个小组的学生坐在一起,便于进行小组讨论。出现共性的问题,教师可以利用多媒体在课堂上统一讲解和消化。
5.课程考核
由结果导向转为过程导向考核以及知识和技能双考核。课程分為理论部分考核和实践部分考核,实践部分占60%,主要考查学生实践技能的掌握情况和动手能力,如9个学习情境完成后对应软件系统模块的完成情况;理论部分占40%,考查学生对9个学习情境中理论内容的掌握情况,改变过去单一考核理论掌握程度的传统方式。
基于工作过程的“Java系统开发”课程在具体研究和实践中,坚持以学生为主体,以基于工作过程、任务驱动和创新学习为理念,以真实的软件系统项目“超市商品进销管理系统”为主体,课程并采取了多种教学方法和综合的考核评价体系,调动学生学习的自主性、创新性的,不断培养学生综合运用知识的能力、实际工作能力和创新能力。