基于应用场景的渐进式“软件工程”课程实践教学研究

期刊: 创新科技研究 DOI: PDF下载

于宝华

石河子大学,新疆石河子 832000

摘要

软件工程课程教学中普遍存在重理论、轻实践的问题,本文试图将真实场景引入教学活动中,提出一种基于应用场景的渐进式软件工程课程实践教学模式。经过三年的教学实践该方法能够有效提升学习者的效率和质量,教学成果显著。


关键词

应用场景;渐进式教学;软件工程

正文

2021AB023,数据驱动的区域智慧教育服务关键技术研究与应用示范,兵团科技攻关计划项目

引言

近年来,随着信息领域与各行业深度融合,软件产业在复杂应用场景和技术迭代的双重影响下发展迅速。这导致软件项目的规模和设计难度不断增加。然而,传统的软件设计思维和人才培养模式已经不足以应对这些庞大、复杂的工程项目。因此,软件行业迫切需要具备工程化思维和创新能力的人才。

软件工程,作为计算机相关专业的核心课程,致力于培养学生的工程素养和创新能力。这门课程强调软件设计理论与工程应用能力的协同发展,主张理论学习与实践应用并重。然而,高校中普遍存在重视理论、忽视实践的教学体系,导致课程内容往往偏重理论知识,而不够注重工程应用。这种偏差使学生在知识学习方面表现出色,但在工程应用方面显得不足,难以满足企业的用人需求。 

1 “软件工程”课程实践教学中的“痛点”分析

在新工科背景下,软件工程课程教学应重点培养学生的“系统观”,以增强他们解决复杂工程问题的能力。然而,实际教学实施过程中,存在多方面问题,主要表现在以下几个方面:

首先,应用场景的设置与学生认知范围之间存在差异。这主要是因为教学案例的选择不当,导致学生的现有知识经验无法有效与案例传达的知识结合,从而无法充分发挥案例教学的效果。其次,知识的获得与应用之间缺乏有效结合。高校教学过于重视理论知识的传播,而忽视了工程实践能力的培养。在实践考核环节,存在过分强调成品而忽视过程的问题,这与软件设计迭代循环的思维方式不相契合。再次,工程设计文档过于形式化。文档是设计、开发、承接、验收等各阶段的重要衔接工具,贯穿软件的整个生命周期。然而,在教学中,学生编写的文档往往缺乏规范性、准确性和完整性,失去了文档在工程开发中的实际意义,这是教学中亟需解决的问题。

鉴于此,本文结合作者在高校教学和企业实践中的经验,针对软件工程课程教学中理论与实践结合不紧密、案例教学场景不清晰、工程实践能力弱等问题,提出一种创新的教学方法。该方法将实践教学置于真实的“应用场景”中,采用基于应用场景的渐进式软件工程教学方法,以期创新课程的实践教学模式,提高教学效果。通过这种方式,可以更好地培养学生的系统思维和工程实践能力,从而更好地适应未来软件工程的发展需求。

2 “软件工程”课程应用场景渐进式实践教学的创新思路及实施路径

针对软件工程课程的实践应用特点,教学设计应以问题求解为导向,结合案例教学和课程实验,将教学内容与应用场景结合,逐步建立从课程实践到技能实训、项目牵引、创新实践的四个能力培养层次。这种方法旨在提升学生的实践技能、团队协作能力和知识拓展能力,解决了课程实践教学环节连贯性不强、内容融合度不高和培养层次单一的问题。

2.1创新思路

基于应用场景的渐进式教学模式,将应用场景融入教学过程,以问题求解为导向,通过场景的变化和迁移,由浅入深、循序渐进地开展教学活动。教学方案紧扣“理论教学——场景示例——工程实践”的目标,教学案例的选择和应用场景的导入时应考虑学生的知识背景与案例相关领域知识之间的差距。通过问题识别与理解、任务拆分与设计方案制定、工程实现、场景重构(设计模式)等步骤,构建理论知识引入的层层递进模式,建立知识迁移的桥梁,有效改变理论教学的枯燥单调,同时激发学生学习知识的热情。

2.2实施路径

2.2.1实行增量型、渐进式教学模式

软件工程的应用场景利用信息建模方法模拟和抽象现实世界,其涉及的业务需求或问题域具有复杂、多变的特点。因此,在软件项目实施中通常采用分阶段、层层迭代的方式完成。学习者通过任务迭代逐步逼近目标,这一过程可视为动机系统驱动下的信息处理过程。教师根据学习任务完成情况采用指导、干预等过程控制方法,引导学生逐步实现学习目标,可用学习机理层次模型简要描述如图1所示:

图片3.png 

1 学习机理层次模型

教学活动过程中通过有效的外部刺激会激活动机系统和执行控制系统,将学习任务分解为细粒度的子任务,教师借助调节系统干预学习者促使其能够达到阶段性学习目标,任务完成后引导学生根据反馈意见进一步完善需求、总结知识点、探索下一步研究任务,通过执行系统与调节系统的不断迭代来保障任务执行的质量和效果。学习过程中教师应充分激发学生的学习主动性,而动机系统的输出反馈也会为下次学习过程积累一定的经验促使其主动产生知识迁移的深度思考。

2.2.2构建面向生产环境的软件工程教学生态

生产环境是软件开发流程中集开发、功能迭代、需求变更、测试、运维等诸多成果的真实场景,其反馈结果直接作用于软件生态系统,包括软件需求文档、软件设计文档、版本控制、程序代码、软件测试方案和测试报告、演示视频等,着重培养学生的工程规范和分工协作的能力。

图片4.png 

2 软件工程实践教学生态

因此,如图2所示,软件工程实践教学生态涵盖开发、测试、生产三个主要环节,按照软件工程的设计标准与规范每个部分均会产生相关的阶段性成果(如需求分析文档、详细设计文档等),这些成果是指导软件设计活动、评价理论与实践融合的重要抓手。教师在指导过程中实时掌握学生工程进度,引导进学生从规范性、整体性的角度构建项目整体实施方案,并针对其设计存在的缺陷指导学生分析功能缺陷可能出现的后果为学生带来警示。

3 “软件工程”课程实践教学自底向上的渐进式场景的教学示例

恰当的技术选型能帮助学习者更好地识别需求、搭建模型并管理架构,本文借助ERP系统复杂的业务流程与先进的管理思想以库存管理业务为基础,重点突出库存管理业务流程延伸和功能扩展,通过由浅及深的场景引入和自底向上的设计过程引导学生不断扩展知识的广度与深度。

图片5.png 

3自底向上的渐进式场景教学模式

3.1 前置设计——基础物料、库存管理

在本教学阶段,重点放在某制造企业生产流程中的物料管理,涵盖原材料、辅材、半成品、成品的入库、调配、出库、盘点操作,以及不同批次物资价格变化的处理。核心功能包括物料信息管理、入库管理、入库单明细、出库管理、出库单明细等。教学中的重点是指导学生掌握单物料入库与批量入库的数据操作,以及应对同类物资不同批次价格差异的处理方法,如存货加权平均法或先进先出法,同时考虑不同类型企业库存管理模式的差异。

3.2 业务接入——物料流转、业务承接管理

这一阶段的教学内容关注库存管理如何承接生产计划和采购计划。重点在于考虑功能间的接口设计,并将实践能力从单个功能项转向整体业务流程设计。核心功能包括生产计划管理、采购计划管理、物料清单管理(BOM)、物流管理等。学生需要学习如何根据生产计划自动生成预采购单,并在此基础上生成正式采购计划。重点挑战在于处理数据库底层变动,并在初期设计时考虑软件功能的可扩展性,以减少因业务流程扩展带来的原功能维护及新功能开发的工作量。

3.3 应用拓展——帕累托分析法实现精细化库存管理

在这个阶段,教学内容着眼于成本控制,特别是在库存管理中物料类别的重要性和价值的二次划分。采用帕累托分析法对高价值物料和低价值物料采取不同管理方式,优化库存管理。设计时,可以增加物料分类和权重维度表,并在分类维度表与物料表之间建立1:N的关系。同时,使用工厂模式来降低物资权重改变时调整大量业务代码、增加开发成本的风险。

3.4 融合创新——以EOQ模型优化订货方式

最后一个阶段假设企业迅速发展,需要引入科学、高效的订货模式以辅助管理,并同时尽量降低物料的储存成本。这里引入的是EOQ(经济订货量)模型,标志着学科交叉融合,帮助学生从业务处理向数据综合运用的智能化方向迭代。在设计过程中,学生将分析出入库的历史数据,构建批量订货模型,并通过模型运行调整参数。软件设计需要考虑批量订货与采购计划之间的动态平衡,并确保模型变化对其他功能的影响最小,体现了学生在业务处理和数据分析技能上的提升。

在上述应用场景中,渐进式的阶段引入能帮助学生更好地了解软件开发流程,也展示了需求变化带来系统功能的调整及指导策略,因此,要求指导教师在安排场景递进时帮助学生分析可能存在的风险点,并引导其制定解决方案,系统培养学生面对工程难题时统筹分析的思维习惯,促使其具备搭建可扩展、可重用性软件项目的能力。

4 “软件工程”课程应用场景渐进式实践教学的效果评价

以本校软件工程专业开展示范应用建立6名教师组成考核组,考核成绩分为客观成绩和答辩成绩,考核组通过查阅项目文档撰写情况给出客观评价分数;答辩成绩由小组汇报作为评分依据,根据任务分工功能完成情况等提出问题完成评价。

从评价结果看基于应用场景的渐进式软件工程实践教学模式能充分调度学生积极性,对比传统模式下的实践教学,面向场景的渐进式指导针对性更强,学生之间的交流互动能更频繁,同时也利于各教师发现学生理论与实践之间的缺失断层,真正做到理论与实践能力协同发展

经过三年的优化调整,该实践教学模式有效提升了软件工程专业工程实践能力与创新能力。学生研讨交流氛围浓厚,参与校内外各项实践热情明显提高,近学生在“挑战杯” “互联网+”大学生创新创业大赛中国大学生计算机设计大赛都取得了较好成绩

5 总结

新工科背景下的软件工程人才培养,在软件设计能力的基础上对工程应用能力又提出了新的要求。基于应用场景的渐进式教学模式,能有效缩小理论与实践、学术与工程之间的鸿沟,逐步弥合软件工程教育中的理论与实践之间的差距,妥善解决理论——实践——工程三环脱节的现实问题,在提升培养学生的知识结构与工程思维,充分锻炼学生的理论应用能力及工程素养中表现出色,具有一定的推广教学实践价值。

参考文献

[1]宋巍,贺琪,王文娟,邹一波,王振华.特色化实践项目驱动的软件需求工程教学探索[J].实验室研究与探索,2021,40(04):207-212.DOI:10.19927/j.cnki.syyt.2021.04.047.

[2]陈颖.基于软件工程规范与案例启发的数据库应用实践教学研究[J].实验技术与管理,2018,35(07):155-158.DOI:10.16791/j.cnki.sjg.2018.07.038.

[3] 王新露.基于就业导向的电子商务课程体系优化研究[J].中国储运,2021(11):160-161.DOI:10.16301/j.cnki.cn12-1204/f.2021.11.088.

[4] 周华庭.基于就业导向的《市场营销学》课程改革探析[J].知识经济,2021,589(22):162-164.

[5]王凯.基于OBE的现代学徒《软件工程》课程改革与实践[J].品牌研究,2021(25):276-278,283.

[6]董娜.软件工程类课程教学方案设计及方法探索———以DSP课程为例[J].江苏师范大学学报(自然科学版),2021,39(1):64-67.


...


阅读全文