软件开发基础知识范文
时间:2023-05-17 11:32:18
导语:如何才能写好一篇软件开发基础知识,这就需要搜集整理更多的资料和文献,欢迎阅读由公文云整理的十篇范文,供你借鉴。
篇1
一、系统计划:它包括系统定义及分析、可行性研究和实施计划报告的编写。1、系统定义是制定软件计划的第一步,它应决定所开发软件的总目标,其任务包括首先是确定所开发软件的总体要求和适用范围,描述所开发软件与外界接口的关系;其次是确定所需硬件和软件的支持,对开发的进度和成本作初步估计;第三是分析系统的可行性是否确定所开发软件与原软件的兼容性或其它关系;最后是确定所开发软件的性能与其内部复杂性之间的折中关系。2、可行性研究它包括技术可行性、经济可行性及社会可行性方面。技术可行性是研究应弄清现有技术条件能否顺利完成开发工作,对参加开发工作的人员应有哪些技术方面的要求。硬件配置能否满足开发的需要,估计的进度是否恰当以及对用户的技术方面的要求是否合理等等;经济可行性研究的目的是希望以最小的开发成本取得最佳的经济效益的软件产品;社会可行性研究则是指所开发的软件项目是否涉及到版权纠纷等法律问题,这样的软件产品投入运行后,对生产、管理或经营体制带来有什么社会影响。3、实施计划报告的编写是开发进度、人员投入计划、人员的组织及其资源的利用作个计划报告提纲。
二、系统需求分析:需求分析的任务在于完全地弄清用户对软件系统的确切需求,它具有三大特点:准确性和一致性;清晰性和没有二义性;直观、易读和易于修改。比如,你首先要知道做这个项目是为了解决什么问题;测试案例中应该输入什么数据等等,为了清楚地知道这些需求,你经常要和客户、项目经理交流等。需求分析的步骤:1、通过对现实环境的调查研究,获得当前系统的具体模型;2、去掉具体模型中的非本质因素,抽象于当前系统的逻辑模型;3、分析当前系统与目标的差别,建立目标系统的逻辑模型;4、对目标系统进行完善和补充,并写出完整的需求说明;5、对需求说明进行复审,直到确认文档齐全,并且符合用户的全部需求为止。
三、系统设计:主要分成两步即概要设计(总体设计或结构设计)和详细设计。概要设计阶段应着重解决实现需求的程序模块设计问题,如何把被开发软件系统划分成若干模块,并决定模块的接口,模块间的相互关系以及模块之间传递的信息。详细设计则是要决定每个模块内部的具体算法。经概要设计和详细设计完成后,需要进行必要的阶段评审,其目的在于使设计发生问题能够及时发现并得到及时的解决。实际上软件设计的主要任务是就是将软件分解成模块,该模块是指能实现某个功能的数据和程序说明、可执行程序的程序单元。
四、系统编码:系统编码即编程序是软件开发的最终目标,是产生能在计算机执行的程序,其目的是使用选定的程序设计语言,把模块的过程性描述翻译为用该语言书定的源程序。实质上,软件=程序+文档。编码的目的是产生程序,其余阶段是产生文档。软件编码是指把软件设计转换成计算机可接受的程序,写成以某一程序设计语言表示的“源程序清单”。能充分了解软件开发语言、工具特性和编程风格,有助于开发工具的选择以及保证软件产品的开发质量。
五、系统测试:包括测试的方法与技术和测试步骤。测试在软件生命期中占重要地位,不仅是因为测试阶段占的时间、花费的人力和成本占软件开发的比重很大,而且它直接影响着软件的质量。程序中许多细微的地方要求绝对正确无误,不能半点马虎。软件开发工作在测试以前已经历了制定计划、需求分析、设计和编码等许多阶段,每一个人的思维不可能绝对周密,而不可能不出现差错,更不用说,在大中型软件开发项目中,系统内各部分之间、各种数据之间、各种人员之间存在着复杂的关系,因而目前可采用的开发方法都不能完全避免发生差错。1、测试的方法与技术主要是机器测试与人工测试和白盒测试与黑盒测试。机器测试是在设定的测试数据上执行被测程序的过程,又称为动态测试。人工测试并不是可有可无的,为了节约计算机机时采取的权宜措施。它是机器测试的准备,也是程序测试中不可缺少的环节。而白盒法和黑盒法主要依据是软件的功能或软件行为描述,发现软件的接口、功能和结构错误。其中接口错误包括内部、外部借口、资源管理、集成化以及系统错误。2、测试步骤。分单元测试(模块测试)、综合测试、确认测试和系统测试四部分组成。它是整个计算机系统(包括软件与硬件)的测试,可与系统的安装和验收结合进行。测试的目的是让你知道,什么时候算是完成了,这样可以及时知道你是否真的完成。
测试是软件开发时期最繁重的任务,也是保证软件可靠性最主要的手段,测试的目的是发现程序的错误,而不是证明程序没有错误,软件的测试通常分散在3个阶段进行。编码阶段完成单元测试,包括静态分析与动态测试。
篇2
关键词:《软件工程》 教学改革 理论教学 实践教学
中图分类号:S762.2 文献标识码:A 文章编号:1672-3791(2012)10(c)-0146-02
随着社会信息化技术的普及和软件产业的迅速发展,软件产业成为信息产业中增长最快的领域,然而高端软件人才的匮乏严重阻碍了我国IT企业的发展,因此提高软件行业从业人员具备必要的软件开发、维护与项目管理的能力尤为重要[1]。《软件工程》是高校计算机相关专业开设的一门专业核心课程,旨在培养学生理解和掌握软件工程的理论、技术和方法,应用工程的思维进行软件开发、管理和维护。为了顺应当前软件工程教育国际化和工程化的发展的需求,高等院校需要切实加强软件工程课程的创新与改革,这对软件工程人才的培养至关重要。
当前《软件工程》课程教学中存在的一系列问题,直接影响了教育质量和教学效果。具体表现为:教学内容重理论而轻实践,不能有效地培养学生软件开发技能[2];教学案例缺乏完整性和实用性,不能帮助学生从整体上全面理解软件开发的各环节及其之间的关联[3];实践教学也缺乏系统性和针对性,不能将基本原理融入当前软件实际案例中去讲解,教学内容与软件工程实践有明显的差距等。因此,迫切需要对教学体系进行改革,形成一个融基础理论、实验教学、工程实践为一体的整体培养机制,让学生的基础知识、科学素养、专业知识、创新能力、工程能力和职业素质都得到全面均衡的发展[4]。本文将从理论教学、实践教学以及教学评价几个方面进行改革与探索。
1 理论教学探索与思考
为了满足当前软件工程教育国际化和工程化的发展要求,《软件工程》教学以IEEE的软件工程知识体系为基础,结合基础知识、先进技术和工程实践等方面构建该门课程的知识体系。《软件工程》课程知识体系分为基础、应用、实践三个部分。基础部分为理论教学,根据教学目的和教学要求,采用案例及问题驱动等教学方法,讲解软件工程的理论基础知识,包括软件生命周期各个阶段、软件质量和软件项目管理等核心内容,通过案例的分析,促进学生的独立思考,提高其对理论知识的理解和掌握。应用部分是以当前流行的统一开发过程、面向对象技术和UML语言为核心,融入实际案例,Rational Rose、Visio、Project、SVN、Loadrunner等软件工程工具和环境,使学生掌握当前先进的软件工程方法与技术。实践部分要求学生分组组建团队协作完成一个软件系统的开发,让学生从“可实践”软件工程的角度学习和运用软件工程的思想和现代技术解决软件开发问题,拥有识别、分析和解决具体问题的能力。《软件工程》课程知识体系如图1所示。
单纯地讲授《软件工程》的理论和方法显得枯燥且难以理解,若能通过一些软件开发案例对理论知识进行形象的表述,不仅能让学生易于理解这些理论和方法,亦能建立软件开发的系统化与工程化观念和质量意识。那么如何收集经典案例以及采纳何种教学方法是关系理论教学成败的关键因素。首先案例的选择与设计要有针对性,如结构化和面向对象,这两种方法侧重知识点不同讲解所贯穿的典型案例应不同,其次案例的选取应是学生熟悉的领域且它的实用性能激发学生的求知欲和兴趣。如在软件工程技术方面,作者结合学生成绩管理信息系统、宿舍水电费管理系统、教学管理系统等,论述需求分析、软件体系结构设计、用户界面设计、详细设计和软件测试等内容,重点讨论基于案例的面向对象方法和组件技术。采用何种教学方法应根据具体的知识点而定,如以IBM初期系统开发失败的缘由为例利用问题驱动法引出软件工程的概念和原理;对于软件开发工具Rational Rose的介绍则采用项目驱动法。因此,在理论教学中,把抽象的知识尽量形象化、案例化,采用引导式、探索式、讨论式和交互式等教学方式营造融洽轻松的学习氛围,鼓励学生独立思考,查阅资料,细心体会当前软件工程的精髓。
2 实践教学内容创新模式
应用部分和实践部分均属于实践教学,在此教学过程中,实施项目驱动教学法,实验设计以项目开发为主,模拟企业软件的项目管理和开发过程,碰到问题困难,进行师生互动讨论寻找解决方案,开发完成通过成果展示来进行教学评价,整个过程使学生初步体验到一个软件项目开发的全过程。实践教学活动的流程具体如下。
(1)分配任务:第一次课,要求学生以项目小组(一般5~6人,自由组合,每个成员扮演项目开发过程中的不同角色)的方式组建开发团队协同开发一个规模及难度适中的完整项目,要求按照正规软件开发流程组织实施,完成项目开发过程中形成的分析、设计、编码和测试文档,同时将Rational Rose、Visio、Project及Loadrunner等软件工具在实施过程中进行有效地应用。
(2)组建团队:学生自愿组建团队,选出组长,每组角色包括项目经理、系统分析员、软件设计师、软件开发工程师、软件测试工程师等,组员项目角色可随项目开发进度而调换。项目实施过程中采取组长负责制,负责小组的讨论和项目实践的安排,分配组员任务,各小组查资料,自选软件项目,分析开发的各项任务的安排和沟通,制定项目的开发计划。
(3)计划可行性评定:授课教师审核各组项目及项目计划实施的可行性,不行则指导小组重新选定软件项目和制定项目计划。符合要求,方可进入实施阶段。
(4)项目实施阶段:小组成员根据各自的任务查找资料,收集解决方法,定时讨论交流,各个模块间相互配合协调完成任务。包括软件分析设计阶段,完成软件需求规格说明;设计软件系统的总体结构;对功能模块进行编程测试,完成项目实现编写所有相关文档,测试和调试代码。整个实施过程由授课教师控制项目的进度和质量,同时,教师要充分发挥引导作用,让学生在实践软件设计和开发技能的同时,通过协作培养学生多人之间的沟通能力和团队协作精神。
(5)项目验收:根据软件开发流程的各个阶段成果包括可行性分析报告、需求规格说明书、项目计划书、总体设计报告、详细设计说明书、软件测试报告、项目开发总结报告等。项目验收采用阶段验收分析设计文档,每次均以小组的形式提交作业。教师根据提交的材料结合学生是否熟悉软件常用技术和工具按照软件工程管理方法进行评审,还要求各组之间互评,发现不足之处进行讨论,提供给大家一个互相交流的机会。项目结束后,每组要组织答辩,先由小组长对项目基本情况及组员作简要介绍,然后让各组员对自身完成的任务进行PPT答辩,教师和其他同学针对该成员实际负责的部分进行提问。最后项目组提交系统和所有文档。
3 教学评价体制改革
教学评价是课程教学的必要环节,在本次教学改革实践中,将课程学习评价分成3个组成部分:理论考核占50%,项目实践成绩占30%,考勤、平时作业、实训练习等占20%。项目实践成绩的评定包括小组成绩和个人成绩两部分,各占50%。小组成绩为小组中所有成员开发项目的考核成绩,包括各阶段成绩的平均值与最终答辩成绩;个人成绩为小组成员在项目开发过程中个人的考核成绩。度量因素包括个人分配工作量及难易程度、平时工作态度及项目汇报时表现等。这种评价体制充分调动了学生学习的主动性和合作精神,教学效果明显。
4 结语
本文对《软件工程》的课程教学进行了探索和改革,以IEEE公布的软件工程知识体系为基础构建了软件工程课程知识体系,提倡理论教学与实践教学并重。理论教学着重于经典案例的选取及教学方法的采纳,理论教学不再是抽象的讲授,而是贯穿案例的具体实践操作,达到了理论与实践的紧密结合。实践教学以项目为驱动模拟企业软件的项目管理和开发过程,引导学生积极思考和参与讨论,教师由知识的灌输者成为学习的引导者,学生由被动地接受教育变成主动地探索知识。实践证明,本课程极大地提高了学生的学习兴趣,取得了良好的教学效果。在今后的教学工作中,将进一步完善和实践教学改革的内容,逐步使这门课程规划化、工程化,取得更好的教学效果。
参考文献
[1] 张海藩.软件工程导论[M].5版.北京:清华大学出版社,2008:5-7.
[2] 董跃华,杨书新,李淑芝.软件工程专业多元化实践教学体系研究[J].江西理工大学学报,2009,30(3):53-55.
篇3
关键词:Java教学;案例教学;面向对象
中图分类号:G642 文献标识码:B
1引言
Java是由Sun公司开发的新一代编程语言,独立本科院校将Java语言作为计算机专业的重点课程,主要有以下两个方面的原因。
首先,Java语言是一门纯面向对象的语言。面向对象程序设计是计算机科学与技术专业的核心课程,理论性和实践性并重。教学内容主要包括面向对象程序设计范型(paradigm)的三个最重要的特性:封装、继承、多态,以及Java如何实现这三个特性,使学生掌握面向对象程序设计范型和一种面向对象的编程语言,从而为以后的学习打下基础。
其次,Java语言具有安全可靠性、平台无关性、支持多线程等优点,使用它可以在多种操作平台的网络环境中开发软件。由于Java语言的这一特点,加之Internet的迅猛发展,使得它逐渐成为Internet上最受欢迎的开发与编程语言。国内有的软件开发企业,不惜花费大量的时间与资金,培训Java软件开发人员。在这种大趋势下,市场大了,对人才的需求量也在猛增,为了适应企业的需要,提升毕业生的就业率,几乎所有的大、中专院校都竞相开设了Java语言程序设计的课程,当然,独立学院也不例外。
但由于Java语言的实践性和开发环境的特殊性,究竟采用何种教学方法,才能显著提高教学效果,却是近几年来计算机教育普遍关注和研究的热点。
2Java语言的教学现状
到目前为止,对于Java教学方法的研究有很多,但大部分高校的Java语言的教学还是采用讲授法,有的院校从以往的写板书教学升级为多媒体教学,虽然多媒体使教学更生动、直观,却只是教学形式上的改观,教学方法的本质没变。而且,虽然现在研究的教学方法有悬念法、类比法等多种方法,但是哪一种更适用于独立学院的教学,并不是纸上论证能够决定的;更何况独立本科院校的教学要求和教学目标与其他本科院校有所不同,教学方法的选择更不能生搬硬抄或模仿,要根据自己的特点,探索合适的教学方法。
我们考虑到独立本科院校的计算机教育是以培养应用型人才为目标,培养的学生应当能与当今社会和企业接轨,熟悉软件开发流程,具有足够的软件开发技能,所以,专业课程的教学目标更加注重学生计算机实践能力的培养锻炼。而且由于独立学院的学生和一本、二本院校不同,专业课程中理论性强的东西接受相对慢一些,学生碰到复杂难学的问题,会对整门课程产生恐惧心里,普通的讲授方法无法解决这些问题,所以更加需要积极探索适应于独立本科院校的Java课程教学方法。
针对Java语言课程的特点和独立学院学生的特殊性,通过实际教学中的不断摸索和实践,我们采用了阶段性的案例教学法,教学取得了显著的效果。阶段性的案例教学法和传统的案例教学方法是有区别的。传统的案例教学法在教学过程中往往会陷入误区,有的只注重案例的实现,忽略了Java语言中重点语法的讲解;有的案例只是单纯语法正确性的验证,忽略了软件开发技能的讲解,和企业的应用脱钩。我们研究的阶段性案例教学法会在教学过程的不同阶段采用不同的案例教学手段,一方面将理论性强,不容易理解的语法知识用案例的方式展现给学生;另一方面案例是实实在在Java的应用效果,学生看到自己学习的语言能够编写出具有功能的软件来,不仅激发了学生的学习兴趣,还能提高学生的软件开发能力。
下面介绍Java语言教学――阶段性案例教学方法的关键环节。
3阶段性案例教学法的实施
3.1概述
阶段性案例教学法的核心是以案例贯穿教学,但在教学过程的不同阶段,采用的案例是有区别的,而且讲解的方式也不相同。
首先根据案例涉及知识点的范围以及应用的目的,阶段性案例教学法中的案例可以分为:知识点案例和项目案例。知识点案例也称为基础案例,它的功能主要是通过讲解基本语法或小功能案例,促进Java基础知识的学习;项目案例也可称为大项目,它是通过综合的应用性比较强的项目,提高学生对Java的系统掌握,有利于提高学生的软件开发水平。
其次,这种案例教学法是分阶段,逐步推进的,在教学过程的前期,主要是Java基础知识的讲授阶段,学生在这个阶段要进行基本语法知识的学习和基本编程技能的掌握,所以采用基础案例来推动学生对Java基础的学习;在教学的后期,逐步渗透大项目的思想,引导学生将前期的知识点案例综合应用,完成一个项目案例。加强学生的语言综合应用能力。同时,会根据学生前期知识的掌握程度以及案例的特点,灵活采用不同方式来讲解案例。
3.2课堂内容的设置
3.2.1课程的设置时间
阶段性案例教学法是基于本学院的教学实践来研究的,本学院的Java课程是在大三下学期开设,所以案例的设置充分考虑到与前期课程以及同期课程的关联。充分发挥前期课程的基础作用,协同同期课程教学,互相加强教学。
第一,以前期C语言、C++语言以及数据结构为基础,在学生具有一定的编程认识的基础上,进一步认识面向对象的程序设计;在前期课程网站开发基础学习静态网站开发设计的基础上,进一步学习Java在Web编程中的应用。
第二,与数据库基础课程同期讲授,不仅能够减轻学生学习Java课程时在数据库学习方面的负担,更重要的是学生在Java的实践环节中能够使用数据库技术,例如Java图形用户界面开发以及Web系统开发方面都加入数据库连接,使得学生对数据库掌握更熟练也使Java实践更加接近实际应用,相得益彰。
下面详细介绍一下在具体教学过程中案例的设置。
3.2.2案例内容的阶段性设置
知识点案例,主要是采用经典的程序设计案例,来演示Java基础知识。由于Java课程是在C语言和数据结构之后开设,学生已经掌握了一定的程序设计技能,特别是一些经典的程序设计案例已经初步实践过,像常用的排序方法、搜索算法、汉诺塔问题等。所以在讲授Java的基本语法知识和面向对象的基础知识的时候可以充分利用这些学生已经熟知的案例。这样做有很好的效果:一方面由于学生已经熟知这些经典案例的功能以及使用的算法和数据结构,所以能够把学习的重点放到Java相关基础知识的方向上;另一方面,学生会和以前语言的实现进行比较学习,能够突出Java语法的特点,更有利于新知识的理解。
考虑到知识点案例的目的,所以使用知识点案例的内容主要有:第一,在Java基础语法教学上,这部分主要包括Java的基本数据类型、运算符和表达式、数组以及流程控制;第二,在面向对象方法的重点难点教学上,这部分主要有类及其成员定义、类的继承、多态性的实现,有利于加深面向对象程序设计的认识和理解,为以后的项目开发做准备。
项目案例即大项目,主要在Java课程的后期进行。它的设置是以掌握Java的社会应用为出发点,依据课程安排和学生特点,通过系统的综合性的Java实例,深入讲解Java的应用。Java是应用性很强的语言,所以学生不仅要掌握Java知识而且要掌握使用Java解决实际问题的思路和方法。项目案例很好的起到这样的作用,采用与学生熟悉的实际问题,讲解Java在系统开发方面的应用,例如学生信息管理、Java小游戏等项目。在项目案例中,不仅能与同期的数据库课程一起实践,互相加深认识,提高软件开发能力;更能让学生深刻感受到Java在解决实际问题方面的魅力,学生学有所用,极大提高他们的学习兴趣。
项目案例内容比较大,学生掌握需要的时间比较长,所以结合Java语言的应用,项目案例只在两部分使用:第一,Java的图形用户界面开发,这部分采用项目案例主要是讲解Java AWT和Swing组件的编程,采用的案例有简易计算器、ATM机和一些Java小游戏实现;第二,基于Java的Web开发,这部分是社会上Java应用最广的部分,通过项目案例的讲解学习JavaBean、Servlet以及JSP技术的使用,采用案例有学生管理系统、图书馆管理系统、网上书店等。通过学习项目案例,有利于学生了解Java的综合应用,并且初步掌握项目开发经验。
3.2.3灵活的案例讲解方式
教学过程中的不同案例,由于使用的时间和目的不同,所以采用的讲解方式是不一样的。
在教学的最初期阶段,我们采用比较的讲解方法。由于本学院学生已经学习了C、C++语言,已经对编程语言的基础语法以及面向对象编程有了比较深的理解,在这个基础上再学习新的编程语言Java时,学生自身也会与C、C++语言进行比较。所以,初期的知识点案例采用比较方法讲解,一个案例同时演示C++和Java的实现代码。由于两种语言的基本知识很相似,通过比较,学生会感觉到Java是一门比较简单的语言,后期的学习更有兴趣。同时,以编程的思路为主线,讲解案例代码,指导学生逐步熟悉Java语法和应用。
随着教学的逐步推进,学生掌握的Java基础知识逐渐丰富,前期案例的讲解也为学生打下了编程思想的基础,这时应该采用启发式教学,教师引导学生自己分析案例,逐渐培养学生程序设计的分析能力。教师应及时了解学生的掌握情况,在学生熟悉Java基础语法后,知识点案例就应采用启发式方法,后期的项目案例也应采取该方法。该方法在教学过程中的具体使用是:在展示案例代码之前,先告知案例的功能,由学生分析案例的编程思路和代码实现过程,先由学生之间互相分析自身答案的不足,然后再统一分析,指导其改正编程思想的欠缺之处,逐步培养软件开发的思想。最后再展示案例的详细代码,经过对学生一步一步的引导,重点使他们理解和掌握软件开发的思想和实践过程。
3.3实验环节――案例实践
3.3.1开发工具的选择
实验环境的开发工具是由简易开发工具UltraEdit,到集成开发工具NetBean。在学习初期,学生还未掌握Java基本语法知识,所以应该使用最基本的开发工具UltraEdit来熟练Java的语法特点和程序结构。随着学习的深入,实践环节的重点由基础知识的掌握上升到软件开发技能的学习上,相应的开发工具也应该选择与社会、企业接轨的集成开发工具――NetBean,而且NetBean也是Java等级考试的平台,更可以为想考Java等级证书的学生提供方便。
3.3.2案例代码的实践
学生实践的指导思想是由简入难、由基础到综合、由模仿到创新。
知识点案例一般是实现一个小的功能,像流程控制、类的定义等,代码量较少,所以引导学生应尽量自己独立实现代码。由于学生的学习能力不一样,并不要求每一个学生要实现所有的的知识点案例。结合老师的讲授,引导学生根据自己的能力来选择难易不同的知识点案例。例如能力差的可以先选择已经由老师详细讲解并演示代码的案例,通过自己的实践理解案例内容后,再实践只有讲解的案例,由自己独立实现代码,之后再来实践没有讲解的题目,分析案例的解决方法,锻炼自己的编程能力和创新能力。当然编程能力强的学生可以直接选择老师没有讲解的案例来实践。
项目案例实践的两个方面――Java图形用户界面开发和基于Java的web开发代表着现在Java的主流应用。由于项目案例需要的时间比较长,所以案例题材应该由学生自己拟定任务和教师出题相结合,并且分组实践。学生和教师出题相结合既可以避免教师出题下达的任务过多,学生产生抵触心理,又能避免学生只选择自己感兴趣的内容,实践方向出现偏差的问题。学生自己出题还可以锻炼学生发现问题解决问题的能力。项目案例内容比较大,学生分组协作完成一个项目,既能节约实践时间,又能锻炼学生的团队精神。
项目案例实践的具体过程首先要合理的为学生分组,并选出组长。每组学生自主决定要实践的案例,自己组内讨论,写出简单但详细的需求说明书,这步任务可由学生课外完成。教师检查并指导学生完善说明书,再根据需求说明书中的任务,指导每组学生分派任务给组员。教师要制定合理的完成时间,并且监督学生的实践进程,组长要监督每个组员都参与到项目中间,并定时总结项目进度。由于Java语言的实用性很强,而项目案例的实践很能锻炼学生对Java的应用,所以独立学院的Java教学应该设置足够的实践课程。
篇4
关键词:CDIO工程教育;软件工程;综合实践教学;二级模型
中图分类号:G642.0 文献标志码:A 文章编号:1674-9324(2015)28-0102-03
软件工程是一门伴随软件危机的出现而发展起来的课程,软件工程课程的主旨在于学生能够运用软件工程的原理、方法和工具开发计算机应用软件。理论与实践并重是软件工程教学的基本特点,软件工程实践教学更直接影响学生的软件开发能力。
软件工程课程内容覆盖面较宽,与数据库系统原理、程序设计语言、算法设计与分析等课程内容交织,为了实现相关课程之间内容的贯通、拓展学生的学科知识、提高学生综合分析和解决问题的能力,我们将专题学习(Project-Based Learning)[1]、任务学习(Task-Based Learning)[2]和基于问题的学习(Problem-Based Learning)[3,4]等教学方法引入课程教学中,突出软件工程课程的综合性、实践性特色。
在软件工程实践教学环节,我们从CDIO工程教育模式得到启发,结合软件工程课程特点,对软件工程实践教学体系进行了调整和改进,实现了从基础实验到综合实践的逐步过渡和合理衔接。
本文针对软件工程实践教学中存在的问题,给出了实践教学体系和内容的改进思路,讨论了综合实践教学的实施细节。
一、软件工程实践教学体系的改进思路
我校软件工程课程组从CDIO工程教育模式出发,根据软件工程课程特点和教学内容,对软件工程实践教学体系进行了改进,采取分层次、分步骤的方式安排实践教学内容,使学生在软件开发技能、综合分析问题能力、软件系统开发经历、团队协作意识等方面得到系统训练。
CDIO工程教育模式是国际工程教育改革的成果,包括构思(Conceive)、设计(Design)、实现(Implement)和运作(Operate)四个环节[5]。CDIO提出了系统的能力培养教学大纲,内容涵盖了学生对理论知识的掌握程度、个人素质和发展能力、与人协作交流能力以及大系统适应和调控能力等多个方面;强调以产品研发到产品运行的生命周期为载体,让学生以主动的、实践的、课程之间有机联系的方式学习工程[6]。CDIO认为工科学生的能力应该体现在工程基础知识能力、个人职业技能、团队协作能力和工程系统开发能力四个层面[7]。软件工程课程的培养目标是,学生掌握现代软件开发理论和准则,具备对软件行业和软件项目的理解与掌控能力,拥有根据软件需求进行创新设计的能力,并且在软件开发团队中能够进行良好的团队协作和人际沟通[8]。软件工程课程的特点和培养目标与CDIO工程教育理念不谋而合。CDIO的12条标准为工程教育改革提供了具体化的、可操作、可测量的模板[9]。我们以此为依据并结合软件工程课程的教学特点,对软件工程实践教学的内容、结构、实施细节进行了调整和改进。CDIO倡导主动学习,即教学活动中学生能够基于自己的思考和实践解决问题。我们提出了一种主动式、知识探究型的教学模式――问题式教学模式。问题式教学模式关注实践教学活动中的问题设计,教师根据课程特点、设计富有挑战性的非良构问题;学生以学习团队的形式参与问题式教学活动,通过解决紧密联系实际的非良构问题来探究问题背后隐含的学科概念和原理,拓展专业知识,培养团队协作意识[10]。
CDIO工程教育模式强调在教学活动中将学科概念和学生能力逐步整合,学生在工程实践过程中掌握知识、提高工程项目分析设计和实施能力。据此,我们将软件工程实践教学内容分为基础实验和综合实践两个相对独立的环节。基础实验与软件工程理论教学同步进行,重点训练学生对软件生命周期组成阶段的理解、对系统分析和系统设计工具的掌握。综合实践部分以实训课程的形式单独开课,教学内容涵盖软件工程、程序设计、数据库系统原理等多门软件类课程,重点培养学生的软件开发能力和团队协作意识。
二、软件工程实践教学二级模型
从学生运用软件工程基础知识的能力、系统化的个人职业技能训练、软件项目的开发能力和团队协作能力四个层面出发,将软件工程实践教学划分为基础实验和综合实践两级,图1所示的软件工程实践教学二级模型概括了软件工程实践教学体系的框架和内容。
基础实验模块融合在软件工程课程教学中,培养学生对软件工程原理的理解、软件开发技能和工具的掌握。
软件工程综合实践模块内容涵盖软件项目开发的完整过程,以软件实训课程的形式独立开设,侧重学生软件项目开发能力和团队协作意识的培养。综合实践模块依托软件工程基础实验和其他相关的软硬件支撑资源,是软件工程基础实验的延伸和扩展。
1.基础实验模块。软件工程基础实验模块涉及软件生命周期的四个主要阶段,内容包括需求分析模型及建模工具、软件结构及接口设计、系统实现过程中所需的算法逻辑设计、与软件单元测试和集成测试相关的测试用例设计等。基础实验的主要目的在于学生领会软件工程基本理论和准则、掌握软件工程标准、学习使用软件开发工具。基础实验内容偏重于设计型,具备一定的灵活性;但实验形式属于验证型,是课堂教学中案例教学法的延伸和应用。教师通过教学案例阐述如何运用软件工程理论、技能和工具,学生在实验过程中模拟解决与教学案例类似的软件问题,以实践的方式体会和巩固软件工程知识。
2.综合实践模块。软件工程综合实践环节主要从培养学生团队合作环境下的软件项目研发能力出发,引导学生使用主流的软件开发技能和工具,获得较真实的软件项目开发经验。学生在软件工程基础实验阶段所掌握的软件开发技能和工具应用能力以及其他相关软件类课程的知识,是完成综合实践任务的前提。
3.综合实践模块包括五部分内容。软件定义阶段,要求学生通过一系列调研活动对系统目标进行准确定位,根据个人特长和软件项目开发的需要合理组织项目开发团队并进行工作分工,按照软件工程规范制订项目开发计划。
具体的软件项目开发工作集中在系统分析、系统设计和系统实现三个阶段完成。系统分析阶段主要解决软件项目“做什么”的问题,并以功能模型、数据模型和动态模型的形式表达分析结果。“如何做”的问题将在系统设计阶段解决,包括实现系统功能的物理方案、数据库实施方案等内容。系统实现就是通常意义上的编程阶段,包括编程环境的配置、编写代码、进行软件测试和系统集成等工作。
评价考核阶段既是对学生综合实践成果的检验,也是对实践教学环节的反思,是一个再提高的过程。
三、软件工程综合实践教学的实施细节
软件工程基础实验的内容和形式已经非常成熟,我们对软件工程实践教学体系进行改革的重点是综合实践教学。
软件工程综合实践教学融合了计算机专业多门软件类课程的内容,并与软件开发的新技术新工具紧密结合,是一项系统化的教学实践活动。在具体的实践教学实施过程中,教师提供的综合实践题目、学生组成的项目开发团队以及实践教学的评价考核方式都是影响实践教学质量的重要因素。
1.综合实践题目的特点。在软件工程综合实践环节,教师要为学生提供实践题目,即需要学生完成的软件开发项目。实践题目要兼顾普适性与创新性两个方面。所谓普适性即实践题目要具备明确的可操作性,学生通过综合实践活动能够体验软件项目开发的基本规范,经历软件开发的完整过程。因此,教师提供的综合实践题目应该与现实环境中的实际需求紧密相连,便于学生建立感性认识。普适性还体现在不同实践题目的核心知识需求基本相同,但要保证应用背景不同,以保证学生获得软件开发基本技能方面的完整训练。综合实践题目的创新性是指,对已经满足普适性要求的实践题目进行适当的需求扩展和功能延伸,并保留一定的不确定性和疑点,即保持适度的非良构性,留给学生思考的空间。这样可以在软件开发技能方面引导学生温故知新、举一反三,也就是说,学生需要在问题的牵引下去适当学习专业以外的知识、搜集提炼信息、补充项目本身缺失的条件,最终制订可行的软件项目实现方案并解决软件实施问题。
2.软件项目开发团队的组建。软件工程综合实践环节是学生对软件开发过程的模拟体验,现代软件开发工作多以团队协作方式进行。所以对学生而言,综合实践环节的第一步工作就是组建软件项目开发团队并进行合理分工。
软件开发团队成员的角色分为项目经理、软件工程师、程序员、软件测试工程师四类。为了使学生能够模拟较真实的软件开发过程及开发团队成员的角色,一般建议5~6个学生组成一个项目开发团队。组建项目团队时要考虑学生的认知优势、学习习惯、学习兴趣、动手能力、逻辑思维能力、性格特点等因素,引导学生按照既发挥个人特长,又优势互补的原则组织项目开发团队并进行角色分配。
3.综合实践教学的评价。成绩评定是实践教学环节的重要工作之一,评价标准和考核方式会影响学生的学习态度和学习方向。我们采用实践过程监控和结业考核相结合的综合评价形式。学生通过综合实践活动体验软件项目开发规范,经历软件开发的完整过程,是软件工程综合实践教学的基本目标,所以要将软件开发过程的规范性、开发文档的完整性、程序代码的可理解性、系统运行稳定性作为基本的评价标准。软件工程综合实践题目兼具普适性与创新性两方面特征,要求学生完成的软件项目与特定应用领域密切相关,题目本身具有一定的开放性和不确定性。同一软件项目,往往会有若干技术实现方案,这些方案可能各有优劣,因此应该遵循没有最好、只有更好的评价标准,对学生进行的实际调研、提出的合理假设、创造性改进等工作予以肯定。
结业考核方式采用答辩会形式,每个参加考核的项目团队都要进行工作陈述和系统演示,接受教师同学的提问并进行答辩。通过辩论和提问,引发了学生对相关问题更深层次的思考和探究欲望,这种开放性的交互辩论方式可以促使学生接触更广泛的实用性软件项目,以换位思考的形式领略其他软件开发团队的工作成果。
四、结语
软件工程课程的基本出发点是用工程化原理和手段指导软件开发,软件工程原理和准则只有通过软件开发实践才能充分体现。为了解决软件工程教学中实践环节薄弱的问题,我们将先进的CDIO工程教育理念应用在软件工程教学改革中,提出了一种可行的软件工程实践教学框架――软件工程实践教学二级模型,实现了软件工程基础实验到综合实践的平稳过渡和合理衔接。学生通过软件工程实践教学活动,掌握了软件开发基本技能,可以在软件开发工具使用、软件开发经历体验、团队协作意识培养等方面得到系统训练。
参考文献:
[1]Robert Michael Capraro,Scott W.Slough.Project-Based Learning:An Integrated Science,Technology,Engineering,and Mathematics(STEM)Approach[M].Rotterdam:Sense Publishers,2009:99-103.
[2]Simone B.R. New Media and Task-Based Teaching/Task-Based Learning:Web Quests[M].Munich:Grin Publishers,2010:54-59.
[3]Barrows H.S. Problem-based learning[M].Berlin:Springer Publishers,1980:3-12.
[4]Boud D.,Feletti G.I. The Challenge of Problem-Based Learning,2nd Ed[M].London:Kogan Page Ltd.,1997:34-38.
[5]顾佩华,陆小华.CDIO工作坊手册[M].汕头大学出版社,2008:12-17.
[6]陶永芳,商存慧.CDIO大纲对高等工科教育创新的启示[J].中国高教研究,2006,(11):81-83.
[7][美]克劳雷.重新认识工程教育:国际CDIO培养模式与方法[M].顾佩华,等,译.北京:高等教育出版社,2009:38-44.
[8]Roger S.Pressman.软件工程:实践者的研究方法[M].郑人杰,等,译.北京:机械工业出版社,2008:3-5.
篇5
Abstract: Based on the concept of CDIO, aiming at the requirement of software engineering Java software talents training, this paper puts forward the construction system and implementation scheme of Java curriculum group for application ability training. In the teaching process, the teaching team takes a completed project as the main line. According to the development process of the enterprise project, the students are divided into several groups, which make the students take on the role of the enterprise and cultivate the ability of teamwork. That can improve the teaching efficiency and quality of Java courses, and meet the technical requirements of Java talents.
关键词: 软件工程;课程群;创新创业
Key words: software engineering;curriculum group;innovation entrepreneurship
中图分类号:TP311;G642 文献标识码:A 文章编号:1006-4311(2017)10-0258-02
0 引言
Java 语言是目前世界上影响力最大、最受欢迎的编程语言之一,得到众多计算机软件开发者的青睐。广泛应用在企业信息系统、嵌入式开发、移动应用、大数据分析等各个层面[1-2]。Java技术相关职业岗位是计算机专业毕业生最主要的就业方向之一,有着广泛的市场需求。
通过走访用人单位、与企业沟通交流、查询各大招聘网站对Java软件人才的招聘需求,以及毕业学生问卷调查等方式的调研,了解到目前市场上需要的Java软件人才主要从事计算机软件开发与管理、网站开发与管理、数据库开发与设计、软件营销与维护、软件测试、项目管理和系统分析等工作。
经3-5年后,可晋升至软件开发工程师、软件支持/维护工程师、软件测试工程师等岗位群。对于应届毕业生,需要掌握的主流技术有:java、JSP、Android等。无论哪种软件开发,都需要有数据库操作知识作为基础。随着毕业生职位的晋升,需要用到软件工程、软件项目管理等深入的知识。
针对上述调研,紧随市场需求,提出面向应用能力培养的Java课程群构建方案及实施细节。将Android移动开发纳入Java课程体系,与以前的Java程序设计、JSP网络程序设计共同构成课程群,将实际的企业项目拆分到各个环节,使学生在逐步实践中理解并掌握Java知识体系。
1 课程群的内涵与构建原则
课程群作为内容联系紧密、内在逻辑性强,在同一范畴内培养学生能力的课程的有机整体,通过制定合理的课程门类、开课顺序,使得专业教师能够从培养目标层次把握课程内容的分配、实施和技能实现等教学任务。[3]
为了保证课程群建设的合理性与科学性,为了对学生的专业素养和专业技能进行持续训练,培养具有专业技能的合格人才,在课程群的建设过程中应遵循以下五个原则:①要保证课程群的设置能够推动教学计划的构建与实施;②要能推动教学改革和教学内容的优化及整合,以便较快地提升教学效果;③要确保能够加快教材建设以及其他资源之间有效建设;④要有利于对学生整体素质以及实践技能的有效培养;⑤要能够促进学生就业水平的提升[4]。
2 Java课程群体系的构建
以 CDIO(Conceive,Design,Implement,Operate)模式[5]为指导,对课程群进行有效划分与设置。“Java课程群体系”将本科四年划分为四个学习阶梯,在每个阶梯内学生要完成专业基础知识课程、软件开发类课程以及实践操作类课程的学习,最终通过实训项目提升与验证学生实践能力的培养情况。打破单一课程内容的归属性,从软件开发能力培养的角度出发,四个学年,拾阶而上,最终完成Java软件人才的培养过程。(来自我的培养方案)
教学过程中,Java教学团队以一个已完成的实际工程项目为主线构建Java课程群教学体系。首先,大学一年级阶段学习 C语言、网页制作基础和数据库课程,了解面向过程的开发思想,并为后续的项目开发打下基础。二年级上学期开设Java程序设计,边学习边实践,分章节完成从项目拆分出来的一些基本类;二年级下学期学习 Java Web 开发、软件工程等课程。三年级上学期学习软件项目管理、件建模技术、Web开发、软件质量保证与测试、创业基础;三年级下学期学习基于 Android 平台的移动软件开发、创业教育基础。四年级上学期学习移动互联网应用开发、软件体系结构与架构技术;四年级下学期做毕业设计,将四年知识融会贯通。
结合理论课程,开设了下述实践操作类课程:大一上学期软件工程专业认知导论、大一下学期C语言程序设计课程设计、大二上学期数据库课程设计、大二下学期Java程序设计课程设计(B)、大三学期上JSP课程设计、大三下学期移动互联网应用开发课程设计、大四上学期金融软件项目综合实训。上述理论与实践课程覆盖了软件人才Java专业技能和主要的素质能力。
依据软件人才需要具备的Java专业技能,确定以下5门理论教学课程为Java课程群建设的核心课程为数据库原理及应用、Java程序设计、软件工程、JSP应用技术和移动互联网应用开发。
3 Java课程群体系的实施
按照企业项目的开发流程,实施CDIO教学框架。在框架内对学生进行分工,承担一定的角色,培养学生之间的团队协作能力,完成整个项目的开发流程,包括项目的需求分析、软件设计、编码、测试、维护、工具、项目管理、文档的撰写等。指导教师指导学生解决在实际开发过程中所遇到的技术、管理问题。
理论课程采用边讲边练的教学方式。教师结合小的案例讲授相关知识点,学生基础知识掌握后,教师将部分知识点融合给出具有一定功能的案例;该门课程结束后,学生完成实训项目的部分功能;最终通^大实训,完成整个实训项目的开发。教学过程中,教师可将教学案例上传课程群辅助教学平台供学生参考,学生将自己完成的功能也上传平台,供所有学生参考并了解多种思路,从而实现资源共享,同时有助于教师动态把握学生掌握情况,并及时给予指导。
为有效克服校内实训与实际市场脱节的弱点,提供高质量的且数量足够的项目案例是关系培养质量的重要问题。通过利用开源软件、向实际软件企业索取和购买等方式广泛征集高质量的且贴近实际市场需求的项目案例,逐渐充实和完善项目案例库,在此基础上按照实际企业对人才规格的要求,以岗位工作过程为导向,将实践分为三个部分:
①基础技能实践。
将“Java程序设计”课程的基础知识(基本数据类型和控制语句实验、类和对象、封装、继承和多态等)整合成基础知识模块,并适当增加职业标准模块的学习、团队合作以及岗位职业素养等综合素质的培养内容。
②项目案例实践。
将“Java程序设计”课程的编程技术整合成多个技术模块,并融合到相应的项目案例中,(例如:浏览器设计、计算器设计、日历设计、个人备忘录设计、电子菜单设计等),通过项目案例的学习和训练实现“学中做、做中学、学练结合”的教学模式,提高学习兴趣,进一步加强职业素养、岗位技能知识的培养。
③项目开发实践。
在严格按照实际企业项目开发规范的条件下,通过由浅入深、由易到难的项目开发实训(例如:网络聊天程序开发、图书管理系统开发等),提高专业知识的实际应用能力和创新创业能力培养。
4 结语
通过对企业和其他高校的广泛调研,提出面向应用能力培养的Java课程群构建体系和实施方案。这种“学中做、做中学、学练结合”的教学模式,增强了学生学习兴趣,提高了Java课程的教学效率和质量,满足了企业对Java人才的技术需求。
参考文献:
[1]赵小龙.基于双循环的CDIOE理念构建Java系列课程群教学体系建设研究[J].安庆师范学院学报(自然科学版),2016(12):145-148.
[2]张华,李劲,吴成英.面向职业岗位的Java课程群构建与教学方法研究[J].计算机时代,2016(4):76-79.
[3]张丽萍,刘东升,林民.“课程群”教学管理体系的建设与实践[J].内蒙古师范大学学报(教育科学版),2013,26(3):61-64.
篇6
由于数控机床功能越来越完善,形式多种多样,其执行电机及伺服驱动装置也有很多类型。但必须掌握最基本的步进电机、直流伺服电机、交流永磁同步电机、普通三相异步电动机及其相应的伺服驱动装置。要全面掌握其工作原理,不仅需要数字电路、模拟电路的知识,还需要单片机、微机原理等基础知识。对学生而言无疑像是无法翻越的高山,这就要把重点放在共性的知识和结论的实际应用上,不需要进行细致的推导。逐点比较法、DDA控制算法基于数学分析设计,恰恰是高职学生的短板,理解起来有一定困难。
2课程内容繁杂,课程学习缺乏主线
任课教师虽能够把握课程内容,但现行教学大纲要求比较笼统,对知识的讲解程度没有细致描述,缺乏可操作性。实际授课中仍然按照教材章节,进行课堂理论讲授,而现行教材内容重在知识点的罗列,各部分内容层级递进关系不强,与教学载体之间联系不够紧密,学生学习自然不能融会贯通。
3探索与实践
3.1开发数控机床光机安装与调试仿真软件选取典型数控机床光机,严格按照机床图纸进行造型、装配和动画制作。软件集成基于VRP技术,机械部件由3DMax软件造型、机修技能部分用Flash软件开发。软件主界面如下:图1软件主界面软件教学功能设计符合学生职业成长规律,贴近典型工作流程,共包括“拆装认知”拆装实训”装配检测”机修技能”四个模块,模块内容丰富,涵盖数控铣床光机安装与调试的主要内容,且界面友好,便于学生操作使用。图2拆装认知界面采用上述软件,可降低实训教学成本,同时完善了实践教学资源体系;打破传统实践教学条件的时空局限性,拓展学生学习空间;还可避免实训时的安全隐患。经试用,学生学习兴趣普遍增加,教学效果明显。
3.2注重基础讲解,适度拓展近几年高职生源数量的减少导致生源质量的下滑,相当一部分高职学生由于基础差,入学以后对文化课、专业课听不懂,形成了上课睡觉、玩手机,课后不复习等状况。笔者认为,基础差就得注重基础的讲解,哪怕是中学方面的知识。以“够用”为原则,帮助学生理顺基础知识之后在进行适度扩展。以步进电机调速为例,往往需要从电磁感应基础、直流线圈磁场建立、不同相序线圈通电产生磁场旋转等基础知识讲起,扩展至环形分配器控制脉冲频率及个数对步进电机转速和旋转角度的影响;另外,还需要讲解单电压、双电压、恒流斩波等驱动放大电路基本原理,需要明确区分控制电路与主电路的功能与区别。
3.3控制算法形象化充分利用现代教育手段,基于Flash软件开发小的算法软件,将抽象的控制算法用图形进行直观描述。而不必拘泥于数学公式的分析和推导。推荐只讲易于接受的逐点比较法。
篇7
关键词:日文软件人才;教学模式;项目训练
计算机科学与技术专业的本科毕业生就业情况不理想是一个不争的事实,但这并不是因为市场不再需要这方面的人才。相反,市场对于软件开发人才的需求量非常大。
日文软件人才需求的现状
软件外包是一些发达国家的软件公司将软件项目通过外包的形式交给人力资源成本相对较低国家的软件公司开发,其目的是降低软件开发成本。目前,全球软件外包市场规模已达1000亿美元,并以平均每年29%的速度增长,在目前全球的软件产值中,三分之一都需要通过软件外包来完成。软件外包已经成为世界软件产业发展的一个重要趋势。
近年来,
“六双”教学模式在人才培养过程中的实施
在“六双”教学模式下,日文软件人才的培养具体采取了如下措施。
优化软件工程专业的任课教师采取“双师”配置,由学校的教授、讲师主讲专业基础课程以及相关的理论课程,聘请企业具有丰富日文软件项目开发经验的工程师讲授技能训练的课程并进行案例教学。通过“双师”的教学,使学生在较短的时间内掌握软件理论和编程技巧。
将日语作为学生的第一外语为了满足日文软件外包人才培养的需要,在语言教学的设置上,软件工程专业在外语教学上将日语作为学生的第一外语,英语为学生的第二外语,跟踪学生语言的学习效果并适时进行调整。WWw.133229.COM毕业生的日语水平应达到日语二级水平,训练有素且深谙日本企业文化,能胜任日文软件开发和应用工作。根据不同的需要,在完成各层次技术课的基础上,还应加强日本语言、日文软件开发流程与规范、日文软件项目管理与企业文化、项目实战等针对日文软件设计开发的专业知识与能力培养。
取得职业资格证书在学校“双证书一体化”培养模式下,使学生在学习期间通过专项的技能训练取得劳动部门认证的职业资格证书,并参加人力资源和社会保障部、工业和信息化部组织的计算机技术与软件专业技术资格(水平)考试,从而取得人力资源和社会保障部颁发的专业技术资格证书。
实行互助教学模式在教学环节上,为了充分调动教师的积极性,通过采取“主讲教师+助讲教师”的互助教学模式,既充分发挥主讲教师的理论水平和实践经验,学生又可掌握助讲教师熟练的编程技巧。
为技能训练创造优异的教学条件虽然国内外提出了不同的软件人才培养模式,但是不管采用什么样的教学模式培养人才,如果培养人才的过程中没有实际项目做支撑都是纸上谈兵。要想提高学生的技能水平,就必须在技能训练上创造条件。可是,使所有学生深入企业实习又是不现实的。我们结合软件工程专业的人才培养定位目标,引进工程教育的理念。为此,我们针对软件工程专业建设,以培养软件应用型人才为目标,以实际工程项目实训为手段,以市场需求为导向,设计开发了软件技术实训平台(以下简称平台)。平台包括用户信息管理模块、理论知识学习、协作交流、软考训练及工程实践等模块,为软件工程专业的学生提供实时在线的服务,最终达到增加学生软件项目实际设计经验,实现企业需求与人才培养对接的目标。日文软件人才培养在技能训练上实行机房教学模拟训练与企业项目实际训练相结合的方法;在实验实训环境建设方面,利用软件人才工程项目训练教学管理平台为学生提供较为严格的软件项目的训练环境,培养学生掌握与企业项目开发接近的技能水平;在学生具备了相当的技能水平后,安排学生到企业完成企业项目实际训练,使学生能够近距离地接触软件企业的项目开发过程。此外,在教师的指导下,学生还面向学校和社会承揽一些软件开发项目,在项目的开发过程中,锻炼学生实际软件开发能力;还可以通过参加各级专业竞赛,在竞赛中提高学生的软件开发能力。学生实行“基础理论+工程实践”的培养模式:先完成“公共基础和专业基础教育”;然后进行“专业案例教学”、“对日软件开发专业教育”的学习。从教育模式上,先主要完成基础语言教学和专业基础课程的教学,让学生系统地接受软件开发和项目管理方面的语言(日语和开发语言)基础、数据库基础、网络基础等方面的教育,从而夯实专业基础知识。“专业案例教学”又可大致分为两个阶段,但是这两个阶段可以根据实际情况相互交叉和重叠。第一个阶段主要进行“软件案例教学”,第二个阶段主要进行“工程实践教育”,通过让学生在校进行相关的专业课程设计以及在企业进行生产实习、综合课程设计、毕业设计、顶岗工作等方式锻炼工程实践的能力。
充分发挥学校教学基地和企业实践基地的优势,全面提高学生的师范能力和实践水平在教材建设方面,学习国外教材的设计理念,配合案例式教学思想,编写符合本专业教学需求的教材。日文软件人才的培养目标是既能动脑、又能动手,具有较高知识层次、较强创新能力的复合型实用型人才,能够服务于滨海新区的对日软件外包。采用“基础理论+工程实践”培养模式,专业基础教学与案例及工程实验教育并重,通过校企合作等途径切实保证学生的实训实习效果。为了使该专业发展更加符合社会人才需求,体现我们的办学特色,也为学生的就业和个人发展提供更多机会,一方面,使学生在学习结束之后成为既掌握良好理论知识,又具备突出的实际操作能力的实用型人才,与社会接轨,能被企业所用;同时面向企事业单位和日本市场,成为具有创新意识的软件工程技术人才。另一方面,从学生发展方面,强化学生专业理论和实践能力全面发展的素质,依据学生不同的需求,在侧重于培养符合日文软件外包服务行业要求的同时,增设师范选修模块以保证学生的师范能力,从学生自身的特点和社会需求出发,打造实用人才,拓宽学生就业和发展渠道。
参考文献:
[1]谢安邦.高等教育学[m].北京:高等教育出版社,1999.
篇8
【摘要】随着企业生产规模的不断扩大,财务管理内容越来越多,管理项目越来越复杂、越细致,信息使用者所需要的财务数据信息也更加系统化、数字化。因此,依靠落后的管理手段已经无法满足客观实际的需求,如何改善企业财务管理的工作环境,提高财务管理的水平,在企业内部全面开展会计电算化已经成为当务之急。在此,就如何实现企业会计电算化,谈几点看法。
1 建立“企业erp系统”
会计电算化发展到今天,已不是单纯的会计与计算机的简单结合,而是已经发展成为一门延伸到通信学、企业管理学、市场运筹学等学科的综合性学科;它的推广应用不再是单纯的财务管理系统,而是正朝着企业资源计划管理系统(erp)方向发展,甚至发展成为不同企业之间跨地区、跨行业相互链接的大网络系统。
通过几年来在基层从事会计电算化工作所积累的经验,要想实现真正的财务管理现代化,必须在企业内部建立以财务为中心的“企业erp系统”。通过把企业内部相关部门的计算机连接起来,建立企业内部综合信息管理网络系统,在业务量比较大的几个部门建立独立的资源子网。比如:财务管理信息子网、物资管理信息子网、生产管理信息子网等。各子网要以财务资源子网为中心,通过网间联合与财务管理局域网相连接,其它部门可采用电信线路用单机挂接方式或者通过光缆与财务管理局域网连接。同时,制定一套“财务管理局域网管理规范”,规范各资源子网的数据结构、操作规范,安全规范、职业道德规范等一系列管理制度,确保“企业erp系统”运行畅通无阻,实现网上信息资源在各部门之间的相互沟通和资源共享。
2 以商品化软件为契机,开发更具实用性的会计软件
目前,我国工业企业财务部门使用的会计软件,一种是外国公司开发的经过汉化的会计软件,是按照国际会计准则设计的,适用于西方资本主义管理体系,而不适用于我国企业管理模式;另一种是国内企业开发的商品化会计软件,这种软件由于受知识产权的影响,价格比较昂贵,而且商品化软件维护起来比较麻烦,使用它势必造成人力和物力的极大浪费。当然后一种商品化软件是由各方面专家共同开发的,软件比较规范、功能比较齐全、操作也相对简便,而且软件实施周期短、见效快,因此,对于缺乏软件开发队伍的单位采用商品化软件是比较明智的。另外,我们还可以在同行业之间组织力量开发适用于某行业的会计电算化软件,实行集中开发、集中管理和维护,共同使用,这样可以节省大量的资金,而且行业之间提供的会计信息资料共上级部门可直接进行汇总处理,而不必再开发专用的汇总软件,这是我们开展会计电算化工作既经济又适用的捷径。
充分利用计算机技术和财务会计知识,建立一套科学的财会综合管理体系和会计电算化软件发展规划,采用在行业内部或同行业之间选拔优秀的计算机人才,建立行业计算机技术开发公关小组,开发适合行业内部管理需要的会计电算化软件,在企业各财会部门推广应用。达到集中开发共同使用的目的,缩短软件开发应用的周期,同时在应用管理上也可纵观全局,从长远利益出发,制定一套完整的会计电算化工作的长远发展规划。走出仅限于统计报表管理和数据存储管理的初级探索阶段,向大规模数值计算的专用软件、面向问题和过程分析及判断推理的高层次软件综合开发阶段迈进。由单机单用户、联机终端网络向标准化网络体系结构发展,充分利用计算机的网络结构,更大程度地共享计算机的硬件、软件及数据资源,建立一套完善的计算机辅助管理专家系统和智能系统,使计算机在财务管理工作中的应用向更广泛更深层次发展。为企业领导和决策者提供准确可靠的信息情报,编制出合理的企业生产经营计划报表及财务报表。有效地控制企业生产经营中的资源浪费,加快资金流通,降低资金占用消耗和产品生产成本,提高企业经济效益。开创以商品化软件为契机,以自己的软件开发队伍为中心,实现企业自己的智能化信息与专家系统的会计电算化发展新路子。
3 搞好计算机技术培训工作,走“全员化管理”的道路
会计电算化工作的关键是应用,特别是从事具体管理工作的人员,他们的会计电算化水平决定本企业会计电算化管理的水平,他们中有多少人会使用计算机,能够利用计算机进行辅助管理工作,甚至有多少人会进行简单的计算机软件编程工作都对会计电算化的顺利实施起着至关重要的作用。所以说会计电算化工作要得到全面的发展,必须走全员化管理的道路。
全员管理就是动员企业内部从事各项管理工作的工程师、会计师、管理师、统计师、会计员、技术员及一般管理人员等在搞好本职工作的同肘,协同从事计算机程序设计的人员一起研究学习计算机技术基础知识和其它管理科学的知识,应用计算机去从事各项管理工作。把计算机同现代化的管理科学融合在一起,培养出大批能从事多种工作的复合型人才,形成一个企业内部全体上下相互协作,同心协力的全员学电脑、用电脑的局面,让更多的人去学习计算机知识,用学到的知识去为管理服务,提高管理工作的水平和质量。
篇9
关键词:软件开发环境与工具;课程建设;案例教学
中图分类号:G642.0 文献标识码:B
1引言
通过对太原理工大学计算机科学专业本科毕业学生的跟踪调查,多数学生认为本科学习期间虽然学习了很多与软件开发相关的课程,但是难以对软件开发建立一个全面的认识,不能充分认识到这些课程在软件开发中的作用和地位,造成缺乏这些课程学习的主动性和针对性。学生毕业后,仍然没有一套完整的软件开发思想和工具。
参照IEEE/ACM关于计算(Computing)学科本科教学参考计划CC2005(Computing Curricula 2005),在计算机科学专业开设“软件开发环境与工具”课程是非常必要的。在软件开发基础理论指导下,学习和掌握一些流行的软件开发环境与工具,并积极进行实践,使计算机科学专业的毕业生具有从理论研究到软件开发的能力和良好的软件开发素质,毕业后可以很快适应软件开发的需要,成为合格软件开发人员。
2调整开设时间与教学内容
2.1开设时间
为了使学生尽早接触软件开发过程,了解软件开发相关课程在软件开发中的作用和地位,培养和激发学生对相关课程的学习积极性,并熟练使用本课程中讲授的软件开发环境和工具进行后续相关课程的实践。太原理工大学计算机与软件学院计算机科学技术系在计算机科学技术系本科生入学后的第4学期(大学二年级下半学期)就开设了“软件开发环境与工具”课程,前序课程是“C语言程序设计”和“面向对象程序设计”。课程系统介绍软件开发的过程和一些常用的工具,目的是使学生撩开软件开发的神秘面纱,建立软件过程化开发思想,熟悉软件开发的主要工具和环境,并具备很快学习熟悉新工具的能力。
由于软件种类繁多(如系统软件、事务处理软件、嵌入式软件、科学和工程计算软件、娱乐软件等),相关的软件开发人员还需要掌握网络、硬件等方面的知识。由于开设时间早,学生暂时没有这些相关课程的理论支撑,不具备开发各类软件的能力。因此选择教学内容时,我们主要面向事务处理软件的开发,系统给学生讲解开发这类软件较流行的环境与工具。
但是课程开设较早,也导致出现课程衔接的问题。软件开发需要系统掌握软件工程、程序设计语言、算法设计、操作系统、数据库原理、软件体系结构等相关课程的基本知识。考虑到课程衔接问题,教学内容中适当增加了一些基础知识,同时为后续课程的深入学习做了必要的铺垫。
2.2教学内容
教学内容面向事务处理软件的开发过程,主要包括三大部分:软件开发基础理论、软件开发工具、软件开发管理等三部分,见表1。
软件开发基础简要介绍软件生命周期、软件体系结构、编程语言、开发环境及开发环境的选择,数据库基础等;软件开发工具介绍开发事务处理软件常用的设计、编程与测试软件。编程工具以Delphi为例,介绍Delphi的开发方法、文件结构、主要控件、窗体的布局、事件的添加、数据库应用开发等,使学生能够通过Delphi这种简单易学的编程环境与工具快速开发出简单事务软件应用程序来;设计工具以PowerDesigner为例,介绍不同分析阶段的设计模型;数据库平台以Microsoft SQL Server为例,主要介绍查询分析器的使用,该工具可以作为SQL语句的学习平台。软件管理简要介绍软件配置和项目管理的基本概念,并以Microsoft Visual SourceSafe(VSS)和Microsoft Project为例介绍软件项目管理和配置管理工具。
目前“软件开发环境与工具”课程采用40学时的课堂教学计划,教学内容安排如表1所示。
2.3实践内容
本课程注重实践,首先保证学生充分利用实验室提供的时间,巩固掌握课堂讲授内容,实验室完成的内容和课时分配如表2所示。
除次之外,积极鼓励学生利用课余时间主动实践,并为他们安排一些实际项目进行实践,如给学生描述学籍管理、住宿管理、图书管理等系统的业务需求,引导他们进行相关模块的设计与开发。在这些实践过程中,学生们发现大量实际问题,通过与同学和老师的交流,这些问题得到了很好的解决,巩固和完善了课堂教学内容,提高了解决实际问题的能力。
3改进教学方法
3.1激发学生的学习兴趣
本课程首先给学生讲解软件开发市场的现状,并从软件危机开始讲起,使同学们认识到:“软件开发必须采用科学的方法论,借助先进的软件开发和管理工具,采用先进的软件开发技术”,激励同学们通过相关课程的学习逐步把自己培养高素质的开发人员。
3.2案例教学
为了便于学生了解一个完整软件系统的较全面的开发过程,课堂教学过程中,选择学籍管理系统作为教学案例。该系统没有非常复杂的业务逻辑,是学生较熟知的业务,因此不需要花费很多时间给学生分析业务流程,可以集中精力去讲解软件开发的方法和工具。
在讲解设计基础时,以学籍管理为例,讲解系统分析与设计的方法,引导学生完成一些模块的设计,将未完成模块作为作业,由学生在课后完成。而随着PowerDesigner教学过程的进行,学生可以利用工具来进行设计,同时感受到利用工具可以辅助设计,明显提高设计效率。
随着教学内容的推进,如数据库设计和SQL语言、用户界面设计、数据库应用程序开发、软件测试等,学生都可以继续使用这个案例。
最后仍然采用这个案例演示软件项目管理工具和配置管理工具的功能,使学生认识到软件开发过程中,软件管理是必不可少的。
另外,课程讲授期间,进行了多次讨论与调查反馈活动,如对软件危机现象、软件开发过程、学习方法的讨论,教学方法及效果的调查。通过这些调查结果,及时调整改进了教学方法和教学内容,是教学任务顺利进行的必要保证。
4调整考核体系
本课程实践性强,重点考查学生对软件开发工具的应用和软件开发方法,不能采用传统的试卷考核方式。本课程对考核方式也进行了新的尝试,将学生的考试成绩划分为3部分:机试+笔试+平时成绩。平时成绩占总成绩的20%,主要包括平时课堂提问、出勤、实验等情况。机试成绩占总成绩的40%,主要考查学生对工具使用的熟练程度和实际问题解决能力。笔试成绩占总成绩的40%,主要考查学生对基本理论的掌握程度。这样的考核体系可以督促学生切实加强实践。
5结束语
目前,太原理工大学计算机与软件学院的计算机科学专业06级已经按照计划完成了教学任务。与学生座谈中发现学生对这种教学方法是比较认可的。一部分学生已经可以使用所学的理论和工具完成一些简单系统的开发,并表示希望能在后续课程中继续学习更深入的理论。但是也有一部分学生反映教学内容太多,学习比较困难,这种现象可能是以下因素造成的:
(1) 缺乏配套教材
虽然很多学校都开设了“软件开发环境与工具”,教材也很多,但是由于开设时间不同,教材内容存在很大差异。目前还缺乏一本配套的教材,只能靠教师整合不同的教材来讲授,因此编写一本配套教材是非常必要和紧迫的。
(2) 课时短
课程内容较多,实践性强。相对来说课时就显得有点短了,因此还需要进一步调整教学内容,并鼓励学生积极利用课外时间进行学习实践。
新教学方式还需要大量的后续工作和不断改进,包括配套教材的编写,题库(包括机试与笔试试题)的完善等。随着这些工作的不断完善,本课程必将真正成为软件课程体系的引导课和工具课,学生们可以充满兴趣的、有针对性学习后续课程。
参考文献
[1] 刘乃琦. 计算学科CC2004与本科教育知识体系[J]. 计算机教育,2004,(8).
篇10
关键词:工业化教育;软件工程教育;软件工程专业课程体系;逐步工业化教育模式
0、引言
为满足21世纪国家工业化发展需求,教育部启动了“卓越工程师培养计划”,旨在鼓励各大高校推进教育体制改革。针对国家新的发展战略,结合“国际化,工业化,高质量,高速度”办学理念,哈尔滨工业大学国家示范性软件学院(HIT-NPSS)提出了一套软件工程专业逐步工业化的教学改革模式。
在过去的10年中,HIT-NPSS对现有教学模式进行深入分析,结合IT企业实际需求和反馈,借鉴欧美国家的教育制度,逐步建立并完善了一套面向工业化的软件工程专业本科生培养模式。这种新的培养模式成功缩小了毕业生能力与企业期望之间的差距,成为哈尔滨工业大学教育体制改革的成功案例之一。
1、工业化课程体系模型
HIT-NPSS本科生课程体系的设置不仅注重学生课堂知识的获取,还以培养学生工业化技能(包括动手能力、交流和表达能力,以及自学能力等)为基本目标。对于软件工程专业的本科生,掌握专业基础知识固然重要,但在当今的工业化环境下,能否在实践中灵活运用这些知识才是衡量学生素质的首要标准。为此,HIT-NPSS本着为学生成长服务的宗旨,基于IT企业人才需求,充分吸纳优秀的IT企业文化,立足学院的国际化办学环境,提出了一套以学生为主体,教学与工业实践紧密结合的面向工业化的本科生课程体系模型,如图1所示。
该课程体系模型的核心包括3大知识领域:计算机技术、软件工程以及IT策略与管理;4大应用领域:网络通信与信息安全、服务科学与企业信息化、多媒体与信息处理以及嵌入式系统与软件。
2、逐步工业化的教学方法
HIT-NPSS的本科课程共分为4个学年、8个学期。学生前3个学年在校内学习理论课程和实践课程,第4学年到IT公司进行工业实习,不同学年的课程具有不同的针对性。
2.1 理论课程设置
第1学年以基础课程为主,包括基础理论类课程、专业基础知识类课程以及基本编程技术类课程。为了强化学生的动手能力,我们还增设了C++程序设计以及程序设计实践2门课程。特别是,HIT-NPSS本科生第1学年还开设了IT职业道德、交流技巧以及IT企业管理3门管理类课程,重点培养学生的团结协作能力等职业素养。基于以上课程设置,学生在完成第1学年的学习任务后,能够扎实掌握计算机基础知识,养成良好的编程习惯,提高交流和表达能力。
第2学年以计算机软件系统类课程为重点。通过数据结构与算法、操作系统、数据库系统以及计算机网络等课程帮助学生打下良好的计算机软件系统理论基础;通过软件工程课程帮助学生加深对软件开发生命周期的理解;通过面向对象技术与UML、Java编程技术以及软件开发实践等课程提高学生的软件开发能力和实践技能。此外,为了增强学生对现实IT工业领域的了解,该学年还开设市场营销学、合同法以及财务管理3门管理类课程,这也是HIT-NPSS课程体系的特别之处。
第3学年是学生在校内学习的最后一年,完成第3学年的课程学习后,所有学生将到IT企业进行为期一年的工业实习。第3学年的课程主要为了培养学生解决问题的能力和计算机技术应用能力。开设的课程包括编译原理、多核程序设计、面向服务的计算技术、用户界面设计、算法设计与分析以及软件测试与质量保证等。由于软件工程领域覆盖面较广,按照个性化的教育理念,HIT-NPSS软件工程本科专业下设网络通信与信息安全、服务科学与企业信息化、多媒体与信息处理以及嵌入式系统与软件4个专业方向,各方向按照培养学生相关专业技术和实践能力的目标分别设置不同的专业课程。在此基础上,本学年还开设了软件开发过程管理、项目管理、商务谈判及知识产权法4门课程,以培养学生的专业素养,为第4年的工业实习打下良好的基础。
2.2 逐步工业化实践环节
为逐步实现工业化教育目标,HIT-NPSS在每学年理论课程的基础上,分别设置了以下实践内容:
(1)大学生创新项目。大学生创新项目以“兴趣驱动、自主实验、重在过程”为原则,在第l学期课程结束后,要求学生以项目组形式自主完成软件研发课题。对于课题的选择,学院并没有统一规定,学生可以按照各自兴趣选题并分组。为了鼓励和支持学生的创新研究,学院将为各组安排一名指导教师,对软件开发的全过程进行监督和指导。学生利用课余时间完成创新项目,在第1学年结束前学院将对各组的创新项目进行评审,对前10名予以奖励。经过几年的实践,大学生创新项目已经成为HIT-NPSS一大文化特色。
(2)短期企业实训。企业实训是HIT-NPSS课程体系的一个重要组成部分。在第2学年的第2学期,学生将被分配到指定的企业基地进行为期4周的学习和训练。整个实训过程以实际项目开发为主导,中间穿插工具类、职业规划类等培训课程,学生在IT企业环境中参与企业项目开发,体验从需求分析、系统设计、编码实现、测试及交付使用的软件开发全过程。短期企业实训为学生提供了接触企业实际项目、发现自身兴趣和不足的良好机会。
(3)软件工程实践。软件工程实践在第3学年的第2学期进行,是逐步工业化教育的第3步,要求学生以分组的形式在2周时间内完成一个软件系统的开发。与短期企业实训相比,软件工程实践过程中学生要独立完成软件开发生命周期的各个阶段。通过软件工程实践,学生的编程能力、解决问题能力、一般平台应用能力、流行工具软件的使用能力以及项目管理能力将得到全面提升,这也为第4学年的工业实践打下良好基础。
2.3 企业实习
软件工程专业本科生第4学年将在IT企业实习中,完成具有一定技术难度和较大工作量的技术方案设计和软件开发等工作,并在此基础上完成(撰写)本科毕业论文。通过工业实习,学生的软件开发能力、工程实践能力以及自学能力都将得到大幅度提高,完成学生到企业员工的软件产业人才的逐步转变。
(1)双导师机制。HIT-NPSS要求所有的学生必须在IT企业进行至少一年的工业实习。为了保证课堂学习向工业实践的平稳过渡,学院不仅要帮助学生选择合适的实习基地,还要帮助学生确定指导教师。为此,HIT-NPSS提出了双导师机制,即学生在校内和校外(实习基地)各选择一名指导教师,校外导师主要负责指导学生软件项目开发,校内导师主要负责指导学生毕业论文撰写。HIT-NPSS要求软件工程专业本科生的毕业论文要基于其工业实习期间直接参与的软件工程项目,双导师机制不仅能够帮助学生填补不同领域的知识空白,还能够有效建立起大学和IT企业的沟通桥梁,保证学生工业实践和毕业论文的顺利进行。
(2)实习监管方法。在双导师机制的基础上,HIT-NPSS通过开题检查、中期检查以及结题验收对学生的整个实习过程进行监管。在工业实习的前3个月内,学生必须在校内导师和校外导师的共同指导下完成论文开题报告,即确定论文题目、主要内容以及关键技术等。在工业实习3个月后,学院将到实习基地对学生的选题情况进行检查,争取尽早发现存在的问题并对学生进行有效指导。中期检查将在选题后的3个月内进行,检查过程与开题检查相似,目的是检查学生的工作进展是否符合开题报告中的日程安排,帮助学生解决实习中的问题与困难。此外,中期检查也是学院与实习企业交流学生实习表现、调整未来实习派遣计划的重要手段。结题验收是学生工业实习结束前的最后一次检查,一般在实习基地进行,在学生展示自己的工作内容后,由企业顾问和校方专家共同评估其实习情况。
截至2013年,HIT-NPSS已有2937名学生在200家IT企业完成了工业实习。
2.4 校企合作模式
为充分发挥企业在工业化人才培养过程中的作用,HIT-NPSS采用多种模式加强校企合作。主要合作模式包括以下几种:
(1)校企合作高峰会。校企合作高峰会以不同的主题每年举办一次,是高校和企业高层以及产业高级人员共商共计的重要平台,有效促进了校企之间的沟通与合作,对全面实施卓越工程师培养计划起到了巨大推动作用。截至2013年,HIT-NPSS已成功举办了多届校企合作高峰会,累计邀请过220余家企业参会,并与中兴通讯股份有限公司、金山软件有限公司、浪潮集团等50多家知名企业保持着长期合作关系。
(2)校内工业实践基地。在广泛开展校外工业实习的同时,HIT-NPSS也与哈尔滨本地软件公司合作,在校内建立工业实习环境,提高学生的软件开发能力。学生可在校内工业实习基地进入企业的项目组,参与具体项目的开发。目前,哈工大首创科技股份有限公司、哈工大慧通新意信息技术有限公司、黑龙江省计算机网络与软件评测中心等公司已进驻校内实习基地。
(3)联合实验室。联合实验室是校企合作的另一种模式,主要用于教学和软件开发实践,由软件学院负责提供场地和设备,由企业提供开发平台和各种工具软件,并由企业定期为软件学院的师生开设专题讲座,进行相关指导。目前,HIT-NPSS已与浪潮通用软件公司、金山软件股份公司和英特尔亚太研发有限公司共同建立了联合实验室。联合实验室的建立,为软件学院建立科学的课程体系和工业化实践教学管理方法,实现工业化软件人才的培养创造了良好条件。
(4)学生俱乐部。学生俱乐部是由软件学院和软件公司共同支持的实践类学生社团组织。学生俱乐部依托实际项目、模拟企业真实经营环境,有效培养学生的IT实践经验和创新能力,同时加强校企技术交流。目前HIT-NPSS已组建起亦飞、零度、腾讯等7个学生俱乐部。其中,亦飞俱乐部由阿里巴巴集团支持在2003年创建;零度俱乐部由金山软件股份公司支持在2004年创建;腾讯俱乐部由腾讯科技有限公司支持于2005年创建。
(5)企业家论坛。HIT-NPSS于2003年发起了企业家论坛活动,主要形式是邀请国内外著名企业家到校进行讲座或演讲。论坛的宗旨是让学生了解行业动态、把握领先技术、了解企业发展历程,以实现活跃校园气氛、开拓学生视野、树立企业形象的最终目标,同时促进企业与哈工大软件学院的相互了解与广泛合作。到目前为止,HIT-NPSS已经邀请了30余名知名企业家作为演讲嘉宾。
(6)青年校友论坛。青年校友论坛是HIT-NPSS品牌活动企业家论坛的进一步延伸。青年校友论坛的演讲嘉宾主要是软件学院的毕业生,在企业工作2年以上。青年校友论坛是在校学生与学长们交流的平台,大家一同分享上学的心得、实习的体会、工作后的经历。青年校友论坛的创办宗旨是进一步落实学院的工业化教育模式,深化学院工业化办学理念。到目前为止,已邀请过10余名毕业生重返母校作为论坛嘉宾,青年校友论坛成为HIT-NPSS工业化教育模式中不可或缺的一部分。
3、学生就业情况
在工业实习期间,很多学生便已决定毕业后加盟实习公司或合作企业。工业实习机制不仅为学生创造了良好的就业环境,同时实现了高校和企业的双赢。一方面,高校能够与一流工业实践基地保持长期稳定的合作关系,以便为学生提供更好的实习机会;另一方面实习生可以成为实习公司的潜在员工,这不仅解决了企业的招聘难题,也大大缩短了企业新员工培训时间。经过9年的实践,哈工大软件学院已与一批知名企业建立了良好的长期合作关系,成为我国高校工业化实践的成功案例之一。
根据统计,外资企业、国内500强企业、科研院所以及IT企业是哈尔滨工业大学学生就业的主要去向,每年到这些单位就业的学生约占毕业学生的90%以上。外资企业主要包括IBM、微软、AUTODESK、NEC、东芝、三星、摩根士丹利以及Oracle等企业;国内500强企业主要包括中国移动、中国联通、航天科工集团、工商银行、华为、联想、神州数码等国内知名企业;科研院所主要包括各大部委和全军所属各研究单位、中科院、中国航天机电集团公司、中国电子科技集团公司所属的科研单位、全国各高校;国内知名IT企业主要包括百度、腾讯、金山、用友、盛大、阿里巴巴和搜狐等著名IT企业。超过50%的毕业生由其实习公司或合作企业录用。