1引言
随着软件规模、复杂度以及需求量的不断增大,软件的开发成本和进度变得难以估计,软件可信性越来越差。这种软件成本不断上升而质量不断下降之间的矛盾即所谓的“软件危机”。软件质量难以得到测量和控制,会造成或大或小的经济损失。20世纪60年代以来,人们为克服“软件危机”做了大量工作,不断将工程技术和管理中成熟的方法、技术原则引入的软件工程科学中,逐步形成系统的软件开发理论、技术和方法。从而,“软件工程”也逐步成为高等学校计算机教学计划中的一门重要课程。软件工程课程是软件工程专业课程体系中的核心课程,软件工程设计知识面广泛,研究人员将各种传统工程设计中的概念、方法理论和软件工程结合,用于指导软件工程实践,发展迅速,内涵丰富。但受传统教学模式的影响,教学形式较单一,受传统班级课堂形式和学时的制约,教学难度较大。目前,理论课中主要采用“讲座式”教学法,灌输基本概念、原理;而在实验课中则主要采取“放任式”教学法。目前软件工程教学方法、形式单一、学生学习乏味。软件工程这种实践性很强的课程,应该以“讲授知识”为主还是以“培养能力”为主?不同的教学目标必然导致教学方法和效果的差异。软件工程作为本科生或研究生的专业学位课,应该以学生为主体,着重培养软件工程能力,指导学生自觉学习相关理论知识并自觉将理论用于实践,培养学生开发探索的主动性及参与大型软件工程实践的基础能力。
2软件工程特点及发展趋势软件工程特点
1)软件工程着眼于大规模、高复杂性的软件。传统的程序设计技术是仅仅指小型程序设计。
2)软件工程的主要任务是解决大规模软件设计的复杂性。复杂性一方面是软件构件大量增加,因素繁多,另一方面是软件需求、软件体系结构等具有不确定性。
3)软件需求等经常变化。在软件设计初期,由于软件开发人员和软件使用人员存在交流的鸿沟,或者是软件使用人员本身对软件需求不明确,导致软件需求在开发过程中不断变更,而软件需求的变更使软件开发周期大大延迟。
4)软件开发的效率非常重要。软件的市场需求很大,随着移动互联网的普及和有线无线网络的发展,IT业务与日俱增,软件需求量也随之增加,但是软件的供应比较滞后。软件工程发展趋势
1)开放计算。开放计算包括开源软件、开放架构和开放标准三个方面。
2)模块化。一方面企业面临的软件行业环境复杂性不断增加,另一方面企业需要更多创新模式和业务流程的灵活性。为了缩短开发周期,软件需要在体系结构和软件代码级别实现复用,模块化思想能够帮助软件公司很好地解决这一问题。
3软件工程人才需求
国内市场每年对软件人才的需求高达80万,这个数据随着中国信息化基础设施的建设快速增长。软件工程专业人才相对不足,高水平的软件工程人才需求量很大。用人单位对具有实际操作能力的软件人才是用人单位最为需要的,而且越是上规模的公司,对于软件人才的需要越大。我国的软件产业总的发展水平还处于建设阶段,所以国内软件产业还存在巨大的发展空间,软件工程相关产业会得到更多的关注和投入。据统计,目前全世界软件外包市场需求高达1000亿美元,国内软件服务外包产业收入三年后将增加至260亿美元。
4专业能力要求
软件专业人才应具备基本专业能力、软件系统研究与开发的基本能力、项目管理能力、软件建模设计能力、实践能力以及计算机软件系统测试、维护和管理能力等。具体的专业能力要求如下。基本专业能力了解计算机科学与技术、软件工程的发展动态,具有学习新理论及新技术的能力,掌握现代计算机系统的组织与结构,掌握计算机系统的基本理论与基本知识,掌握软件工程的.基本理论与基本知识。软件项目管理能力当前中国项目管理专业人才在数量和质量上都与发达国家有较大差距,项目管理人才培养仍然处于起步阶段。项目管理能力主要体现在学习、思考、应用、分析和发现问题、交流沟通五个方面。管理能力提高的途径在于加强学习,要树立创新观念,要有良好的执行力,要培养勤思考的习惯,要有良好的协调和沟通能力。软件建模分析和设计能力软件工程课程具有内容丰富、涉及知识面广、实践操作不方便、知识更新快、受课堂教学模式制约等特点,需要更加灵活的教学形式如互动式教学模式等培养学生系统化建模能力和工程分析与设计能力。除此之外,需要相应设计以及教学辅助平台和工程实验环境提高学生工程能力。实践能力实践能力就是能够按照既定的目标,在有限的时间内,按照既定的开发进度和软件质量要求,应用相应的专业理论知识和方法完成软件工程任务的能力。目前,许多本科生和研究生课程在培养目标上偏重理论能力的培养,而在系统化工程实践能力培养方面不够重视。因而,理论教学课时数较多,实践教学课时数偏少。
5结束语