1. 引言
软件工程课程因知识体系宽泛抽象、实践要求高且技术迭代快,长期面临“难讲透、不易学、做更难”的教学困境。课程实践环节对知识整合、成果质量及问题解决的高要求,倒逼课堂教学模式革新。伴随“互联网 + 教育”深度融合,混合式教学成为高校课程改革的重要方向,众多学者围绕不同学科与教学目标开展了丰富研究。
在教学模式创新方面,罗莎等人[1]提出任务驱动的高校混合式教学模式,通过将教学内容拆解为具体任务,结合线上资源与线下指导,有效提升学生动手能力,为操作性较强的课程改革提供了借鉴;方菲等人[2]以“小组协作学习、同步异步交流、竞赛驱动实战、问题导向教学”为思路开展程序类课程混合教学改革,强调通过多样化互动与实战场景激发学生学习兴趣,培养编程思维。这两类研究虽为软件工程教学提供了模式参考,但未充分考虑软件工程全流程实践与复杂项目管理的特殊性。
在学习深度与质量提升领域,沈霞娟等人[3]提出促进深度学习的混合学习系统方案,通过设计多层级学习任务与智能反馈机制,推动学生从浅层信息获取转向知识深度建构,为提升混合学习质量提供了理论支撑;丁旭[4]、陈新亚[5]分别开展混合学习环境下高中英语写作与高校课堂论证式教学研究,从语言表达与逻辑论证角度探索混合式教学对学科核心素养的培养路径。然而,这些研究聚焦于人文社科领域的知识内化,缺乏对软件工程这种工程技术类课程中实践能力与工程思维协同发展的探讨。
教学方法与评价体系构建方面,贾转玲[6]基于“OBE + PBL”理念提出“8 + 1”合式课堂教学方法,强调以成果为导向设计教学环节,通过项目式学习培养应用型高校计算机类学生的实践能力;谢广阔[7]、段芳[8]分别针对英语精读课与创新创业课程开展混合式教学评价改革研究,前者关注学习投入度,后者聚焦过程性评价体系构建。但现有研究对软件工程课程中如何量化评估项目全周期实践能力、团队协作成效及技术创新水平,仍缺乏系统性解决方案。
综合来看,现有混合式教学研究虽成果丰硕,但在结合软件工程课程“知识体系综合性强、实践场景复杂多变、技术更新迅速”等特性,构建目标明确、阶梯递进且可量化评估的混合式教学体系方面仍存在空白。基于OKR-STEP ((OKR:Objective-Key Results目标与关键结果),STEP (学生:Student-centered,团队:Team-based,能力进阶:Escalate-oriented,项目Project-driven))的软件工程混合式课堂教学改革,正是针对这一研究缺口,通过目标与关键成果法,OKR明确教学方向,以阶梯化设计串联课前、课中、课后全流程,为破解软件工程教学困境提供新路径。
2. OKR-STEP混合式教学内涵
0KR-STEP教学模式通过目标管理与工程教育双轨融合,系统性解决软件工程教学中的核心矛盾。OKR聚焦目标拆解与量化评估,将抽象课程目标转化为可操作的成果指标;STEP模型以学生为中心(Student)、团队为单元(Team)、质量递升为考核(Escalate)、项目实践为导向(Project),构建全流程教学实施框架,二者协同形成“目标设定–过程管控–成果验收”的闭环体系。
在目标设计层面,OKR通过结构化分解破解知识“广而虚”的难题。以“软件项目管理”单元为例,将“掌握项目全生命周期管理”目标细化为“完成WBS任务分解”、“编制甘特图并执行进度监控”等关键成果,既明确学习路径,又为教师提供动态评估依据,使教学方向与行业需求精准对齐。
教学实施过程中,STEP模型依托四大核心要素实现工程实践能力培养。以学生为主体,通过企业级项目场景驱动自主学习;以团队协作模拟真实开发流程,强化沟通与版本控制能力;Escalate考核机制采用阶梯式评价,从需求分析到系统部署分阶段验证代码规范性、架构合理性等指标;最终以高质量项目交付达成工程实践目标,有效解决“做更难”的实践痛点。
与传统混合式教学模式相比,OKR-STEP实现目标管理与教学实施的双向赋能。OKR为教学环节提供量化标尺,确保每个阶段围绕核心成果推进;STEP则通过分阶段考核、团队协作等手段保障目标落地。该模式突破单一任务驱动或成果导向的局限,构建起涵盖目标设定、过程管控、成果验收的完整链条,为培养兼具理论素养与实战能力的软件人才提供创新路径。
3. 分层次设计课程目标
贯彻国家“立德树人”教育方针,立足学校应用技术类型本科院校定位和学科发展前沿,结合学生软件开发与维护过程中解决复杂问题的系统思维能力不足,工程实践能力较弱,质量意识缺乏等学情,依据专业“厚基础、重实践、强素养”的工程技术应用型人才培养要求,确立课程目标如下。
知识目标:详述现代软件工程实用的概念、原则和典型过程,阐述常用的软件开发方法和工具,归纳软件开发标准文档的组成与内容,解释软件开发中资源分配和经济评估的原则,梳理软件开发过程各要素活动。
能力目标:针对中、小型软件应用项目,能基于项目背景分解任务、分配资源,选择合适的方法及工具进行分析、设计等阶段建模,规范化地工程化地开发与维护软件。
素养目标:在软件迭代开发过程中,能跟踪软件工程领域新技术,遵守工程规范和职业素养,具备精益求精的工匠精神和软件强国的家国情怀。培养学生成为具有国际竞争力的IT新生力量。
4. 一体化知识体系构建
4.1. 模块化、项目化课程内容
围绕三类课程目标,重构理论、实践、自主学习等课程内容,将经典与先进的软件开发方法融入典型的软件开发维护过程,并及时将软件开发新技术及体系引入教学,反映学科专业、行业先进的核心理论和成果。
课程内容由3个模块、12个知识单元、两类实践项目专题构成,见图1。软件开发方法模块依照“软件开发过程 + 实践项目专题–案例–任务”的形式组织内容。项目专题将企业或教师科研项目分解为若干案例,每个案例又分解为若干任务呼应知识单元,把企业或科研项目的研究性内容有机融入课程体系。
Figure 1. Software engineering curriculum structure
图1. 软件工程课程结构
4.2. 挖掘契合价值培养目标且主题突出的思政元素
课程团队围绕“工匠精神”和“软件强国”两个价值目标,依据典型软件开发过程,将思政元素以小故事、小知识、课外阅读等形式融入课程线上资源、项目案例任务和教学过程各环节,实现价值塑造、知识传授和能力培养融为一体,有机融合专业学习和思想政治教育。课程思政故事和思政元素设计如表1所示。
Table 1. Ideological and political stories in software engineering courses
表1. 软件工程课程思政故事
学习单元 |
思政故事 |
思政元素 |
软件工程概述 |
模式之父–克里斯托弗·亚历山大 |
工匠精神,勇于奉献、淡泊名利,科技报国 |
可行性分析 |
黄大年–引领科研精神,践行社会主义核心价值 |
批判思维、契约精神,国家战略,服务社会 |
软件需求分析 |
中国速度–健康码 |
创新思维,创新精神,分析矛盾,发现问题 |
软件设计 |
不谋全局者,不足谋一域 |
整体和局部的辩证关系,独具匠心,攻坚克难 |
编码 |
极简主义生活方式 |
规则意识、合约精神,乐观向上、勇于拼搏 |
面向对象方法 |
中国骄傲–北斗三号全球卫星导航系统 |
攻坚克难,淡泊名利,文化传承,创新胆量 |
软件测试 |
工匠精神软件测试的核心信仰 |
创新思维,创新精神,分析矛盾,发现问题 |
软件维护 |
要做到“有则改之,无则加勉” |
有则改之,无则加勉,职业素养,宽广情怀 |
项目管理 |
项目开发中的团队合作第 |
时间管理、合作精神,服从意识与大局观 |
软件开发新技术及体系 |
鸿蒙–打破系统垄断的第一枪 |
技术自强,敢为人先,科技探索,科技成就 |
4.3. 精心构建高阶能力培养的研究性教学内容
为强化系统分析与应用建模等工程实践能力和创新思维等高阶能力培养,围绕分层次课程目标,依托项目,构建研究性的教学内容,设计了可行性分析、结构化分析等11个学做研协同的研究主题。可行性分析模块研讨主题设计见表2。
Table 2. Discussion topics, contents and designs in software engineering courses
表2. 软件工程课程中的研讨主题、内容及设计
研讨内容 |
可行性分析 |
培养目标 |
能对软件项目进行经济和技术、社会等可行性分析、契约精神、社会责任 |
研讨问题 |
研讨可行性报告的有效性 |
任务 |
1. 课前线上自主学习可行性分析的基础知识,查阅文献,了解可行性分析的作用和意义,根据可行性分析步骤和工具,分析具体项目的可行性。 2. 课前阅读可行性研究报告国家标准(资料1),了解规范文档格式和写作标准。 3. 课中围绕教学项目需求(资料2),运用成本/效益分析方法评价项目的经济可行性,小组探究评价技术可行性。 4. 课后教师抛出可行性分析案例集(资料3)和实战拓展项目,学生阅读并分析,课外分组完成拓展项目可行性分析。 |
资料 |
1. 可行性研究报告(GB/T 8567-2006)。 2. 教学项目需求。 3. 实战拓展项目需求以及可行性分析相关参考案例。 |
研讨设计 |
1. 课前线上完成任务1、2。 2. 课中线下为主,线上为辅,完成任务3,分组探究可行性分析报告的有效性,组间分享评价研讨结果,教师点评。 3. 课后学生线下、线上结合,完成任务4,由教学实践导师和科研导师共同辅导。 |
5. 设置有效合理的目标(O)和关键结果(KR)
课程设置两类学生团队能力训练项目,一类教学团队引导学生训练的教学项目,着重培养学生运用知识、技术开发项目的基础能力,在教师团队指导下,课堂以个人 + 小组混合学习的形式完成。第二类为学生团队以小组方式完成的自主实战项目,着重培养学生综合运用相关知识、相关技术开发复杂项目的开发能力与工程技术应用创新能力,在教师的辅助下,学生团队课外自主完成。达到以项目为载体,运用目标和关键结果构建学生的学习管理方式和评价机制,通过教学项目和实战项目的渐进式训练,逐步提升学生的各项能力。
5.1. 构建教学项目训练矩阵
教学团队围绕分层的课程目标,按照软件开发过程和规范,依据项目开发周期,系统设置可行性分析、需求分析、软件设计、测试、实现等阶段需完成的工作目标(O)和关键成果(KR)、进阶任务、以及所需要的知识技能点,构建教学项目训练矩阵,形成了集项目阶段、相关知识及技能支撑、支撑文档和能力目标为一体的教学项目训练矩阵(见表3)。学生团队经过教学训练项目的指导训练,达到能运用新学知识解决简单问题的初级目标进阶到运用多种知识技术解决综合问题的中级目标。围绕课程目标设定学习目标列表,学生团队基于学习目标列表和自身学习需求,分别制订团队和个人学习目标(O),并确认支撑各目标的关键结果(KR)。
Table 3. Teaching project training matrix
表3. 教学项目训练矩阵
项目阶段 |
相关知识 |
相关技能 |
关键成果 |
支撑文档 |
能力目标 |
需求分析–结构
化分析 |
需求层次 |
辨析业务需求、用户需求和系统需求。 |
1. 获取项目业务需求 2. 获取项目用户需求 3. 获取项目功能需求和其他需求 |
1. SRS 2. 开发合同 |
1. 初步具备沟通能力,分析评估能力。 2. 使用结构化方法和面向对象方法和工具对简单项目进行分析、设计建模。 3. 能按照测试要求,设计测试用例。 4. 制定使用框架技术对普通信息系统进行构建和编码的能力。 5. 阐述标准开发文档的内涵。 |
需求获取方法 |
能选择合适的方法获取项目的需求。 |
功能模型 |
绘制数据流图(DFD) 定义数据字典(DD) |
1. 顶层DFD 2. 项目关键功能级DFD 3. 项目关键功能级DD |
数据模型 |
绘制E-R图 数据规范化 |
1. 项目关键模块E-R图 2. 定义规范关键模块关系模式 |
|
…… |
…… |
…… |
…… |
…… |
软件测试 |
软件测试相关概念 |
解释软件测试的目的、模型以及分类 阐述软件测试原则 |
1. 制定项目测试计划 |
项目测试报告 |
软件测试过程 |
辨析各测试阶段的
测试对象及其发现
的缺陷 |
白盒测试 |
编写辅助模块 绘制流程图 绘制控制流图 分析程序内容结构 设计测试用例 |
1. 项目核心模块代码走查情况表 2. 项目核心模块逻辑覆盖测试用例 3. 项目核心模块基本路径测试用例 |
黑盒测试 |
划分等价类 编写用例场景 |
1. 项目等价类测试用例 2. 项目场景法测试用例 |
5.2. 构建自主实战项目实战矩阵
教学团队对自主实战项目的来源、小组团队的组建以及项目达到的基本标准等进行具体说明。同时对自主实战项目的具体进展计划、自主获取的知识和技术要求、完成的成果和技术文档等进行明确的要求,构建自主实战项目实战矩阵见表4。学生团队和个人依据选择的自主项目和团队分工,系统设定分级的团队和个人工作目标(O)和关键成果(KR)、支撑关键结果的进阶任务和所需要的知识技能点,构建自主项目实战矩阵。学生团队和个人制定项目进展计划,并通过团队间的“互助–帮带–传承–分享”途径,充分利用线上线下各种资源进行新技术的自主学习和团队协同学习,促进团队通过项目的训练,提升混合学习和对复杂软件项目进行分析、构建、设计、测试等工程技术应用创新等高阶能力。
Table 4. Matrix of independent practical projects
表4. 自主实战项目实战矩阵
项目阶段 |
相关知识 |
相关技能 |
关键成果 |
支撑文档 |
能力目标 |
需求分析–结构
化分析 |
需求获取 |
选择合适的方法获取项目的需求。 需求描述工具使用 |
1. 图文描述业务需求; 2. 用例描述用户需求; 3. 功能列表描述功能需求; 4. 描述数据需求。 |
1. 可行性分析报告 2. 开发合同 3. 功能点分析表 4. SRS |
1. 能够利用线上线下多种资源完成新技术的自主学习。 2. 熟悉团队工作模式,掌握软件项目管理的基本原则。 3. 具备对复杂软件项目进行分析、构建、设计、实现与测试的能力。 |
建立功能模型 |
绘制数据流图(DFD) 定义数据字典(DD) 描述加工逻辑 |
1. 建立顶层DFD; 2. 定义顶层DD; 3. 建立各功能级DFD; 4. 定义功能级DD; 5. 描述各功能逻辑 |
建立数据模型 |
绘制E-R图 数据规范化 |
1. 建立分E-R图 2. 建立总E-R图 3. 定义规范关系模式 |
…… |
…… |
…… |
…… |
…… |
软件测试 |
功能测试 |
划分等价类 编写用例场景设计
设计测试用例 |
1. 项目测试计划 2. 核心功能测试用例 3. 测试总结 |
项目测试报告 |
6. 基于OKR-STEP的混合式课堂教学
为了达成本课程的课程目标,落实“学生中心、产出导向、持续改进”理念,课程团队构建了基于OKR-STEP的混合式课堂教学。
6.1. 混合式课堂教学设计
混合式课堂教学,围绕课程的高阶性、创新性和挑战度,以学生学习为中心,理论实践结合,依据分层3类课程目标,基于两类项目,设计学做研协同的“线上→课堂→实践”全过程、阶梯型混合式教学。
线上:教师推送学习任务、答疑和发放问卷,学生自主学习,自测反馈。线上重点进行一般性知识的自主学习,研究性教学内容的初步学习,思政资源阅读,前沿理论和拓展知识的阅读和探索,解决课程知识点多面广、先进性以及多元化评价问题。
课堂:围绕课程目标,融合BOPPPS模式,灵活运用案例 + 项目任务、小组探究等方法,线下线上混合教学,培养需求分析、软件设计、测试等阶段的系统分析、抽象建模、创新思维、软件强国等高阶能力和素养,完成知识技能内化,解决理实融合不充分和无声融合思政问题。
实践:设置了结合实际场景的具有挑战度的个人和小组实践项目。需查阅文献,调研,自主选择并综合运用方法技术,迭代分析项目场景需求、设计优化解决方案。培养创新应用、知识迁移、系统分析设计等建模和应用创新、工匠精神等综合能力和素养,完成知识技能固化,解决知识综合运用问题。
“线上→课堂→实践”全过程混合式教学,有机融合课程内容与项目实践和职业素养,培养学生软件开发与维护过程中的分析、设计、测试等工程实践与应用创新能力,质量意识、职业素养以及终身学习能力,为工程化、高质量开发与维护软件项目奠定良好的专业素养。
6.2. 混合式课堂教学实施
依托网络课程平台和中国大学MOOC以及慕课堂,基于案例和项目任务,全面落实基于OKR + STEP的学生团队开展项目化训练的组织和管理方式,特别在课前、课中和课后核心环节中强化学生团队和个人自主成长。课前基于任务自主探究,课中聚焦问题协作探究,课后反思问题拓展研究,构建“课前 + 课中 + 课后”全过程、阶梯型混合课堂,组织实施教学。
课前:线上知识自主学习互动课堂
教师分析学情,中国大学MOOC平台发布资源、任务学习单、讨论、答疑等,学生线上自主学习、自测反馈,完成概念、分析和设计原则、管理原理和工程规范、思政资料等知识技能学习。教师分析学习结果,合理安排课中教学活动。
课中:线下线上技能深度互动课堂
基于中国大学慕课堂和线上课堂,融合BOPPPS模式,课中分为初、中、末3个阶段实施。课堂初期,教师针对线上前测结果,将核心概念和重要知识点进行集中讲授引入新知。课堂中期,教师运用问题驱动、案例分析、任务驱动、讨论等教学方法讲授技能型新知识;针对核心预设问题,抛出案例,引导学生利用已有技术解决简单软件分析、设计问题;接着,引入教师教学项目任务,学生分组讨论,探寻较佳解决方案,教师全程监控、答疑解惑、指导,组间分享、评价解决方案,教师点评;最后教师给出教学项目实际解决方案,让学生小组对比评价小组解决方案优劣。课堂末期,教师发布练习或讨论,检验学生课程目标达成情况,学生采用思维导图或KWL表进行总结。教师布置作业,预告下节内容。
课后:线下线上拓展能力互动课堂
教师发布结合实际场景精心设计的开放性自主拓展任务,学生优化课中科研项目解决方案,结合实际场景完成分析、设计等开放性系统化实践工程项目实践作业。学生线上拓展资源学习,查阅文献,调研,自主选择并综合运用方法技术,迭代分析项目场景需求、探寻、优化较佳设计方案,在学生完成作业过程中,双导师答疑辅导。教师分析学习达成度和学习体验问卷结果,优化教学过程。
混合式课堂利用信息技术线上、线下联动,学生深度参与课程,促进了专业能力与综合学习素养的融合与提升。
6.3. “课前 + 课中 + 课后”的全过程、阶梯化的混合式教学设计
混合式教学虽整合了线上资源即时性与线下教学互动性优势,但碎片化的教学结合难以塑造学生系统工程思维与项目全生命周期管理能力。构建“课前预研、课中实战、课后优化”的阶梯化混合式教学闭环,通过任务驱动与场景模拟贯穿教学全过程,成为破解当前教学困境、推动理论知识向工程实践转化的关键路径。接下来,将结合软件工程课程的具体教学内容,深入探讨该体系如何通过任务驱动与场景模拟,实现从理论学习到工程实践的能力跃升。限于篇幅,本节仅给出软件工程课程“结构化分析–功能建模”全过程、阶梯化的混合式教学设计,如表5所示。
Table 5. Structured analysis-functional modeling
表5. 结构化分析–功能建模
结构化分析–功能建模 |
学习目标 |
(1) 能抽象出场景中的数据源点/终点、数据流、数据存储、加工等要素,并能用正确的符号表示。 (2) 能建立顶层的DFD图。 (3) 能建立功能级的DFD图。 (4) 具备抽象思维和初级的系统观以及精益求精的工匠精神。 |
学情分析 |
(1) 学生已了解需求分析的任务和目的。 (2) 线上自学了DFD图相关的基础知识。 |
教学内容 |
(1) 常用需求分析的方法。 (2) 结构化分析的思想。(重点) (3) 顶层DFD图的建立。(重点) (4) 功能级DFD图的建立。(重点、难点) |
设计思路 |
基于OBE,融合BOPPPS的“123 + N”线上线下混合教学模式。 |
教学环境 |
(1) 多媒体教室。 (2) 中国大学MOOC慕课堂。 (3) 课程资源:中国大学MOOC慕课,本校以及北大软件工程课程资源。 |
教学方法 |
问题导向讲授法、案例法、项目任务驱动法、翻转课堂 |
学习方法 |
探究学习法、自主学习法、合作学习法、练习法、讨论法等 |
教学过程设计 |
教学环节 |
教师活动 |
学生活动 |
设计目的 |
支撑目标 |
课前:线上自主学习 |
自主学习与自测 |
(1) 发布课前任务 中国大学MOOC,本校软件工程课程,第3周数据流图。任务1:DFD的基本符号。任务2:DFD的基本符号。 (2) 发布在线问卷,收集学生自学过程中的疑难问题。 (3) 在线答疑。 (4) 检查任务完成情况,有针对性地组织教学。 |
(1) 观看任务1、2的视频。 (2) 完成任务1、2的自测题。 (3) 完成任务1、2的讨论题。 (4) 反馈学习困惑 |
将知识性内容放在线上学生自主学习,便于课上师生、生生互动研讨,培养学生的自主学习能力,促进学生的个性化学习。 |
1 |
课中(线下、线上混合互动课堂:50分钟) |
导入(B)/5 min |
线下: 【复习】需求的层次?需求的获取方法? 【问题】假设已采取合适的方法,获取到了某系统的需求?下一步做什么?进而引入本节课的教学内容–需求分析。 【线上学习情况反馈】简要总结线上自主学习情况和疑难问题收集情况。 |
线下: 聆听教师讲述,积极思考。 |
通过复习,然后提出问题,吸引学生注意力,提高学习兴趣。实现线上学习与线下教学活动的衔接。 |
|
目标(O)/1 min |
线下:介绍学习目标和学习内容 |
线下:明确学习目标及层次 |
带着目标学习 |
|
前测(P)/4 min |
线上:慕课堂发布【课前自主学习检测】练习。 线上线下:练习展示、点评检测结果。 |
线上:学生答题。 线上线下:观看、评判检测结果。 |
通过课前自主学习检测,针对性地有效组织本节教学。 |
1 |
参与式
学习(P) |
教师精讲/ 4 min |
线下:【知识点1】结构化基本思想。 【讲授法】图示讲解“自顶向下,逐步分解”,重点理解其中的“抽象与求精”。 |
线下:听讲、思考、回答问题。 |
在学生自学的基础上进行归纳。通过学生回答问题,理解顶层的数据流。 |
2、4 |
讨论/ 4 min |
线上:【讨论】求精过程中应注意哪些问题? 线下线上:教师点评学生讨论结果。 |
线下:分组讨论。 线下线上:分享、点评讨论结果 |
便于学生把握求精过程中加工和数据流的平衡。突破难点。 |
2、4 |
案例1讲授/ 10 min |
线下:(1) 案例:给出银行取款系统需求描述,画出银行取款系统的基本数据流图。 (2) 教师引导学生抽取表达数据流图中的各成分。 (3) 问题:顶层的数据流有哪些? (4) 教师带领学生黑板上完成顶层DFD图。 (5) 教师引导学生分解加工。 (6) 教师带领学生黑板上完成功能级DFD图。 线上:【问题】功能建模过程中应注意的问题? 线下线上:教师点评学生回答。 |
线下:(1) 引导学生抽取出案例中的数据流图中的各成分。 (2) 恰当表达。 (3) 学生思考、回答问题。 (4) 学生分解加工。 线上:学生总结、分享。 |
通过教师引导学生分析,培养学生的抽象思维和系统观,突破重、难点。 |
1、2、4 |
|
小组任务1:自主探究合
作探究/ 14 min |
线下:(1) 教师布置任务。 线上:(2) 各小组慕课堂展示顶层的DFD图。 线上线下:(3) 教师点评。 线下:(4) 各小组完成功能级DFD图。 线上:(5) 线上分享结果。 线上线下:(6) 教师点评。 |
线下:(1) 教师指导学生分组,抽象数据流图的各成分。 线下线上:(2) 慕课堂组间展示、点评顶层的DFD图。线下合作完成,线上展示结果。组间互评。 |
任务驱动突破重、难点,培养合作意识和精益求精的工匠精神。 |
3、4 |
后测(P)/5 min |
线下:(1) 课堂测试:建立BBS模版的发帖子系统的DFD图。 (2) 教师辅导、答疑。 线上线下:(3) 教师点评顶层的DFD图。 (4) 教师辅导、答疑。 线上线下:(5) 教师点评功能级DFD图。 |
线下:(1) 学生独立思考、分析。 (2) 建立顶层的DFD图。 线上:(3) 线上分享成果。 线下:(4) 建立功能级DFD图。 线上:(5) 线上分享功能级DFD图。 |
检测学习目标达成情况,让学生有获得感 |
1、2、
3、4 |
拓展与布置作业/ 2 min |
线上:【选题1:技能拓展】给出某图书管理系统功能,用结构化分析方法画出系统顶层图、0层图(数据流图)。 线下:【选题2:难点拓展】以小组为单位,采用结构化方法,进行“网上计算机销售”的功能分析。 |
学习通查阅作业 |
应用性任务,学生学习兴趣比较高 |
1、2、
3、4 |
总结(S)/2 min |
【教学总结】使用思维导图总结本节课的要点,以及需求分析过程中的工匠精神。 |
思考、巩固、提高 |
模块化总结新知,利于学生巩固和提高 |
|
课后反思和答疑 |
【教学反思】教师课后查看慕课堂教学日志,查看出勤、课堂参与度和各种评价数据,进行本节课的反思和总结。 【作业诊疗室】固定时间进行答疑。 |
填写LWL表 |
|
|
7. 教学成效
混合教学授课过程中,对21计科1、2班100多名同学进行问卷调查。调查结果显示,相比传统的线下授课和全部线上教学,58.35% (56人)的学生认为自己更适合混合教学模式;96.16% (100人)的学生不排斥软件工程混合式教学;59.62% (62人)的学生认为混合教学模式带来了学习效果的提升。65.38% (68人)的学生认为提高了自主学习的能力;55.77% (58人)的学生认为提升了抽象建模能力;68.52% (74人)的学生认为提升了分析问题的探究能力;78.85% (82人)的学生认为提升了自己的综合素养。
授课结束,根据课程目标设计相应的问题,针对全体修课学生进行问卷调查,学生根据学习成果的自我体验评价课程目标达成情况,74%的同学自评目标达成很好,24%自评目标达成好。
两类问卷均印证了该教学模式全面提升了学生软件工程开发全流程的工程实践能力和综合素质,课程目标达成良好。
8. 总结
本研究,依托中国大学MOOC平台自建的省级一流课程软件工程,构建了基于OKR-STEP的混合式课堂,通过培养学生的目标导向型思维,自主、合作、探究积极主动地建构学习环境,激发学生学习的自主性和能动力,提升工程技术应用创新能力以及工程素养,为应用型高校知识体系宽泛、综合且操作性较强的工科类课程混合式教学改革提供经验借鉴。
基金项目
河南省高等教育教学改革研究实践项目(项目名称:基于OKR-STEP的混合式教学模式研究与实践——以软件工程课程为例,2024SJGLX0494),平顶山学院教改项目(2023-JY21, 2023-JY20)。
NOTES
*通讯作者。