软件工程课程绪论教学方法研究

2015-07-03 01:03刘晓敏马慧彬高晶
中国教育技术装备 2015年6期
关键词:生命周期编程细节

刘晓敏++马慧彬++高晶

摘 要 软件工程是计算机科学与技术专业和软件工程专业的一门专业基础核心课程。学好软件工程的关键在于了解软件工程的基本概念,理清软件工程的基本思想,因此,软件工程绪论的教学组织和讲授是至关重要的。介绍软件工程绪论教学过程的总体框架,并且详细阐述软件工程概述的课堂实施细节。

中图分类号:G642.4 文献标识码:B

文章编号:1671-489X(2015)06-0081-02

1 引言

“软件工程”是计算机本科教学中的一门专业基础核心课程[1-2],该课程主要讲授软件工程的基本概念、基本原理和基本方法及相关技术,强调软件开发问题的分析和解决。但是,由于软件工程理论内容抽象,软件开发过程复杂,使其具有一定的深度和难度,成为计算机科学中“教师难教、学生难学”的课程之一。学生往往觉得软件工程枯燥,提不起兴趣,同时还产生一股畏惧感。这成为软件工程教学中需要解决的难点问题。

绪论课是对授课对象的“启动”与“激发”。绪论教学将会给学生带来先入为主的影响,为了让学生更好地掌握软件工程知识,拥有一个优秀的绪论教学是具有重要意义的[4]。因此,讲授好软件工程绪论,对于增强学生学习软件工程的兴趣和学习主动性[3],优化教学效果,有着至关重要的作用。本文介绍软件工程绪论教学过程中需注意的问题和总体框架,并且详细阐述软件工程绪论的课堂实施细节。

2 软件工程绪论教学中注意强调的问题

通过以上论述可以看出软件工程绪论的教授是软件工程这门课最重要的一部分,但是在教学过程中需要注意以下几个问题。

1)让学生了解编程和软件工程之间的关系,让学生摒弃以前认为编程就是软件的看法。

2)让学生了解软件工程学的背景和目的,及了解软件工程学产生的原因是什么?它是为了解决哪些问题?

3)让学生了解开发小型系统和开发大型系统的方法是不一样的,开发大型系统要使用软件工程的思想完成。

4)让学生知道将软件定义为程序是错误的,让学生深刻理解软件生命周期模型的概念。

5)介绍软件生命周期的过程中要按功能和文档两个方面介绍,让学生能够条理清晰。

6)强调软件质量评价在软件工程中的重要作用,让学生深刻理解软件的可维护性、可靠性和可理解性的重要性。

7)重点介绍软件和软件生命期模型的概念,让学生理解软件生命周期的每个阶段之间的相互关系是至关重要的。

8)强调软件质量评价的重要性,强调小型程序和大型软件系统的评价方式是不一样的,要详细分析大型软件系统的评价方式。

3 软件工程绪论教学过程的总体框架和课堂实施细节

为了更好地让学生了解软件工程的基本概念,理清软件工程的基本思想,本节详细介绍了软件工程绪论的课堂实施细节。

软件工程绪论教学过程的总体框架 为了更好地介绍软件工程绪论教学的过程,软件工程绪论教学的总体框架如图1所示。首先介绍软件工程学的背景和目的,也就是介绍软件工程学到底是解决哪些问题;接下来介绍软件工程学的产生,及软件工程学的名称是怎样来的——它是来源于工程开发的思想;然后掌握软件和软件生命周期的概念,详细讲解软件生命周期各阶段之间的关联;强调软件质量评价的重要性;最后讲解软件开发方法和软件自动工具的概念。

软件工程绪论课堂教学的实施细节 根据上节介绍的教学总体流程图,详细描述总体流程中每个流程的实施细节。

1)软件工程的背景和目的。首先,教师要以问答式开始这一部分的教学。

问题:“同学们在修完编程等课程后,你们能够做什么?”

回答:“字符编辑或报表打印程序等”。

问题:“要研制一个大型软件系统,你该怎么做?”

一部分回答:“一头雾水。”一部分回答:“很简单。”

到底是什么样呢?引出学习软件工程的必要性:这门课可以让我们知道怎样使用更少的人力、物力和财力开发一个高质量的软件系统。然后进入课堂细节,讲解“软件工程”是从“编程”演变过来的,知道软件工程学的目的,了解软件工程学的产生。

2)软件和软件生命周期模型的介绍。在这一部分可以使用如图2所示的生命周期图来描述。该图可做成动画形式来表示每一个阶段的递进形式。首先进入可行性研究与计划阶段,然后进入设计阶段,接着进入编程阶段、测试阶段和运行与维护阶段。根据图示详细描述每个阶段的功能和要输出的文档。最后要做出总结:实际软件系统的开发不可能是理想化地按瀑布模型进行,人们理解问题总有一个反复的过程,所以从后阶段回复到前阶段是不可避免的。例如:设计阶段发现需求说明书有不完整或不正确之处,就须“再分析”;测试阶段发现模块界面有错误,需进行“再设计”;运行阶段为了扩充系统的功能,需要进行“再分析”“再设计”“再编程”等。

3)软件质量评价,重点讲解软件工程学的最终目标是获得高质量的软件,所以如何评价软件质量是一个重要的问题。软件质量的定义还是非常模糊的,人们对此尚未形成一致的看法,但一般说来倾向于从可维护性、可靠性、可理解性和效率等方面对软件作较全面的评价,详细介绍这几方面。最后要给出总结:对于一个小型程序,可以希望它是完全正确的,但对长达几万行甚至几十万行的大型软件,一般不能奢望它是“完全”正确的,这一点也无法证实。同时为了保证软件质量,在软件开发过程的各个阶段就应该采取多种有效的技术和一系列质量保证措施,使得软件能够高质量地顺利完成。

4)软件开发方法和软件自动工具。这一部分使用问答方式开始讲解,提问:“软件工程学的最终目标是什么?”回答:“软件工程学的最终目标是以较少的投资获得质量较高的软件产品,也就是说要‘高产优质。”同其他工程学科一样,达到这个最终目标的两个主要途径是“纪律化”和“自动化”。“纪律化”:就是寻找一些规范的“求解过程”,使开发工作能够有计划、有步骤地进行。“自动化”:就是使开发过程中的某些工作用计算机来完成或用计算机来辅助。

①软件开发方法。首先讲解软件开发的发展是从个体→集体的劳动成果。为了使软件研制走上工程化的轨道,必须寻找一些标准的规程,以便为开发人员给出指导和约束。最终得出结论:在软件方法的指导和约束之下,面对错综复杂的问题,开发人员就可按统一的步骤、统一的描述方式,纪律化地展开工作。这是高产优质的保证。

②软件自动工具。由于所需工作量极大,常称软件开发是“劳动密集”的工作。为提高生产率并保证质量,人们很自然地希望能够实现开发过程的自动化,如PSL/PSA、AIDES和SDL/PAD。

上面详细介绍了软件工程绪论讲解的详细过程,通过上面课堂的组织,可以激发学生探索未知领域的强烈愿望,从而在教学中引导学生进行发现问题、解决问题的主动求知。

4 总结

本文介绍了软件工程是计算机本科教学中的一门专业基础核心课程,它的理论内容抽象,软件开发过程复杂,学生往往觉得软件工程枯燥,提不起兴趣。而绪论课是对授课对象的“启动”与“激发”,因此,软件工程绪论的教学组织和讲授是至关重要的。本文介绍了软件工程绪论教学过程中需注意的问题和总体框架,并且详细阐述了软件工程绪论的课堂实施细节。

参考文献

[1]骆斌,葛季栋,丁二玉,等.软件工程专业课程体系的研究与创新实践[J].计算机教育,2010(12).

[2]刘强,陈越,骆斌,等.“软件工程”课程教学实施方案[J].中国大学教学,2011(2).

[3]魏芳波.大学物理课程中绪论教学改革的实践[J].高职高专教育,2010(10).

[4]栾加双,王亚军.绪论教学在大学授课过程中的重要性探讨[J].课改新探,2008(10).

[5]潘锦平,施小英,等.软件系统开发技术[M].西安:西安电子科技大学出版社,2010(12).endprint

猜你喜欢
生命周期编程细节
全生命周期下呼吸机质量控制
编程,是一种态度
元征X-431实测:奔驰发动机编程
以细节取胜 Cambridge Audio AXR100/ FOCAL ARIA 906
编程小能手
纺织机上诞生的编程
从生命周期视角看并购保险
民用飞机全生命周期KPI的研究与应用
留心细节处处美——《收集东·收集西》
细节取胜