时间:2022-05-10 03:14:37
绪论:在寻找写作灵感吗?爱发表网为您精选了1篇软件工程专业论文,愿这些内容能够启迪您的思维,激发您的创作热情,欢迎您的阅读与分享!
摘要:“互联网+”概念与教育融合,给教学和课程改革带来了新的机遇和挑战。本文以地方本科院校软件工程专业为例,进行了教学改革方面的探讨。分别进行了课堂教学现状分析,教学改革可行性分析,并提出了教学模式创新方案和教学改革建议。
关键词:教学模式;课堂教学;翻转课堂
信息化技术的发展,打破了传统教学模式的束缚,促进教育教学的急剧变革。“互联网+”概念与教育融合,给地方本科院校软件工程专业的教学和课程改革带来了新的机遇和挑战。因此,进行更加深入的教学改革研究,建立多样化的适应不同高校和专业实际情况的教学模式,有利于促进教学质量的提升,提高地方本科院校学生的市场竞争力。
一、课堂教学现状分析
1.学生自主学习能力有待提高。尽管我们不赞同依据成绩片面评价学生的能力,然而,大学阶段和高中阶段教学模式存在一定的相似性,因此,高中阶段的成绩,对学生学习能力的评价依然具有一定的参考性。笔者所在学校是一所地方性本科院校,在全国高校统一高考招生录取时属于本科第二批次录取的院校。受现行招生考试政策约束,相对于重点大学的学生,学生的学习能力存在一定差距。这就需要教师在教学过程中加以考虑,以提升教学效果。2.学生课堂学习积极性不高。当前阶段的大学生,出生并成长在互联网时代,习惯于通过计算机或智能手机等途径获取海量的网络资源,因此接触新事物的机会较多。这一方面扩展了学生的知识面,增强了学生对新事物的接收能力。然而另一面也影响了其学习方式和学习态度。对于系统化、规范化的课堂教学,容易产生一定的排斥心理,课堂环节学习的积极性下降。功利化心态较为严重,对理论性和基础性较强的专业课程,存在一定程度的抵触心理。更倾向于操作性强的实践性课程。3.传统教材难以充分调动学生学习积极性。目前本科院校基础性专业性的课程教材,通常采用国内知名大学和知名出版社的教材。这类教材较为成熟,具有较好的市场认知度。然而这类教材的作者来自于知名大学教授,因此编写教材是并没有考虑地方本科院校学生的特点。通常由于理论性较强、难度较大等因素,难以激发地方院校学生的兴趣。部分实践类教材,以小型的实验性项目为基础进行展开,组织结构较为合理。然而,由于纸质教材主要有静态文字和效果截图组成,并不能足够直观的还原真实项目场景,一定程度上,降低了学生对此类教材的依赖性。4.传统课堂教学模式教学节奏较难控制。传统课堂教学中,通常教师为主导,在规定地点和规定时间内教授规定的内容,学生被动的参与课堂教学。学生的学习能力存在一定的差异,对新知识的接收能力和理解程度并不完全一致。因此,统一的教学方式,存在一部分同学‘消化不了’,另一部分又‘吃不饱’的两难局面。教师较难掌控教学节奏。而前述两类学生的积极性也容易受到打击,难以全面调动学生的学习积极性。5.教学资源现状分析。受制于地方经济发展程度等诸多因素影响,政府在地方性本科院校的投入相对较少。现有地方性本科院校的教学设备较为落后,以简单的多媒体教室为主,硬件资源闲置情况较为明显。多媒体软件资源较为贫乏。教师对多媒体资源的理解能力和操作水平参差不齐,资源利用率不高。互联网技术的发展提供了多渠道的资源获取途径,然而受计算机操作水平限制,互联网资源挖掘技巧不足,使用的频率较低。
二、互联网+背景下教学改革的可行性
1.学生为互联网+的到来做了充分的准备。90年代末期时,大大小小的网吧已经遍布全国各地。2009年初,随着中国电信业改革重组的完成和3G牌照的正式发放,中国全面进入移动互联网时代。现有的普通本科院校的学生大多出生在1995~2005之间,其出生和成长经历正赶上互联网和移动互联网普及的大好时光。因此这一代人对互联网+时代的到来,已经做了充足的思想上和信息技能上的准备。2.人才队伍壮大,为教学改革的提供了新鲜血液。人才队伍建设是教育事业发展的第一要务,是提高高校核心竞争力的重要推动力量。地方本科院校正处于改革和发展的关键时期,深入贯彻科学发展观,必须加强人才队伍建设,全面提升人才队伍的整体素质。我校发展至今,已经取得了一定的成绩。随着各类人才支撑计划的出台,人才队伍不断壮大。高学历教师数量显著增多,这些都为教学改革的开展注入了新鲜的血液。3.政策支持力度加大,有利于保障教学改革的顺利进行。教育部2014年工作要点明确提出,要引导一批本科院校向应用技术类高校转型。2015年10月,教育部联合发改委和财政部出台文件,引导地方普通高校向应用型本科院校转变。2015年11月,国务院出台“双一流建设”方案,鼓励和支持不同类型的大学差别化发展。这些密集出台的各类政策,充分体现了政府在高校改革问题上的决心和力度,这必将为教学改革的顺利发展注入强大的动力。
三、互联网+教育的创新教学模式
1.MOOC。MOOC(MassiveOpenOnlineCourse,中译:慕课),最早于2008年提出,特指加拿大的马尼托巴大学(theUniversityofManitoba)所提供的开放式在线课程资源。随着类似平台资源的涌现,MOOC及其思想被各类媒体广泛讨论,最终被发展成一个专用的教育术语。MOOC将对学习感兴趣的人(或”学生”)和寻求辅助教学平台工具的专家吸引到同一个平台上来。MOOC平台通常不对参与者设置参与门槛。参与者本着完全自愿的原则加入到平台中来,并根据各自的爱好进行选择性活动。MOOC的空间跨度大,通常跨越多种不同的平台和技术。通过社交网络和免费的在线学习资源来提供强有力的平台黏性。这也是其区分与传统在线学习的重要特征之一。2.翻转课堂。翻转课堂(FC,flippedclassroom)是近年来流行的一种教学模式。在翻转课堂教学环境下,学生拥有了学习主动权。教师的身份,从传统的单向知识传授者,转换为学习过程的组织者和引导者。学生在进入面对面的教学课堂之前,可以提前接触到与新课题相关的学习材料(如,视频教程、在线资源等)。课题教学环节内,学生通过协作学习、分组讨论等形式,来获取对材料相关知识的更深入的理解。通过将传统的被动学习转变为学生的主动知识获取过程,可以有效发挥学生的主观能动性,激发学生的学习兴趣和学习积极性。随着技术的进步和以学生为中心教学方法的流行,翻转课堂已经成为一种重构教学模式的新范式。3.微课。微课是近年来引起广泛重视的一种新的教学组织方式,尤其在成人教育和培训领域中广为使用。微课中的微是指微小、短小、轻量等含义。微课通过教学内容进行知识点拆分成,分解成较小的学习单元,并重点关注这种相对较短时间内的学习活动的优化和安排。微课中的“微”,既指待学习内容的少,也指学习时间的小。由于较小的内容模块能够较容易的被获取、存储、处理。学生能够通过一种放松的态度参与学习过程中来,较易实现一种轻松愉悦的学习体验。微课的针对性强、灵活性大、信息含量丰富,可以作为传统课堂教学手段的一个有利补充。
四、结语
在“互联网+教育”的背景下进行教学改革,需要根据地方本科院校学生自身的特点,以及软件工程专业课程的特征进行展开。要加大教育教学资源的投入力度。加强教师队伍的培养和建设,增强教师的课题教学创新意识,全面提高教师的信息化技术的水平。借力互联网技术,整合各类资源,创新方法和手段,实现弯道超车。
作者:张平 单位:湖南科技学院电子与信息工程学院
摘要:文章在分析现有软件工程人才培养实践教学现状的基础上,深入研究软件工程人才培养规律,围绕实验、实训、实习三种不同实践教学类型以及导入、展示、训练、评价、强化、反馈、应用、监管八个实践教学环节,较为深入地讨论“三类型八环节”软件工程教学体系的内涵,论述校企合作实践教学基地及开放式的师资队伍的形成过程,建立量化可控的过程化实践教学保障机制,将软件工程过程管理方法引入实践教学管理,运用自主研发的软件工程实践教学管理平台,为实现教学过程和质量评价的实践教学全生命周期管理提供支撑。
关键词:软件工程;人才培养;实践教学体系;教学质量保障
一、引言
目前,针对我国信息化发展进入互联网时代的要求,高等院校培养软件工程人才的模式也不断地进行改进和调整,特别是在工程实践能力上的加强,已经成为衡量软件工程人才培养的一个重要指标。培养出工程实践能力强、职业素养高、具有国际竞争力的软件工程人才,是软件学院人才培养中需要解决的主要问题。在软件人才培养过程中,加强工程实践教学环节,提高解决实际问题的能力是软件学院培养人才的主要目标。软件学院在工程实践教学改革等方面进行不断地探索和调整,以便满足社会发展对软件工程人才的需求,并在实践教学中取得一定的成效。但仍存在一些问题,如:实践教学体系与软件产业需求、专业培养目标不协调,对实践教学过程内涵理解不够,软件工程实践教学质量保障机制不健全等,表现为实践教学缺乏理论指导,模式各异,产学脱节,教学过程管理不规范,学生创新创业能力欠缺,发展后劲不足等现象。为了更好地适应软件产业的不断发展,为我国培养出更多高水平的软件工程人才,建立新型的软件工程人才培养模式和工程实践教学体系是我们所面临的新挑战。重庆大学软件学院自从成立以来,在办学模式、管理体制、教学目标、培养方法、考核体系、质量保证体系等方面进行了一系列的研究和改革,取得了许多有益的尝试和经验教训[1]。本文结合重庆大学实际情况,深入研究软件工程人才培养的规律,提出了基于“三类型八环节”的软件工程实践教学体系。
二、“三类型八环节”的软件工程实践教学体系内涵
针对新时期实用型软件工程人才培养需求与软件工程实践教学中存在的问题,通过深入研究实践教学内涵,重构软件工程实践教学环节,建立量化可控的过程化实践教学质量保障机制,探索与国内外名校名企深度互动融合模式,我们构建了“三类型八环节”的软件工程实践教学体系(见图1)。同时对学生工程实践能力的培养实施以“课程实验、课程设计、程序设计实训、项目开发实训、系统管理和开发实训以及企业实习”为主的软件工程实践教学体系,并贯穿融合“教授讲座、科研训练、素质拓展、专业竞赛、创新实验与创业计划”等课外实践教学形式。“三类型”是“实验、实训、实习”,三者相互联系、渐进性地进行,从而保证了软件工程人才培养对实践教学要求[2]。实验是为满足理论课程教学要求,根据课程的不同在实验室完成不同任务。它是软件工程人才培养的一个重要的、不可缺少的实践环节;实验是在实验室培养学生对科学原理或者工程原理的发现和验证,即培养学生实际操作能力,论证新原理,开发新技术;实验是对理论教学的进一步补充。实训是模拟实际工作环境,采取来自企业真实工程项目的实际案例,由具有丰富经验的教师或项目经理小组化指导,培养学生在有限时间内,完成软件工程专业的技能、经验、方法、团队合作等方面的训练。软件工程专业实训分为3个过程,第一过程由软件学院有经验的教师指导,以小型软件项目为训练题目,项目小组一般由2~3人组成,主要训练学生软件编程技巧,使学生软件编程能力得到提高。第二过程由经验丰富的学院教师或企业导师指导,以中型软件项目为训练题目,项目小组一般由4~6人组成,主要训练学生系统开发能力,包括:项目计划、需求分析、软件设计和软件测试等,并能够应用常用的软件设计和软件测试工具。第三过程由企业导师指导,以具有一定规模的软件系统为训练题目,项目小组一般由6~10人组成,主要训练学生对大型项目的开发和管理能力,训练学生对软件生命周期各个环节的认识,以规范的过程和标准来有效地开发和管理软件系统。实习就是在实践中学习。软件工程专业实习是让学生去现代的软件工程生产企业开阔眼界,认识现代软件生产过程,在已有的基础上创新改变,把现代的一些理论知识融合到现代软件工程企业里面。根据“实验、实训、实习”三种类型的实践教学要求,采用导入、展示、训练、评价、强化、反馈、应用、监管八个环节,渐进完成软件工程实践教学。教师通过具体的项目导入要解决的问题,根据项目的要求,有目的、有计划地展示开发方法和过程。以一定的形式训练学生完成相关工作,并通过系统地分析,对学生的各种活动、过程和结果进行评价,从而强化学生对软件过程各个环节的认识,并不断完善自我,达到主动学习的目的,把已经学过的理论知识在实训实习中更好地加以展示[3]。总之,根据“实验、实训、实习”三种实践教学的具体内涵,实现对软件工程人才不同阶段的能力培养:实验侧重培养专业技能;实训侧重培养工程实践、团队协作与沟通、创新等能力;实习进一步加强工程能力、社会适应以及产业融入能力。通过“三类型八环节”的软件工程实践教学过程,使学生全面了解和掌握软件系统开发的全过程,能够熟练应用规范的软件工程标准和CASE工具开发软件项目,从而使其软件编程能力、系统开发能力和项目管理能力得到进一步提高,进而适应现代软件企业对软件工程人才的要求。
三、校企合作实践教学基地及开放式的师资队伍
根据“三类型八环节”的软件工程实践教学的目标,要有效地实施“实验、实训、实习”三种类型教学过程,必须有符合要求的实践教学基地及良好的师资队伍。(一)建立校内外的实践教学基地,为软件工程实践教学体系的顺利实施打下良好基础在软件工程人才的培养过程中,不但要有合理的培养方案和课程体系,良好的教学团队和师资队伍等,而且还需要提供培养学生的基础设施,包括理论课程实验需要的各种仪器设备和环境等。对于培养高素质软件工程人才,实践教学基地的建设尤为重要。软件学院非常重视实验室和实践教学基地的建设,制定了实践教学基地建设的具体方案,并逐步实施和完善。除了更新和改建现有的实验室和实验设备,还不断扩展校内外的实训实习基地建设。在校外实践基地的建设方面,与国内外一些著名IT企业建立了广泛联系,如IBM、Mi-crosoft、SUN、HP、NTDATA等公司,一方面共同创建软件工程人才培养实践教学基地;另一方面与企业广泛接触,优先为学生提供良好的校外实习、实训机会。学院也与国内的IT企业进行了合作,如:深圳软酷网络科技有限公司,在学院建立了学生实训、实习基地,并已经应用于软件工程的人才培养过程,经过几年合作运行,达到了软件工程人才在实践教学方面的培养要求。此外,学院还开拓了新的合作领域,特别是重庆市的IT企业(如:重大高科技股份有限公司信息产业分公司、金蝶重庆分公司、重庆宏声新思维集团等)广泛合作,建立校外实践教学基地。由于有良好的校内外合作企业和实践教学基地,在人才实践教学培养方面得到了保障。并在观念上破除传统的由学校包办实习,注重形式而不完全注重效果的现状,提倡企业和学生双向选择。学院非常重视用高科技园区孵化器的形式建立由学院控制的、市场化运作的校外学生实践基地,吸引国内外IT企业,在企业研发软件产品的同时,使学生有真正参与软件产品研发的机会。(二)构建专兼职相结合的开放式师资队伍通过遴选本院具有工程实践经验、教学效果好的教师,聘请合作企业具有较高理论与实践水平的高级工程师担任兼职教师和企业导师,为软件工程人才培养构建起一支高素质的开放式教师队伍,并参与实践教学的指导工作。在“三类型八环节”的实践教学过程中,开放式的师资队伍保障了实践教学的顺利实施和效果,实验由经验丰富的学院教师指导;实训指导由本学院教师或企业导师担任;企业实习指导采用双导师制,由本学院教师和企业导师共同指导,企业导师为学生提供实习环境和实习项目,完成主要指导工作,本学院教师负责实习监管与过程审定工作。
四、成立质量保障机制工作小组,监督实践教学的实施过程
为了加强“三类型八环节”的软件工程实践教学体系的实施,软件学院成立了由教学指导委员会、教学督导、学业导师、企业专家等组成的实践教学质量保障组织机构。教学指导委员定期听课,对青年教师的授课进行试听和特别指导,改进教学质量。教学督导随机抽查教学进度、教案、教学日志、作业布置及批改情况,召开学生座谈会等,全面考察任课教师工作态度、教学能力与水平。学院为学生安排了学业导师,每一位学业导师指导5~8名学生,指导学生的专业学习,鼓励学生参与科研立项、创新训练、学科竞赛等科技活动,提升学生的科研素养,为学生的专业学习做充分的引导和监管。企业专家熟悉软件企业的系统研发过程,加强企业专家的教学参与力度,更好地完成监督实践教学的实施过程和质量.
五、构建软件工程实践教学质量保障机制
软件工程实践教学质量保障机制主要包括组织机构、师资队伍、管理制度和考核评价四个方面。组织机构主要规定教学指导委员会、教学督导、学业导师、企业专家等组成机制和工作机制。师资队伍主要明确本学院教师、企业兼职教师和导师要求机制。管理制度给出教学督导制度、实训过程管理制度、实习基地筛选制度以及实习管理制度等。考核评价包括工具的使用与使用技能评价、过程管理与制度评价、工程设计与实现评价、团队协作与沟通评价等。软件工程实践教学质量保障机制依托于软件工程实践教学管理平台,该管理平台实现了实践教学中知识管理、项目开发的代码管理、错误跟踪管理、项目进度管理和软件测试管理等功能。为实现教学过程和质量评价的实践教学全生命周期管理提供了支撑。
六、结论
重庆大学软件学院是首批教育部批准的国家示范性软件学院之一,自成立以来就积极探索软件人才培养的新模式,不断改进软件人才培养方案和课程体系。按照示范性软件学院人才培养目标,在软件工程专业课程体系总体规划下,制定了基于“三类型八环节”的软件工程实践教学体系,通过“实验、实训、实习”三类型,循序渐进地实现了软件工程人才不同阶段的实践能力培养,通过“导入、展示、训练、评价、强化、反馈、应用、监管”八个环节,保证了软件工程人才的工程实践和专业技能训练,有效地培养了学生团队协作精神和创新创业能力,提高了学生的适应能力和竞争能力,使其在毕业后能更快地适应企业的工作要求。为了保证软件工程实践教学各个环节顺利实施,制定了软件工程实践教学质量保障机制,并研发了软件工程实践教学管理平台,有效确保了“三类型八环节”的软件工程实践教学过程的实施和质量。总之,基于“三类型八环节”的软件工程实践教学体系能够提高软件工程人才的实践能力和综合素质,保证软件工程人才培养质量,具有一定的适用价值和推广意义,可为同类专业的人才培养和教学改革提供借鉴与参考。
作者:张毅 文俊浩 熊庆宇 柳玲 吴映波 单位:重庆大学软件学院
摘要:基于国内外软件工程人才培养机制的主要不足之处,提出以面向航空领域的软件工程专业人才培养模式,主要以能力培养为核心、以应用和创新为主线,培养遵从软件工程专业人才成长规律和满足经济社会发展需要凸显航空特色的应用型人才。实践证明,面向航空领域的软件工程专业人才培养模式弥补了航空领域软件工程培养模式的不足为培养面向航空领域的应用型软件人才做出了贡献。
关键词:航空领域;软件工程;培养模式
近几年来,软件产业作为信息化建设的核心得以迅速发展,航空工业正是以信息技术为代表的高新技术改造的重点,所以迫切需求面向航空领域的软件工程专业应用人才。现在,国内各工科高等院校基本都开设了软件工程专业,软件工程专业毕业生数目也变得庞大起来。但是,符合社会需要的软件人才不仅数量不足,而且结构失衡[1-2]。高校培养的软件人才与软件企业的实际需求存在明显差距,根本原因在于软件工程人才培养模式不能适应软件市场发展所致。各个高校都在探索应用型软件工程人才培养与实际需求差距的解决办法,有些高校从软件工程课程建设方面来研究[3-4];有些高校从校企合作方面对实践教学体系进行改革[5];还有的从适应国际化软件工程需求方面研究[6]。实践表明,应用型本科院校的软件工程人才培养模式大多数都是追随计算机科学与技术专业培养模式的指挥棒[7],我国高校对面向航空领域的人才培养研究还处于探索阶段,符合航空领域的软件工程人才少之又少,还没有形成一套行之有效、适应软件工程专业领域和凸显航空特色的应用型人才需求的培养体系。因此,如何改革应用型软件工程专业人才培养模式,改新课程教学体系,培养出合格的、适应我国软件产业需要的凸显航空特色的软件工程人才迫在眉睫,改革具有航空特色的应用型软件工程人才培养模式对催促进信息化产业发展具有重要现实意义。
1培养目标与培养模式
充分分析沈阳航空航天大学软件工程专业培养目标,发现存在定位模糊、培养模式单一、专业课程内容缺乏规划、专业特色不突出的现状。遵从《GJB438B-2009军用软件开发文档通用要求》《GJB2786A-2009军用软件开发通用要求》相关标准和创办“依托国防航空、融入地方工业”的特色专业的办学理念。需要构建遵从软件工程专业人才成长规律满足经济社会发展需求的、凸显航空特色的、工程实践应用能力和创新意识并重的应用型人才培养目标。沈阳航空航天大学是航空类所属一般理工科本科院校,根据该校特点建立合理的培养模式。应多方合力加强学生实践动手能力和综合应用能力,探索学分置换与联合培养的培养模式。扩充学生视野,使培养的学生适应软件工程专业领域和凸显航空特色的应用型人才。尝试“基础+专业方向+集中实训”“1.5+2+0.5”的人才培养模式。开始1.5年完成基础课学习,然后2年完成专业和专业方向课程的学习与实践,后0.5学年采取学分置换的方式进入格微软件等实训,实际参与软件工程相关的系统分析、设计、开发、测试和运营管理。
2专业课程体系
构建以工程实践能力、团队合作能力和人际交流能力培养为核心,设计具有专业特色的专业核心课程,依托软件工程专业项目团队模式下实景教学平台建设研究成果,重点研究适合应用型、工程型和凸显航空特色的人才培养的课程体系。该校软件工程专业课程体系建设采用了两种路径:一是参考其他院校软件工程专业的课程体系设置,二是结合行业需求调研、技术交流、专家咨询,以及该校人才培养经验和教学工作积累等方式对已有体系进行不断修订与完善。在教学过程中凸显航空特色,全面引入《GJB438B-2009军用软件开发文档通用要》和《GJB2786A-200军用软件开发通用要求》两个军用软件开发通用标准,严格规范学生在学习过程中各相关文档的书写规范以及加强在软件开发过程中各相关环节的管理,使学生了解并掌握军用软件的整体流程,从而使学生具备航空航天领域方面企业的就业优势。软件工程学科与计算机科学、管理科学、数学、项目管理、质量管理和系统工程等学科相关。这说明该专业需要开设一些相关学科的基础课程,以提高学生对相关专业基础知识的了解,但是要确定软件工程与相关学科之间的知识公共边界,要对相关课程进行内容裁剪。同时,在提供必要的软件工程专业理论知识基础上,为满足学生兴趣、拓宽学生知识面,了解更多的与软件工程专业相关的应用领域,增加院级选修的方向模块课程和跨专业的个性课程。除此之外,组织学生参观航空企业、军工企业和IT企业等,了解专业技术在企业的应用,提高学生的专业学习兴趣,减少学习的盲目性。
3实践教学模式改革
3.1实践教学体系改革
依托课程体系与实践教学体系的有机无缝融合,建立“凸显航空特色的应用和创新能力培养为牵引”的实践教学体系。增加不同环节(四层递进的实践教学体系)不同类型(综合性、设计性、创新性和开放性实验)实验比例,满足不同层次学生实践能力培养需求。充分利用软件工程实验室、数据管理系统(USDM)和校企联合(格微软件)等平台、让学生参与教师科研项目、鼓励学生参加各种大学生大赛、竞赛和创新项目,并在整个过程中,教师进行全程指导、掌控进度和监控实践教学质量。具体实践教学体系见表2。
3.2依托数据管理系统(USDM)建设信息化实景教学平台
USDM是常州伍杰公司开发的一个分布式应用的软件系统,它支持软件开发过程的动态管理。依托USDM平台,建设信息化实景教学平台。对学生实行项目团队式管理,即模拟真实项目团队组织方式。在项目开发过程中对学生强调两个军用软件开发通用标准、将软件工程的知识由浅入深、阶梯状、循序渐进地贯穿到项目各个阶段开发中。负责教师在该平台上实现学生角色划分,各个阶段项目团队划分,指定各个团队项目经理,并给予项目经理较高权限。项目经理根据组员个人能力和今后发展方向对他们进行角色分配,如设计人员、测试人员等。使每个学生都能参与其中,每个人至少担任一项以上角色。学生凭借电脑,互联网、自己的学号,随时随地登陆USDM进行项目开发。项目经理监控整个项目开发过程,从总体上把握项目的总进程和项目完成质量。教师在实践过程中与项目经理沟通并实施指导,学生根据实验要求设计算法,进行数据测试及测试结果分析。将项目实践的项目管理、业务阶段、需求、设计、编程、测试、阶段和建模工具的各种图(动态图、静态图和数据库概念模型)全部形成文档的形式通过该平台并提交。提高学生在项目规划、队伍组织、工作分配、成员交流等多方面能力;培养学生团体合作精神,培养学生团队合作级项目研发的能力和软件工程化方法开发大型软件的能力,为研究和学习软件生产线新技术埋下伏笔。利用USDM的可视化论坛提供聊天、白板、音频、视频、协同浏览等功能。项目团队工作人员在其机器上打开某个文档并进行操作浏览时,其他相关人员也可以在自己的机器上看到操作过程,操作和观看几乎是同步进行的。通过可视化论坛方便项目开发小组内部和小组之间经常交流情况和信息,以便减少误解,删除软件中的个人特征,提高软件的质量。使学生提早接触大型IT企业实际工作环境,学习专业CASE工具的使用,为今后工作打下良好基础。开发团队根据实践项目自己拟定汇报的内容,由教师修改审核后,负责教师和各个小组选择代表作为答辩评委,各个项目小组进行项目答辩,答辩成绩作为开发团队实践成绩一部分。负责教师在数据管理系统平台上审核项目实践过程中提交的文档体系,审核成绩作为团队成绩一部分,优先实践项目运行结果、代码和文档等公开展示。提高了学生研究立项、总结概括、演讲交流和团体竞争意识的能力。
3.3创新团队培养等课外培养模式
团队模式培养,以教育部“卓越工程师”培养方案为创新人才培养模式的建设目标。旨在加强专业创新人才培养,建立以学生为主体、教师为主导的创新型团队培养模式。从大一就开始实行本科生导师制,由专门导师直接对本科生的思想、学习进行指导,对学生管理实行动态准入制度,制定阶段目标,严格考核制度。团队学生可以参加导师的科研项目,在导师指导下撰写论文。参加“大学生创新大赛”“ACM大赛”等学生创新比赛,鼓励学生参加职业资格认证考试。除此之外,还采取了一系列有效措施,如聘请同行领域专家和学者做讲座,第二课堂等。用以培养学生的科研能力,让学生了解专业应用方向和前沿技术,增强学生的专业体验度和兴趣度。
4考核方式改革
采用过程化考核机制,加强对学生的早期学习干预,适当开展个性化教学。教学过程中取消一考定成绩的考核方式,设置阶段性考试,避免出现期末突击学习、背诵典型题目等高分低能情况。根据课程知识点设置多次阶段考试,既可以有效地把握学生的学习过程,又可及时获得相关数据,便于对教学效果定量分析,对学习差的同学早发现早干预,对小群体实施个性化教学。通过USDM系统可获得如下数据:学生编写程序数量分布、学生在线总时间分布、学生和教师登陆次数分析、各次考试的成绩变化和分布、提交时间间隔情况分析、学生成绩的变化情况跟踪等。通过对以上数据的定量分析可以获得学生的学习情况(包括刻苦程度、学习时间分配的合理性、学习质量、是否抄袭等),把这些数据作为评估学生过程成绩的一个指标;不仅如此,通过以上数据分析还可以了解到教师的教学态度(布置作业数量、作业批改及时性、与学生互动的频繁度、对后进学生的关注度等),及时发现教与学双方面存在的问题,及时整改以获得更好的教学效果。面向航空领域软件工程专业人才培养模式研究与实践是一项系统工程。依据国家战略新兴产业创新人才需求,重点研究人才培养模式与现实需求的符合程度,与时俱进多方面优化改革人才培养模式。培养毕业后能胜任航空领域的军工企业以及其它IT行业、科研机构、企事业中从事计算机应用软件系统的开发和研制的软件工程应用型高级专门人才。
作者:刘香芹 张翼飞 丛丽晖 单位:沈阳航空航天大学计算机学院
【内容摘要】信息化时代背景下,我国软件产业逐步迈入了健康、持续的快速发展通道。在此过程中,大量工程型、应用型的高素质软件工程师发挥了不可或缺的作用。本科院校作为软件工程师人才培养的主要阵地,其专业建设在某种程度上直接关联着软件产业发展,有关研究备受关注。本文在对软件工程专业建设现状作出简要分析和论述的基础上,重点就软件工程本科专业建设实践进行了研究。
【关键词】软件工程;专业建设;课程设置
目前,我国软件工程本科专业建设的成果有目共睹,但同时也存在人才适应性、实用性差等问题,课程设置与市场需求脱节成为顽疾,不利于学生实践能力的培养。21世纪是一个以知识经济为主的时代,人才作为企业竞争的核心,其战略地位不言而喻。然而,软件工程本科专业建设存在的一系列问题,直接影响了人才培养水平,限制了软件产业发展,其创新与优化工作至关重要。
一、软件工程本科专业建设的现状
近年来,随着我国高等教育的普及化发展,软件工程本科专业建设大肆扩张,并取得了一定成效。但是在实践过程中,软件工程本科专业建设依然存在不少问题,具体体现在以下几个方面。
(一)保障体系缺失。软件工程本科专业建设是一项体系化工程,需要大量的保障基础作铺垫。现阶段而言,大部分本科院校应时展需求,逐步开设了软件工程专业课堂,并按照新课程改革要求,采取了一系列创新改革举措,建立了相对完善的实践机制。然而,我国软件工程本科专业保障体系建设依然不尽如人意,在教学内容设计上缺乏与软件产业及相关技术发展变化的有效弹性配合,体现了多阶段逐级过渡的特性,很难实现理论、实践与工程的循环。在这样的教学模式影响下,软件工程专业人才培养拘泥于书本知识灌输,忽视了对学生个性差异与全面发展的考查,不利于其实践能力的提升。究其根本,造成此类现象主要是因为素质教育建设与渗透不足。在软件工程教学实践中,部分教师固守传统思想,本身专业化水平不高,缺乏应有的创新素质与优化意识,在方法选择上显得过于拘谨,忽视了学生主观能动性的发挥,最终限制了学生的全面发展。因此,保障体系缺失是影响软件工程本科专业建设步伐的重要因素。
(二)产学联盟滞后。软件工程本科专业建设并非高校一方的责任,其社会价值决定了需要政府支持和企业配合。事实上,软件工程人才培育与相关企业人才需求缺乏反复性地对接与持续性地跟踪,使得本科院校教育逐步脱离了经济市场的导向,所培养的毕业生人才必然不能满足企业需求,其基本价值沦丧。新时期,市场经济运行规律决定了,软件工程本科专业建设必须走产学研一体化发展道路。目前,很多本科院校与企业建立的产学联盟还停留于表面,并未深度挖掘软件工程专业建设需求,在人才培养方面尚未真知灼见、长治久远。有些企业过度“计较”对合作育人的成本投入,专业选择具有强烈的“功力”色彩,参与软件工程专业建设的积极性不高。在此过程中,政府如何发挥引导职能,合理介入校企合作,为其提供良好的法律政策及资金支持是当前一个较为突出的问题。没有健全的管理措施,校企双方的权责就不能得到有效拷问与执行,一旦发生纠纷,势必会影响两者之间的长期合作关系,产学研一体化也因此走向尽头,不利于软件工程专业建设的完善与深入。
二、促进软件工程本科专业建设的实践策略
软件工程本科专业建设实践成果,受诸多因素的影响。结合分析,有针对性地提出了以下几种软件工程本科专业建设实践策略,以供参考和借鉴。
(一)优化课程设置。学科是高校生存与发展的基石,同时还是专业建设的前提和基础。一个健全的专业往往需要多个学科的支撑,否则势必沦亡。因此,本科院校在软件工程专业建设之初,就需要综合考查自身现有的学科实力,有针对性地做好铺垫工作。具体而言,本科院校要树立良好的市场意识,并以此为导向,明确软件工程专业人才培养目标及要求,合理配置相关学科,设计完善教学内容,逐步形成科学体系,实现人才的全面发展,最大限度地发挥自身社会价值。为适应软件产业发展对多元人才的需求,本科阶段应放宽口径,不细分专业培养方向,但需要考虑专业课程模块设置,夯实毕业生理论基础的同时,拓展其知识面,使之深入了解某类系统软件及其应用领域。一般而言,软件工程本科专业核心课程包括软件数学类课程、软件基础类课程、软件系统类课程、软件工程类课程等内容,着重突出对学生应用能力与实践能力的培养。基于此,对于软件工程本科专业学生的考评也应关注其软件数学知识、基础知识以及工程知识水平,全面考查其综合素养及能力,并据此决定下一阶段的教学目标及方向。
(二)加强师资建设。素质教育背景下,教师作为主导,既是软件工程本科专业建设的对象,又是软件工程本科专业建设的参与者,其表现出的综合素养和能力直接决定了最终工作成效。在高等教育普及化阶段,本科院校面临着巨大的人才引进压力,需尽量在短时间内优化整个师资团队的学历结构、年龄结构以及职称结构等。在此过程中,本科院校要致力于专业化师资队伍建设,加强教师培训工作,及时更新其理论知识素养及专业技能构成,提高他们的综合业务能力,使之提供良好的教学服务。简单来讲,本科院校应制定完善的教师培训计划,以职业培训为主、脱岗培训为辅,根据软件工程本科专业建设需求,分清轻重缓急,优先发展特色学科,为广大教师搭建互动交流平台,分享有效经验,从而为软件工程本科专业建设提供强力支撑。同时,本科院校还需建立完善的激励制度,保证双师型教师团队建设资源充沛,给予表现优异的教师适度职位晋升、薪酬增长等奖励,鼓舞他们自主创新,树立其良好的职业发展愿景,从而使之投入更多的时间和精力在本职工作上。
(三)推进校企合作。本科院校的核心价值是促进学生全面发展,其根本目标是打造满足市场需求的应用型人才。从某种意义上而言,企业作为市场经济活动的主体,只有其自身才清楚需要什么样的人才,也是软件工程本科专业建设方向的决定者。政府方面应充分发挥引导职能,制定完善的法律制度、政策体系支持校企合作,明确双方承担的责任和义务,帮助两者构建长期战略合作关系。而企业方面也需要深刻认识到校企合作对自身发展的重要意义,可就软件工程本科专业建设提出可行性建议,也可与校方专家共同协商专业课程设置,将行业最新发展动态引入到软件工程专业教学体系当中。在企业的积极参与下,本科院校需树立良好的市场意识,将软件工程专业建设紧密联系市场,结合自身实践,走特色发展道路,以服务于地方产业经济发展。同时,校企双方还应整合可以利用资源,合理配置,积极打造校内实验室和校外实训基地,引入先进技术及设备,最大限度地发挥各方优势,为软件工程实践教学提供良好的环境与氛围。总而言之,软件工程本科专业建设实践十分重要和必要。由于个人能力有限,本文对软件工程本科专业建设作出的探索可能存在不足,未来其实践工作还有很大的改善空间。因此,希望业界更多专家和学者持续关注我国软件工程本科专业建设实况,全面总结其现状及问题,并深度剖析其中存在的问题,有针对性地提出更多促进软件工程本科专业建设对策,从而推动软件工程专业创新优化发展,为我国软件产业持续发展提供强力人才支撑。
作者:林峰 李萍
摘要:软件工程专业人才培养的定位是在熟练掌握计算机软件编写的基础上,让学生可以利用所学计算机方面的知识,与传统的工程领域相结合,培养可以进行各个层次软件开发的复合型人才。为了更好地实现人才培养目标,必须加强课程与教学资源建设,不断完善培养方案,优化课程体系,建设开放、立体的网络教育资源平台,创新学生课外实践平台和实训教学平台。同时也要不断探寻新的专业管理路径,以科学管理促进教学水平提升。
关键词:高职教育;专业课程改革;软件技术
淮北职业技术学院软件技术专业经过多年建设,形成了独具特色的“多层次、分流式”人才培养模式;在课程建设上,坚持“瞄准岗位设课程”;在教学内容上,将社会职业资格认证与专业教育紧密结合;在教学模式上,坚持“瞄准职业能力搞教学”,形成了独具特色的“项目案例教学法”;在实训基地建设上,着力建设教学、服务、科研“三位一体”的实训基地,有效地构建了计算机应用技术专业综合试点改革的基础。2015年与武汉慧众聚成合作开设ACCP软件工程师班,共同培养软件工程师。同年软件工程专业获得安徽省质量工程的专业综合改革试点项目立项。软件工程专业培养的定位就是在熟练掌握计算机软件编写的基础上,让学生可以利用所学计算机方面的知识,与传统的工程领域相结合,培养可以进行各个层次软件开发的复合工程型人才。
一、课程与教学资源建设
在专业课程体系改革方面,坚持课程体系和教学资源建设以市场为导向、学生为根本、学科知识为基础、专业技能为重点的原则,构筑软件工程专业学生的知识体系,搭建教学平台,完善培养方案,优化课程体系和模块化课程结构,推进精品。
1.完善培养方案。依据我校软件工程专业培养移动互联网软件工程师的人才培养定位,软件工程专业的培养方案将突显课程结构模块化、块内课程群组化,分模块、分群的特色,保证培养目标的实现。专业基础课模块:主要包括面向对象程序设计、数据库原理、软件工程等课程,通过本模块体现基础的“厚”。专业技术课模块:主要包括移动互联网技术、嵌入式系统等课程,另外在每个课程群中增加企业课程模块,通过聘请外教、企业专家承担与市场或工程结合紧密的相关课程的全部或部分内容的主讲工作,并加强国际交流,提高授课质量。增加的企业课程模块包括:Android软件开发、信息工程项目管理、网络系统架构等课程。通过本模块体现出“多方向”。技能拓展模块:主要包括WAP技术及其应用、嵌入式Linux-ARM应用开发、人工智能等课程,通过本模块,体现出应用能力训练。课程模块如图1所示:
2.优化课程体系。在培养方案的基础上,优化课程体系。以工程项目设计为导向、工程能力培养为目标,让学生做中学(Learning by doing)和基于项目学习(Project based on learning)。工程项目为载体,使学生以主动的、联系的方式学习工程,通过项目设计将课程体系有机地结合起来,通过项目将知识、能力和素质有机结合,项目按规模和范围分为三级:一级项目为:课程设计、综合项目设计、创新项目设计;二级项目为:软件算法综合设计、整个培养计划是以一级项目为主线,二级项目为支撑,三级项目以移动互联网技术、智能手机应用软件开发等核心课程为基础,将核心课程教育与对应的专业整体统一起来,强调以软件工程项目复现方式进行实践教学,让学生自己成立小组,从头到尾参与到工程化的软件开发的全过程。在三级课程体系中,一级项目中课程注重以单元知识点为基础,利用实训巩固知识点内容;二级项目在单元实训的基础上实现串联,让学生针对具体工程进行程序设计,三级项目在二级项目基础上,进行项目实训和毕业设计,对实训和程序设计内容进行整合,按照工程项目开发流程进行完整的项目开发。在教学过程中体现了知识(Knowledge———专业知识)、能力(Ability———分析与问题的能力,交流与组织协调的能力,主动获取知识的能力,科学高效管理项目的能力,工程实践的能力和参与国际竞争的能力)和职业素质(Professionalism———创新素质、团队素质和敬业素质)的培养。
3.建设开放、立体的网络教育资源平台。由于课堂学习的时间十分有限,教师不可能在授课时间内将某项专业能力发展的所有知识点完全细致地讲解到,应积极激发学生学习的主观能动性,可以通过多种途径和方法给学生提供课后自主拓展学习的平台。因此,建立开放、立体的网络教育资源平台是十分必要的。对于一级项目,我们建议学生自主拓展学习时间不低于学量的1/3,对于二级、三级项目,则建议学生自主拓展学习时间至少为学量的一半。①以网络课程为核心,在网上开通“软件工程专业在线学习中心”,实现校企专家讲座、校内课堂直播及资源点播;②建立“移动互联网软件工程师网上教学论坛”,QQ群,微信群等平台,为学校教师、学生、企业教师及技术人员等提供一个互动的交流平台,让学生遇到困难时可以随时提问随时进行探讨,获得解答;③与企业合作,围绕专业教学目标、课程体系、教学内容、模拟实验实训、教学指导、学习评价等方面来建设各种资源库,包括精品视频公开课、精品课程、网上案例库、素材库、试题库,并进行资源整合,建设成开放、立体的网络教育资源平台,构建立体化育人环境。
4.软件工程实训教学平台与北大青鸟、武汉慧众聚成合作,加强软件工程专业实验室建设,建立软件工程实训教学平台,模拟企业真实工作环境,根据角色划分将实验室分隔成若干个独立的工作区间,如工作区、项目经理区、技术总监区等;优秀教师组建软件工程咨询和辅导团队;对外开展相关的有偿服务(典型情况如CMMI咨询辅导);按软件企业项目开发摸式,进行软件系统开发实训。结合成熟软件产品的开发过程进行体验式教学,结合软件技术的应用和开发进行实训教学,为学生和教师提供软件开发实战平台。
5.学生课外创新实践平台在北大青鸟、武汉慧众聚成实验室基础上,以学校各种学生课外软件大赛(如蓝桥杯)为牵引,通过“课外科研项目实践”课程、设立科研助理、暑假小学期等渠道建设学生课外创新型实践平台,实现本专业学生早进课题、早进实验室、早进团队、早进社会。
6.积极推动外版教材的选用。采用校企合作的方式,共同建设系列化的实训教材,尤其是智能手机应用开发、移动互联网技术方面的实训教材。
二、专业管理路径
计算机系多年来致力于教学体系建设,并取得显著的成绩。计划在未来四年,继续深化改革、拓展创新,逐步形成科学、完备的专业教学体系。重点做好以下工作:
1.基本教学制度优化与创新改革的重点是提高课堂教学质量和完善监查评价制度,形成规范有效的课堂教学行为监管机制;不断完善教师指导制度,切实做到学生从入校到毕业,指导教师不间断地指导学生的学业和职业规划;建立和完善学科带头人、专业负责人、专业课程(群)负责人制度,教学改革研究制度、实验室开放制度,科学研究、社会实践方面的奖励制度,致力于调动学生的研究兴趣,培养学生的知识运用能力与科研创新能力。
2.采用规范性约束与激励结合的模式充分体现以教师为本、激励为主的理念,注重规范性约束与激励相结合,在教学改革、教学质量评价指标体系和评价办法、教师业务水平考核、教学酬金分配、学生学业测定、教学管理制度等方面建立科学合理的激励机制,为师生营造大胆开拓创新的宽松环境;从制度建设方面强化和激励学生实践能力和创新意识自我提升,使每个学生的人格、个性、兴趣和能力都得到尊重与发展。
3.改传统的行政型管理为新型的学术型,实行新型的学术型体制。由熟悉本学科、专业、行业的理论和发展动态与趋势,熟悉对本专业、行业所需人才的专业知识结构和能力需求的专业教师和企业高级技术人员组成教学指导委员会,制订企业人才培养方案、课堂教学质量和监查评价制度。
4.整合网络信息化教学管理平台,分析现有教学过程中存在问题,通过广泛的调查和需求分析,构建新的教学系统结构,完善其功能,使之更有效地服务于教学。开发学生毕业设计选导师系统、实验室系统等,有效促进教学的科学化、规范化和网络化建设,理顺教学管理流程,提升教学水平。
作者:胡静静 郑吉鸿 单位:淮北职业技术学院计算机科学与技术系 淮北职业技术学院招生办公室
[摘要]针对新型本科院校软件工程专业人才培养模式存在的问题,围绕软件工程学科领域的“卓越工程师教学培养计划”和IEEE推出的SWEBOKV3知识体系,以强化学生工程实践能力培养为导向,系统重构软件工程专业课程体系和教学内容,以程序设计不断线为目标,形成“基础实践->综合实践->创新实践->专业实践”的渐进式实践教育体系。
[关键词]软件工程;实践教学;人才培养模式;工程能力
1引言
软件产业是信息产业的重要组成部分,是国民经济信息化的基础。2011年,软件工程成为与计算机科学与技术并列的一级学科和目录内本科专业,可见国家对软件人才的培养越来越重视。目前大部分地方新型本科院校都设置了软件工程专业,但由于受到生源层次、师资类型、办学条件等诸多因素的影响和制约,培养的毕业生的应用能力与用人单位的需求存在矛盾。一方面,企业迫切需要具有实践经验,动手能力强的软件人才,另一方面刚毕业的学生却不能找到合适的工作。当前社会上出现大量的软件人才培训机构,从高校的高年级招收学生,为企业培养具有较强工程实践能力的专门人才,这从另外一个角度也反映了高等教育应用型人才的培养脱离了社会需求的实际,教学内容没有跟上社会发展的步伐,教学方法、教学手段和实践环节等需要进行改革。当前,新型本科院校的软件专业人才培养主要存在以下几个方面问题:
1.1专业定位与实际不符
计算机软件专业的教材、教学计划、课程设置、教学方法从985高校到地方新建本科院校,基本相同,培养目标也基本相似,新建本科院校培养的学生没有自己的特色,操作能力和工程实践能力相对于985和211高校软件专业的学生较弱。
1.2培养模式不适应计算机行业的发展
计算机行业的发展速度非常快,几乎每天都有新的技术、新的产品产生,但计算机软件专业的课程设置却没有大的变化,教材落后于IT技术发展的前沿,课程讲授脱离软件工程的实际,课程体系设计不是以职业化为导向,而是以专业学生发展和研究为导向。
1.3重理论、轻实践
由于学校过分地强调学习、掌握理论知识,导致学生把学习的考试成绩看得比较重,却忽视了实践能力的运用。其次,现在的IT行业注重团队合作,而传统的教育模式往往更注重个人能力的考查,忽视了对学生团队合作精神的培养。
1.4缺少有项目实践经历的师资
目前,高校的教师大都是“从学校走向学校”,缺少实际项目开发的经验。另外,学校与行业和企业联系不够紧密,教师难以及时了解和掌握企业的最新技术发展和体系,致使专业实践能力明显不足。本文探索新型本科院校的软件人才培养模式,从实际出发,以着力培养服务地方经济发展的应用型人才为目标,将工程化教学和职业素质培养作为人才培养的核心任务之一,以软件工程方法为指导,系统设置软件工程理论课程体系和验证、设计、实训、实习等实践环节。
2相关工作
“软件工程”概念最早是由北约组织(NATO)在1968年召开的软件工程会议上,为应对“软件危机”而提出的。二十世纪70年代末至80年代,国外很多大学计算机科学系开始开设软件工程课程,例如,卡内基•梅隆大学建立软件工程硕士教育计划。1991年,ACM和IEEE/CS制定的计算教程(CC1991)将软件工程列为计算学科的9个知识领域之一。1993年,IEEE计算机学会和ACM考虑建设软件工程专业,并成立了软件工程协调委员会(SECC,SoftwareEngineeringCoordinationCom-mittee)。2004年,SECC制定软件工程知识体系(SWEBOK),标志着软件工程学科正式确立[1]。我国软件工程教育研究开始于20世纪80年代,当时部分高校开设了软件工程研究生班。2001年经教育部和国家计委批准,全国成立了35所示范性软件学院(后增加到37所),目标是“培养具有国际竞争能力的多层次实用型软件人才”,推动产学研合作办学模式,积极探索教学模式的改革,实现我国软件人才培养的跨越式发展。2006年教育部成立了软件工程专业教学指导分委员会,开展我国软件工程专业战略发展和专业规范的研究工作。2011年,软件工程学科独立出来,成为与计算机科学与技术并列的一级学科。近年来,国内很多高校在软件工程人才培养模式、实践教育体系、校企合作等方面进行了探索和改革。电子科技大学软件学院陆鑫和傅彦结合CDIO工程教育理念,提出以专业实践能力培养为导向的专业评价手段[2]。合肥学院借鉴德国应用科学大学人才培养经验,提出软件工程模块化教学理念,将软件项目管理分为6项一级能力和60项二级能力,确定不同能力的知识点,并对知识点进行优化和重组,从而形成模块[3]。孙红敏等针对教学质量管理问题,提出构建面向能力培养的软件工程专业教学质量保障体系,从而提高软件人才的培养质量[4]。梁宏涛等提出一种专业导师制的人才培养模式,对民办本科高校的软件人才培养具有借鉴作用[5]。林耀进等针对传统教学模式存在实践内容难以有效衔接问题,提出以项目开发为驱动的多课程联动教学模式[6]。
3专业培养目标和课程体系
3.1培养目标和规格
为适应皖江城市带承接产业专业示范区、合芜蚌自主创新综合试验区以及合肥经济圈等重大发展战略对应用型人才培养的需求,以应用型人才为目标,以提高应用型人才培养质量为核心,对接岗位需求,明晰人才培养目标和规格,优化“平台+模块”课程体系。软件工程专业人才培养目标:本专业立足安徽、面向区域软件产业,以软件工程行业标准为导向,以工程化人才培养为目标,兼顾社会、健康、安全、法律、文化以及环境等因素,培养的毕业生应掌握软件工程专业的基础知识及应用知识,具备分析、设计、开发和解决软件工程问题的能力,有创新创业意识,具有扎实的理论基础、较强的工程能力和良好的科学人文素养,能够在软件行业中从事软件设计与开发、测试和管理等工作。软件工程专业学生培养规格主要瞄准两个岗位:软件测试和软件开发。软件测试岗位要求学生掌握软件测试相关技术,熟悉软件开发流程与项目需求分析,了解软件项目开发管理;会按规范编制技术文档。软件开发岗位要求熟悉软件开发和维护流程,能熟练使用IOS或Android进行移动应用软件开发和调试,熟悉Web项目开发及应用。
3.2模块化课程体系设计
根据学校设立“三大平台”+“八个模块”的课程体系框架,我们构建的基于模块化的软件工程专业课程体系。,1、2、3、4代表四个年级,横向的框代表不同的课程群模块。整个课程体系分成:通识课程(必修、选修)、专业基础、专业核心、专业拓展、综合实践课程、校园文化与社会实践、创新创业与科技活动。具有以下3点特色:(1)程序设计不断线。从大学一年级至三年级,每学期均开设程序设计相关课程,涵盖程序设计基础、Web开发、移动开发、嵌入式系统等领域,全程化、多方位锻炼学生的编程能力。(2)实践环节由浅入深,层次渐进。我校软件专业实践环节包括课程实验、课程设计、综合实训、专业见习/实习、毕业设计等多种形式。(3)创新创业与学术科技活动融入培养方案。定期邀请企业人员来我校进行创新创业讲座,学生参加全国大学生创新创业、互联网+、挑战杯等竞赛项目或者获得CCF软件能力认证、PAT计算机程序设计能力考试等证书进行学分认定。
3.3实践能力培养体系
通过整体规划课程实验、课程设计、综合实训、企业见习/实习、毕业设计等实践环节,建立有效的实践能力训练体系,全面提高学生的工程化实践能力。在新修订的软件工程人才培养方案中,将课程实验从理论课中独立出来,进行独立考核,对于高级语言程序设计、数据结构、Java语言程序设计等语言类课程,引入浙江大学PTA平台(ProgrammingTeachingAssistant),系统支持自动考试、评判。课程设计安排在学期结束前1-2周,布置一个大的作业,2-3个学生一组,共同完成。综合实训课是运用多门课程知识的综合实践类课程,比如:在开设数据结构、Java程序设计、Web程序设计之后,安排软件项目实训课,使学生了解一个完整的软件开发过程。设置创新创业与科技活动模块,鼓励学生积极参加学科竞赛和学术科技活动,要求在大学四年中至少参加一次全国大学生创新创业、互联网+、挑战杯等竞赛活动,或者参与教师主持的科研项目,发表一篇学术论文,或者获得CCF软件能力认证、PAT计算机程序设计能力考试等证书。
4结束语
探索与实践新型本科院校软件人才培养模式,注重培养工程能力强的软件应用人才具有重要的理论和现实意义。本文以软件工程方法学为指导,以工程化应用型人才培养为目标,系统构建模块化软件工程专业课程体系和循序渐进的实践教育体系,切实提高软件人才培养质量。
作者:谢飞 范庆春 单位:合肥师范学院计算机学院
摘要:随着我国科学技术的发展,电子信息技术已经被广泛应用。远程开放教育在时代进步的潮流中,将多媒体信息技术开始软件工程专业应用。软件工程专业是远程开放教育开设的新专业,旨在满足社会需求。笔者结合当前我国对软件人才的迫切需要,提出社会发展进程中存在的问题,针对软件工程专业教学模式进行了探讨。
关键词:远程开放教育;软件工程;专业建设
一、国内软件市场人才要求
我国与印度同属为发展中国家,但是我国的软件出口数量却落后于印度。虽然我国的软件市场在不断丰富和增长,可是软件的整体发展还较为缓慢,仍然处于初级阶段,这为我国的软件市场提供了更为广阔的发展空间,软件工程将会得到相关部门的大力扶持。目前我国的软件市场人才处于较为匮乏时期,高端人才更为稀少。所以,针对国内的现状和市场需求的不断增长,应该开放教育来弥补高校教育中的人才培养疏漏,为更多的人才提供较多的学习机会和成长空间。
二、软件工程专业建设的缺陷
我国计算机软件专业教育与其他发达国家相比,其标准化程度、国家化水平都明显落后。第一,我国软件毕业人员的英语教育水平相对较弱。软件高新产业中,英语是进行交流的第一语言;印度能够出口大批软件,与英语软件人才的储备是紧密相连的。我国的高端人才,在英语的各方面能力都阻碍了国际化的交流。因此,英语水平的提高成为了软件人才外流的重要原因之一。第二,我国的高校教材更新频率相对较低,与软件行业的发展相比,具有严重的滞后性,所以,大批毕业生难以面临企业工作的需求。印度的相关教育模式较之我国,更新频率较快,每年都会进行更新,这就为英语人才的储备提供了客观条件与学习环境。
三、依托电大优势,发挥创新精神
1.教学课程内容的更新。在进行软件专业化教育过程中,教育部门应该依据每个学科与学生的特征,结合实际情况,制定操作性较强的教学计划,防止过度注重理论化。教学方案的制定也应该以数据库知识的储备、软件工程知识的更新以及程序设计的变化为基础。软件工程专业与其它专业相比,具有变化速度快的特点,教学更要应该保持实时更新,与实际社会需求情况接轨。
2.教师队伍素质的提升。软件工程专业人才的培养需要专业性强、实践能力丰富的师资队伍。教师对学生的学习有重要的引导作用,也是教学过程的主要实施者。所以,想要完善相关专业建设,可以从师资队伍入手,以及其知识的掌握深度。软件工程的特征决定了基本理论与方法,通常都要经过很长时间的经验积累。因此,中青年教师不仅仅是课程的教授者,也是程序的设计与软件开发工程的负责人,所以,教学课程还是以年轻教师担任较为适宜。
3.教师教学手段的丰富。教学手段是否合理在很大程度上决定了教学效果的好坏,也是教学工作中必不可少的环节。软件工程专业,很多课程都具备较强的实践性,有些课程除理论教学外,上机实习和动手实践是更为有效的教学手段。多媒体技术的发展为课程的教授提供了客观条件,教师可以利用多媒体教学手段,将内容贯穿于课堂当中,必要时进行上机操作。由于软件专业工程专业性较强,学校可以邀请负责人进行讲解,帮助学生理解。
4.实践应用性的增强。实践教学是以理论教学为基础,深度培养学生分析问题与解决问题的能力,强化他们的专业实践,设置必要的教学环节,进行师生之间的互动。实践教学的地位极其重要,加强实践教学,将教学质量的提高作为日常工作的工作内容,进行全面的统筹,加强各方面的协调,确保实践教学能够落实到各个环节。实践教学基地是实践教学环节得到落实的重要条件,应该依据软件工程课程,进行科学、合理的安排,并建设实践教学基地。产学研三者的紧密结合,对于提升学校的教学质量、教师的整体素质以及整个师资队伍的科研水平有极大的便利。教科研相长,产教结合,更加有利于培养学生掌握理论知识,增强应用型人才,减少学生适应社会的时间,提高就业的竞争性,满足社会需求。因此,在专业建设期间,需要加强校企合作,扩大产学研合作范围,力争有更大成果。
四、结语
综上所述,优秀的师资队伍,需要客观条件的搭建来实现,建立好一个基地是为我们开设软件工程专业的重要保障。相关部门与单位要坚持开拓创新,探索新思路,为社会培养出更加优秀的人才,实现我国人才兴国战略。
作者:马宜佟 单位:沈阳市第三十六中学
摘要:程序设计课程群是软件工程专业系列课程的重要组成部分,建设该课程群有利于提高学生程序设计能力,进而提高就业竞争力。分析了学生在学习程序设计课程中的一些问题,提出了程序设计课程群的主要知识和能力体系要求,通过精讲课程主要内容、大规模开展程序设计训练、课程设计、改革考核与评价方式等方法进行课程群教学改革,取得了较好的教学效果。
关键词:软件工程;程序设计;课程群;建设;实践
软件工程专业的培养目标是面向我国软件产业培养急需的工程应用型人才。软件产业的发展要求学生具备较强的系统分析、设计、开发与维护能力[1]。为培养学生软件系统方面的相关能力,许多高校的软件工程专业都设置了系列课程模块,如程序设计课程模块、网络技术课程模块、计算机体系和操作系统课程模块、软件工程课程模块等,这些模块往往是一些单独课程的组合,有很多学生学了这门课程,又忘记了那门课程,到毕业时专业能力达不到社会所要求的层次。程序设计课程群是软件工程专业系列课程的重要组成部分,其承载的技能培养目标是专业培养的子目标[2],处于非常重要的地位。课程群建设是专业建设的一部分[3],有利于打通课程知识脉络,避免课程内容重复或前后脱节,使前后连贯,内容融合,进而获得整体优势[4]。程序设计课程群主要培养计算思维能力、算法设计与分析能力、程序设计与实现能力和系统分析开发能力[5]。学生通过程序设计课程群的学习,可掌握1~2门程序设计语言,更进一步理解程序设计方法,熟练掌握常用的数据结构和算法,形成良好的程序设计风格,可独立分析、设计和开发中小型软件系统。所以对程序设计课程群进行研究并积极实践对专业培养目标的实现具有重要现实意义。
1问题分析
目前,大多数高校信息类相关专业都开设了程序设计系列课程,一般为C语言程序设计、数据结构与算法、java程序设计等。许多高校都将C程序设计作为第一门程序设计课程[6],一般安排在第一学期或者第二学期,学完C语言之后,再学其他程序设计课程,如数据结构等。由于C语言本身比较灵活且语法内容比较多,对于初学者来说并不太好掌握。一些教师在授课过程中,没有站在软件设计的高度思考教学内容,往往过多地强调语言成分的语法和语义,而忽视了计算思维能力[7]的培养,使学生从开始就扎进程序设计语言的细枝末节中去,忽略了软件工程思想的渗透,到最后学生掌握了一些语法,却不能写出较为优美的程序或没有形成较好的程序设计思维和风格。算法是程序的灵魂,数据结构和算法在课程群中具有基础和核心地位[8]。在实际教学过程中,学生普遍反映数据结构和算法课程抽象难学,在学习和实际应用中出现的问题比较多,很难写出能正确运行的程序,学习过程中成就感不强,学完之后还是不知道如何应用,很难达到预期的效果。由于在前期的学习中,程序设计基础没有打牢,对常用的数据结构和算法没有真正掌握,模块化程序设计思维没有有效建立,良好的程序设计风格没有形成,导致后续的高级面向对象语言程序设计学习很难深入,最终导致软件分析与设计能力得不到有效的提升。
2程序设计课程群建设
我校软件工程专业采取校企合作办学模式,由吉首大学和中软国际共同建设,企业参与人才培养的全过程,在具体实施过程中,学校侧重于理论教学部分,企业侧重于实践教学部分[9]。程序设计课程群是软件工程专业课程体系的重要组成部分,企业参与讨论与建设,确定该课程群以软件设计能力培养为主线,以C语言程序设计、数据结构、面向对象技术、算法设计与分析几门课程为基础组建课程群,C语言程序设计开设在第一、二学期,数据结构、面向对象技术、算法设计与分析分别开设在第三、四、五学期,第六学期可开设JavaWeb程序设计或Web程序设计,使课程群在能力构建和开设形式方面形成一个不间断的体系。
3程序设计课程群实施
3.1精讲课程主要内容,提高程序设计能力
课程组教师首先需要站在软件分析与设计的角度研究各门课程在课程群中的地位和作用,把课程群中的系列课程作为一个有机的整体,研究各门课程的主要教学内容,针对课程重点、难点、疑惑点进行精讲,做到理论与实践课并重,有效提高学生程序设计水平。在课程群系列课程中,由于第一门课程是后续系列课程的基础,所以学生必须掌握它。在C语言的教学中,要渗透软件分析与设计的思想,把握程序的主要框架,不纠缠于一些细枝末节的语法。函数是C语言教学中的重点,需要重点突破,从模块设计的角度来考虑函数设计,对于一个具体的函数,则要掌握函数的返回类型、参数类型以及参数个数。如用函数处理一个数组时,需要传递数组的首地址和数组的规模,首地址用指针表示,数组的规模则有两种表示方法,一是数组的长度,二是数组的起始下标和结束下标,这两种方式可能会分别应用到不同的地方,如果教师一直不提示第二种方法,则将来学生在写数组做参数的递归程序时可能会遇到困难。从多年的教学实践来看,如果学生真正掌握了函数设计方法,再加上必要的算法知识,一般情况下,程序设计就会变得得心应手而且十分有趣;对于数据结构课程,采取以数据存储(内存)为主线的方法,将重点放在数据的存储和相关算法方面,在算法实现时渗透模块化的思想,需注意头文件和实现文件的定义,因为数据结构内容具有很强的连贯性且程序的初始化工作较多,如链表的具体应用则先要建立链表、树的遍历和节点的查找等则先要建立树、图的遍历和最短路径及关键路径等则先要建立图,在实验过程中有意识地把一些基础工作放入头文件,则会极大地提高实验的效率;在面向对象技术教学中,以面向对象程序设计的方法为核心,以语言中的面向对象机制为主要内容,在适当的时候引入《ThinkinginC++》、《EffectiveC++》、《ThinkinginJa-va》等优秀书籍中的一些思想和经验,要注重面向对象程序设计过程中大的程序框架的合理性以及具体处理算法的正确性;在讲授算法设计与分析的时候,应集中精力将主要算法讲透,直到学生学懂为止,在实现算法时,应充分运用面向对象设计的思想,将算法封装在类中;在web程序设计教学中,采用案例驱动的方式,精讲软件项目设计中的主要方法和主要问题,培养学生工程化设计思想。精讲的目的是让学生多练,精讲之后要布置任务并为学生提供练习环境和相关指导,必须充分发挥教师主导和学生主体作用,教师要认真检查学生的作业、实验和练习情况,及时纠正问题,引导学生运用软件工程的思想设计程序,培养学生良好的程序设计思维和程序设计风格,激发学生自觉学习和实现相关算法,最终提高程序设计能力。
3.2大规模开展程序设计训练,培养程序设计能力
为培养学生算法设计与分析能力,学院在晚上和周末开放了实验室,在实验室搭建了ACM在线测评系统(ACMOnlineJudgeSystem),并接入了校园网,结合C程序设计、数据结构与算法等课程部署了大量习题。学院利用课余时间,有计划组织学生进入实验室进行编程训练,并为每次训练配备了指导教师。平时,学生也可以在寝室登录平台进行训练。教师在讲授C程序设计等课程的时候,要求学生利用课余时间在ACM平台上完成至少上百道题的训练,并将完成情况计入课程的平时成绩。通过大规模开展在线程序设计训练,学生的程序设计能力有了明显的提高。
3.3开展课程设计训练,培养工程化设计思想
在课程群中除开设理论课程对应的实验项目之外,还针对整门课程开设了综合性课程设计项目,如C语言课程设计、面向对象技术课程设计、javaweb课程设计,单个课程设计周期为1-4周。学院课程设计项目主要由企业教师指导完成,该类项目采用分组形式,在组内模拟软件企业运行模式设置相关岗位角色,学生在仿真企业环境中,利用仿真的软件开发项目,进行轮岗和角色体验,培养学生的软件工程应用能力、软件项目开发与测试能力、职业素质等,从而使学生熟悉软件项目开发流程和规范,养成良好的软件开发习惯。课程设计结束时,要求学生演示并讲解自己的项目开发情况,由学院教师和企业教师组成评定小组进行评分。
3.4改革考核与评价方式,理论与实践、平时与期末相结合
理论与实践相结合。程序设计课程群内的课程都是实践性很强的课程,其目的是运用所学的知识解决实际问题,决定了课程的期末考核要综合考虑理论和实践两部分内容。理论部分主要考查学生对基本概念的理解和对基本知识的掌握情况,实践部分侧重考查学生的综合应用能力,这两部分成绩都在期末完成,占课程总成绩的60%左右。平时与期末相结合。期末考核重在体现学习的结果,平时成绩则侧重于体现学习过程,在课程总成绩中,平时成绩占40%左右,即一门课程约有40分来自平时的学习过程。平时成绩一般由出勤、作业和平时实验情况、课程设计情况组成。在学期开始第一堂课的时候将课程评分方式告知每一个学生,必须抓紧平时的学习,若平时分小于20分,则取消课程考试资格或直接将课程总成绩记为不及格。
4结语
程序设计课程群对培养学生计算思维能力、算法设计与分析能力、系统分析与设计能力具有重要作用。本文分析了学生在课程群学习中遇到的一些问题,从软件分析与设计的角度对课程群进行建设与改革,提出了以C语言程序设计、数据结构、面向对象技术、算法设计与分析等几门课程为基础组建程序设计课程群,给出了课程群的主要知识与能力体系要求,通过精讲课程主要内容、大规模有组织地开展程序设计训练、企业教师指导课程设计、改革考核与评价方式等方法进行教学改革,学生的程序设计能力得了到较大的提高。
作者:徐洪智 蔡国民 单位:吉首大学软件服务外包学院
0引言随着现代社会的进步和各种移动终端设备的使用,当前市场对大数据处理和移动技术支持方面的人才提出了新的要求。一些大型软件企业正在实施大数据处理的软件项目及对相应软件产品移动需求的支持,如淘宝、百度等。高校软件工程专业作为与软件行业关系最为密切的专业,为使本专业毕业生具备更好的大数据处理和移动开发能力,更适应软件行业的需求,应该以新的行业需求为导向,开展有针对性的相关软件开发实践。目前,软件工程专业实践教学主要以工程化项目进行驱动。文献[1]提出以项目实践为中心的软件工程课程教学大纲的制定以及项目实践教学方法、教学内容和要求,全面提高计算机专业学生的工程化能力。文献[2]提出理论与项目实践结合的案例教学方法,即通过设计适合学生的项目课题,让学生在项目中应用所学的理论和技术,从而更牢固地掌握知识。文献[3]提出以开发工程项目为主线开展软件工程专业课程设计实践教学的方法。文献[4]提出统一实践课程的课程群建设思路,根据具体案例详细阐述整合实践课程的实施方案。这些项目实施方法在一定程度上增强了学生的动手实践能力,在培养学生的开发能力上取得了一定的效果,但仍然存在一些问题,如项目的设置比较简单、项目要求与企业需求有较大差距、项目开发过程缺乏有效的过程管理等。这些问题的存在使得软件工程专业学生的专业素质和能力不能完全满足软件行业的现实需求。
1教学中的问题
1.1项目的设置不够深入,同质化现象严重
不同教学阶段设置的配套项目要求大致相似,即按照软件工程的7层瀑布模型开发管理信息系统。系统主要的功能是用户将数据插入数据库、简单处理数据、显示数据至界面,这些功能要求具有较强的同质性。
1.2项目的规模和难度较小,与企业项目有较大差距
以往教学用项目一般要求学生开发如注册、登录等简单模块,涉及的功能规模较小,体现不出软件工程化的特征,特别是软件功能几乎不涉及大量数据有效存储和处理的问题,项目难度较小,与现实需求脱节。随着大数据时代的到来,软件系统需要处理的数据量越来越大,如果项目不体现大数据量、数据的有效存储及复杂处理过程,则项目不能反映市场特点;而且,如果软件项目的实施不支持移动技术,那么也无法适应日益增长的移动用户群体需求。
1.3项目的开发以个人为主,缺少团队开发的环节
以往教学过程中的项目开发大多由学生个体独立完成,极少由学生团队完成。当前的工程化软件一般规模较大,必须组建开发团队来完成。团队开发项目会使项目开发的本质发生改变,这不仅指团队有多个成员,更重要的是团队成员的分工以及成员之间的沟通与协同能力,涉及人员配置、共同策划、协作完成、进度控制等项目管理中各个环节,这是进行大型软件项目开发必需的技能和经验。
2企业项目驱动教学改革措施
项目的实践必须本着循序渐进的原则,按照教学大纲的要求进行专业基础知识的教学和实践,而在重要实践环节引入企业项目,引导学生按照企业的要求进行软件项目的开发实践,从而培养出满足企业岗位需求的合格人才。教师通过市场调查及与合作企业的交流,掌握企业项目的需求,可选择具有海量数据存储、处理、移动开发等功能的企业项目作为实践项目。当项目确定后,为每个项目形成需求文档,方便随时启动项目。
2.1项目设置逐步深入,消除同质化
项目实践从本科一年级或二年级开始起步,这个阶段的学生只掌握了基础知识,项目实践更注重于程序逻辑的编写。项目规模相对较小,但强调程序逻辑。本阶段可以设置一些逻辑性、趣味性强的游戏程序开发项目,以激发学生的学习兴趣,促进学生掌握项目开发必需的基础知识,如基于Android系统的手机游戏开发。在本科二年级第2学期到三年级第1学期的项目实践中期,学生已经具备一定的软件开发能力,能够从事数据库的设计和操作、Web项目开发,可以进行相对大型项目的项目开发。本阶段可以设置网络流量分析系统的开发项目,该系统用于监控交换机、路由器、IP网络在指定时间内的Netflow数据流,通过统计分析这些流量数据可以查看不同应用软件的流量信息,如QQ、电子邮件、FTP应用占用网络带宽的情况等。系统运行的过程中需要不停采集设备、网络的流量数据报,因此需要存储和处理海量数据。该项目的实践对锻炼学生的处理海量数据存储、检索等技能有积极作用。在本科三年级第2学期到四年级第1学期的项目实践后期,学生已经具备一定的大数据量问题处理能力并学会企业开发技术,此时配置数据量大、复杂的实际企业项目,可以进一步提高学生的开发能力和积累项目经验,为毕业和就业奠定基础。本阶段设置的实践项目为网络舆情分析系统。该系统通过主动采集主要网络媒体(如新浪、凤凰、搜狐等)信息,获取当前网络舆论情报并将关注的舆论热点通过曲线图、饼图、热点地图等统计图表加以显示,使用户能够直观地掌握所关注的网络舆情。该系统可以应用于政府部门,也可以应用于商业领域,如汽车厂商可以通过本系统了解自己产品的问题(如大众汽车断轴、DSG问题所引发的网络舆情热点)并采取相应的解决方案。上述3个阶段项目侧重点不同,项目难度逐层深入,有利于逐步提升学生的实践能力,缩小学生能力与企业用人需求之间的差距。
2.2以企业项目要求实施项目
1)起步阶段项目。实践项目开发需要软件开发人员具有良好的面向对象分析、编程的能力,能够熟练掌握集合的使用,了解图形界面编程,掌握多线程程序设计和文件操作,特别是具有一定的基于Android的移动开发经验。本阶段项目是基于Android的手机游戏开发,项目所需的知识体系如下:①面向对象编程,对游戏中所有对象进行分析、抽象,形成抽象类、接口、具体类以及类与类之间的关系;②集合与常用算法,对象的存储涉及集合以及相关算法,如遍历、排序、查找等;③图形界面编程,游戏对象需要以图形界面编程来展示;④多线程编程,不同的游戏对象有不同的行为,需要利用多线程处理;⑤文件操作,游戏对象需要加载文件中的信息形成游戏场景等;⑥移动开发,将游戏迁移至Android平台,使游戏软件能够为手机用户所使用。游戏开发能够提升学生开发软件的兴趣,有利于学生系统、深入地掌握软件开发必要的知识,为后续的学习和开发打下良好的基础,特别是通过将游戏移植到Android平台可以初步掌握移动开发的基本知识,为后续的移动开发打下必要的基础。
2)中级阶段项目。实践项目开发需要具备良好的JSP/Servlet、数据库设计与实现、数据处理以及相关行业开发经验。网络流量分析系统是一个网络管理行业的工具软件,需要对行业需求有所了解,重要的是软件开发人员需要学会抓取和解析Netflow协议报文、存储并处理海量数据,因此项目具有较大的难度。该项目的知识点主要包括以下方面:①Web开发技术,掌握JSP/Servlet开发技术,能够进行Web应用编程;②数据库技术,掌握主流的数据库产品如Oracle、MySQL等,熟练进行系统分析和数据库设计,熟练使用编程语言进行数据库的访问;③Netflow协议,理解Netflow协议,掌握协议中每个字段的意义;④数据抓取与解析,学会使用模拟设备发Netflow数据报的方法并通过编程抓取数据报,根据Netflow协议格式解析数据报,将每个字段的内容插入数据库;⑤海量数据处理,系统时刻抓取设备和IP组的数据报,因此需要存储的数据量非常庞大,考虑到系统对查询的要求较高,因而海量的数据需要按时间规则自动建立表格,每条流量数据根据其时间戳确定要插入的表格;⑥数据处理,将信息按设备、IP组进行统计处理并以图形加以显示,使用户能够直观地掌握网络流量情况。项目的实施涉及数据报的抓取、解析以及海量数据存储与处理等问题,项目难度接近企业真实项目,有利于迅速提高学生的实践能力。
3)高级阶段项目。该阶段项目为网络舆情分析系统,以大数据、移动开发为出发点而设计,是真实的企业项目,贴合企业需求。项目的主要技术点有以下方面:①行业项目需求分析,分析项目的功能、运行环境、适用行业等;②数据来源,项目所涉及的数据主要来自网络,如新浪、搜狐、凤凰等主流媒体网站,项目需要从这些网站上抓取舆论数据,进行舆情分析;③数据抓取技术,需要利用网络蜘蛛等工具进行网络数据抓取并使用内存数据库提高数据插入的效率;④数据存储,主流媒体的海量数据用一个数据表难以有效地存储和检索,因此需要按时间段来分表存放,这样才能够为数据表格建立索引,方便用户进行高效查询;⑤数据分析,对海量数据进行检索和分析,形成对用户有用的统计信息;⑥权限管理,通过系统授予/撤销权限等操作限制用户的行为;⑦移动支持,系统能够支持舆情关注人员在任意时刻、任何地点通过Android平台进行访问。
2.3以团队为基础实施项目的开发
随着软件规模的增加,软件的复杂性也随之增加,因此工程化软件开发方式是以团队开发为基础。团队开发涉及项目功能分割、团队成员协作、人员调配、进度控制等具体要求,是一种过程比较复杂、难度较大的开发方式,因此学生需要进行适当的培训和训练才能成功地实施大型项目。团队开发训练包括如下几个部分:①团队的组建,团队成员之间要相互了解、相互信任,能够为完成同一目标而通力协作;②团队协作,多个成员共同完成一个软件项目需要使用合适的源代码管理服务器,团队成员通过客户机共享服务器中的资源进行开发,由于多人同时修改源代码,可能造成不同成员的修改发生冲突,团队开发人员要制订和熟练掌握团队开发规则,如遵循修改的操作顺序、应用多配置文件等,以避免编程过程发生冲突;③任务分割,团队成员在项目负责人的领导下进行充分的交流,将项目划分为多个可同时进行的子任务,团队各成员负责若干部分进行并行开发;④进度控制与人员调配,项目成员每天提交进度报告给项目负责人,项目负责人根据报告掌握项目进度并根据项目进度情况进行适当的人员调配,使项目能够顺利进行。网络流量分析系统和网络舆情分析系统,项目规模较大、难度较高,需要进行团队开发。其中,网络流量分析系统工作量相对稍小,可以组建3人的团队进行开发;而网络舆情分析系统复杂程度较高,需要进行Web版本的开发和Android版本的开发,需要组建至少5人以上的开发团队。通过团队方式开发企业项目可以提高学生的项目领导能力和项目管理能力,进一步提高学生的专业素质。
3结语
为了保证项目的质量,不同阶段的项目侧重点不同,降低了项目的同质性,而且项目的需求规模较大,满足了行业软件的需求,特别是海量数据处理和移动开发的引入缩小了与企业项目之间的差距;同时,通过团队开发训练,学生具备了项目领导、项目管理、团队开发的基本能力,掌握了企业需要的团队开发技能,所具备的专业素质更符合企业的岗位需求,增强了就业能力。
作者:邓泽林 单位:长沙理工大学
随着全球信息技术的快速发展,全球产业转移正快速地由制造业转向到服务业,服务外包因此得到了极大的发展空间。近些年来,参与服务外包的发展中国家越来越多,服务外包产生的影响也越来越受到人们的重视。近几年中国政府对服务外包的发展极为重视。财政部、国家税务总局等五部委的《关于技术先进型服务企业有关税收政策问题的通知》(财税[2009]63号)文件明确规定了ITO、BPO及KPO范围。信息技术外包ITO(InformationTechnologyOutsourcing)包括软件研发及外包、信息技术研发服务外包和信息系统运营维护外包等;商业流程外包BPO(BusinessProcessOutsourcing)包括企业业务流程设计服务、企业内部管理服务、企业运营服务和企业供应链服务等;以及外包演变过程中出现的新形式——知识流程外包KPO(KnowledgeProcessOutsourcing)包括知识产权研究、工业设计、分析和数据挖掘、工程设计等。其中信息技术外包ITO是最基本的外包方式,技术及数据的处理一般都属于信息技术外包ITO范围,信息技术外包(ITO)仍占主导地位,主要集中在软件研发外包和信息系统运营维护外包。而且2009年教育部、商务部在联合的《关于加强服务外包人才培养促进高校毕业生就业工作的若干意见》中早就指出:高校要根据服务外包产业快速发展的需要,调整服务外包人才培养结构,扩大服务外包人才培养规模,着力提高人才培养质量。因此,软件工程专业建设中,首先要在设计或制定专业人才培养方案时从专业人才培养方案的基本要素来寻找一些切入点,来更好地实现高等教育及职业教育为社会及行业发展的基本服务和基本支撑。
1人才培养目标
人才培养目标就是依据社会需求和自身特点所确定的,在一定时期内的人才培养定位及服务面向。以我校拟申报软件工程本科专业为例,首先,要根据学校的办学定位和专业设置部门的实际情况,设定基本知识和能力要求;其次,是有针对性对具体服务面向提出要求。自2009年,国务院批准武汉成为中国服务外包示范城市以来,武汉已成为中国软件及服务外包业增长最快、集聚度最高的城市之一。仅2014年全市的服务外包产业营业收入就达1020亿元,同比增长41.8%。其中离岸服务外包业务合同金额达5.6亿美元,同比增长10%。全市从事服务外包的企业已达900家,员工数量超过20万人。作为武汉实施光谷和硅谷“双谷合作”战略的核心启动项目——武汉软件新城,也同时获批为服务外包示范基地。该软件新城位于花山生态新城,于2012年5月开工建设,总面积约3.4km2,是中部最大的软件开发、服务外包基地。作为武汉地区的一所高校,加强服务外包在软件工程专业建设中的地位尤其重要。于是,我们的专业人才培养目标可以大致确定为:本专业按照软件行业和现代服务业发展对人才的要求,立足武汉,面向湖北地区,培养适应软件市场发展需要,德、智、体、美全面发展,掌握自然科学和人文社科基础知识,掌握计算机科学基础理论、软件工程专业的基础知识及应用知识,具有软件开发能力以及软件开发实践的初步经验和项目组织的基本能力,能够在软件行业和信息技术外包ITO企事业单位,从事软件设计、开发、管理、服务等工作的应用型高素质人才。
2人才培养规格及特色
人才培养规格是实现人才培养目标的工作细化,主要说明本专业毕业生应具备的专业知识、专业能力和专业核心能力、基本素质等。根据我们与IT企业多年合作的经历,我们认为当今IT行业对毕业生的能力需求有:
(1)学生应掌握IT行业中使用的主流软件开发平台与工具,这包括:(1)C语言和VC++;
(2)JAVA语言或基于JSP或SSH的WEB开发技术,甚至是基于.NET的WEB开发技术;
(3)近年来需求旺盛的手机软件开发技术;同时对掌握嵌入式软件开发和软件测试技术与工具的学生的需求量也很大。同时,IT行业也十分看重学生具有的软件项目开发经历。除此之外也比较看重学生的外语水平和人际交往能力。于是结合服务外包的具体要求,我们可以从以下几个方面来展示特色。
(1)知识结构包括基础理论知识水平、专业知识与技能要求、综合应用知识要求。除专业相关的内容外,可以强调的是:了解软件服务外包的全过程,掌握信息技术外包ITO的JAVA方向基本知识。
(2)能力结构包括社会能力(语言文字表达能力、信息获取与处理能力、组织协调与现场处理能力、沟通交流与社会适应能力等),专业能力(专业基本能力、专项能力、岗位综合能力等)。强调:具备从事软件工程实践所需的实际专业能力;能阅读本专业的英文文献资料,具备一定的外语应用能力;具备团队协作能力、人际交往和沟通能力以及一定的组织管理能力;了解软件工程学科的前沿技术和软件行业的发展动态,具备一定的创新意识和创新能力;具备终身学习的能力。
(3)素质结构包括的基本素质有政治素质、人文素质、科学素质、心理素质、身体素质等;专业素质有法律意识、职业道德、安全质量意识、环境意识、敬业精神、团队精神等。强调:具有健全的人格、强壮的体魄,良好的道德修养、心理素质和行为习惯,具有诚实守信、热爱劳动、遵纪守法、自律谦让、团结协作的品质。使学生具备工作岗位需求的基本素质和特殊素质。
(4)职业资格要求主要要求本专业学生必须积极参加各类综合素质培养及教育活动,并至少获得一定的学分才能毕业。如要求参加全国计算机技术与软件专业技术资格(水平)考试,或者全国服务外包岗位专业考试至少取得以下一项专业相关从业资格证书:软件设计师、软件测试师、信息技术外包ITO软件工程师、信息技术外包ITO软件测试工程师等。
3人才培养模式
人才培养模式主要是结合计算机类专业特色定位,从“校企合作、产学研结合、学工交替、订单培养”等方面提炼出的专业人才培养模式,主要是实现人才培养目标通过的途径。经过我们研究和讨论,要特别加强学校与学生未来就业行业的沟通。我们的人才培养模式可以概括为:通过校企合作,构建“123”人才培养模式,即1个培养目标,以培养从事软件设计、开发、管理、服务等工作的应用型高级专门人才为目标;2个主要就业面向,将信息技术外包ITO企事业与移动互联网软件开发企事业的岗位要求和行业的职业标准融入课程体系,提高学生上岗后的适应能力;3个评价主体,由学生、学校、企事业单位共同参与教学质量管理制度的制定,以及教学过程的监督与评价。
4课程
课程是融入服务外包行业特色的具体体现,其中包含课程的名称,设置相关课程的目的。根据课程的分类我们可以从以下几个方面进行。
(1)通识课。通识教育有两层意义:其一是指一种通才的教育;其二是指一种全人的教育。通识课主要是指高等学校根据各专业培养目标而开设的自然科学和人文社会科学基本理论、基本技能的课程,它具体体现在前面所述的人才培养规格及特色中。
(2)学科基础课。学科基础课由各院系根据专业人才培养目标及主干学科的基本要求来拟定的,由学校教学主管部门如教务处来统筹协调。同一学科类的各个专业,基础课程大体相同。为达到软件工程专业的人才培养目标和基本要求,本专业的基础课都规定为专业必修课。为提高教育质量,使软件工程专业的学生具有适应社会发展的能力,学校都很重视加强学科专业基础课程的教学,往往会选派经验丰富、水平较高的教师担任基础课教学工作,对专业学生发展起到引领作用。在具体设置中,可以考虑服务外包概论,甚至信息技术外包ITO接包操作实务之类的课程。以适应服务外包行业的需要。
(3)专业课专业课(含专业拓展课及综合应用课)一般由院系根据专业人才培养目标和特色定位自主拟定。专业课与通识课、学科基础课只是相对而言的。专业课是指高等学校根据所制定的培养目标而开设的专业知识和专业技能课程,设置专业课的是让学生掌握必需的专业基本理论、专业基本知识和专业基本技能,以达到让学生了解专业的前沿科学技术与发展趋势的目的,通过专业培养,提高学生分析、解决本专业范围内一般问题的能力。因为计算机类学科的发展比较迅速,且专业知识的范围也广泛,在多数情况下,专业课的设置并非一成不变。因为在学校里只能打下一定专业知识基础,而更专业或特殊的知识,需要我们的学生在未来的实际工作岗位上继续学习。因此,软件工程专业的课程设置及主要的课程内容,应在一段时期内具有一定的稳定性。在专业必修课的具体设置中,可考虑如信息技术外包ITO其一方向的相关课程的嵌入,如:面向对象编程、Java程序设计、JavaEE应用开发技术、软件体系结构与设计、软件测试、软件项目管理等。在专业拓展课具体设置中,可考虑如信息技术外包ITO未来面对的形形色色的开发对象的嵌入,如:网页与网站建设、商务信息管理系统设计与实现、移动网络应用开发、嵌入式系统开发等。在专业综合应用课具体设置中,可考虑如信息技术外包ITO其一方向的系统训练课程的嵌入,如:服务外包项目实务、软件项目综合开发实践等。
5结语
根据国家商务部2014年公布的数据:2014年1~8月,我国承接离岸信息技术外包(ITO)、知识流程外包(KPO)和业务流程外包(BPO)执行金额分别为169.3亿美元、108.7亿美元和45.6亿美元,占比分别为52.3%、33.6%和14.1%,同比分别增长23%、32.4%和28.5%。信息技术外包仍占主导地位,知识产权研究、分析学和数据挖掘、动漫及网游设计研发、工业设计等知识流程外包业务增长迅速。正是基于这样的考虑,我们在进行计算机类专业为服务外包行业/软件行业服务的研究同时,不仅仅局限在计算机类专业人才培养方案这个层面上,而是应将软件工程专业建设放入一个更广的社会背景中去思考。根据高等教育的目的,不断研究专业人才培养模式,从课程嵌入、校中厂(在校内用企业标准培养学生)、厂中校(在企业中进一步加强学生能力的提高)三个不同层次上进一步拓展计算机类专业发展为服务外包行业的发展提供支撑,以及学校与服务外包企业的融合。
作者:周天宏 张思卿 戴歆 单位:武汉商学院信息工程系 郑州科技学院信息工程学院
随着经济、社会和技术的不断发展,骨干高职院校课程建设和人才培养模式必须及时调整,满足企业和学生的双重需求。课程建设和人才培养模式建设不能闭门造车,学习兄弟院校优秀的经验是一条捷径,但是也不能完全照搬,毕竟各个院校所处的区域不同,社会、经济、文化等发展程度上参差不齐,人才培养模式和课程建设必须从区域企业需求、院校实际情况、专业基础等客观情况出发。
一、目前高职院校软件工程专业建设存在的问题
高职院校经过十几年的高速发展,数量上和规模上有了显著提高,为社会和企业提供了大量技能型人才,为中华民族的腾飞做出了巨大贡献。近几年由于信息技术特别是软件外包发展迅速,软件工程专业也得到蓬勃的发展,具有计算机和信息背景的高职院校普遍开设了软件工程专业。近5年通过调查研究,发现在人才培养方面软件工程专业存在一系列以下问题:
1、院校“同质化”严重,职业特色不够突出
高职院校人才培养模式和专业设置关系着高职院校的生存和发展,在高等教育“大众化”的背景下,高职院校的专业设置“同质化”十分严重,完全没有从区域经济发展的需求,盲目投入巨大资金,造成资源上巨大浪费。现在大部分高职院校软件专业学生的理念、知识和技能与社会和企业的期望差距非常大,无法满足需求,造成“结构性失调”。[2]大部分高职院校重理论,轻实践,照搬本科院校的学历教育,没有显著突出职业教育的特点。高职教育培养第一线需要的高级应用型人才,培养的人才具备与高等教育相适应的基本知识、理论和技能,掌握相应的新知识、新技能和新工艺,有较强的实践动手能力和分析、解决生产实际问题的能力。
2、人才培养与社会要求差距大矛盾突出
企业为了适应社会发展和满足消费者的需求,对创新型高素质技能人才需求极大,提高产品的质量,获取最大的回报。但现实是企业招聘到合适人才的机会越来越小,而中国每年近七百万的大学毕生业大部分找不到合适的工作,特别是高职院校学生就业质量不理想。社会对技术人才需求量非常大和大部分学生找不到合适工作的矛盾,主要原因是院校的人才培养模式落后,所传授知识难以满足社会企业的需求,不适应社会需求。
3、“工学结合、校企合作”层次低
高职院校领导都具有“工学结合、校企合作”的思维,但受多个因素影响,大部分高职院校的校企合作仅仅停留在备忘录或纸面协议,即使有,深度也不够,仅仅是高职院校利用寒暑假组织学生到企业定岗实习,学生在流水线从事简单枯燥的机械式工作,与期望相差甚远,未能充分体现工学结合理念,效果不佳。
二、提高高职院校软件工程专业人才培养模式和课程建设的措施
《教育部财政部关于进一步推进“国家示范性高等职业院校建设计划”实施工作的通知》(教高[2010]8号)中,对专业建设与人才培养模式改革提出了具体要求。陕西职业技术学院通过对软件专业人才培养模式和课程体系建设进行深度改革,促进软件专业建设更上一层楼,具体措施如下:
1、吃透政府政策,立足服务区域产业,准确定位专业建设方向
软件外包产业被称为“高科技、高附加值的绿色产业”。根据《西安软件外包发展规划(2010-2015年)》,西安市软件外包发展的总体定位是成为国际软件外包中心之一,总体目标是成为全球知名的软件外包中心城市,服务区域经济发展。学院应抓住这次契机,为西安市软件外包储备人才。软件产业包含软件测试、软件架构、物联网、云计算、虚拟化、智能穿戴、智能家电、APP等新兴产业。在国家政策的鼓励和社会需求的推动下,新兴产业在未来的10年将有较大发展,成为中国由“中国制造”向“中国智造”产业升级的主力军。但是,目前许多高职院校软件工程专业的课程极少涉及上述核心技术,无法满足社会和企业的需求。高职院校为了提高软件专业学生的就业率和就业质量,领导和教师必须密切关注软件产业的发展趋势和热点,深入到软件企业调研,了解企业真正需求,预测未来几年软件发展热度,做好课程建设方面的知识储备。
2、紧抓市场契机,与企业深度合作,力求实现共赢
陕西职业技术学院处在西部大开发的桥头堡——西安,新的形势为西部高职院校和西部企业提供了合作机会,院校改变办学思维,主动要求相关企业合作办学,特别是软件外包的相关企业,使企业参与到软件工程专业的课程建设和人才培养上,学院根据企业反馈的信息,及时调整课程结构,优化教学内容,使学生第一时间学习企业最急需的技术,毕业后及时融入企业工作环境中,合作企业每年优先从毕业学生中选取优秀毕业生充实到企业中,分享合作办学的硕果,由被动转化为主动,解决“院校热、企业冷”的校企合作办学难题。高职院校对学生的培养目标定位在实用性“蓝领”人才,侧重于培养学生的专业技能、动手能力,院校和企业之间可以采取“联合办学”、“订单式”培养模式,使学生实际操作能力显著提高,院校的就业率得到保障。软件工程专业学生可以与西安高新区多家软件外包企业签订联合办学协议,为学生多方面提供带薪顶岗实习,熟悉企业工作流程。顶岗实习学生可以从最简单的软件测试开始,熟悉软件测试中的单元测试、模块测试、系统测试和集成测试等方法,掌握黑盒测试和白盒测试等技术,为自己就业奠定基础。
3、构建“校企合作,工学结合”的专业课程体系
“校企合作,工学结合”模式是目前高职院校相对成熟的人才培养模式,突出了高职院校教育的职业化,是高职院校公认的“金”模式,核心是骨干课程建设,使毕业生第一时间胜任工作岗位,短时间内获得更大发展空间。
三、结束语
高职院校人才培养要按照“企业引入学校、把课堂搬进车间”的思路,把握领会各级政府的政策方针,同时积极寻求与企业的合作,进一步加大校外实训基地的建设。经过几年建设,使陕西职业技术学院软件工程专业的人才培养质量显著提高,课程建设更加丰富,更加多元化,软件工程专业毕业生就业率与就业质量均有所突破,为陕西省区域经济的蓬勃发展添砖加瓦,尽自己应尽的责任。
作者:赵艳妮 郭华磊 单位:陕西职业技术学院计算机科学系 西安通信学院信息服务系
1前言
软件工程专业是一门实用性强、与企业紧密关联的专业,其教学质量决定了所培养学生的专业素养和软件从业能力,因此,大量的教学人员从各个方面对软件工程教学进行改革探讨。文献[1]提出以企业需求为导向的Java课程教学改革,着眼于提高学生实践能力;文献[2-3]提出基于教学团队增强系列课程的教学效果;文献[4]提出软件工程专业实践教学改革,提高学生的实践能力;文献[5]提出软件工程教学改革与学生能力评估的探讨,更客观地反映教学效果。在软件工程专业中,Java相关课程构成一组系列课程。这些课程之间相互关联,前修课程的教学效果直接影响后续课程的教学质量。因此,系列课程的教学计划、教学大纲、教学团队等元素要整体规划、统一安排,将多门课程的教学方案做成一个整体,使得各课程之间能够紧密衔接、阶段项目之间合理进阶,最终改善Java系列课程的整体教学效果。
2教学中的问题
课程之间衔接不够紧密,课程安排不合理传统Java系列课程在安排上存在如下问题。
1)课程安排不够紧密。在这些课程之间还要穿插DoNet课程,如C#语言程序设计、程序设计等,因此,学生在学习一段时间的Java课程后,又需要进行一段时间DoNet课程的学习,使得之前学习的Java知识容易被遗忘,教学效果差。
2)课程安排不合理。如JavaWeb程序设计与XML与Web应用这两门课程的讲解内容都是Web开发,可以合并为一门课程,而Java框架技术则是一门重要的企业级开发课程,没有配置足够的课时来保证课程的教学质量。教师之间缺乏交流,教学内容衔接不够Java系列课程较多,参与教学的教师较多,教师之间没有进行频繁有效的交流,这不仅使得教师之间难以形成良好的团队教学氛围,而且影响了教学效果。
1)教学内容衔接不够顺畅。不同课程的教师往往按照自己的理解进行课程的讲解,没有考虑到该课程的教学如何为后续课程的学习打下坚实基础。
2)教学案例进阶不够。不同教师的教学案例设计只考虑到本课程的教学需要,没有考虑本课程在整个系列课程中的位置,使得不同课程的教学案例之间几乎不存在继承性和延续性,导致整体教学难以有效地进阶,无法将学生的能力提升到一个新的高度。实践环节不够深入,难以提升学生的动手实践能力实践环节是保障学生动手能力的重要环节,安排适合每门课程的阶段项目是非常必要的。目前的教学没有考虑不同课程的实践重点,只注重完成相似功能的项目,难以深入全面地改善学生的实践能力。
3教学改革措施
修订教学计划针对传统Java教学中课程之间衔接不够紧密,课程安排不合理的问题,对教学计划进行修订,主要内容如下。
1)基础知识部分。该部分的课程为Java程序设计,课程主要讲解Java语言的基础,设定课时为64课时,开设时间为第一学年第二学期。
2)高级开发部分。本部分的课程将JavaWeb程序开发与XML与Web应用合并为Java高级编程,教学内容主要是结合Web开发技术讲解抽象的组件开发技术,如表单封装、数据库模板、数据库连接池、分页等常用组件的编写。本环节安排的课时为80课时,开设时间为第二学年第一学期。
3)企业级开发部分。企业开发部分的课程为Java框架技术(40学时)和Java框架技术实践(32学时),开设时间为第二学年的第二学期。通过这一系列的教学计划修订,在没有总体增加课时的基础上达到对Java系列课程教学方案的优化,使得Java系列课程能够尽早、连续地开出,而且每门主要课程的学习课时得到显著增加,有力地保证教学质量的提升。基于教学团队开发教学内容参与Java系列课程教学的教师自动组建教学团队,按照团队制订的教学大纲进行教学是保证Java系列课程深入有效开展的重要因素。因此,制订符合每个阶段课程的教学大纲是非常重要的。具体来说,每个阶段的教学内容和教学案例如下所示。
1)Java程序设计阶段:本阶段的知识点涉及较多,主要是Java基本编程思想以及为后续课程准备的知识点,如多线程、反射、设计模式等,主要内容如下所示。
①类与对象:掌握必要的抽象思维,学会类的编写和对象的使用;掌握类的继承与多态,学会使用多态进行程序设计。相应的案例是利用多态对不同的形状对象计算面积。
②集合类:掌握常用的集合类及相关的数据结构,理解集合框架的结构及集合内存动态增长原理,理解迭代模式。案例是编程模拟实现ArrayList类。
③输入输出:掌握字符、字节的输入输出,理解装饰者模式。案例是编程将学生对象输出到外部文件。
④多线程:多线程的创建、并发控制等。案例是利用多线程模拟多用户取钱业务。
⑤反射机制:掌握利用反射创建对象、反射调用对象方法。案例是将文件中的学生信息自动封装为学生对象。
⑥设计模式:模板模式和动态模式。案例是利用动态模式实现中介卖票程序。
2)Java高级编程阶段。本阶段利用第一阶段的学习内容开展深入的学习,以Web开发为基础讲解重要组件的编程实现,如利用反射、模板模式和动态模式实现表单封装组件、JDBCTemplate组件、分页组件等,主要内容如下所示。
①DHTML:掌握HTML标签、CSS、Javascript语法,特别是Javascript面向对象的特征。案例是制作网上商城主页。
②Web服务器:介绍Web服务器Tomcat,并使用网络编程的方法模拟服务器的响应。
③数据库访问技术:掌握利用JDBCAPI进行数据库操作,结合模板模式来重构数据访问的代码。案例是利用模板模式、反射机制等实现JDBCTemplate组件;结合动态模式实现数据库连接池组件,并利用多线程测试多用户环境下程序的性能。
④Web开发技术:掌握Servlet的开发方法,掌握客户端参数的传递和获取。案例是结合反射机制实现表单自动封装组件。
⑤标签技术:掌握JavaBean、EL表达式和标准标签,掌握数据显示的方法。案例是使用反射和JavaBean实现分页组件。
3)Java框架技术阶段。本阶段主要讲解Struts、Spring和Hibernate三个框架的使用,其创新点在于通过利用Java高级编程阶段编写的组件来对框架主要功能进行模拟实现,主要内容如下。
①Struts框架:掌握Struts的基本使用方法,理解Struts的工作流程,掌握Struts标签、国际化、输入验证等。案例是利用表单封装组件、反射机制、多态、XML等技术实现Struts框架功能。
②Hibernate框架:掌握Hibernate主要功能,特别是对象—关系映射ORM功能、缓存、HQL查询、数据库锁、继承、关联等。案例是利用JDBCTemplate组件和XML解析实现Hibernate的ORM功能;利用CGLib动态模式模拟实现Hibernate的延迟加载(Lazy)功能。
③Spring框架:掌握Spring的主要功能,包括控制反转IoC、面向切面编程AOP等。案例是利用AOP实现系统日志管理、数据库事务管理。
④框架整合:将Struts、Spring、Hibernate框架进行整合,并利用团队开发环境进行项目开发。从这个教学大纲的设计来看,基于团队开发的教学大纲在内容上是无缝衔接的,将Java系列的主要课程整合为一个整体,有利于快速进阶,改善学生的知识结构,提高学生的编程素质,达到企业用人需求。阶段项目的设计对于每门课程,设计合适的、递进的阶段项目,对于深入掌握相关知识点,强化学生的动手能力是至关重要的。
1)Java程序设计阶段。本阶段课程主要涉及Java语言的编程基础,综合掌握相应的知识点对于理解Java编程思想、后续Java课程的学习有重要的作用。这一阶段知识点众多,而且受知识结构的限制,难以实施大规模的项目,为此,考虑将这些零碎的知识点结合起来,形成一个有实际意义的游戏项目——《飞机大战》。通过游戏的开发,学生可以在界面上看到程序中对象的状态,直观地了解程序运行的过程;而且通过游戏开发,可以提高学生的程序设计兴趣;更重要的是,游戏集合了众多知识点,这为学生深入掌握和应用这些知识点提供了一个良好的平台。
2)Java高级编程阶段。本阶段主要进行可复用Java组件的开发,因此,项目的设计与考查侧重于Java组件的实践。这一阶段的项目是《网上商城》,该项目的背景清楚,学生大都具有使用网上商城的经历,这能够直观地帮助学生了解项目的需求背景。将Web组件开发技术应用至《网上商城》的开发,不仅可以使学生深入地掌握Java编程思想,而且可以大大加快软件项目的开发。项目在考查时不仅需要查看项目的外观、功能等因素,还需要了解学生在实践中是否设计、开发并应用了Java组件,这对于提高学生的抽象思维能力以及动手实践能力具有重要的意义。
3)Java框架技术阶段。本阶段主要是框架技术的使用,需要设计大型的企业级开发项目,并利用Java框架技术实践课程来保证项目的实施质量。本阶段的项目为《企业固定资产管理》,通过提供项目需求,使学生掌握软件需求分析的步骤和方法,提高学生的系统分析能力和实践能力。通过第二、三阶段课程的学习,学生能够深入理解框架的原理,而通过第三阶段项目的开发,则能使学生熟练掌握软件开发的步骤与方法、框架技术的使用,从而达到企业的用人需求。
4结束语
本文针对Java语言系列课程在教学过程中出现的问题,提出一系列的优化方案。通过优化已有课程,使Java系列课程能够尽早、连续地开出;通过建设Java教学团队,设计了符合Java系列课程特点的教学大纲,使得Java系列课程的知识点形成一个渐进的整体;通过阶段项目的设计,使得学生能够在不同的阶段开发侧重点不同的项目,显著提高学生的动手实践能力。通过这一系列的改革措施,学生在学完Java系列课程后对Java语言、数据库技术、设计模式、框架技术具有更好的综合应用能力,对于提高学生的综合素质有明显的改善作用。
作者:邓泽林 谢中科
1.校企合作人才培养方法
1.1构建新型人才培养方案
软件行业发展和更新很快,短时间内就有可能发生很大的变化,高校在课程设置等方面常常落后于企业,如何缩小学校培养的软件专业学生和企业对软件开发人员的要求的差距是亟需解决的一个问题。为了解决这一问题,武昌理工学院信息工程学院软件工程系围绕软件工程专业建设目标,联合软件开发企业高级技术人员和高级管理人员,成立校企联合教学指导委员会,共同制定符合企业培养目标的人才培养方案。软件开发公司参与人才培养方案的设计与讨论,根据企业的需求动态调整教学方案,设置符合企业人才需求的课程,打破了高校关起门来,独立设置人才培养方案的习惯,打破了人才培养方案相对稳定的惯例,校企合作联合制定的人才培养方案更符合企业的对人才的需求。除了企业参与人才培养方案的制定外,武昌理工学院信息工程学院经常组织担任企业软件工程师的校友,对人才培养方案提建议,优化和完善人才培养方案。实践证明,使用学校和企业共同设计的人才培养方案后,学生的应用能力更强,更能适应企业的要求。
1.2构建真实的教学平台
为了提高学生的实际动手能力,尽快适应真实的企业开发。武昌理工学院信息工程构建了基于真实的工作环境(RealWorkingEnvironment)、真实的实训项目(RealTrainingProjects)、真实的项目经理(RealPro-jectManagers)、真实的工作压力(RealWorkPressure)和真实的工作机会(RealJobOpportunities)的教学平台。武昌理工学院信息工程学院在项目实训期间,严格按照企业办公环境的设计,每人一个独立机位,严格执行企业的考勤制度和工作汇报制度,真实感受企业的工作环境。实训的项目来源于企业的真实项目,让学生在完整的项目中学习整个项目中的每一个具体环节,充分体验一个团队的工作过程。在实训中,每个项目都由企业项目经理和学校教师共同指导,带队的项目经理都具有丰富的项目经验。在实训项目中有模拟客户代表给项目组施加真实的项目压力,当遇到客户需求变更等问题时,考察其应变能力。在实训项目中,根据学生的表现,企业提供真实的就业机会,企业直接与学生签约。通过构建真实的教学平台,进行企业级真实项目实训,让学生体验真实的软件开发过程,积累实践经验,培养创新能力。通过项目实训,学生普遍感到充满信心,能够很快适应企业的开发环境。
1.3改进教学体系
ACM和IEEE-CS的SWEBOK定义了软件工程学科的内涵。武昌理工学院信息工程学院教学委员会基于SWEBOOK框架,按照软件工程课程群的总体知识结构,重新设计了应用型软件工程专业的教学体系,对课程的学时、权重、结构,以及课程间的衔接进行了改进。将课程分为通过通识类、开发类和工程类三类,分阶段逐步培养学生的应用能力。同时注重基础理论课、课程实验课、课程设计、企业项目实训、毕业综合实践等环节,通过这些环节,将课堂理论学习和企业实训相结合,使学生具有坚实的理论基础的同时,具有一定的实践能力,实现理论与实践的零衔接。基础理论课主要涉及软件工程专业需要的基础和公共性知识。这部分知识主要由学校任课教师讲授。课程实验主要针对具体课程的某些知识点设计的实验。其可分为验证性实验、设计性实验、综合性实验。通过课程实验,学生掌握常用的软件开发语言,了解常用的算法,具备软件开发的基本技能。课程设计采用小组分组,自组团队,模拟企业设置岗位角色,进行角色体验,熟悉软件开发流程,培养软件开发能力。企业项目实训在企业高级开发技术人才的指导下,以真实项目为载体,进行软件设计,提升软件开发能力。在毕业设计和毕业实习阶段,采取企业开发人员和学校教师组成的双导师制,企业导师为其提供综合实践环境,提供技术指导。学校教师负责毕业设计相关文档的指导工作。
1.4编写合适的校企合作教材
目前,市面上校企合作的教材比较少,有的教材并没有企业软件开发人员真正参与,有的教材理论多,实践少,有的教材难以适应企业对软件开发人才的需求。武昌理工学院信息工程学院与企业开发人员紧密合作,编写精品实训教材。实训教材以项目为中心,案例教学,项目驱动。根据真实工作的情景设计课程的学习情景,确定教材的框架和编写模式。根据真实的岗位需求,编写典型的工作任务。根据真实的能力需求,培养学生的应用能力,并根据市场需求变化,分阶段更新教材。
1.5加强师资建设
建立一支结构合理、水平高的师资队伍是校企合作人才培养的重要保证,武昌理工学院信息工程学院构建了由学校教师、企业研发工程师和项目经理、高水平的外聘教师三部分组成的高质量应用型师资队伍。学校十分重视双师型师资队伍的建设,鼓励教师到合作单位进行学习和交流,参与企业项目研发,增强实践经验,鼓励教师到企业挂职锻炼和进行“产、学、研”合作,鼓励企业不定期为教师开设培训班。学校依托甲骨文工程(武昌理工学院)工程实践教育中心等的合作,每年固定派教师参加学习。学校还直接从企业引进实践经验丰富的优秀开发人员担任实训课程教师,充实教师队伍。
1.6加强第二课堂建设
除了课程教学和项目实训外,积极引导学生利用课外时间,自组团队、自拟课题、自主设计、自主管理完成项目设计,对于创新型强、应用水平高的项目学校进行创新学分奖励,并可冲抵相关课程积分。学校积极引导学生参加各种软件设计大赛、信息技术应用水平大赛等比赛,以赛促学,通过竞赛活动,提高学生发现问趧趶题和解决问题的能力,提升其应用能力。
1.7鼓励学生获取职业技能证书
对于应用型人才来说,职业技能证书十分重要。学校积极鼓励学生参加各种技能培训,获得技能证书。为了学生顺利获取接技能证书,学校安排集中时间进行集训,组织经验丰富的教师进行考前辅导。在人才培养方案中,对获得指定证书的学生,允许进行课程置换或学分奖励。不少学生在毕业时获得了思科的CCNP、CCIE和甲骨文的OCP、OCM证书,应用能力有较大提高。
1.8建立质量监控体系
改变以前单纯教学督导对教学质量进行监控的现状,由企业开发、管理人员和教学督导共同组成质量监控小组,负责对教学质量进行监控,根据项目实战的特点,检查教学大纲和教学课件,不定期组织质量监控小组进课堂听课,了解学生反馈,不断完善教学质量。企业随时与学校沟通,反馈教学各个环节中的意见和建议,对教学和实训中的各个环节质量进行监控。
2.结语
武昌理工学院信息工程学院软件工程系建立校企联合指导委员会,构建新型人才培养方案。基于真实的教学平台进行企业真实项目实训。通过改进教学体系,编写合适的校企合作教材,加强师资队伍建设和第二课程建设,鼓励学生获取职业技能证书,并建立质量监控体系,保证校企合作的效果。通过几年的校企合作实践证明,学生的应用能力和创新水平有较大的提高,毕业生的就业率和就业水平进步很大,校企合作的人才培养模式成效显著。
作者:阳小兰 钱程 吴亮 单位:武昌理工学院信息工程学院
1传统软件工程专业教学模式的不足
1.1重理论,轻实践
传统的软件工程专业教学模式体系的基本教学理念是重视“知识型”人才的培养,注重书本知识理论的讲解与掌握,忽视了学生实践能力的培养。从当前高校软件工程专业教学情况来看,课程的授课基本都是沿用理论课——实验课单一模式。其中理论课所占课时比重更大,实验课则相对弱化,而且理论课与实验课的结合程度并不十分密切。所占课时比重较小的实验课教学环节,多数都是进行教师事先安排的实验内容,教师在实验过程中给予指导和评测。实践证明,这种课程教学模式下出来的软件工程技术人员与时展要求严重脱节,难以满足社会对综合软件设计与开发技能人才的需求。
1.2教学目的脱离实际
软件工程专业课程是计算机软件、硬件和网络相结合,注重软件理论和软件开发能力的培养,该课程强调理论与实践的有机整合。然而,现行的高校在开展软件工程专业教学活动的过程中,却难以做到理论教学与实践教学的统一,时有厚此薄彼的现象发生。在强化理论知识的同时忽略了实践的应用,在加强实践教学的同时却又忽略了理论知识的融合。不能很好的体现高校软件工程专业教学围绕职业发展需要开发,职业特点不明确,不利于学生综合能力的发展。
2高校如何进行软件工程专业教学改革的几点做法
2.1以社会需求为导向,革新教学模式
随着社会经济体系结构的进一步调整,软件行业人才标准也在不断发生变化,高校教育的人才培养目标,人才培养方式也应跟随时代变化进行相应的改革。教师在进行授课的过程中,要跳出“教”的禁锢,从总体目标出发,进行学科教育向职业化教育的转型,以满足社会对高级软件工程师的需求。
(1)根据社会需求,合理确定知识结构
知识结构是培养学生专业技能和提高学生素质能力的前提与基础,知识结构的确定,必须满足社会发展需求,以“必需、够用”为度,并要求学生具备足够的发展潜质。因此,教师在分析知识结构时,应首先以社会发展对软件工程专业的能力要求为出发点,通过对能力进行分解,分析满足学生能力发展要求应具备哪方面的知识和技能,对相应的知识点进行组织,合理确定知识结构,努力体现“三个面向”,面向软件工程专业发展最新潮流、面向软件工程专业市场需求、面向软件工程专业社会实践。例如在开展实践教学活动时,教师除了要重视企业级应用开发的服务器端技术,还要注重云计算技术同JavaEE的整合,同时跟随当前应用开发趋重RIA的特点,加强Flex技术的学习,增加JavaEE和Flex的架构集成技术,以培养市场严重紧缺的具有相当经验的RIA、云计算开发人员。通过对知识结构的合理确定,让学生不但能够对专业知识进行巩固,还能紧贴IT行业的用人需求,从而真正达到学以致用的目标。
(2)以能力要求和知识结构为主线,构建动态教学计划
教学计划是各教学环节的整体设计方案,包括有:课程体系、实践教学环节等的时间分配和次序安排。软件工程专业教师在设计教学计划时,应以本专业能力要求和知识结构为主线,进行教学计划的调整,给以学生明确的思维方向,让学生能够参与到教学的全过程并在课堂教学活动中获得最大的收获。一方面,教师可以注重课程体系的国际化,引进10门美国著名高校卡内基梅隆大学(CMU)软件工程专业的课程,通过与传统教学模式的融合,进一步提高教学水平。另一方面,教师可以注重课程体系的先进性与及时性,定期召开合作伙伴峰会,企业参与人才培养方案和教学计划的制定及审阅,保证课程教学体系与专业信息的及时更新,做到因材施教。
2.2采用案例教学法,通过实例开展学习
案例教学法是指在学生掌握了解相关基本知识和分析技术的能力基础上,通过教师的精心策略和指导,根据教学目的和教学内容,运用经典案例,把学生带入特定教学情景进行分析,通过学生的自主探究和小组合作,进一步提高技术技能水平,同时培养学生沟通能力和协作精神的一种教学方式。软件工程专业教学以培养学生实践、动手能力为主要途径。在实践教学环节,通过案例教学,能把知识点与例子相结合,使学生从个案的分析、比较中,更深入地了解软件系统开发与管理过程,最终达到技术和知识点的掌握。如:《JAVA程序设计》课程的教学时,JAVA程序设计以编程为主,如果照搬教材内容,只会让教师讲得枯燥,学生听得乏味。通过融入案例进行教学,可以在向学生灌输编程语言知识点的同时,进一步培养学生分析问题和解决问题的综合能力,进而激发学生的创新能力。2.3强化实践教学环节,提高应用型人才专业技能。据有关数据显示,目前,我国对软件人才的需求已达20万,并且以每年20%左右的速度增长。在未来5年内,合格软件人才的需求将远大于供给。在中国十大IT职场人气职位中,软件工程师位列第一位,软件工程人才的就业前景十分乐观。然而,各大企业在面向各大高校招聘软件工程应用型技术人才时,普遍注重学生的综合实践能力。对于如何把学生培养成为受企业青睐的技术型人才,强化教学活动中的实践教学环节,提高应用型人才专业技能,是促使学生综合实践能力全面发展的必有之路。因此,一方面教师在开展教学活动的过程中引入现代化教学手段和仿真实验教学手段,调整教学重点,发挥软件工程专业实践教学的中心地位。另一方面可以进一步加大实验室对学生的开放力度,尽可能地为学生创设动手实践的氛围、为学生提供更多的动手实践机会。同时,还可以开展大型综合实验、综合实训、企业实习、毕业设计等实践教学内容教学,通过开设大型综合性的实验课程或综合实训课程、组织学生到Ⅱ企业顶岗实习、利用所学知识进行项目开发的能力和就业竞争能力。
2.4加强教学队伍的建设
高校软件工程专业教学水平的高低,取决于教师队伍的素质,他们素质的高低将直接影响到课堂教学活动的开展和学生能力的培养。因此,加强高校教学队伍建设,强化教师业务培训,提高教师的业务水平,是顺应教学改革的重要举措之一。首先,学校要组织鼓励软件工程专业教师加强学习、钻研业务,掌握教学技能,提高他们的教学水平和教学技巧。同时,学校加大对软件工程专业教育的投入,多组织高校软件工程专业教师参加省级培训、校级培训等再培训工作,着手培养基础好、教学技能优秀、有事业心、敬岗爱业的专业教师,增强软件工程专业教学师资力量。
3结束语
随着社会现代化进程的不断加快,社会对软件工程技术人才的要求也越来越严格。高校作为我国高等素质人才的重要培训基地,必须着力于教学模式的革新,提高课程教学质量,培养全面发展的应用型软件开发与管理人才,以适应社会对软件工程专业人才的发展需要。
作者:蓝斌 单位:同济大学
1专业教学改革与教学研究
在专业教学内容上,遵循以软件工程学科为主线、以社会需求为导向、与其他学科进行充分交叉的模式,构建科学、合理的课程体系,分别创建软件工程理论课程群、软件工程技术课程群、软件工程实验课程群,按课程群成立研究小组,通过调研、讨论,并结合软件行业的需求,设置软件工程专业的课程群,并制订相应的教学计划和大纲,构建适应行业需求的课程体系,使课程教学更具规范,提高课程教学质量。在专业建设上,继续追踪软件技术的前沿,注重软件技术、嵌入式系统、通信技术的发展。这些教学理念和专业建设思路继续贯穿在本专业的课程体系中,以进一步提高学生的素质和质量。在软件工程学科的基础上,考虑相关学科交叉性,同时注重对本学科人才需求的现状以及未来变化调整的调查分析,主动进行本学科结构和专业结构的调整。
在实际教学过程中,积极推进“以教师为主导、学生为主体”的教学方法改革,重视学生独立思考和创造思维的培养,采用“问题牵引、项目驱动”教学方法、积极采用多媒体课件与教学网站辅助教学方式,教学中加强符合学生特点的个性化教学及指导方式,通过课程大作业、课程设计等方式,使学生根据自己的兴趣和爱好选择题目进行学习,激发学生学习兴趣,提高教师教学效率,全面提升教学水平。
2实践教学建设规划
结合我院办学特色,以软件工程能力培养为核心和切入点,依照国家软件工程人才培养标准和我院软件工程专业人才培养方案,设计软件工程专业实践教学体系,主要如下:
(1)明确软件工程人才培养的工程能力要求依照国家软件工程人才培养标准和我院软件工程专业人才培养方案,细化软件工程人才培养的知识与能力结构,特别是工程能力的知识体系。
(2)制定与工程能力培养相配套的课程实践教学大纲紧密结合软件工程专业工程能力培养要求,突出软件工程项目实践,制定与软件工程能力培养相一致的课程实践教学大纲,使专业的理论教学与实践教学形成一个有机的整体,相辅相成。
(3)构建适用于应用型本科,具有软件工程专业特色的“层次化、模块化、渐进式”的实践教学体系制订“层次化、模块化、渐进式”的实践教学体系建设方案,实现学生实践训练不间断,教学内容从“工程认识”到“基础训练”,最后到“综合创新训练”,由低到高、由单一到综合、在不同阶段将理论和实践有机结合,满足“实践—认识—再实践—再认识”的认识论规律。
(4)改革实践教学模式、教学内容和教学方法实施“以工程项目为核心、学生为主体、学用合一”的实践教学模式。推进教学改革,按工程问题、工程案例和工程项目组织实践教学内容,通过项目引出知识点,结合学生科技活动、教师科研项目,让学生参与项目的构思、设计、实施和运行,提升其工程设计能力。
3结语
计算机软件专业的发展,从基础上决定着信息化建设进程;改革人才培养方案,构建经济社会发展需要的课程体系,进行软件工程专业建设,对于我国的信息化建设进程具有十分重要的基础意义。
作者:闫俊伢 单位:山西大学商务学院