计算机本科专业软件实习工厂的实践探试与效果分析

进修社 人气:1.14W

摘要:本文详细给出了某大学软件实习工厂的实施过程,对比分析了不同模式下学生的生产实习情况,指出软件实习工厂平台对培养大学生实际动手能力,提高科技创新能力将会起到好的作用,也使学生较快适应毕业后的工作需求,对计算机专业的生产实习课程建设及实验教学改革有一定的借鉴作用。

计算机本科专业软件实习工厂的实践探试与效果分析

 关键词:实习工厂;虚拟实验;项目库;软件工程

 1、引言

针对当前计算机专业生产实习过程中存在的不足,我们在文中提出了采用“软件实习工厂”的方法来增强学生的动手能力,激发学生的实习与创新热情,最终达到全面育人的目标。文献中论述了“软件实习工厂”建设的主要目标,就是通过组合校内计算机专业实验室的硬件与软件,建立“软件实习工厂”管理平台。平台系统包含了产生实习需要完成的各项任务,这些任务主要是一些真实软件企业的项目,通过分解后形成在一次生产实习中能够完成的任务。实习学生通过“软件实习工厂”管理系统登录实习工厂,按照要求完成各项目任务。将过去那种参观性的被动实习变为主动实习,让实习学生学习与熟悉项目开发的相关技术、技能、团队集体开发的能力与组织方式。

学生经过实习后相当于经历了一次软件公司的“准工作”经历,将理论与实践相结合,为毕业设计做一次预练。在实习后,将学生做的每一个项目与已经成功运作的项目相比较,让学生体会到自己的产品与真正市场的产品的差距,从而激发与培养学生创新意识、实践能力和意志品质。本文将论述计算机本科专业软件实习工厂的实践与结果分析。

 2、软件实习工厂的实现与组织

从目前我们实施的过程来看,实习教学过程的组织是提高实习效果的关键因素之一,主要有如下几点:

(1)实习过程中的角色扮演与互动

在以往的实习过程中,教学过程控制的核心是教师。

实际上这不利于激发学生的独立思考、独立组织、独立自主完成任务的积极性。因此,在新的“软件实习工厂”中,采用了角色扮演与互动的方式,较好地调动了学生的积极性与创新性,非常适合这种脑力活动为主,具有创新性的软件开发。具体实施过程如下:

① 根据一个项目‘规模的大小,由3~5人组成学习小组,各扮演一个角色,也可以扮演多个角色,或者轮流扮演角色。

② 由项目经验丰富的教师担任部门经理,他对项目库中的项目非常熟悉,能够详细了解项目的客户需求、概要设计和详细设计;知道项目现场开发的组织、测试、发布以及验收的全过程。教师除了扮演教师传教解惑的角色外,还扮演公司中部门经理,组织任命3~5个软件项目组的负责人,指导、监督、检查所属项目组的各项工作;掌握工作情况和有关数据,宏观调控各软件开发项目的完成; 综合平衡各软件项目组的工作量。

③ 项目经理由学生担任,负责本项目组的开发情况。他们根据项目的客户需求,书写概要设计和详细设计;负责开发、测试、发布以及验收的全过程;负责项目的进度和质量;负责项目成员的`管理以及项目组之间的协调和技术交流与共享。

④ 软件开发人员由学生担任,按照项目经理的工作分配,根据详细设计编写代码和开发数据库,并对程序进行初步测试。

⑤ 测试人员对已完成的软件和数据库在交付前进行完整的测试工作,并写出测试报告。

⑥ 用户:由教师或者其他组的用户担任,对项目进行测试与试运行,对项目进行评价与评定。

(2)严格的实习过程控制

实际项目有一个严格的合同书,合同书上有严格的项目完成期限,延期交付项目为公司带来的不良结果是较严重的。因此,“软件实习工厂”系统平台在设计项目库时都对每一个生产实习项目都会有详细的时间进度要求,所需提交的资料包括设计说明、资料、代码、产品说明等,对提交的资料都打上时间标记,并对其记分,以加强学生对未来职业习惯的认同。

3、软件实习工厂的实施结果

“软件实习工厂”建设项目从2006年上半年成功申请校级教改立项后,得到学院、学校的大力支持与资助,在2006完成了系统平台管理系统的建设以及1个项目库的建设。2007年又获得国家大学生创新性实验计划项目的资助,进一步提高与丰富了系统平台,项目库增加到了11个。 2008年7月底,在计算机专业的2个班中进行了“试实习”,取得了初步的结果。

3.1 统计结果

为比较“软件工厂”的实验效果,我们在两个计算机专业的自然班共58人进行了初步实验,与软件班的同学实习情况进行了对比。软件班的学生共34人,与计算机专业不相同,软件班为我校试办的全国示范性软件学院的学生。为加强软件班的生产实习,学院专门从校外的软件公司请来有项目经验的项目工程师进行指导,但实习的方式还是按照传统的教学与实习方式,即老师布置任务后,学生在普通的实验里进行实习,老师在旁边辅导。

“软件实习工厂”的效果比较明显。效果不仅仅体现在所述的一些具体指标上,更重要的是在“软件实习工厂”中实习的学生全面地感受到了正规公司全过程的软件开发过程,需要自己负责任地去做软件、做项目,这样就会转变平常那种以完成老师布置的任务为主的被动实习方式。从普遍的反映情况来看,“软件实习工厂”实习的学生具有紧迫感,“软件实习工厂”软件管理系统以软件开发特有的流程计划向前推动,迫使实习者在具有挑战性的环境下完成全过程的开发。而常规的实习方式以完成老师任务为主,往往不太符合现代软件开发的实际情况,创新性不够,学生投入的积极性、时间与精力不够。从完成的工作量来看,参加“软件实习工厂”的实习学生完成的工作量是常规实习学生的2倍多,而从完成的开发质量上来说,更是相差一个档次以上(主要原因在于“软件实习工厂” 以实际开发的项目为背景来要求学生,而常规实习以达到一定的训练目的为主,要求的档次不在一个层面上)。而从全面系统掌握软件开发的全过程、环境、平台以及角色职责来看更是相差很远。