独立学院《软件工程》课程的教学方法研究

2022-09-11

一、前言

《软件工程》是计算机科学与技术专业重要的专业核心课。本课程主要介绍软件开发的工具、原理、方法和过程, 从工程化角度培养学生从事大型软件开发、测试、维护与管理的能力, 使学生掌握软件的各种开发方法, 提高软件的设计能力。《软件工程》是一门理论与实践相结合的学科, 不但要求学生掌握理论知识, 还强调实践能力, 对提高学生的软件开发能力、项目管理、团队合作能力具有重要意义。

由于独立学院人才培养的定位、师资和生源都不同于普通本科院校, 同时为了响应教育部提出的针对在校大学生创新创业型人才的培养, 独立学院正逐渐转型成为应用型院校, 那么在《软件工程》课程的教学过程中, 需针对独立学院的特点研究出相应的教学方法, 用来培养学生软件开发的应用能力。

二、独立学院《软件工程》课程的教学现状

(一) 学生基础薄弱

相对于普通本科院校, 独立院校的招生录取线要低很多, 分数上差别较大, 反映出独立学院学生的基础知识比较薄弱, 尤其是数学和物理基础较差。同时, 独立学院的学生对理论知识缺乏兴趣, 主要的原因在于:首先是理论知识枯燥乏味, 学生提不起学习兴趣, 其次是学生的数理基础较差, 难以理解较深奥的理论。

(二) 教学方法落后

《软件工程》课程的特点是理论要求高, 实践性和应用性也比较强。独立学院为了转型为应用型高校重新修订了人才培养方案, 但是在《软件工程》的具体课程教学中, 仍采用以考试为驱动的传统教学模式进行教学, 主要体现为教师在课堂上针对教材内容进行理论性讲解、学生课后自己做题的模式。不少教师研究生毕业后直接进入高校任教, 没有实际的项目开发经验, 照本宣科, 无法将企业的实际项目开发经验融入到基本原理的讲授中。在该模式下, 不能调动学生学习的积极性, 使得学生对软件整个开发过程不够理解, 动手能力和创造能力也得不到发展。

(三) 教师实践能力不高

独立学院转型为应用型高校, 但教师的实践能力还没有完全转型, 大多数教师专业理论水平较高, 但实践能力不强, 缺乏项目经验, 离“双师型”教师能力还有不少差距。而《软件工程》又是理论和实践相结合的一门课程, 教师实践能力不强导致在课程讲授过程中只注重结果, 而忽视过程, 使得学生在课堂中学到的软件项目开发方式与实际的软件项目开发有着明显的差距, 这与应用型高校人才培养目标不相符。

(四) 教材定位不准

目前市面上的教材多数适用于普通本科院校或者职业技术学院, 不适宜于独立学院的学生使用。这些传统教材的内容多采用模块法, 根据课程内容, 分成多个模块, 每个模块以一个小项目独立进行, 模块与模块之间没有内在联系。这类教材存在如下问题:

(1) 整体框架不明确。学生在开始学习每个章节前脑海中没有一个整体框架, 盲目地进行学习, 不知道每章内容在整个软件开发过程中的位置, 没有达到对学生工作模式培养的目的。

(2) 案例的前后脱节。因教材中每个章节的案例独立, 比如需求分析使用ATM机案例, 而系统设计使用仪表盘案例, 案例不同, 学生不能形成较好的软件开发思路, 影响了整体的教学效果。

三、独立学院《软件工程》课程的教学方法研究

针对独立学院学生的认知水平、兴趣特点以及独立学院的人才培养目标, 结合《软件工程》课程本身所具有的特点, 可采用选取合适的教学内容和改进教学方法两种方法用来提高教学质量。其具体做法如下:

(一) 选取合适的教学内容

目前《软件工程》课程的教学内容包括:软件开发过程概述、问题定义及可行性分析、需求分析、总体设计、详细设计、编码、测试和项目管理。传统教学中, 教师只讲授理论知识, 比如生命周期模型这个概念过于抽象, 学生不易理解, 学习的时候较吃力。即使学生勉强掌握了相关的知识点, 也只是会做题而不会开发实际项目。针对以上的问题, 需要对教学内容进行适当取舍, 对于不够实用的知识点或者较难的研究性理论不做重点讲解, 而是拿出一个实际开发的项目, 比如图书馆管理系统, 带领学生结合这个系统从可行性分析开始一直实施到软件维护, 学生边学习理论知识, 边实施项目, 可以将课堂中学习到的知识灵活应用到实际项目中, 从而使学生掌握软件开发的整个过程, 也培养学生了项目管理能力、软件需求分析能力、软件设计能力、数据库设计能力、编程能力、软件测试能力和文档编写能力等。

除了要适当取舍教学内容外, 还需要将教学内容进行更新。计算机行业发展较快, 每隔一段时间, 新的技术, 新的软件就会涌现出来。现有的教材虽然也在进行更新改版, 但更新的速度远远跟不上软件行业的发展速度。所以, 教师要扩宽知识面, 学习新的技术, 将前沿的实用技术教授给学生。

(二) 改进教学方法

以项目驱动的教学方法是面向问题的, 是老师和学生通过共同实施一个完整的大型项目而进行的教学活动, 它按照软件工程思想将具体的项目按软件生命周期各阶段展开并贯穿于整个教学过程中。项目驱动法主要以一个大项目为主线, 将该项目划分为若干个阶段, 每一阶段都划分出相应的任务, 以任务单形式下达给学生。该教学方法的具体实施流程如下:

1. 明确目标

在这个阶段, 教师需要分析《软件工程》课程的教学目标和任务, 结合学生现有的水平, 选取合适的教学项目, 使用思维导图对要实施的大型项目开发过程进行整体框架的描述, 让学生明白所设计的项目的背景、实现的目标及所涉及到的知识点, 明确项目的重点和难点。

2. 制定计划

将项目分成问题定义及可行性分析、需求分析、软件设计、编码、测试五个阶段, 给出每个阶段的具体任务以及每个阶段的完成时间, 制定出详细的项目计划。

3. 学生分组

每个项目小组8-9人, 其中组长1名。在分组过程中, 为了避免学生随意组队, 教师和班干部合作进行分配, 尽量做到同小组成员水平有强有弱。同时每个小组的成员进行任务分工, 保证每个同学分到任务, 从而锻炼学生的团队合作能力。

4. 项目实施

在项目实施过程中, 学生通过自主学习、小组讨论、反复实践等方法按制定的项目计划完成指定的任务。教师模拟用户对整个项目的实施过程进行监督, 不全程进行讲授, 只在关键环节或学生遇到困难时进行指导, 引导学生自主思考, 自己发现问题、分析问题和解决问题。

在项目的每个阶段完成后, 学生必须提交相应的文档, 包括《软件项目开发可行性分析报告》、《需求规格说明书》、《系统设计说明书》、《软件实现说明书》和《软件测试报告》, 文档要求符合软件开发文档规范, 从而锻炼学生的文档编写能力。

5. 项目考核

项目考核分为阶段性考核和最终考核两种考核方式。

每个阶段完成后, 由教师进行阶段性考核, 把本阶段的项目成果、文档报告、小组成员的参与情况、小组成员本阶段对项目的贡献情况都作为考核标准进行考核。通过阶段性考核方式, 既督促学生积极参与到项目中, 锻炼了他们的团体合作精神, 又可以及早让项目小组认识到工作中的不足并进行改进。

最终考核是在整个项目结束后, 以小组答辩方式进行考核。最终考核先由学生对自己的工作结果进行自我评估, 再由教师进行检查, 将答辩的最终完成项目与项目小组之前提交的需求和设计文档进行比较, 审核是否按照需求和设计进行开发, 接下来由师生共同讨论、评判项目中出现的问题, 找出原因, 最后进行打分。

6. 项目总结

在这个阶段, 教师使用PPT对项目中涉及到的重要知识点和关键步骤进行讲解, 带领学生对知识点进行回顾和总结。对优秀的作品进行演示和点评, 从而拓展学生思考问题和解决问题的能力。

四、结束语

本文结合独立院校的实际情况和《软件工程》课程传统教学中存在的问题, 对如何改进教学内容和如何使用项目驱动教学方法进行了探讨。面对基础薄弱的独立学院学生, 需对教材内容进行取舍, 对于不够实用的知识点或者较难的研究性理论不做重点讲解, 同时还需要将教学内容进行更新, 跟上计算机行业更新的速度。在教学方法的改进上, 采用项目驱动的方法, 构建相应的教学实施流程, 使学生学会用软件工程思想和方法完成软件的开发, 为创新型和应用型人才的培养打下坚实的基础。

摘要:针对独立学院转型为应用型高校的特点, 分析《软件工程》课程的教学现状, 针对教学中的问题, 对如何改进教学内容和如何使用项目驱动教学法进行了探讨。

关键词:独立学院,软件工程,教学方法,项目驱动

参考文献

[1] 陈永辉, 邹红, 崔晓微.转型发展背景下的《软件工程导论》课程改革与思考[J].高教学刊, 2017, (8) :119-120.

[2] 李玲.软件工程课程教学模式探讨[J].计算机时代, 2017, (5) :50.

[3] 朱思斯.独立学院《多媒体技术》课程的教学方法研究[J].软件教育现代化, 2012, (2) :115.

上一篇:浅谈初中生数学学习的心理障碍及克服的问题下一篇:大数据时代下计算机软件技术的应用