论文部分内容阅读
摘 要 针对独立学院强调培养学生动手能力及实际应用能力的要求出发,将软件工程实验中原来的虚拟客户改变为在本院内以实际用户作为调研对象,采集各个部门的实际需求,并最终生成相关的需求分析文档。这种教学方式的改进大大提高了学生参与的积极性,效果良好,为后续课程的改革提供了经验和参考。
关键词 独立学院 软件工程 案例驱动
中图分类号:G642 文献标识码:A
软件工程是计算机专业学生的一门专业必修课。软件工程学是将计算机科学理论与现代工程方法论相结合,着重研究软件过程模型、设计方法、工程开发技术和工具,指导软件生产和管理的一门新兴的、综合性的应用科学。随着计算机科学和软件产业的迅猛发展,软件工程学已成为一个重要的计算机分支学科,正在不断涌现新方法、新技术,蓬勃地发展着。
对于应用型本科的计算机专业学生来说,软件工程更是一门起到重要指导性作用的学科。在软件开发过程中,从调研、可行性分析(技术可行、经济可行、法律可行性)、需求分析、总体设计、详细设计、编码和测试、以及最后的产品维护和提交。这里每一个阶段的工作都要在软件工程思想的指导下才能最大程度的保证软件产品的开发进度及产品质量。
1 软件工程实验改革的现实依据
软件开发实践过程问题较多,且并不因软件开发工具的完善而有大的改善,软件工程控制的重要性越来越被重视。软件开发过程的问题常有如下几种:
(1)在开发项目的初始阶段,对系统进行的调研工作及可行性分析不够充分,导致对软件开发成本和进度的估计常常很不准确。
(2)在需求分析阶段,一方面,是客户与技术开发人员之间的矛盾:对于客户来说,由于对技术行业的不了解,往往会提出远远超越技术所能实现范围内的要求,而对于技术人员来说,由于行业的限制,对用户的需求理解不清,从而导致用户对“已完成的”软件系统不满意的现象经常发生;另一方面,需求的可测性较低,导致后期项目的测试验收较困难。
(3)在软件产品的概要设计阶段,架构设计比较难。
(4)在软件产品的编码设计阶段,代码的编写不够规范。
(5)由于前期需求的不充分,软件产品的质量往往靠不住,导致软件使用过程中的维护工作相对困难。
(6)软件通常没有适当的文档资料。
(7)软件开发生产率提高的速度,远远跟不上计算机应用迅速普及深入的趋势。
以上问题当中,最突出的是与需求分析相关的问题,如果需求分析没有做好,将影响整个项目的实施和完成。可见需求分析在整个软件生存周期中的重要性。
除此之外,对于应用型本科的计算机专业学生来说,在整个大学四年的教学计划中,课程设计的内容贯穿始终,从以往的完成情况来看,我们的学生在设计的过程中往往对课题的内容在设计阶段过于简单化,并没有从实际客户的角度来思考问题。轻设计重开发,导致最终形成的作品缺乏实用价值。
鉴于以上的诸多问题,我们将软件工程的理论与实践相结合,以实际项目案例为驱动的方式,让学生分小组合作完成软件工程的实践课程,让学生采用软件工程的思想作为指导,工程化、规范化地模拟和实践软件生存期内的需求分析阶段,并形成需求分析阶段的成果及相关文档。对学生软件工程理论思想的提升和实践能力的提高有着重要的意义。
2 软件工程实验改革计划
2.1 教学方式的改进
原有的实验内容是在参照各个高等院校的实验内容以及相应的实验教程,经过筛选整合之后,形成的一套以针对软件生存周期各个阶段所涉及的CASE工具的使用为目标的指导书。应用性较强,重点在于掌握一些主流软件工程工具的基本使用方法。相对来说,由于内容比较分散,各个实验环节之间相关性不够,在指导性方面则比较弱。鉴于原有内容的不足之处,现在拟将软件工程工具的使用分布到实际的工程项目案例中来,转变为以项目案例为驱动的方式,让学生带着开发设计项目的目标将各种工具的使用联系起来,对软件生命周期中需求分析阶段的工作有全面系统的认识。
2.2 教学内容的改进
原来的项目题库中的题目主要是参照各个高等院校的实验内容以及从现有的图书馆及网络参考资料中得来。现在拟由教师根据实际需求,设计项目题库,如:实验室系统、宿舍系统、超市系统等等。这些题目主要从学校实际应用的角度出发,特点是实践性强、目标明确、需求方便获取,使学生能够在校内各部门进行调研工作,与相关工作人员交流,面对真实的客户完成需求分析阶段的资料收集和整理工作。本项目所做的工作可以为其他相关课程的课程设计所用,为完成一个优秀的课程设计提供了必要的参考及指导。
2.3 教学过程的改革
从原来的独立完成的设计型实验,改为分小组协作完成的设计型、综合型实验。锻炼学生的团队协作能力、组织能力、沟通能力和表达能力。
2.4 考核方式的改革
在课程结束之后,由真实客户的代表及专业相关老师组成评审小组,学生以小组为单位将所做的需求分析结果进行陈述,再由评审小组进行点评和打分。最终,总评成绩由平时成绩和评审成绩组成,其中平时成绩占总评成绩的70%,平时成绩占总评成绩的30%。
3 软件工程实验改革实施效果
在本次教学改革实施的过程当中,得到的学校各部门相关老师积极配合,为改革的实施提供了真实的访问客户。同时,对于这种真实客户的访问方式,学生积极地参与到调查访问当中,为设计出实用的软件作品提供了大量的素材,改变了原来单一的封闭的需求分析模式。学生在与真实客户交流的过程中,也锻炼了自己的沟通和表达能力。根据客户给出的各项需求,要进行归纳整理,最终形成整个系统的基本功能。
通过本课程的实践教学改革,使学生将数据结构、数据库、程序设计语言、UML建模等课程的知识全面联系起来,让学生对计算机专业课程有了全面的理解、认识和掌握。
4 教学改革的创新点及成果
4.1 教学改革的创新点
本次教学改革的创新之处有以下几点:
(1)传统的软件工程实验只注重了各种辅助软件的使用,各个实验内容的相关性不够紧凑。本项目的创新之处,正是为了解决这些问题,以一个实际的案例为线索,贯穿整个实验的始终,让学生对软件设计的过程有一个整体的认识,了解软件工程思想的指导性作用,并在每一次实验的过程当中加强对自己本课题更深层次的了解。
(2)本教改项目的工作,旨在让学生对软件开发的需求分析阶段有更深入的了解和掌握,并最终形成文档用于指导软件开发的后期工作。因此,学生所做的需求分析工作可以为其他相关课程的课程设计所用,为完成一个优秀的课程设计提供了必要的参考及指导,对后期课程建设有着重要的意义。
(3)学生通过本实践课程的学习,可以继续完成一个可展示的、规范的完整作品,对后期课程的学习是个极大的鼓舞,并可以增强学生学习的自信,对毕业后走向工作岗位有一定的帮助。
4.2 教学改革的成果
从原来学生自己做需求,自己开发的单一封闭的方式转变为以实际案例为驱动的设计开发模式,极大的提高了学生的学习兴趣。也在与外界交流的过程当中,发现自己原来的不足之处。在形成了最终的软件分析文档之后,部分动手能力较强的学生将项目进行了后期的开发工作,形成了可以实际应用的成果,并且投入到了相关部门当中去使用,达到了良好的使用效果。为校园的网络化建设提供了前期的准备工作。
5 结束语
以实际案例为驱动的软件工程实验模式,能够让学生获得一种全面的、切实有效的教育。目前,我国传统的学科课程理念根深蒂固,真正与实际案例相结合的项目课程开发还处在实践探索的阶段,本次教改项目身先士卒,希望能够起到抛砖引玉的作用,为后续课程的改革提供经验和参考。
关键词 独立学院 软件工程 案例驱动
中图分类号:G642 文献标识码:A
软件工程是计算机专业学生的一门专业必修课。软件工程学是将计算机科学理论与现代工程方法论相结合,着重研究软件过程模型、设计方法、工程开发技术和工具,指导软件生产和管理的一门新兴的、综合性的应用科学。随着计算机科学和软件产业的迅猛发展,软件工程学已成为一个重要的计算机分支学科,正在不断涌现新方法、新技术,蓬勃地发展着。
对于应用型本科的计算机专业学生来说,软件工程更是一门起到重要指导性作用的学科。在软件开发过程中,从调研、可行性分析(技术可行、经济可行、法律可行性)、需求分析、总体设计、详细设计、编码和测试、以及最后的产品维护和提交。这里每一个阶段的工作都要在软件工程思想的指导下才能最大程度的保证软件产品的开发进度及产品质量。
1 软件工程实验改革的现实依据
软件开发实践过程问题较多,且并不因软件开发工具的完善而有大的改善,软件工程控制的重要性越来越被重视。软件开发过程的问题常有如下几种:
(1)在开发项目的初始阶段,对系统进行的调研工作及可行性分析不够充分,导致对软件开发成本和进度的估计常常很不准确。
(2)在需求分析阶段,一方面,是客户与技术开发人员之间的矛盾:对于客户来说,由于对技术行业的不了解,往往会提出远远超越技术所能实现范围内的要求,而对于技术人员来说,由于行业的限制,对用户的需求理解不清,从而导致用户对“已完成的”软件系统不满意的现象经常发生;另一方面,需求的可测性较低,导致后期项目的测试验收较困难。
(3)在软件产品的概要设计阶段,架构设计比较难。
(4)在软件产品的编码设计阶段,代码的编写不够规范。
(5)由于前期需求的不充分,软件产品的质量往往靠不住,导致软件使用过程中的维护工作相对困难。
(6)软件通常没有适当的文档资料。
(7)软件开发生产率提高的速度,远远跟不上计算机应用迅速普及深入的趋势。
以上问题当中,最突出的是与需求分析相关的问题,如果需求分析没有做好,将影响整个项目的实施和完成。可见需求分析在整个软件生存周期中的重要性。
除此之外,对于应用型本科的计算机专业学生来说,在整个大学四年的教学计划中,课程设计的内容贯穿始终,从以往的完成情况来看,我们的学生在设计的过程中往往对课题的内容在设计阶段过于简单化,并没有从实际客户的角度来思考问题。轻设计重开发,导致最终形成的作品缺乏实用价值。
鉴于以上的诸多问题,我们将软件工程的理论与实践相结合,以实际项目案例为驱动的方式,让学生分小组合作完成软件工程的实践课程,让学生采用软件工程的思想作为指导,工程化、规范化地模拟和实践软件生存期内的需求分析阶段,并形成需求分析阶段的成果及相关文档。对学生软件工程理论思想的提升和实践能力的提高有着重要的意义。
2 软件工程实验改革计划
2.1 教学方式的改进
原有的实验内容是在参照各个高等院校的实验内容以及相应的实验教程,经过筛选整合之后,形成的一套以针对软件生存周期各个阶段所涉及的CASE工具的使用为目标的指导书。应用性较强,重点在于掌握一些主流软件工程工具的基本使用方法。相对来说,由于内容比较分散,各个实验环节之间相关性不够,在指导性方面则比较弱。鉴于原有内容的不足之处,现在拟将软件工程工具的使用分布到实际的工程项目案例中来,转变为以项目案例为驱动的方式,让学生带着开发设计项目的目标将各种工具的使用联系起来,对软件生命周期中需求分析阶段的工作有全面系统的认识。
2.2 教学内容的改进
原来的项目题库中的题目主要是参照各个高等院校的实验内容以及从现有的图书馆及网络参考资料中得来。现在拟由教师根据实际需求,设计项目题库,如:实验室系统、宿舍系统、超市系统等等。这些题目主要从学校实际应用的角度出发,特点是实践性强、目标明确、需求方便获取,使学生能够在校内各部门进行调研工作,与相关工作人员交流,面对真实的客户完成需求分析阶段的资料收集和整理工作。本项目所做的工作可以为其他相关课程的课程设计所用,为完成一个优秀的课程设计提供了必要的参考及指导。
2.3 教学过程的改革
从原来的独立完成的设计型实验,改为分小组协作完成的设计型、综合型实验。锻炼学生的团队协作能力、组织能力、沟通能力和表达能力。
2.4 考核方式的改革
在课程结束之后,由真实客户的代表及专业相关老师组成评审小组,学生以小组为单位将所做的需求分析结果进行陈述,再由评审小组进行点评和打分。最终,总评成绩由平时成绩和评审成绩组成,其中平时成绩占总评成绩的70%,平时成绩占总评成绩的30%。
3 软件工程实验改革实施效果
在本次教学改革实施的过程当中,得到的学校各部门相关老师积极配合,为改革的实施提供了真实的访问客户。同时,对于这种真实客户的访问方式,学生积极地参与到调查访问当中,为设计出实用的软件作品提供了大量的素材,改变了原来单一的封闭的需求分析模式。学生在与真实客户交流的过程中,也锻炼了自己的沟通和表达能力。根据客户给出的各项需求,要进行归纳整理,最终形成整个系统的基本功能。
通过本课程的实践教学改革,使学生将数据结构、数据库、程序设计语言、UML建模等课程的知识全面联系起来,让学生对计算机专业课程有了全面的理解、认识和掌握。
4 教学改革的创新点及成果
4.1 教学改革的创新点
本次教学改革的创新之处有以下几点:
(1)传统的软件工程实验只注重了各种辅助软件的使用,各个实验内容的相关性不够紧凑。本项目的创新之处,正是为了解决这些问题,以一个实际的案例为线索,贯穿整个实验的始终,让学生对软件设计的过程有一个整体的认识,了解软件工程思想的指导性作用,并在每一次实验的过程当中加强对自己本课题更深层次的了解。
(2)本教改项目的工作,旨在让学生对软件开发的需求分析阶段有更深入的了解和掌握,并最终形成文档用于指导软件开发的后期工作。因此,学生所做的需求分析工作可以为其他相关课程的课程设计所用,为完成一个优秀的课程设计提供了必要的参考及指导,对后期课程建设有着重要的意义。
(3)学生通过本实践课程的学习,可以继续完成一个可展示的、规范的完整作品,对后期课程的学习是个极大的鼓舞,并可以增强学生学习的自信,对毕业后走向工作岗位有一定的帮助。
4.2 教学改革的成果
从原来学生自己做需求,自己开发的单一封闭的方式转变为以实际案例为驱动的设计开发模式,极大的提高了学生的学习兴趣。也在与外界交流的过程当中,发现自己原来的不足之处。在形成了最终的软件分析文档之后,部分动手能力较强的学生将项目进行了后期的开发工作,形成了可以实际应用的成果,并且投入到了相关部门当中去使用,达到了良好的使用效果。为校园的网络化建设提供了前期的准备工作。
5 结束语
以实际案例为驱动的软件工程实验模式,能够让学生获得一种全面的、切实有效的教育。目前,我国传统的学科课程理念根深蒂固,真正与实际案例相结合的项目课程开发还处在实践探索的阶段,本次教改项目身先士卒,希望能够起到抛砖引玉的作用,为后续课程的改革提供经验和参考。