APP下载

浅谈软件工程专业实践教学中的问题与对策

2019-09-10任政

青年生活 2019年5期
关键词:软件工程实践教学问题

任政

摘 要:随着现代社会的进步和各种移动终端设备的使用,当前市场对大数据处理和移动技术支持方面的人才提出了新的要求。一些大型软件企业正在实施大数据处理的软件项目及对相应软件产品移动需求的支持,如淘宝、百度等。高校软件工程专业作为与软件行业关系最为密切的专业,为使本专业毕业生具备更好的大数据处理和移动开发能力,更适应软件行业的需求,应该以新的行业需求为导向,开展有针对性的相关软件开发实践。

关键词:软件工程;实践教学;问题;对策

一、软件工程专业实践教学中的问题

(一)项目的规模和难度较小,与企业项目有较大差距

以往教学用项目一般要求学生开发如注册、登录等简单模块,涉及的功能规模较小,体现不出软件工程化的特征,特别是软件功能几乎不涉及大量数据有效存储和处理的问题,项目难度较小,与现实需求脱节。随着大数据时代的到来,软件系统需要处理的数据量越来越大,如果项目不体现大数据量、数据的有效存储及复杂处理过程,则项目不能反映市场特点;而且,如果软件项目的实施不支持移动技术,那么也无法适应日益增长的移动用户群体需求。

(二)项目的开发以个人为主,缺少团队开发的环节

以往教学过程中的项目开发大多由学生个体独立完成,极少由学生团队完成。当前的工程化软件一般规模较大,必须组建开发团队来完成。团队开发项目会使项目开发的本质发生改变,这不仅指团队有多个成员,更重要的是团队成员的分工以及成员之间的沟通与协同能力,涉及人员配置、共同策划、协作完成、进度控制等项目管理中各个环节,这是进行大型软件项目开发必需的技能和经验。

二、软件工程专业实践教学中的问题对策

(一)项目设置逐步深入,消除同质化

项目实践从本科一年级或二年级开始起步,这个阶段的学生只掌握了基础知识,项目实践更注重于程序逻辑的编写。项目规模相对较小,但强调程序逻辑。本阶段可以设置一些逻辑性、趣味性强的游戏程序开发项目,以激发学生的学习兴趣,促进学生掌握项目开发必需的基础知识,如基于Android系统的手机游戏开发。在本科二年级第2学期到三年级第1学期的项目实践中期,学生已经具备一定的软件开发能力,能够从事数据库的设计和操作、Web项目开发,可以进行相对大型项目的项目开发。本阶段可以设置网络流量分析系统的开发项目,该系统用于监控交换机、路由器、IP网络在指定时间内的Netflow数据流,通过统计分析这些流量数据可以查看不同应用软件的流量信息,如QQ、电子邮件、FTP应用占用网络带宽的情况等。系统运行的过程中需要不停采集设备、网络的流量数据报,因此需要存储和处理海量数据。该项目的实践对锻炼学生的处理海量数据存储、检索等技能有积极作用。在本科三年级第2学期到四年级第1学期的项目实践后期,学生已经具备一定的大数据量问题处理能力并学会企业开发技术,此时配置数据量大、复杂的实际企业项目,可以进一步提高学生的开发能力和积累项目经验,为毕业和就业奠定基础。本阶段设置的实践项目为网络舆情分析系统。该系统通过主动采集主要网络媒体(如新浪、凤凰、搜狐等)信息,获取当前网絡舆论情报并将关注的舆论热点通过曲线图、饼图、热点地图等统计图表加以显示,使用户能够直观地掌握所关注的网络舆情。该系统可以应用于政府部门,也可以应用于商业领域,如汽车厂商可以通过本系统了解自己产品的问题(如大众汽车断轴、DSG问题所引发的网络舆情热点)并采取相应的解决方案。上述3个阶段项目侧重点不同,项目难度逐层深入,有利于逐步提升学生的实践能力,缩小学生能力与企业用人需求之间的差距。

(二)以团队为基础实施项目的开发

随着软件规模的增加,软件的复杂性也随之增加,因此工程化软件开发方式是以团队开发为基础。团队开发涉及项目功能分割、团队成员协作、人员调配、进度控制等具体要求,是一种过程比较复杂、难度较大的开发方式,因此学生需要进行适当的培训和训练才能成功地实施大型项目。团队开发训练包括如下几个部分:①团队的组建,团队成员之间要相互了解、相互信任,能够为完成同一目标而通力协作;②团队协作,多个成员共同完成一个软件项目需要使用合适的源代码管理服务器,团队成员通过客户机共享服务器中的资源进行开发,由于多人同时修改源代码,可能造成不同成员的修改发生冲突,团队开发人员要制订和熟练掌握团队开发规则,如遵循修改的操作顺序、应用多配置文件等,以避免编程过程发生冲突;③任务分割,团队成员在项目负责人的领导下进行充分的交流,将项目划分为多个可同时进行的子任务,团队各成员负责若干部分进行并行开发;④进度控制与人员调配,项目成员每天提交进度报告给项目负责人,项目负责人根据报告掌握项目进度并根据项目进度情况进行适当的人员调配,使项目能够顺利进行。网络流量分析系统和网络舆情分析系统,项目规模较大、难度较高,需要进行团队开发。其中,网络流量分析系统工作量相对稍小,可以组建3人的团队进行开发;而网络舆情分析系统复杂程度较高,需要进行Web版本的开发和Android版本的开发,需要组建至少5人以上的开发团队。通过团队方式开发企业项目可以提高学生的项目领导能力和项目管理能力,进一步提高学生的专业素质。

三、结语

为了保证项目的质量,不同阶段的项目侧重点不同,降低了项目的同质性,而且项目的需求规模较大,满足了行业软件的需求,特别是海量数据处理和移动开发的引入缩小了与企业项目之间的差距;同时,通过团队开发训练,学生具备了项目领导、项目管理、团队开发的基本能力,掌握了企业需要的团队开发技能,所具备的专业素质更符合企业的岗位需求,增强了就业能力。

猜你喜欢

软件工程实践教学问题
依托工作室的软件工程实践教学研究
基于工程教育认证的《软件工程》课程教学质量建设研究 
关于如何创新和完善计算机软件工程管理的探讨
茶学专业校企合作实践教学探索
《电气工程毕业设计》 课程的教学设计
高职院校商务礼仪课程教学改革探索刍议
《数据库高级应用》教学创新方法研究
演员出“问题”,电影怎么办(聊天室)
韩媒称中俄冷对朝鲜“问题”货船
“问题”干部“回炉”再造