论文网
首页 职业教育高等教育学正文

基于CMMI的软件实训管理系统研究

  • 投稿魏大
  • 更新时间2015-08-31
  • 阅读量200次
  • 评分4
  • 83
  • 0

姚登举,巩 聪,徐西庆

(哈尔滨理工大学,黑龙江 哈尔滨 150040)

摘 要:高校软件人才培养和软件企业对人才的需求脱节是软件工程教育面临的现实问题。CMMI是软件企业普遍采用的管理模型,其核心思想是软件过程管理。文章从软件项目实训研究现状出发,阐述了CMMI的基本内涵,并提出了基于CMMI的软件实训管理系统设计策略。

关键词:管理系统;项目实训;软件工程;CMMI

中图分类号:G640 文献标识码:A 文章编号:1002-4107(2015)06-0086-02

信息化是当今世界发展的必然趋势,在信息化推进浪潮中,教育信息化快速发展。教育信息化带来的不仅仅是教育信息管理方式的网络化和信息化,更主要的教育理念和教学模式的变革和创新。随着个人计算机、智能手机、平板电脑等硬件设备的日益普及和移动互联网技术的飞速发展,出现了各种各样的网络教学平台。与传统的网络远程教育不同,新的教学平台从教学理念、教学模式、教学内容、授课方式等各方面改变着传统的教育模式。尤其是2013年以来,以慕课(MOOC)[1]为代表的新型网上课堂,在教育界刮起一阵旋风,引发热烈的讨论和追捧。本文探讨将软件企业普遍采用的CMMI管理理念运用到软件工程专业实训教学管理过程中,在高校内搭建基于互联网的新型实践教学平台,在实现实践教学管理信息化的同时,达到加强培养学生的工程实践能力培养的目的。

一、软件项目实训研究现状

近年来,教育界和工业界达成共识:目前高等院校培养的计算机及软件人才的能力素质并不能很好地满足软件企业对人才的实际需求,尤其在实践教学环节上,存在许多不足[2]。加强和改进IT相关专业的实践教学环节,提高学生的工程实践能力和工业化素质,实现人才培养和企业需求之间的平滑对接,是高等院校人才培养急需解决的一个重要问题[3]。

软件项目实训以提高学生的职业能力为目标,以实际的软件项目开发为背景,遵循人才培养的基本规律,并按照企业项目开发的标准流程和管理规范,以项目驱动和团队合作的模式使学生参加软件工程项目开发,重点培养和训练学生的专业技术应用能力和工程实践能力,使学生能够在正式参加工作前就熟悉软件项目开发的实际流程,积累项目经验。软件项目实训有助于协助学生实现从学生角色到职业人角色的顺利过渡。

软件项目实训过程涉及大量的文档、代码和多媒体资料,通过人工对这些项目资料进行管理,不仅工作量大、工作效率低,而且难以实现资源共享、资源利用率低。东软等一些大型软件企业的人力资源培训部门开始利用自身优势、借助互联网平台开展员工培训和社会培训。一些高校也开始尝试设计和开发学生实践教学平台,如山东大学软件学院的实训综合管理系统等。通过构建软件项目实训网络平台,教学管理人员可以方便地对实训资料进行管理和维护,实训指导教师可以有效地对实训流程进行管理和监控,学生能够随时随地地参加实训学习,不仅实现了资源共享,而且改变了传统的课堂实践教学模式,有助于激发学生的学习兴趣,提高实践教学质量。作者所在单位多年来坚持深化校企合作,通过改革教学模式、教学理念、教学方法等一系列措施,逐步建立起“两段式”(校内—校外)的工程实践教学体系,成立了校内软件实训中心,为学生在校内接受软件项目实训锻炼创造了平台。在软件项目实训的实际需求驱动下,我们设计了基于CMMI的软件项目实训管理平台,该平台以能力培养为目标,能够满足我校软件工程专业人才培养的实际应用需求,同时可以为其他高校的实践教学建设提供借鉴。

二、CMMI的基本内涵

CMMI(CapabilityMaturityModelIntegration)即软件能力成熟度集成模型,其核心思想是过程管理[4]。通过实施CMMI,首先能保证软件开发的质量与进度,对“杂乱无章、无序管理”的项目开发过程进行规范。其次有利于成本控制,因为质量有所保证,浪费在修改、解决客户的抱怨方面的成本会降低很多。实施CMMI还有助于提高软件开发者的职业素养,无论是项目经理,还是工程师,甚至高层管理人的做事方法逐渐变得标准化、规范化。

CMMI模型可分为五级,基本内容如下[5]:(1)初始级。软件过程是无序的,有时甚至是混乱的,对过程几乎没有定义,成功取决于个人努力。(2)已管理级。建立了基本的项目管理过程来跟踪费用、进度和功能特性,制定了必要的过程纪律,能重复早先类似应用项目取得的成功经验。(3)已定义级。已将软件管理和工程两方面的过程文档化、标准化,并综合成该组织的标准软件过程;所有项目均使用经批准、剪裁的标准软件过程来开发和维护软件,软件产品的生产在整个软件过程是可见的。(4)量化管理级。分析对软件过程和产品质量的详细度量数据,对软件过程和产品都有定量的理解与控制;管理有一个作出结论的客观依据,管理能够在定量的范围内预测性能。(5)优化级。过程的量化反馈和先进的新思想、新技术促使过程持续不断改进。

在软件企业里,CMMI体现为一系列的规范制度。本文借鉴CMMI的核心理念,将重要的规范和流程融入到软件项目实训平台设计中,将项目的实施计划、实施流程、各类文档、规范等固化成网页形式,实现各项开发活动的强制执行。通过使用该平台,有利于培养学生形成良好的工作习惯,熟悉软件开发的实际流程和规范要求,将软件工程过程学习融入到项目实训中,在潜移默化中促进理论与实践的有机结合。

三、基于CMMI的实训管理系统设计

基于CMMI的软件实训平台可以实现对实训教学过程中的人员、资料、规范、制度等进行流程控制和管理。该平台设计了教师、学生、管理员和普通用户(游客)四种角色,下面按角色介绍该平台的功能结构。

(一)普通用户功能

普通用户的功能非常有限,只能浏览网站主页,包括:(1)实训新闻。(2)实训公告。(3)友情链接。(4)实训中心简介。

(二)管理员功能

教学管理者可获取实训的各类统计信息,随时了解学员的实训情况及实训教学情况,监控实训教学过程。主要功能模块包括:(1)用户管理。可以对教师和学生信息进行增加、修改和删除管理等操作,可以批量添加学生和教师。(2)项目管理。可以创建、删除和修改实训项目,并为项目重置密码和项目指导教师。(3)课程管理。可以创建、删除和修改实训课程,并为实训课程重置密码和指导教师。(4)信息管理。可以在此模块发布相关的信息,如实训要闻,通知公告等。(5)实训组织管理。可以在此模块中对课程和项目成绩的模板进行设置,并可以备份数据库、对参加实训的人数进行动态分析和对实训论坛进行操作。

(三)实训指导教师功能

实训指导教师可以实时监控课程实训和项目实训教学的所有环节,分配教学任务,查看学生任务完成情况,方便指导学生实训,减轻教学压力,提高实训教学质量。主要功能模块包括:(1)我的首页。可以查看自己承担的课程和项目实训任务,发布课程和项目实训公告,查看和修改自己的信息。(2)成绩管理。可以为选择此课程和项目的学生录入和导出实训成绩。(3)课程实训。可以对实训课程资料进行管理,查看学生上交的成果物、日志和相关资料。(4)项目实训。可以对实训项目进行管理,查看学生上交的成果物、日志和相关资料。

(四)学生功能

通过该实训平台,学生可以进行软件项目实训锻炼,方便地获取实训课程和项目的参考资料、帮助文档、学习任务等,撰写开发日报及工作总结、提交工作成果,全程接受实训指导和监控。主要功能模块包括:(1)我的首页。可以查看已选择的课程和项目实训信息。(2)个人信息。可以查看信息和修改个人信息。(3)查询选课。可以根据课程号或者项目号对要参加的课程和项目实训进行选择,加入课程实训和项目实训。(4)查看成绩单。可以查看所选课程或项目的实训成绩。(5)项目实训。按照指导教师事先设计好的过程,下载相关资料,参加项目实训,提交成果物和日志。(6)课程实训。可以下载课程资料、提交成果物和日志。

值得特别指出的是,我们在软件项目实训平台中设计了实训日志功能,要求学生在实训过程中,像企业员工一样必须按时报告当天的工作内容、取得的成果、存在的问题以及对策等信息,教师和管理员可以即时察看日志信息,发现并及时解决各种问题,实现对于软件项目实训的过程控制。

本文探讨了在高校内对软件工程专业学生进行软件项目实训的必要性和可行性,提出通过构建基于CMMI的实训教学管理平台,提高软件项目实训的效率和质量。借助于软件项目实训平台,学生可以随时随地以多种方式参加软件项目开发训练,有利于培养学生的工程实践能力、团队合作能力和工业化素质。

参考文献:

[1]吴文峻.美国MOOC考察见闻[J].中国计算机学会通讯,2013,(10).

[2]卢维亮,屈蕴茜.软件工程专业工业实习课程的组织与管理[J].计算机教育,2013,(8).

[3]袁磊,黄健,宁彬.软件工程实训课程体系研究[J].计算机教育,2010,(22).

[4]齐小玲,冯大鹏.CMMI体系建立过程及在项目管理中的作用[J].计算机科学,2013,(11).

[5]张淑丽,刘胜辉,姚登举.基于CMMI的本科教学过程持续改进机制的研究[J].科技与管理,2013,(2).