APP下载

软件工程课程案例教学研究与实践

2018-03-22郭咏梅

长治学院学报 2018年5期
关键词:案例知识点工程

郭咏梅

(长治学院 计算机系,山西 长治 046011)

软件工程课程是计算机类相关专业的必修课程,它具有较强的综合性、实践性和工程性特点,对培养学生基础的软件开发能力和工程实践能力起着重要的作用[1]。课程的教学目标不仅使学生掌握软件开发的基本步骤和方法,还要求学生具备必要的技术与工程实践能力,从而能在走出校门后,尽快胜任工作,满足企业的用人需求。但是,目前的教学模式普遍重理论轻实践,对学生工程实践能力和规范开发软件能力缺乏训练,学生的工程实践能力薄弱[2]。针对这些问题,笔者分析课程特点和教学目标后,在教学过程中引入实践性教学案例,通过对实际案例的分析、解剖、讨论和验证,让学生真正体会开发软件的分析、设计、编码、测试过程,将课程的理论知识点与案例的开发过程紧密结合。重视训练学生规范的操作能力,激发学生的学习兴趣,提升学生解决现实问题的动手能力和工程实践能力。

1 课程特点及教学目标

软件工程是一门理论知识与工程实践并重的课程,涉及内容广泛,从理论知识方面讲,包括软件开发的理论、原理、方法和技术;从工程实践方面讲,包括软件开发、维护和管理等活动。针对新建本科院校重点培养应用型人才的目标定位,软件工程课程主要教学内容有:基于软件生命周期的软件工程的基本概念和基本原理,基于工程实践的系统化、规范化的结构化开发方法和面向对象开发方法。对于应用型人才的培养,不仅要求学生理解软件开发方法和过程,而且要求学生应用方法和技术对实际问题进行分析、设计、编码和测试。课程教学目标是使学生掌握需求分析、系统设计及编码测试与维护过程的方法和技术,并用规范的、系统的方法与技术实现中、小规模项目的开发与管理,在实践中逐渐训练学生分析问题、建立模型、设计与实现、团队合作沟通、创新能力等,为将来从事软件方面的工作打下扎实的基础。

2 案例教学的实施

案例教学是提高学生动手能力和工程实践能力的重要途径[3]。在教学过程中,教师要精心选择和设计适合学生理解的、规模适中的教学案例。在教师的启发下,引导学生对案例进行解剖,让学生明确案例的功能和结构。提出与需求分析、设计、编码和测试相关的一系列问题,引导学生对这些问题进行讨论,通过对问题的讨论和讲解,让学生理解案例开发的方法、步骤和工程规范,并动手进行验证。最后,结合案例对课程知识进行总结,将课程知识与案例紧密结合,强化知识的应用,让学生在课程的实验环节进行实践,逐步提升学生的工程实践能力。

2.1 案例的选择

案例的选择直接影响教学过程的实施和教学效果的好坏[4],教师要精心备课,选择适合学生理解的、能够体现软件工程开发方法的教学案例。作为新建本科院校,我校计算机系设有计算机科学与技术专业和网络工程专业。软件工程课程开在第六学期,先修课程有C语言程序设计、数据结构、数据库原理、Java语言程序设计等主要课程。根据我校学生具体情况,笔者选择学生信息管理系统作为教学案例,一是学生对学生信息管理系统的使用比较了解,二是学生信息管理系统具有一定的规模,能够应用软件工程方法进行模块划分,便于学生分工合作。

2.2 案例教学的主要内容及能力训练

软件工程是研究软件开发和软件管理的一门工程学科,它主要包括技术和管理两方面的内容。软件工程课程重点讲授软件技术方面的知识,主要包括结构化方法和面向对象方法两大内容,对软件项目管理的内容做概述性的讲解。下面以结构化方法为主,以学生信息管理系统的开发为任务,探讨如何通过案例教学提高学生的工程实践能力。

结构化方法的主要知识点、案例教学的主要内容与工程能力训练的关联如表1所示。

表1 结构化方法主要知识点、案例教学与能力训练

2.3 案例教学过程

在整个教学过程中,笔者基于双主模式,引导学生对案例进行分析、讨论、验证、总结[5]。教师首先要精心选择设计教学案例,上课之前让学生针对问题进行分析和讨论,课堂上将课程的理论知识与案例的实际应用密切结合,通过对问题的讨论和讲解,明确各个阶段的任务。通过对案例的解剖和验证,领悟软件开发方法、技术和规范。掌握知识点在实际问题中的应用,并能够举一反三。

例如在学生信息管理系统的需求分析阶段,引导学生讨论以下问题:用户有哪几类,各类用户使用系统要完成哪些操作,系统要实现哪些功能,系统处理的数据有哪些等等。课堂上启发学生对问题进行分析和讨论,让学生分别以所有者和开发者的身份对系统进行需求分析,确定用户类别:学生、教师和管理员。学生能够查询课程信息和成绩信息;教师能够录入成绩、查询课程和学生信息;管理员权限最大,能够对各类信息进行操作。进一步确定系统要完成的功能:学生信息管理、课程信息管理、教师信息管理和成绩信息管理。确定系统要处理的主要数据;学生信息、课程信息、教师信息和成绩信息。最后引导学生建立需求分析的三个模型:功能模型、数据模型和行为模型,指导学生用图形工具描述三个模型,用分层的数据流图描述功能模型,用E-R图描述数据模型,用状态转换图描述行为模型。在教学过程中,教师指导学生解剖和分解案例,让学生动手操作案例,验证案例对应模块是否实现了相应功能。在案例分析、讨论、解剖和操作过程中,讲解软件开发中需求分析的任务、方法、工具和过程,将课程的知识点融入案例的开发过程中。最后结合案例对需求分析阶段的知识点进行总结,让学生掌握需求获取的方法,需求分析的方法和过程。需求分析要建立的模型以及建模工具的使用。通过对案例的分析和讨论,进一步提高学生分析问题能力和建立模型能力。

4 结语

学生动手能力和工程实践能力的培养不可能通过一个案例完成,需要通过一系列实践环节有意识、有计划、持续地训练。在软件工程的实验环节和课程设计过程中,还要逐步增加新的案例,扩展案例的深度和广度,增加软件工程的新内容和新技术,在不断动手实践过程中,提高学生解决实际问题的能力和工程实践能力。

猜你喜欢

案例知识点工程
一张图知识点
一张图知识点
第四页 知识点 歼轰-7A
案例4 奔跑吧,少年!
随机变量分布及统计案例拔高卷
发生在你我身边的那些治超案例
子午工程
关于G20 的知识点
一个模拟案例引发的多重思考
工程