
西安建筑科技大学学报(社会科学版)
J Xi an Univ.of Arch.&Tech.(Social Science Edition)
Vol.25 No.3
Sep.2006
以科研项目指导本科生毕业设计课题的
实践与思考
马光思,董丽丽,张维琪
(西安建筑科技大学,陕西 西安 710055)
摘 要:针对专业长期以来对本科生在毕业设计中参与科研项目的教学实践,介绍了课题研究取得的经验、教训和相应改进措施。结合近20年来学科经历的技术发展、课程改革、应用领域等,讨论了影响专业本科生毕业设计课题的各种因素。分析了几组毕业设计范例选题的意义、设计任务、设计效果和其中潜在的问题。最后给出了以科研项目指导本科生毕业设计的改进方案和努力方向。
关键词:毕业设计;实际科研项目;软件构件技术;设计范例
中图分类号:G2 文献标识码:A 文章编号:1008-7192(2006)03-0083-04 y
Practicing and Pondering on Actual Subject Involving
Undergraduate s Graduation Design
MA Guang si,DOH G Li li,Z H AN G Wei qi
(Xi an U niv.of Arch.&T ech.,X i an 710055,China)
Abstract:In terms of long time teaching practice of actual projects involving undergraduate graduate de sign,the paper introduces the ex perience,lesson and improvement of subject research.Combined w ith the technology development,course innovation and application fields of the20 year course fields,some factors impacted on undergraduate graduate design are discussed.Then the paper analyzes the sense,mission and effect of several exam ples about graduation design.Finally,the improvement and direction of underg radu ate graduate design that guided by are actual subjects is g iven.
Key words:gr aduate design;actual p roj ects;sof tw are comp onent technology;design p aradigm
我国大学计算机类专业本科生的教学安排一般为4年,分8个学期完成,其间,除数学、物理等基础理论教学外,大多数专业课都配有少量的上机与实验课程。鉴于计算机专业理论与应用实践之间关系十分密切的特点,各学期还穿插安排有课程设计、认识实习、金工实习、生产实习,以及最后第8学期安排的毕业实习与毕业设计等各种实践环节的教学任务。我校计算机科学与技术专业建立于1986年,从专业初创至今,对已毕业的16届本科生,所指导的毕业设计题目大都选用真实
y收稿日期:2006-03-18
基金项目:陕西省教育厅产业化培育项目(02JC39)
作者简介:马光思(1949-),男,陕西三原人,西安建筑科技大学信控学院教授,主要研究计算理论,软件方法。
科研项目作主题。通过实际系统的开发、应用与维护,锻炼了各届毕业生理论结合实际的能力、动手能力和对实际工程的认识与应用分析能力,提高了学生的科研水平,使得不少学生一走上社会就能很快适应工作,得到了用人单位的好评,反映了很好的实践教学效果。本文结合以科研项目指导本科生毕业设计教学工作中的经验、教训及各种改进措施,介绍我们在不断改进与完善实践环节的教学模式,巩固以科研项目指导本科生毕业设计教学成果方面所做的工作,期望能起到好的参考和借鉴作用。
一、经验教训及影响因素与改进措施
以实际科研项目指导本科生毕业设计是我们一直积极倡导与努力付诸实践的教学方式。其目的和意义,主要是以实际科研项目培养学生理论结合实际的经验,锻炼科研动手能力。这种单纯出发点和随后的工作实践表明,无论是经验还是教训,通过设计,毕业生的能力的确会得到程度不等的提高,但对项目和其他方面的后果,却有较大争议。事实上,学生必竟是在学习阶段,对题目不承担工程责任与后果;加之,毕业答辩结束后学生要走向社会,而项目的各种遗留问题怎么解决,由谁来解决却没有答案。当毕业生完成论文,毕业答辩回顾设计过程时,一个深刻体会是如果能再来一次设计,效果肯定会比前一次好,时间连1/3都用不了。亦即学生能干活了,也该走人了。我们十余届的毕业设计教学实践,深刻反映出以实际科研项目指导本科生毕业设计!这一课题(以下简称课题),绝非一项简单、孤立的教学方式、方法方面的改革题目。它经历了学科发展中多次重大技术变革,应用方式经历了从单机,局域网到互联网的几次转型,支持环境与开发工具也随之不断演变与更新,涉及领域涵盖硬件、软件、通讯、数据处理、多媒体技术、单片机、嵌入式应用、开发方法、计算理论等多个方面。对这一头绪繁多的课题,我们有着十余次艰难的实践经历。
1 软件开发技术的影响
在学科发展中,我们经历了结构化、面向对象和构件技术三个重大技术变革阶段。结构化软件开发是软件工程发展的初期阶段,它遵循自上向下,逐步求精,模块化(功能分解),结构化等开发原则,严格执行分阶段的开发过程。该方法要求软件工程各阶段提供需求分析说明书、层次结构图、数据存储结构、数据词典、功能描述算法以及源代码。对软件配置方面上的述苛刻要求,以及缺乏相应的自动化、半自动化及可视化方面的有力工具,是课题研究中的突出矛盾。面向对象开发方法针对结构化方法的弊病,封装了数据与操作相关数据的运算,顺应人类的思维习惯,对课题提供了有力支持。但是,面向对象的开发首先要求从静态、动态和功能三个不同侧面完成建模的过程,其难度、工作量远大于结构化建模却是不争的事实。面向对象方法先从编码工具起步,其分析、设计阶段的各种要求、规范、方法和工具是在随后多年才逐步发展完善起来。这就使得我们结合课题对这一方法的全面熟悉与应用经历了漫长的适应过程。软件构件技术是继结构化与面向对象之后兴起、流行的新的革新技术。这一技术继承了硬件系统即插即用的特点,提出了各种统一的标准、规范和接口,如CORBA,J2EE,DCOM/ COM+等。新技术从提出到普遍应用都要经历一个过程,构件技术也不例外。对标准、规范的实现,后来由专业公司提供有实用开发支持平台,但其庞大规模和复杂结构仍需花费很大精力和时间进行深入研究才能达到熟炼应用的地步[1]。
2 课程安排、教学内容及其他影响因素
早期有七、八届的毕业设计,方法基于结构化,课题多为单机,硬件条件差,缺乏高级开发工具,一切多从代码行开始。但毕业生参与课题的积极性弥补了硬件条件落后等不足,数人合用一台PC机互相倒班也无怨言。教学安排的程序设计、数据结构、数据库及软件工程等课程对课题有直接的支持作用。对规模大的项目,可采用功能分解予以化简,程序设计、数据结构课程教学中的上机练习经验对模块设计有直接和重要支持作
84西 安 建 筑 科 技 大 学 学 报 第25卷用。局域网课题的出现虽然增加了一定的难度,但在教师和学生的共同努力下,仍然取得了不错的效果。面向对象方法的出现带来了新的难题和挑战,在新形势下,通过及时更新程序设计、数据结构、操作系统、计算机网络及软件工程等课程的教材和教学内容,并对课题的研究方法、流行开发工具,开展了一系列的熟悉、转变与适应性活动,也逐渐完成了从结构化到面向对象的转型。这一过程先、后持续了五、六届。近年来的课题多涉及Web应用,已成主流方法的软件构件技术企图从根本上解决大规模、并行及异构环境下软件开发的问题,但随后出台的一些工具因规模和内容而无法纳入总课时有限的教学活动,故对本科生只能从其他方面挤时间或采用讲座、研究小组等灵活的教学方式予以补课,以适应对课题提出的高要求。此外,选题的合理性与规模,软件课题具有的逻辑性(看不见、摸不着),学生对承担课题的责任感,对软件测试重要性和严重后果的认识程度,作为系统及产品的特殊性,毕业设计课时,过程管理的科学性等,都是研究中值得十分重视的因素,需要给出切实可行的对策[2]。
二、实践范例
如下简介用某软件构件系统科研项目中的子课题指导某届毕业设计的实际过程和效果[3]:
1 动态表结构管理构件框架
(1)研究意义。
通常的应用系统多涉及数据库应用,但需求分析一般都不彻底,事实上,由于需求随形势不断的发展变化也不可能彻底。由此,在工程项目的开发及应用过程中,会经常引发表结构的变化,常见的变化有对字段名称、类型、长度及提示的修改,严重者还有增加字段、取消字段及合并多个字段等。从而,设计一种可动态变化的存储表结构的课题就成了长期以来软件研究中想解决而未能很好解决的难题。这一难题的解决,将使随后所有具体应用的设计都要面对动态化的选择[4]。
(2)指导方式。
题目首先由部分研究生参与,讨论具体方案,选用技术、工具,搭建开发环境,给出具体框架的原型。期间,安排个别本科生以生产实习的题目参与其中的各项活动,熟悉环境和设计的目的、意义。这里,已把生产实习与毕业设计两个实践教学环节的题目、活动相结合作为一项重要的教学改革措施,以解决毕业设计课时不足、学生前期训练少的问题。随后,在课题正式开始后又加入几位本科生参与设计,后续加入者即可得到早期加入同学的辅导与帮助,研究生则从项目中陆续撤出,接受其他的任务。
(3)设计效果。
参与课题研究的本科生逐渐熟悉了构件技术的开发方法和工具,得到了很好锻炼。最早的参与毕业设计的本科生取得了优秀成绩,毕业后即以在该课题中掌握的知识和实际经验很快适应了某软件研究机构的工作,成了用人单位科研项目中的主力。其他随后参与项目的同学也程度不同的得到了锻炼与提高。
2 地理信息辅助处理构件子系统
(1)研究意义。
课题中涉及到关于地理环境信息的分析与污染区的勾画、监测点的布局等。以此作为一个研究子课题,探讨多种开发工具的用法,实现技术。实现后的框架可作为整体系统的一个重要组成部分,为用户提供一种简捷的绘图工具。
(2)功能要求。
对输入地图要求可放大、缩小、移动、旋转、测量距离,以任意方式、色彩的划线勾画区域,以不同的图标安插监测点[5]。
(3)指导方式。
首先将其作为生产实习的题目让几位应届毕业生参与,分析题目的需求,研究相关的开发工具,熟悉开发环境,完成部分功能。毕业设计期间开展进一步的工作,实现其他要求功能,完善、改进视觉效果。其间,安排有个别熟悉相关工具的研究生辅助指导。
(4)设计效果。
课题研究中,责任心强的同学自觉查找相关
85
第3期马光思等:以科研项目指导本科生毕业设计课题的实践与思考文献资料,认真实践,努力熟悉所选的工具,成功的完成了要求的设计任务,得到了很好锻炼。其设计作品、毕业论文及答辩都得到教师和同学的好评,取得了优秀成绩。相反,责任心不强的同学对课题缺乏自觉性,有畏难情绪,设计任务完成的不理想。
3 数据分析构件子系统
(1)研究意义。
课题中涉及到数据分析这一重要组成部分。关于数据分析,可以利用数据仓库和数据挖掘技术,构建一个复杂的决策支持系统;也可以自行研制一个规模较小的分析工具,直接针对数据库进行操作。实际课题的规模和需求仅允许选择后一方案。功能方面,要求对收集数据从不同角度给出直方图、饼图及分析曲线图等[6]。
(2)指导方式。
关于数据分析已有各种样板和案例,先将其作为生产实习的题目让几位应届毕业生参与,分析题目的需求,研究样板和案例中各个组件的功能,相互之间的协作关系,熟悉样板和案例所采用的开发工具和开发环境。比较不同样板和案例的特点及应用效果。毕业设计期间开展进一步的工作,实现其他要求功能,完善、改进视觉效果。其间,安排有熟悉相关工具的研究生辅助指导。
(3)设计效果。
课题研究中,责任心强的同学自觉查找相关文献资料,认真实践,努力熟悉所选的工具,成功的完成了要求的设计任务,得到了很好锻炼。其设计作品、毕业论文及答辩都得到教师和同学的好评,取得了优秀成绩。相反,责任心不强的同学对课题缺乏积极性,加之有多门课程需要补考,复习课占用了大量时间,设计任务完成的不好。
三、结 语
计算机专业的课题随着现代科学技术的发展、应用领域、应用方式与需求的变化在不断升级。各项有重大差异的题目,其研究任务对教师带来了很大挑战和压力。除了应对各种教学任务外,用科研项目指导研究生已属不易,再用这种项目指导初次接触实际课题且缺少工程经验的本科生就困难更大。通过分析和范例,课题遇到的问题,各种影响因素和多种改进与适应措施,都显示出课题的特殊性和系统工程方面的特性。尽管如此,我们仍然坚持让本科生参与实际课题。为了减轻学生的责任和负担,在改进教学内容、增加新技术的同时,实践教学环节的改进也很重要。如让学生自主选择实习环境和设计题目,允许高年级走出学校,到一些软件公司参与实际工程,寻求一对一的指导和训炼,教师从理论上再做一些技术指导和管理方面的工作等。另外,增加虚拟的、带有先期预研性的、且责任和时限不怎么严格和紧迫的题目作为本科生毕业设计选题的方案也已配合实施。加上由学校、院系在毕业设计管理方面提出的各项规定和安排,相信以科研项目指导本科生毕业设计这一教学成果一定会得到进一步完善和巩固提高。
参 考 文 献
[1]朱三元.软件工程技术概论[M].北京:科学技术出版社,2002.
[2]马光思,董丽丽.开拓毕业设计教学改革思路、培养高质量技术人才[J].西安建筑科技大学:社会科学版,2001,20
(1):81-83.
[3]张维琪.构件技术在项目管理中的应用研究[R].西安,西安建筑科技大学信息与控制工程学院,2005.
[4]田华楠.环境评价项目数据表管理子系统[R].西安,西安建筑科技大学信息与控制工程学院,2004.
[5]李晓慧.地理信息辅助管理系统的研究与实践[R].西安,西安建筑科技大学信息与控制工程学院,2004.
[6]李 炜.环境评价项目数据分析子系统[R].西安,西安建筑科技大学信息与控制工程学院,2004.
(编 辑 鲁新显) 86西 安 建 筑 科 技 大 学 学 报 第25卷
