面向复杂工程问题的CBL教学设计
作者: 林琳 年轶[摘 要]工程教育认证对于复杂工程问题有明确的要求。需求工程课程组通过基于案例的教学,指导学生通过分析和团队合作解决有一定复杂度的工程问题,从而提高学生掌握行业规范及独立探索的素养。调查问卷表明,学生对于课程教学方法的设计满意度较高。
[关键词]复杂工程问题;工程认证;CBL;需求工程
[中图分类号] G642 [文献标识码] A [文章编号] 2095-3437(2022)04-0106-04
2016年6月,我国正式加入《华盛顿协议》,成为《华盛顿协议》教育体系下的正式成员国,申请通过工程教育认证的高校专业必须按照协议的要求培养人才[1]。《华盛顿协议》特别针对“复杂工程问题”提出了具体的要求,明确了培养的学生应该具有的工程能力和工程素质,这就要求高校着力培养学生的专业能力和修养,使他们能够切实具有解决工程实际问题的能力[2]。江苏大学软件工程专业于2019年进行了工程教育认证的现场考察并顺利通过认证,说明专家认可了专业课程中的复杂工程问题设置。本文以软件工程专业中的核心课程——需求工程为例,对教学设计中的复杂工程问题加以探讨。
需求工程是软件工程专业的核心课程,是应用已证实有效的技术、方法进行需求获取和需求分析,帮助分析人员理解问题并定义目标系统的所有外部特征的一门学科。本课程的任务是让学生具有使用实际有效的建模技术、分析方法进行需求获取、需求分析、需求建模及需求定义的能力;使得学生能通过合适的工具、记号系统地描述待开发系统及其行为特征和相关约束,形成需求文档。教师对多种教学手段的运用,有利于学生工程意识的培养和工程思维的建立,让学生在案例的引导下,在完成“任务”的过程中,培养分析问题、解决问题的能力。
一、课程概况
需求工程是软件工程专业理论与实践兼具的课程,课程的教学宗旨在于培养学生的工程意识和工程思维能力,使他们能够理解复杂问题涉及多方面的冲突因素,能以创新的思路或方法提出解决问题的方案。如果知识的传授方式仍然沿用课堂讲授的传统教学模式,学生的学习将索然无味,不能保证教学效果与培养目标的有效达成。为此,我们将CBL教学模式[3](Case based Learning,案例教学法)引入课程的需求获取和需求分析等相关章节的教学中,转变传统教学过程中教师的角色,让教师成为教学过程的组织者、引导者和激励者。教学开始先按项目成组,教师通过案例构建出一定问题域场景并设计问题。在教师的引导下,学生通过文献的查阅、小组的研讨以及自主学习等形式,深入理解项目建设的目标(业务需求)与需求的关联关系;通过剖析系统的瓶颈问题以识别系统的各类架构形式,并选择合适的系统架构形成问题解决方案。基于案例教学的流程如图1所示。
二、面向复杂工程问题的教学过程
在以往的教学中我们发现,随着课堂内容的逐渐深入、难度的不断加大,一些学生开始产生一些畏难厌学的情绪。需求工程是软件工程专业学生的一门专业选修课程,具有较强的实践性,对知识的宽度及专业知识的综合运用有着较高的要求。如果学生只是按照教师的要求机械地完成教师布置的任务,没有对知识点进行深入思考,是难以真正做到融会贯通的。造成这种现象的根本原因是,教学内容没能激发学生的学习兴趣,学生没有真正地动脑去思考。
(一)教学设计
由于大部分学生的形象思维能力较强,抽象思维能力相对较弱,教师上课时如果太强调原理的来历、理论推导和论证的过程,会让学生觉得难以理解。因此,教师在讲授知识内容时应侧重于过程性知识,以情境性为主、科学性为辅,尤其要将抽象理论及概念具体化,重点考虑如何用实际的案例和任务将课程内容衔接起来。这样更符合学生的认知特点,学生接受起来难度系数会大大降低。
复杂工程问题主要体现为两种类型,一类是问题与解决问题,另一类则是理论、技术与方法[4]。需求工程课程着重对前一类的解决问题能力进行培养。教学过程设计如图2所示。
整个过程从纵向上可分为:工程案例分析、任务案例设计、成组学习的组织、组内角色分配及任务分解、协同学习过程、质性评价体系的构建。阶段性的成组学习研讨既要完成学习过程的跟踪,又要解决学习过程的控制与反馈问题。CBL教学法是根据教学目的和教学内容的要求,把要学习的知识点融入具体的教学案例中。
以事务性软件系统开的业务架构为例。在事务性软件系统开发这个领域,开发人员面对的大都是复杂系统,这些系统中的各个部分互相依赖、互相关联和互相作用,形成一个密不可分的复杂整体。因此,开发人员同样需要体系,需要一个能够保证软件开发实施过程成功的理论体系。从目前来看,业务架构体系可以说是一个比较适合的体系。
在教学过程中,教师引导学生通过文献搜索、阅读和研究相关领域知识,参照案例的分析过程,经小组分析讨论和研究,形成对给定问题域背景的透彻理解。利用多种资源开展文献检索和资料查询,全面地理解问题域,能为后期的学习任务奠定基础。
变抽象为具体。在业务架构的情境案例设计中,应尽量减少理论与实际应用之间的差距。比如,业务模型概念在学生思维中的形成,就是通过对业务案例正式场景的剖析,给出实际事例,进而推出业务模型的概念,以此提高学生对抽象概念的理解能力。有些问题的设计可能与教学无关,但能够调动学生的积极性;或者能够引导学生思维,展现学科的逻辑魅力。这就要求教师在教学中要很好地把握教学主题,利用相关的背景知识组织教学,让学生共同参与分析和思考,从而掌握教学内容。
对于业务架构的抽取,通常不是仅靠常用的方法就可以解决的,因为问题中所涉及的因素需要通过建立合适的抽象模型才能解决,在建模过程中要体现一定的创造性(或是自己的见解)。教师要引导学生基于科学原理,融合专业知识结构,对复杂软件工程问题进行深入研究,通过实际的工程项目开发案例,从战略视角、业务视角、管理视角、数据视角、应用视角讨论案例的关联,抽取业务域结构,分析其活动流程、活动内容以及活动步骤。基于上述基础,教师再引领学生从纵向横向上进行系统的业务架构。
通过对整个业务体系的剖析,向学生展示案例场景,引导学生面对场景众多冲突因素,并运用所学习的知识结构和工程经验,以创新的思路和方法进行领域建模。教师先把项目完成的结果展示给学生,让学生知道自己完成成果的预期,通过成果去激发学生的探索欲。由于只展示了结果和大致的构架,具体的实施细节和解决方案还需要学生自己去实现,学生只有充分掌握学科的基本理论和方法后,才能更好地设计解决方案。
(二)教学内容
教师在课程教学中应充分使用CBL教学模式。CBL教学模式是以案例为基础的学习方法,是在一个可控制的环境中对现实世界的部分情景进行模拟[5]。在案例学习提供的情景中,学生可充分运用所掌握的知识,自主地进行分析或决策[5]。CBL教学法不仅能让学生在讨论中获得知识,而且还能通过讨论提高学生的人际沟通能力。由于教学中案例真实、素材丰富,更易于学生身临其境地认真对待、分析和解决问题。
为防止学生从网上复制现成文档,案例分析要求每个学生以自己身边的家人或者朋友为采访对象,以对象从事的职业为系统背景,进行需求获取和需求分析。学生依据教师的案例引导,围绕目标要求,将案例分析题目拆分成相关任务,并针对具体任务从书本、中国知网、互联网以及图书馆收集资料,围绕主题组织材料,采用访谈、头脑风暴等形式,通过QQ、微信等通信平台进行多次研讨。这种形式不仅消除了学习交流过程中物理空间上的隔离,而且让学生提前体验真实场景中进行需求获取的情景,提高了学生学习的兴趣。最后,要求学生按规范要求制作PPT,进行成果展示,并撰写相关报告。具体CBL教学内容和教学方式、考核和成绩判定方式以及形成结果见表1。
课程的项目展示主要考查学生的总结能力和表达能力。该环节要求学生在完成项目实践后,使用PPT对自己所做工作进行总结,时间限定在6~8分钟,考查的内容包括PPT是否规范、美观,结构是否合理,以及演讲人的逻辑是否清晰、演讲是否生动等。
三、教学成效分析
本文对课程的教学成效评价通过课程感知、教师感知和课程价值感知三方面加以说明。感知是思维的反应,是理性的,是通过思维对客观分析后的反应,是通过分析得出的对某事的看法[6]。课程结束后,发放给学生问卷样本75份,收回有效问卷63份,占总样本数的84%。问卷的选择项中包括完全同意、比较同意、不太同意、完全不同意4个选项。
在对于课程的感知上,我们设计了课时安排、教学内容、上课形式、互动情况、考核方式、理论与实践结合6个维度加以分析。从图3中可见,总体评价呈良好态势,但是在课程的互动性、理论与实践结合两个维度上,基本同意的占比较高。可见,这两个维度是今后课程持续改进的主要关注点。
在对教师的感知上,从教师的教学态度、教师的专业知识面、教学方式、案例形式、引导学生思考、课后回答学生问题等6个维度统计了学生的评价,如图4所示,总体呈良好态势。其中,教学态度获得了学生的高度认可。而教师积极引导学生思考方面,基本同意占比稍高,而这与课程互动的设计密切相关,两者间具有关联关系,是课程持续改进的关注点。
在对课程价值感知上,如图5所示,从拓展了学生的视野、提高了学生的专业能力、激发了学生的学习兴趣、有助于学生的自动性学习能力、对学生未来的职业发展有帮助、启发了学生的思维等6个维度统计了学生的评价,总体呈良好态势,尤其在启发了学生的思维上获得了更多认可。
四、结语
教学过程中,通过教师的讲述和自己的思考,学生对很多概念和课程内容的理解比之前深刻。如某组学生就“网上招聘代理系统”案例进行分析,但在分析过程中如果重点关注招聘的内涵,而忽略了招聘的外延,其获得的结果就会“失之毫厘,谬以千里”。苏轼有诗:“横看成岭侧成峰,远近高低各不同。”这句千古名句告诉人们,观察事物与所处角度有关。为此,案例教学法的实施,不只是将案例以实例的方式呈现给学生,而是要将案例与一系列问题相结合,让学生真正地理解案例背后的原理及方法,让学生自己基于科学原理,融合专业知识结构,对复杂软件工程问题进行深入研究,最终解决问题。否则一旦问题出现变更,学生就会束手无策。
教育的重要内容不是知识的灌输,而是让学生学会推理、决策和解决生活中随处可见的复杂问题。“授人以鱼不如授人以渔”,课改的本质不只是传授给学生既有知识,而是要传授给学生学习知识的方法。
[ 参 考 文 献 ]
[1] 蒋宗礼,姜守旭.发挥本科教学质量国家标准对新工科建设的推动作用[J].中国大学教学,2018(1):41-45.
[2] 赵立辉,项鸣,杨红喆,等.聚焦解决复杂工程能力的物联网课程教学改革[J].辽宁工业大学学报(社会科学版),2020(4):126-128.
[3] 王军号,谢以磊.CBL-PBL模式在计算机操作系统实验教学中的实践[J].计算机教育,2019(11):170-174.
[4] 杨培林,蒋克俭,陈丽,等.课程设计教学与复杂工程问题解决能力培养[J].大学教育,2020(6):69-71.
[5] 朱会娟,杨鹤标.Java程序设计课程的教学与实践的探索与思考[J].教育现代化,2019(93):55-56.
[6] 屠兴勇,林琤璐.主动性人格、批判性思维与问题解决能力的关系研究[J].社会科学,2018(10):38-48.
[责任编辑:钟 岚]