您好, 访客   登录/注册

浅谈计算机专业软件开发能力的培养

来源:用户上传      作者:胡帅 王红娟

  摘要:怎样改变教学方法,提高学生的软件开发能力,一直是高校计算机专业老师所关心的问题。用科学的教学方法,让学生在软件开发中不断提高水平和能力,从而让教学质量不断提高。所以软件开发课程在高校计算机专业教学中有很重要的地位。
  关键词:项目练习;软件开发;能力培养
  中图分类号:G642 文献标识码:A
  文章编号:1009-3044(2020)05-0063-02
  开放科学(资源服务)标识码(OSID):
  1 背景
  计算机专业学生软件开发能力的培养,是学生在毕业之后能否找到称心如意工作的极其关键因素。传统的教学方法培养出的学生,理论多于实践,明显和社会脱节,很难适应社会岗位的需要。所以,目前高校计算机专业学生的主要培养目标就是,以市场为导向,培养符合社会定位的应用型软件开发人才。
  2 计算机软件开发类课程的目标:
  学习先进的计算机软件设计方法,理论基础和开发技术,成为综合素质强,有创新和较强实践能力的专业人才。软件开发能力是计算机软件类专业学生的基本技能,也是很重要的技能。目前,软件开发人才在市场上极度紧缺,一个是刚性的需求,一个是目前高校培养的软件开发类人才从数量到质量都严重不足。虽然现在高校计算机专业的招生规模不断增大,但教学质量并没有质的提高。主要表现在理论知识不扎实,缺乏动手能力,自学能力不强,经验不足等等。因此,必须加强高校计算机专业学生软件开发能力的培养。软件开发专业需要的开发人员,必须具备下面几个重要特征:一,扎实的理论基础和技术能力,能够适应不断变化的软件行业。二,获得实际开发软件的经验,技术,对编程的核心技能,规范和相关工具能够熟练应用。三,具有良好的沟通能力和团队协作精神。
  3 目前计算机软件开发类课程的不足
  3.1教学方法导致学生思维模式单一
  软件开发类课程要求学生有发散性思维,有一定的创造力。所以基于软件开发类课程实践性,应用性的特点,软件开发必须日新月异,有一套切实可行的,有效的教学方式。
  3.2 学生学习兴趣的丢失
  现在市场上的教材形形色色,枯燥无味,老师传统的侧重理论的教学方法很难让学生激发起学习的兴趣,并不了解自己所学的东西有什么实际的用处,因为学校和市场是不同的环境,所以很容易导致实践和理论的脱节。
  3.3 教学模式的不合理
  传统的教学模式都是学生被动的听和接受知识,没有自主性和能动性。而老师是主动的讲授,在整个教学过程中占有绝对的主导地位。所以这种教学模式没有办法培养出符合市场定位和导向的,具有创造性和开发性的高技能型软件开发人才。
  4 关于软件开发课程教学的几点思考
  4.1 不断激发学生主动学习的兴趣
  比如,在软件中的某一个模块,老师先用理论知识讲解用到的技術,讲解其中的设计思路并展示最终效果。然后学生模拟模块功能进行反复练习,逐渐熟悉软件的开发方法和设计思路,然后老师再带领学生进行技术创新,不断扩充模块功能,让学生也发挥想象,提出自己的创意和思路。可采用“分组讨论”的方式,分析并提出原有模块功能的不足和缺陷,畅所欲言。这些小型项目的开发可以分阶段进行,理论和实践相结合,不断发挥学生的主观能动性,提高其兴趣。
  4.2 教学方式的改进一问题导向
  教师在上课前针对所讲内容,先提出问题,以问题为切人点,将所讲授知识融合在问题当中,通过解决问题来学习相关知识,让学生掌握解决问题的方法和知识,用这种方式来激发学生理论学习的兴趣。软件开发过程中,理论知识的学习是非常必要的,理论知识的学习,重在让学生掌握软件开发技术的重点和难点,从而做到有的放矢。老师可以通过问题导向的方式来调动学生学习理论知识的兴趣,结合实例进行讲解,从而让学生打下良好的理论基础,并鼓励学生将所学的理论知识应用在实际的软件开发中,增强学生的实践能力。
  另外,在教学的初期,要具体指导,用多媒体讲解,应该现场编程。但有些老师害怕中间某个环节出错,就在幻灯片上播放。教学效果大打折扣。所以,最好的方法就是,边讲边编程,结合新算法,自由发挥,考察学生的理解能力。学生不仅要学会编程,而且还要学会分析问题和查找错误的能力。在教学的后期,还要加强软件项目的开发。老师可以先演示一个小游戏,然后用编程的方法编写这个软件的功能,学生就会觉得非常好玩,寓教于乐。游戏虽然小,但基本包括可开发软件的所有方法。比如系统分析,概要设计,游戏规则的算法设计,可视化对象的编程方法,软件的调试与测试,编写相关文件等等。在学习过程中可以一起讨论。相互帮助,共同成长。也可以利用互联网找到问题的答案。最后,毕业设计的选题也要有实际的意义。鼓励学生开发一些真正的软件系统,还需要学生实际的调研,分析,整理,总结出真正符合实际的用户需求。总之,这样更能有效地提高学生的软件开发能力和水平。
  4.3 教师要做好软件开发启蒙
  现在许多教师重视学历提升,论文发表,轻视软件开发技术和实践,因为后者很难被大众认可,而且非常辛苦。评职称时写一篇文章远远强过开发一个优秀的软件,两者的技术含量和付出的劳动成果显然不成正比。但从长远来看,软件开发有益于科研工作的开展和教学。需要研究一种综合算法,还要编写很多软件代码,构建软件的实验平台,因此,软件开发能力的培养和启蒙至关重要。
  4.4 教师的软件开发能力需要极大提升
  现在很多高校教师缺乏软件开发的经验,只能纸上谈兵,很难理论和实际相结合。只有开发过大量高质量的软件系统的老师,上课时才能结合自己的经验来讲解算法和所用到的数据结构,软件工程等相关课程。这些经验和方法都是通过不断的实践总结得到的,因此,学生会非常的感兴趣。并从中得到最大的收益。学生不仅学习到了软件开发的方法和实际的操作技能,也增强了开发软件的信心。你如果没有开发过大量的程序和软件系统,就很难理解比如,面向方法,面向过程,面向服务等等软件设计方法的思想和精髓。也很难将这些方法付诸实践。   5 培养学生团队合作,实际操作的能力
  老师可以以企业的真实项目,也可以是经典的教学项目,来培养学生综合的处理问题和团队协作的能力。可以安排若干小组,各自分工。让某些同学扮演开发项目经理,培养其管理和协调的能力。当学生在开发过程中遇到困难,老师要及时给予帮助,防止学生出现畏难情绪,并给予积极的鼓励,培养学生系统地解决实际问题的水平和能力。
  6 考试方式的思考与改革
  软件开发类课程可以突破传统的考试方式,从单纯的笔试中再插入“项目评价+答辩演示评价”的方式,其中项目评价占50%,主要包含项目的功能能否满足客户的需求,项目的设计是否合理。答辩演示主要考核学生们对所开发软件的理解与掌握情况。所以在软件的整个开发过程中,从选项目,设计项目,编写相应程序代码,调试程序,以及最后的运行,老师要参与其中,可以充当客户,指出需求,给出评价。并且提出切实可行的意见,同样小组其他成员也可以模仿客户,对所开发的软件项目进行评价和测试。这样的考核方法可以提高学生的实际操作能力,应变能力和处理问题的水平。
  7 软件开发的困难及应对方法
  7.1 用多元化方式开发软件
  随着计算机产业的不断发展,软件开发已经非常的受重视。为了让软件更能符合用户需求,一定要用多元化方式来开发和设计软件,才能得到更大的价值。很多软件在刚开发出来时,能够得到很多用户的喜爱,但在使用过程中会暴露出很多问题,很快会被淘汰掉,这就给我们提出更高的开发要求。让软件的功能更强大,完善和安全。因此在未来的软件开发中,一定要采取层次化的结构方式设计软件,优化存储信息的数据结构,根据用户需求及信息的特性对数据结构精准定义。从而得到更科學的数据结构存储方式。此外,还要根据耦合和内聚两种对数据结构影响较大的因素来设计数据结构,有效解决在软件开发过程中出现的各种难点问题。
  7.2 设计优缺点
  在我国现在计算机软件的开发过程中,对数据的处理、分析不科学,不能严格按照软件开发的流程去设计开发软件,各种各样的问题应运而生,严重影响了软件开发的效率和质量。随着互联网的不断发展,模块儿化设计已经成为软件开发的重要方法。这种开发方法可以提高软件开发的效率和质量,使软件开发更灵活机动。对软件功能的修改和完善更容易,非常适合大型的,比较复杂的软件开发。可以将大型软件化整为零,分成若干小软件模块,通过这些“零部件”的组合排列,从而做出更大型复杂的系统。所以开发人员在开发软件前一定要做好软件的整体构架设计,保证各个小模块功能的实现。但这种方法的缺点就是,系统一旦出现问题,很多程序都需要重新设计编写,给开发人员带来更庞大的工作量。使得开发效率下降。
  7.3 重视软件开发人才培养
  国家和学校应大力发展软件开发人才的培养,尤其是高技术型人才的培养,必须依靠高校软件工程及相关专业的教育,并结合市场软件开发需求,不断更新软件开发教育的内容和教学方法,引导年轻人投入这个行业,注入与时俱进的技术,尤其是引进重点核心内容,不断提升软件开发人员的素质和质量,通过校企合作,项目招标,等多元化的方式,成立软件开发人才的教育基地,全方位提高软件开发人才的质量。
  8 计算机软件开发的未来
  8.1 计算机软件的开发的综合性
  计算机软件的开发需要不同的专业人才共同合作完成,因此它是一个合作化和融合化、开放化的发展。不同行业人才的智慧与交流更能有效地完善计算机软件的开发并提升其完成的效率。
  8.2 软件开发的网络及服务化
  软件的开发离不开网络的支撑,计算机网络可以为软件开发提供平台支撑和资源支撑。软件开发也可以促进网络的普及与发展,相辅相成,不可分割。另外,具有服务意识的团队更能开发出好的软件,在软件市场中会更有竞争力。服务的特点就是奔着软件的开发与安全性,稳定,是以提高人们的生活质量为目的的,这也在不断推进社会的进步。因此软件的开发具有网络化和服务性。
  8.3 软件开发的智能化变革
  现在随着社会经济的不断进步和提升,软件开发的智能化有着重要的作用,在各个领域和行业都起到了重要的作用和广泛的应用。价值也越来越高,发展前景巨大。现在社会的一个重要标志就是智能化,方便了人们的工作和生活,对现在的科技市场是一场大的改革。比如:智能手机,智能汽车,智能家电等等。
  9 结束语
  我们在教学过程中只有不断坚持以市场为导向,以学生为主体,科学系统地调整教学方法,才能适合市场的需求。所以如何让学校与市场接轨,让课程教学符合时代需求,让高等职业教育发挥出独特的优势,以及在现在的信息社会中如何培养出符合岗位需求的高级技能型人才,是现在高职院校的一项重大任务和课题。
  参考文献:
  [1]王小平,张育军,贾玉峰.《高级语言程序设计》课程的教学研究[J].承德民族职业技术学院学报,2003(4):17-18.
  [2]陈雄峰.计算机专业实践性课程教学的探讨[J].电气电子教学学报,2003(1):81-83.
  【通联编辑:谢媛媛】
  收稿日期:2019-12-15
  作者简介:胡帅(1983-),女,河南禹州人,讲师,研究生,研究方向为软件工程;王红娟(1982-),女,河南武陟人,讲师,工程硕士,研究方向为计算机应用技术。
转载注明来源:https://www.xzbu.com/8/view-15180349.htm