HI,欢迎来到学术之家股权代码  102064
0
首页 精品范文 课程设计和开发

课程设计和开发

时间:2023-09-25 17:59:56

开篇:写作不仅是一种记录,更是一种创造,它让我们能够捕捉那些稍纵即逝的灵感,将它们永久地定格在纸上。下面是小编精心整理的12篇课程设计和开发,希望这些内容能成为您创作过程中的良师益友,陪伴您不断探索和进步。

课程设计和开发

第1篇

0 引言

随着农村社区规模的迅速扩大,农村社区数量逐渐增多,农村社区教育课程设计开发成为农村社区教育发展的重大问题。开发适应当地经济发展和生产与生活实际的教育内容或教材,给农村社区教育提供一定意义上的指导。

1 农村社区教育课程开发的意义

1.1 有利于构建特色专业课程体系

农村社区教育课程设计开发要充分考虑到社会效益,甚至需要将教育触角延伸到地方经济建设最前沿,形成具有地方特色的个性化的社区教育资源,有利于构建特色专业的课程体系。

1.2 能适应农村经济建设需求

农村社区教育课程具有地方特色,促进农村社区居民知识结构调整,适应地方经济建设需求,为新农村建设培养专业化人才。

1.3 有助于农村社区居民个性化发展

农村社区居民在文化程度和综合素质上存在很大差异,对社区教育的需求也千差万别。农村社区教育课程设计内容和形式丰富多彩,更有利于农村社区居民的个性化发展。

2 农村社区教育课程设计开发现状及存在问题

2.1 政府支持力度不够

主要表现在:一是对农村社区教育经费投入不足,经费短缺、基础设施薄弱,严重影响高质量的课程开发和大规模的课程推广。二是对社区教育管理力度不够,还没有一个适合的标准,在运行过程中不易评价。三是相关的政策法规需要进一步完善,需要相关的制度保障农村社区教育课程设计与开发。

2.2 理论和技术层面资源匮乏

现阶段关于农村社区教育的研究还不是很多,对于农村社区教育课程设计与开发的相关研究更是少之又少,缺乏相关的理论指导。农村社区教育课程包含的内容广泛,对课程设计开发人员素质提出更高要求,在具体课程设计开发实践中还不能深入挖掘具有地方特色的课程资源,目前胜任农村社区教育课程设计开发工作的研究人员匮乏。

2.3 课程设计开发缺少规范

社区教育课程设计开发需要有课程专家的指导,要求有较高的专业素质和教育经验。由于社区教育课程设计开发主体的缺位,课程设计与开发不能满足农村居民的需求。目前农村社区教育课程设计开发缺乏主动性与积极性,大部分情况下是通过行政力量来推动的,农村社区领导为完成上级考核任务而进行,不能真正体现农村居民的兴趣与需求,出现“以供代需”的现象。

3 农村社区教育课程设计与开发原则

开发设计农村社区教育课程应遵循以下原则:一是因地制宜原则。农村社区教育课程设计开发能够服务于地方经济建设,更能集中体现地方文化特色;能适应专业知识和操作技能的动态发展,更能体现社区居民的兴趣、爱好和特长。二是科学性原则。农村社区教育课程设计开发过程中要讲求实用性,但一定不要忽视科学性,从长远目标进行规划设计,确保课程开发的系统性和学术性。三是实践性原则。课程设计开发应首先考虑知识性和技能性,课程评价体系也要本着实践性原则,确保课程设计开发的科学性与合理性。四是个性化发展的原则。农村社区教育课程设计开发要根据农村社区居民的接受水平和个性化发展的需要设计教学活动和教学内容,根据发展需要不断进行调整,形成一个动态生成的过程。

4 农村社区教育课程设计开发的建议及对策

4.1 提高认知,加大宣传与力度

经费投入和基础设施投入是政府针对农村社区教育课程设计开发需要解决的两大问题,应提供足够的资金和设施。在经费投入上采取“政府拨一点,社会筹一点,单位出一点,个人拿一点”的办法。各级政府可设立农村社区教育专项经费,按时足额发放,鼓励民间投资等形式支持农村社区教育。将农村社区教育课程设计开发纳入部门考核,有效推动农村社区教育课程设计与开发进程。

对农村社区教育课程设计开发的宣传,应努力提高认识,通过宣传教育和推介,得到广大民众的认知、接受和支持,引起广泛关注、参与和投入,营造浓厚的学习氛围。

4.2 建立课程设计开发保障机制

课程设计开发是一个完整、规范的过程。包括前期对课程资料、存在问题、居民需求等方面的调查研究,并以此为契机,从农村社区发展、居民需求和需要出发,确定和选择课程内容与教学方式,进而开展教学实施,完成课程评价。课程设计与开发需要管理者、专家、教育者、社区居民等主体协调配合、共同参与。

第一,组织相关人员针对课程设计与开发进行专业培训,提升专业素质。

第二,科学合理地进行课程设计开发,使开发流程有计划有步骤进行。在详细了解农村社区情况及社区资源的基础上,根据社区与社区居民的实际需求,结合地方农村社区的区域特点,因地制宜地制订课程设计开发计划与步骤。根据农村社区及居民的实际需求与需要设计和编排课程内容;根据社区及社区居民的发展确定课程目标;充分发挥学习者的积极性、主观能动性和创造性,通过过程和发展评价课程体系。

第三,农村社区教育课程设计与开发需要建立质量评价体系,让质量评价贯穿课程设计与开发全过程。在制订课程目标、编排课程计划、组织安排课程内容、进行课程实施等过程中都需要进行全程评价。参与评价的人员要包括授课教师、社区居民,还应该包括管理人员和课程设计专家等全员参与。通过“全程”与“全员”评价与反馈,不断提高课程设计与开发质量与水平,促进农村社区教育目标快速实现。

4.3 加强教师队伍建设

农村社区教育教师队伍和管理队伍整体素质需要提高,队伍结构需要调整。

①加强农村社区教育专职、兼职教师的招募与培养,提高教师素质与水平。通过完善引进和培训模式,以观摩、研修、培训等多种方式,提高农村社区教育教师业务素质,提高课程设计开发能力。

②利用城市带动农村的拉动机制,通过城乡交流轮岗、对口支援等方式,促进城乡教师之间的交流与发展,提高农村社区教育教师素质与水平。

③制订保障措施,提高农村社区教育教师待遇。

④建立健全农村社区教育教师引入与管理机制。建立日常考核和培训制度,健全评价与考核机制。总之,农村社区教育课程设计与开发需要专职教师、兼职教师、志愿者共同参与,适应农村社区实际需要,保证社区教育课程设计开发高效率、可持续发展。

4.4 突出特色,注重质量

目前,无论从农村社区教育课程数量方面,还是课程质量方面,都不能满足农村社区及社区居民的实际需求,数量少,整体水平偏低。在这种情况下,农村社区教育课程设计与开发更要突出特色、注重质量。课程内容、学习形式贴近居民需求,教学过程突出重点、难点,教学方式方法上体现多元化,切忌高、大、空,真正具有先进性和创新性。

4.5 完善课程评价体系

第2篇

关键词:复杂工程问题;计算机科学与技术专业;课程设计

工程教育认证要求通过认证的工程专业不仅要深入理解和把握复杂工程问题,更要按照国际实质等效原则培养学生具有解决复杂工程问题的能力[1]。目前,针对计算机相关专业解决复杂工程问题能力培养的研究还处于探索阶段。许智宏等人认为可采用半开放式项目驱动教学方法达成目标[2];尚凤军提出课程群建设面向复杂工程设计的方案[3];黄永红等人认为可增设综合训练项目来达到培养目标[4]。刘秀平等人提出了分层实施方案,从知识、实践、设计的维度支撑了解决复杂工程问题的能力[5]。王宏宇等人提出了以学科竞赛主题为对象,遵循工程逻辑设计开发过程的课程建设改革方法[6]。许多研究成果对于分解落实解决复杂工程问题能力的培养缺乏深入探索,对于如何优化课程设计体系和内容来提高学生解决复杂工程问题的能力方面也缺乏深入研究。

1课程设计改革的意义

完备的实践教学体系主要包括课程实验、课程设计、实习、毕业设计(论文)等。通常,国内高校都将毕业设计(论文)环节作为实现解决复杂工程问题的重要载体。但近年来,毕业设计期间应聘、考研等挤占了学生很多时间和精力,设计内容往往弱化甚至忽略难以处理的学科交叉问题和非技术因素,且毕业设计往往采取一人一题,很难达到个人与团队的教学指标。课程实验往往随理论授课逐周分散进行,受学时限制以及学生知识掌握处于积累阶段等因素,一些深度型、探究型、综合型的实验往往很难开展。实习由于受到场地、经费、管理难度、企业技术保密等限制,往往缺乏理论指导下的实践。一些计算机类专业学生到实习单位后,只能接触一些前端页面或模块代码的机械性编写,无法接触软件或硬件的具体设计过程,有些专业实习甚至畸变为企业参观。《计算机类专业教学质量国家标准》要求计算机类专业学生4年的实验当量应不少于2万行代码。在课程设计方面,要求至少完成两个有一定规模和复杂度的系统的设计与开发。调研发现,实践教学体系中提高学生解决复杂工程问题的环节应保证时间的集中性,内容的规模和复杂度要达到国家标准中的要求,且应在理论的指导下开展,课程设计比较符合这一要求,应作为提升学生解决复杂工程问题能力培养的关键突破口。

2课程设计改革宗旨和研究方法

2.1课程设计改革宗旨

第一,以培养学生解决复杂工程问题能力为主线,突出工程技术应用能力的培养,强调自主学习和终身学习意识培养,全面提升学生的能力和素质。第二,使学生能够设计针对复杂工程问题的解决方案,在设计环节中体现创新意识,实现多方案分析与评价,从而全面提升实践教学效果。第三,使学生深入掌握工程原理,结合工程实践,体现综合运用,提升解决复杂工程问题的能力。第四,分解落实解决复杂工程问题能力的培养,课程设计的持续改进逆向推进课程体系的整体优化。第五,构建计算机专业完善的实践教学体系和课程群体系,建立各项实践教学活动的持续改进机制。

2.2基本研究方法

第一,调研法。采取调研问卷调查和访谈的方式,对目前已毕业学生、在校生(包括计算机类专业本科生、研究生)、教师(包括教学管理、教学一线、教辅等多层面)开展调研。同时走访和调研部分高校、IT企业和专业培训机构等。第二,逆向研究法。从实践入手,逆向优化专业类知识体系教学。第三,分析建模法。对调研数据、教学环节统计与考核数据、质量保证监控数据进行科学分析,借助人工智能手段进行建模优化。第四,螺旋优化、研以致用法。杜绝纸上谈兵,形成的专业课程设计内容设置实施方案(含教改方案、教学大纲、课程标准、考核标准等),直接实施于一线教学活动,并通过实施效果的反馈螺旋优化后续方案。

3课程设计改革实践

课程设计计划的实施要求指导教师明确课程设计对应于工程教育认证标准具体的毕业要求指标点,并要在课程设计过程中坚持实施。明晰课程设计对毕业要求指标点的支撑作用,为合理安排课程设计的内容明确了指导思想。本校计算机科学与技术专业培养方案以工程教育专业认证为背景,共设置11门课程设计。一类课程设计在前5学期开设,涉及专业类知识课程门数相对较少,具体包括以下7门课程设计:C语言程序设计课程设计、Java程序设计课程设计、数据结构与算法课程设计、数据库原理课程设计、计算机网络课程设计、C++程序设计课程设计、JavaEE编程技术课程设计。以上课程设计以语言开发为主,是培养学生计算思维、软件工程设计规范、计算机语言开发能力的基础。指导教师面向解决复杂工程问题培养,认真设定课程设计题目和内容。以学生为中心,强调基础性、技能性、应用性、工程性和创新性,采用问题驱动和求解渐进化方式不断提升学生解决复杂工程问题的能力。每门课程设计在具体实施中,指导教师始终探索课程设计如何解决承上(课程实验)启下(毕业设计和实习),并不断思考和探索课程设计如何逆向优化专业类知识课程的教学活动。计算机科学与技术专业另一类课程设计在第6和第7学期设置,综合性较强(在某些高校或专业有时被称为“综合开发实训”或“综合训练项目”等,但通常拘泥于一种开发语言或技术)。综合类课程设计有4门:A.体系结构课程设计。专业类知识课程涉及体系结构、计算机组成原理、编译原理、汇编与接口技术、计算机网络等硬件类和系统类课程。B.操作系统课程设计。专业类知识课程涉及操作系统、Linux系统等系统软件类课程和部分高级语言类课程。C.软件开发综合课程设计。专业类知识课程涉及各种高级语言类课程(如Java、C、C++)、软件工程、数据结构与算法、数据库原理等软件开发类课程。D.Python与人工智能课程设计。专业类知识课程涉及各种高级语言类课程(如Python、Java、C、C++)、数据结构与算法、人工智能导论等课程。综合类课程设计涉及大量通识类知识和学科基础知识,具有较高的综合性,包含多个相互关联的子问题,体现问题和系统的规模、难度、复杂度、综合性。课程设计更强调培养学生的系统观,使学生能够站在系统的高度,以系统的视角去看问题,去适应错综复杂的应用场景,最终实现问题的系统化、科学化求解。“软件开发综合课程设计”综合了之前的.NET综合课程设计、Java综合课程设计等软件开发类课程设计。根据工程教育专业认证要求,这门课程设计并不拘泥于某一种语言或技术要求,要求学生能够针对复杂工程问题,选择与使用恰当的技术、资源、现代工程工具和信息技术工具等设计开发一套软件系统,并通过对比得到有效结论。“Python与人工智能课程设计”以解决复杂工程问题入手,学生首先分析问题建立模型,然后给出解决方案和算法设计,通过Python语言及其扩展库编程实现系统,最后通过设计方案、模型、算法、开发语言等多个角度对比分析给出所设计系统的客观性评价。在2017版培养方案中该课程设计为“Python程序设计课程设计”,设计内容包含了软件开发、大数据、人工智能、深度学习等。2019版培养方案中,专业增设了1门48学时的人工智能导论理论课,Python程序设计和人工智能导论合并为1门2周的“Python与人工智能课程设计”。“体系结构课程设计”和“操作系统课程设计”是专业认真研究工程教育认证标准后于2019版人才培养方案中新设置的2门课程设计。在学时紧张的情况下,专业仍增设了这2门综合类课程设计,力图保证学生硬件系统、组成原理、体系结构、操作系统方面的综合设计能力培养质量,保证人才培养的系统性和专业性。课程设计具体实施过程中,指导教师以突破解决复杂工程问题能力培养为核心安排课程设计内容,使学生的能力培养达到工程教育认证标准的培养要求,反复思考和尝试解决以下关键问题:第一,课程设计内容重点覆盖了《华盛顿协议》7个特征中的哪些特征?课程设计的规模、难度、复杂度、综合性是否能满足工程教育认证背景下的解决复杂工程问题的要求?第二,课程设计中,如何运用深入的而不是浅显的工程原理,经过什么样的分析,而不是直接套用原理、公式来解决设计目标?第三,课程设计中学生在哪些理论指导下进行实践?加深对哪些原理的理解?第四,为了突出复杂工程问题的解决,与课程设计相关的一门或多门相关课程的讲授环节中,将对传统的授课方式、方法和内容采取哪些变化?与课程设计相关的理论知识讲授和基本实验环节能否为学生完成课程设计奠定扎实基础?第五,课程设计是否要引入混合式教学?如果引入,混合式教学将如何提高课程设计效果?第六,从以学生为中心的角度分析学生如何通过课程设计和相关理论的学习,实现从“学了”到“学会”再到“会应用”?第七,课程设计“能力培养”如何量化考核,“复杂度”如何评价?以产出为导向,如何建立持续的人才培养改进机制?通过指导教师的不断思考和改革尝试,使各门课程设计实现了设计理念的转变、从简单到综合的转变、从单一系统到增加对比分析、综合评价等突破常规的转变。

4课程设计改革效果

课程设计改革使计算机科学与技术专业逐步形成一套课程设计内容设置实施方案(含教改方案、教学大纲、课程标准、形成性考核标准等),并直接实施于现有教学活动。通过培训和专家辅导讲座等形式,指导教师深刻理解了工程教育认证的本质和内涵,改变了传统的课程设计理念。以复杂工程问题的提出和解决为课程设计核心,突出产出导向,精心设计课程设计题目,优化课程设计考核指标,建立了课程设计持续改进机制。课程设计改革在人才培养方面取得了切实效果。第一,以培养学生解决复杂工程问题能力为主线,突出工程技术应用能力的培养,增强了学生自主学习和终身学习意识培养,设计理念更符合学科发展趋势。第二,使学生能够设计针对复杂工程问题的解决方案,在设计环节中体现创新意识,养成了多方案分析、对比和评价的设计习惯。第三,使学生逐步掌握深入的工程原理,结合工程实践,综合运用,提升了解决复杂工程问题的能力。第四,以课程设计内容设置为突破口,逆向推进课程体系设置整体优化,使学生通过实践逆向推动理论课学习的兴趣和动力,学生的理论素质进一步提升。课程设计改革首先在省级一流本科专业“计算机科学与技术”专业实施,并推广至软件工程、数据科学与大数据技术、物联网工程三个计算机类本科专业。与信息技术密切且相关的电子商务、电子信息工程、机器人工程等专业也逐步开展了面向复杂工程问题能力培养的课程设计改革,取得了切实有效的实施效果。

5结语

截至2018年,计算机类专业已达3349个专业点,培养学生复杂工程问题的解决能力,是工程教育专业认证对工程类专业人才培养的核心要求,也是一流本科专业建设的核心目标之一。随着工程教育认证的普及开展,面向OBE理念,突出解决复杂工程问题能力培养的课程设计改革越发迫切和必要。只有不断改革,建立持续改进机制,才能不断优化计算机教育教学工作,为信息技术产业培养更多优秀人才,推动我国信息技术产业的蓬勃发展。

参考文献:

[1]林健.如何理解和解决复杂工程问题:基于《华盛顿协议》的界定和要求[J].高等工程教育研究,2016,(05):17-26,38.

[2]许智宏,李妍,董永峰,等.半开放式项目驱动复杂工程问题能力培养实践[J].计算机教育,2019,(02):37-40.

[3]尚凤军.面向复杂工程问题的计算机人才创新能力培养体系研究[J].计算机教育,2016,(09):70-73.

[4]黄永红,蔡晓磊,刘国海,等.电气类专业“复杂工程问题”的理解与实践[J].电气电子教学学报,2018,40(06):15-18,22.

[5]刘秀平,韩丽丽,胡新煜,等.基于工程教育专业认证的自动化专业复杂工程问题实践探索[J].中国现代教育装备,2021,(21):67-69.

第3篇

关键词:软件开发;课程设计;教学模式

在软件技术和软件行业飞速发展的今天,世界各国都面临着“软件产品开发、软件产品使用、软件产品维护”人才的巨大需求。国内也比较重视软件技术专业人才的培养,许多高校在近几年纷纷设置独立的软件学院,计算机相关的专业中也开设关于软件开发方面的课程,如C语言、C++语言、Delphi、VB、Java语言等[1]。即使每年有大批的软件专业毕业生毕业,但软件开发行业却依然存在人才匮乏的问题。所以,如何让软件课程教学贴近社会需要,提高毕业生的市场竞争力,缩短与软件开发行业差距成为了很多高校思考的问题。笔者认为,除了加强专业定位、整合相关课程外,还应该加强以岗位能力来指导软件课程的综合性课程设计环节,进而加强学生的职业能力,缩短与实际岗位差距。

1.软件开发工作岗位能力介绍[2]

由于不同类型的软件企业所设置的工作岗位与职责不尽相同,现仅列出软件开发工作岗位共同的能力要求。

(1) 具有熟练操作使用计算机和网络的能力。

(2) 具有熟练使用新型办公软件能力。

(3) 具有较强的信息检索与分析能力。

(4) 具有较强的外语文档阅读能力。

(5) 具有较强的软件工程文档编写能力。

(6) 具有较强的数据库管理和维护能力。

(7) 具有较强的软件应用、维护与测试能力。

(8) 具有较强的程序设计编码能力。

(9) 具有较强的软件分析与设计能力。

(10)从事相近专业和自主创业。

(11)具有一定的自我学习与提高能力。

(12)具有主动沟通与表达及团队协作意识。

2.目前软件开发系列课程综合性课程设计存在的不足

(1) 偏重语句的使用规则和方法,对问题本身的特性关注度不够。如项目中涉及到的算法效率问题多数任课教师易忽略;

(2) 缺乏相关的职业能力培养[3]。在课程设计中,多数教师只关注有没有完成相关功能,从而忽略了软件开发过程中必须遵守的准则,如程序的可读性、重用性、易于维护、结构规范、良好的注释等;

(3) 课程设计教学实施的过程中选择的实践题目不切合实际,学生完成项目开发后无法真正应用到实践中去。

3.基于岗位能力的软件系列课程综合性课程设计的教学方法介绍

在基于软件开发人员岗位能力的软件课程设计的教学模式中,任课教师只负责引导学生如何学习新技术、如何开展及完成各阶段分配的任务,并做出过程评价与最终评价标准。同时任课教师要制定多元化的有应用价值的真实的课题,将班内同学分成若干小组,以小组共同协作的方式开展相关课题的需要分析、计划书写、模块开发、系统后期测试与完善、系统说明书的书写及最终答辩等。

现将整个教学过程简要阐述如下:

3.1学时安排及人员分工

软件开发类的课程设计在教学计划中一般安排54学时内完成。为培养学生的团队精神和协作能力,特要求每班分成若干组,每组根据选题难度不同将3~5名同学组成一组,共同完成选题内容。

3.2教学过程

(1)作品演示

在课程开始初期一定要多选几款历届学生的优秀作品做演示,让学生了解在完成此教学环节后应该达到的程度,通过作品激发学生的学习热情,坚定学习信念。同时也要介绍几款历届失败的作品,进而提醒学生在开发作品的过程当中应该注意的一些问题,如开发之前要弄清软件的使用对象、要做好需要求分析,要知道软件要达到的功能,不能想当然。

(2)让学生了解课程设计的大体流程

在此过程中要求同学自学《软件工程》课程,再按照指导教师的统一安排,以小组协作的方式共同完成项目设计。指导教师首先讲解课程设计的实施流程与各个环节中的要求及注意事项,如图1所示。再要求以小组为单位进行选题、需求分析[4]、调研和文献资料检索、书写计划书、开发软件、软件测试、书写软件设计说明书等[5],总共历时54学时,最终以答辩形式进行验收。

(3)定题与任务完成的时间安排

在此环节,指导教师可以从自己的科研项目中拿出一个模块,或以学生比较熟悉的、感兴趣的内容当中制作不同类型的题目以供学生参考,如:剧场票务管理及智能卡开发、图书馆内读者导读系统、中小学排课管理系统、题库建设及试卷生成管理系统、个性文本编辑器、个性绘图软件开发、媒体播放器开发、个人网站开发、游戏软件、国税档案管理系统等。同时也可以允许同学自行寻找课题,但必须是有实用价值的项目。同时,在给定学生制定课题时,一定要提供一些基本信息,如表1所示。

表1 课题对应的基本信息表

(4)课程设计评价

课程设计的总体评价=过程评价[6](40%)+综合评价(60%)。

其中过程评价由自我评价[7]与指导教师评价共同组成。其中自我评价部分包括:本阶段自主学习内容、课题进行中遇到的难点、解决方法、重要功能中的算法分析、不足之处等,如表2所示;而指导教师评价主要考察的是小组成员出勤情况、是否能按时完成相应的任务要求、完成质量如何、小组团结协作能力、自主学习能力、收集资料能力与解决问题的能力,如表3所示。

表2  过程评价之自我评价表

表3  过程评价之指导教师评价表

综合评价包括最终课题完成情况,即与计划书是否相符、程序的健壮性、代码的可读性、程序的实用价值、小组答辩情况等,如表4所示。

表4  综合评价

4.基于岗位能力的软件系列课程设计教学模式应用效果

基于实际岗位能力的程序设计类课程设计教学模式在应用的过程中,还应该辅助多种教学手段,如鼓励学生参加国家级程序员等级考试、引导学生参加各种课外竞赛活动,如ACM程序设计大赛等,以发挥学生的创新与实践能力。自我校在程序设计类课程设计教学中采用了基于实际岗位能力的教学模式后极大地提高了学生的软件开发能力,缩短了与实际岗位要求的差距,目前学生开发的很多作品也都投入到实际应用当中,如中小学排课系统、在线测评软件、试题库建设与试卷自动生成系统、公寓管理系统等。

参考文献:

[1] 马雪英.以能力为导向的程序设计类课程教学体系[J].计算机教育,2011,4:74-78.

[2] 金波.高职院校程序设计课程教学策略[J].西藏教育,2011,4.

第4篇

关键词:项目开发能力;教学过程;实施方法;考核方法

中图分类号:G642 文献标识码:A

1引言

数据库技术是计算机科学技术中发展最快的领域之一,也是应用最广泛的技术之一,已成为计算机信息系统与应用系统的核心技术和重要基础。当前,计算机的计算模式已由单用户发展到主从式或主机/终端式结构、C/S结构、B/S结构,进而发展到了Web服务与网络计算时代,而数据库及其技术一直是它们的后台与基础。

当前国内软件产业发展迅速,为了增强学生的就业竞争能力,必须全面培养学生的软件项目开发能力,以适应时代的发展。学生在大学四年学习中,不仅应该掌握一定的理论与技术知识,而且应该树立管理理念,建立项目工程思维观念。

数据库课程设计是学生实践数据库理论知识,真正掌握数据库应用系统开发技能所必须的学习环节,目的在于培养学生面对大量而复杂的数据管理要求时,具备分析问题和解决问题的能力。我们于2004年完成对数据库课程设计的教学方法改革,不仅在教学手段(包括课程设计的实施过程、考核方法等)上进行了体系化和规范化,而且与“软件工程”课程结合,对两门课程的实践教学环节进行了整合。

通过两课整合的课程设计,不仅使学生在理解数据库理论的基础上,实际动手开发一个实际的应用系统,而且培养学生应有的团队协作、自主管理、主动学习、创新思维、综合运用、动手实践等能力,使课程设计真正成为学生验证理论的“实验场”,成为开发学生潜力、培养实战能力的“战场”,成为体验项目开发过程的“运动场”。

2数据库课程设计的教学方案

2.1基本内容

学生运用已学数据库理论思想和数据库设计理念,具体设计一个实用小型数据库应用系统。开发设计过程按以下顺序进行――自选课题研究方向,调查用户需求,总结归纳数据流程,分析性能,书写需求分析及总体设计报告(包括数据流图、数据字典、数据库概念模型、逻辑模型、系统功能模块),完成应用系统的开发,汇报设计成果(包括撰写设计报告、系统验收、结果汇报),在这一系列工作中树立学生项目开发管理思想,培养学生的综合素质。

2.2进度安排

为使学生充分感受数据库系统开发的全过程,安排课程设计进度如下。

2.2.1前期准备阶段

该阶段主要任务是理解数据库、数据模型和数据库系统的基本概念;掌握数据库的概念模型、数据模型及数据

库系统的设计方法;进而确立自选课程设计题目,并依据软件工程中项目需求调研方法进行系统需求调研,绘制系统数据流程,提出系统要解决的问题。该阶段成果主要包括3份报告。

(1) 系统需求分析报告:包括采用的工程开发模型,数据流图和数据字典,系统功能。

(2) 数据库信息要求报告:对数据库中要存储的信息及语义进行详细描述,对数据约束和数据之间的关联进行详细描述。

(3) 数据库的操作和应用要求报告:详细描述数据库的数据操作要求、处理方法和处理流程,画出系统功能划分的模块图。

2.2.2基本操作阶段

主要任务是掌握数据库系统的基本操作,包括SQL语言的应用以及利用DBMS的工具进行数据库定义、维护、查询及掌握数据库安全性、数据完整性和并发控制技术等基本操作,初步设计系统测试数据,并能够正确解决实际遇到的问题。该阶段的成果包括一套系统数据表、关系以及基本数据。

2.2.3技术提高阶段

该阶段要求学生不仅掌握书本上的内容,而且还需要自学一些数据库系统开发新技术和相关知识。主要任务是掌握数据库备份和恢复技术以及有关的数据转换、复制、传送和数据库系统编程技术。该阶段成果为新技术交流讨论资料。

2.2.4设计完成验收阶段

该阶段教师通过3种方式对学生设计的应用系统进行全面验收:系统运行测评、分小组成果汇报和上交课程设计报告。

2.3全程指导原则

在课程设计进行过程中教师仅从宏观上把握一系列原则,让学生自己有更大的可选范围,实践时间长,紧密结合应用,实现了在课程设计中全面培养项目开发能力的目标,体现了新课程教学理念。在方案实施中严格要求学生从理论出发,与实际项目结合,从而提高他们项目开发的综合能力。

2.4评分原则

2.4.1根据数据库系统总体结构对系统从三方面进行评测

数据库原理、数据库应用和数据库设计三部分有机地联系起来形成数据库系统的总体结构,因此对课题设计的评测也从这三方面着手,达到对数据库系统的主要内容和框架的评测。

(1) 数据库原理部分:主要评测学生在数据库的数据结构设计、数据库系统总体设计以及数据库安全保护方面完成的工作。

(2) 数据库设计部分:主要评测学生如何将现实系统的数据通过某种数据模型组织起来,并利用DBMS系统提供的功能,完成结构及其约束的建立。

(3) 数据库应用部分:主要评测现实系统业务逻辑的实现,即通过某种应用模式(C/S模式、B/S模式)和某些(个)程序设计语言、开发技术和工具,在数据库设计以及DBMS平台支持的基础上,实现现实系统的业务功能,为用户提供友好和人性化的业务操作界面。

该环节的目的是使学生对于理论课中涉及的内容和自学内容进行综合实践以达到对它们之间关系的清晰理解,实现理论与实际的紧密结合。

2.4.2严格把关和考核,确保每一名学生在课程设计中得到实实在在的锻炼

由于课程是在学生第七学期开设,并且贯穿整个学期,很多学生面临考研或其他一些毕业前的事务,为了防止有些学生对课程设计任务敷衍了事,我们对课程设计的考核方法进行了详细规划,实施过程考核,而不是结果考核。具体考核步骤主要分为以下几个方面。

(1) 开题阶段:在第1~3周进行,要求每组写一份开题报告,包括课题内容、建立的需求分析及总体设计、小组成员任务分配、具体时间分配计划等,审验合格后方可进行系统开发。

(2) 中期检查:在第8~9周开展,根据计划表检查学生开发进度,纠正问题,督促学生按计划开展课程设计。

(3) 系统验收:在第13周进行,学生演示系统,说明和解释运行效果。考查的重点:每名学生是否完成了分配的任务以及任务量的多少、完成情况等。通过该阶段以后方可进入答辩阶段。

(4) 答辩:在第14周进行,每组学生指派一名代表进行陈述,然后进入教师提问环节(可提问小组中任何一名学生,为了鼓励学生参与提问,凡是提问的学生可以获得成绩加分)。考查的重点:陈述是否清晰、回答问题是否正确。

(5) 课程设计报告:报告的编写是考查一个学生总结工作,撰写科技论文的能力。考查的重点:报告是否内容完整、充实,条理是否清楚,格式是否符合科技文章规范。

以上各个方面考查的结果,进行汇总和综合评判,最后得出评分。

3数据库课程设计的创新点

3.1整合课程

目前在我国项目管理人员奇缺,大多数项目负责人在技术上能独当一面,而项目管理方面的知识缺乏,并且普遍存在着“重技术,轻管理”的思想,因此导致项目开发效率低、花费大。我们在课程设计中结合软件工程课程中学习的项目开发管理思想,对整个课程设计任务进行全面管理与实施,树立工程概念,培养团队合作精神。主要从以下几个方面强调管理理念。

(1) 认真执行需求分析与需求管理。

(2) 合理制订时间执行计划,记录与分析时间分配效果,积累时间分配经验。

(3) 个人分工明确,团队合理协作,通过全过程管理理念的贯彻,提高学生的管理能力,培养学生团队合作进行项目开发的素质。

同时各项目小组在课程设计的各个阶段还需填写阶段性报告,包括项目开发计划、小组角色的职责、需求规格说明书、概要设计说明书、详细设计说明书、项目开发日志等。

通过全过程管理理念的贯彻,提高学生的管理能力,培养学生团队合作进行项目开发的素质。

3.2丰富选题

教师推荐部分设计题目供学生选择,学生也可以自拟题目课题。但是课题的选择要由教师把关,主要依据以下几个原则。

(1) 随着Internet和Intranet的普及,网络数据库应用需求越来越广泛,因此课题注重开发基于B/S或C/S结构的网络数据库系统,以适应时代需要。

(2) 选题要求学生尽量选择实际需求的题目,这样学生不仅可以走出“象牙塔”,通过调查走访,了解国内计算机应用发展的状况,开阔眼界,而且在开发一个真实项目中,带来求学的动力,激发自主学习的渴望以及创造力。

(3) 对于虚拟题目,要求学生切合实际需要,符合发展潮流。

3.3工具多样

市场实际可用的编程开发工具与日俱增,且不断更新,为此在课程设计中,对于学生到底选择哪种开发工具,不做过多限制,鼓励学生自主选择,使学生可以选择自己感兴趣的程序设计工具进行系统开发,一方面锻炼他们自学的能力,另一方面也让学生成为项目开发的决策者,这种“主人翁”意识使得他们变被动学习为主动学习,实践证明学生自主学习的积极性和主动性直接决定了项目开发的成与败。

实际运作中教师会随时了解开发工具的发展形势,提出指导性意见,使学生根据选题“量身订做”工具,避免所选工具“大材小用”;跟上当前发展方向,实践技术“与时俱进”。同时,要求学生以讲座形式分类介绍所用新的开发工具,讲解自己学习新开发工具之后的体会,通过这种研究性的学习方式,避免学生重复学习、盲目学习,同时打开眼界,更加广泛了解技术发展局势。

3.4彰显个性

在完成数据库应用系统基本功能的基础上,鼓励学生运用安全技术、多媒体技术和美术功底等突出系统特色,完善系统性能,培养学生综合运用知识和创新的素质。

主要在以下几方面做进一步要求。

(1) 强调系统中信息安全保护的实现,把理论课中关于“数据库安全保护”的教学内容应用到所开发的系统中,学以致用。

(2) 用户界面友好、设计合理、画面优美反映系统设计人员的审美意识,强调色彩的协调,布局的合理,操作的方便。

(3) 各组之间允许选题相同,但必须突出本组特色,使学生通过竞争,努力发挥个人特长和创新意识。

3.5理论联系实际

系统的评测按照数据库系统的总体结构进行,从而达到对数据库系统的主要内容和框架进行评测,使学生对于理论课中涉及的内容和自学内容进行综合实践,以达到对它们之间关系的清晰理解,实现了理论与实际的紧密结合。

3.6过程评测

课程设计分阶段,每阶段设有检查与评估,既做到及时指导,又确保督促每一名学生在课程设计中得到实实在在的锻炼。考核依据环节的特点进行不同形式的考评,不仅培养学生的语言表达能力、编写技术文档、科技论文的能力,而且可以发现有组织能力的人才。

4实践效果

依据汇总的五轮评测统计表格可以看到,学生在课程设计中,学习积极性高涨,开发出来的系统形式多样,有单机版、C/S或B/S结构的网络版,甚至C/S和B/S结合的网络版,使用的数据库管理系统从小型DBMS,如VFP、ACCESS到大型DBMS,如SQL Server、Oracle等,前台开发工具从传统的Delphi、VB到先进的.Net、Java等,学生们普遍乐于挑选新工具、新技术,积极检索学习资料,参与网上BBS技术论坛,相互讨论,全面体验网络学习环境的乐趣。各组学生除了完成系统应具备的功能外,都在努力突出系统性能特色,完善系统功能,发挥本组同学的特长。各组开发的系统基本符合课程设计总目标的要求,并有几个系统成为他们工作后继续研究的方向。

通过数据库课程设计,表现出大部分学生具备参与一个项目开发的基本能力,并使他们动手实践、自主学习、积极创新等科学素质得到很好的培养,反映出课程设计大大提高了学生综合应用所学知识的素质,说明我们培养的学生具备终生学习的能力,能够适应社会发展的需要。

5小结

学习是人生的一个环节,就业是大学学习后的现实目标。面对严峻的就业形势,培养学生的实际动手人力,提升他们的竞争能力,是教师的责任。在课程教学过程中不断探索新方法,开展课程教学过程的改革,是教师的必须任务。这里所做的数据库课程设计改革,意在与大家共同探讨如何帮助学生摆脱“没有工作经验”难于就业的尴尬局面。

参考文献:

[1] 钱雪忠. 数据库原理及技术课程设计[M].北京:清华大学出版社,2009.

[2] 苗雪兰. 数据库系统原理及应用教程[M]. 北京:机械工业出版社,2004.

[3] (美)Stephen R.Schach.面向对象软件工程[M]. 黄林鹏,等译.北京:机械工业出版社,2008.

[4] 张海藩. 软件工程[M]. 北京:人民邮电出版社,2006.

The Training for Students’ Project Developing Ability in Database Course Design

WANG Yan-hong, ZHANG Xiao-li, JIANG Xiang-gang

(Department of Computer Science and Technology, Beijing Electronic Science and Technology Institute, Beijing 100070, China)

第5篇

关键词:数据库;课程设计;教学方法

中图分类号:G434

文献标志码:A

文章编号:1002-0845(2007)05-0106-02

一、引言

随着信息社会的到来,既掌握专业技能又具有计算机应用能力的人越来越来受到欢迎。为了适应社会的发展,必须培养既熟悉专业又能把计算机技术同各领域的专业需要紧密结合的复合型人才。数据库技术成为高校各学科专业的必修或选修课程。数据库课程设计一般是大学三年级学生在学完计算机应用基础、计算机编程语言、办公自动化软件基础、数据库原理与应用等课程后进行的集中实践环节,主要内容是通过社会调查,选择一个实际课题,完成数据库应用系统设计工作,课程结束后提交应用软件系统和课程设计报告。通过课程设计,可以使学生较全面地理解、掌握和综合运用所学知识,培养学生调查研究,查阅技术文献、资料以及编写技术文献的能力。非计算机专业学生对于计算机类的课程通常有一定的畏惧感,尤其对计算机语言、编程等,觉得难以驾驭和掌握。如何让学生通过数据库课程设计,使他们的各方面能力得到培养和锻炼,一直是值得思考的课题。本文结合教学实践,就教学内容、教学手段、考核方式、课程管理等方面进行初步探索。

二、课程设计的目标、内容及要求

教师应了解学生以往所学过的计算机相关课程,注意课程的衔接,分析非计算机专业学生已经掌握的知识和知识的体系结构,明确数据库课程设计的教学目标、内容及课程设计要求,对需要加强或充实的内容要重点讲解和补充。数据库设计是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,使之能够有效地存储数据,满足各种用户的应用要求,包括数据库的结构设计(数据静态模型的设计)和数据库的行为设计(应用软件等的设计)。学生应按照数据库结构设计的需求分析、概念结构设计、逻辑结构设计、物理结构设计、数据库实施、数据库运行和维护这六个阶段,分阶段分步骤进行,完成每一个阶段的任务。根据软件工程的方法和理论进行应用程序的设计,熟练运用相关语言编制应用系统的界面,实现开发工具与数据查询语言的无缝连接,建立数据库应用系统。要求学生要提交课程设计报告、所开发的软件系统和程序清单。课程设计报告包括各阶段的设计内容和对所开发的应用系统的评价,以及课程设计的体会与建议。

为了发挥学生的主动性,教师授课的重点应放在系统化的开发步骤和关键性问题的求解上,首先要介绍设计思想、方法和程序设计的思想和方法。课程设计过程中教师要指导学生查资料,如数据库原理及应用,数据库系统,软件工程,管理信息系统等方面的书籍,同时要指导学生善用软件帮助系统,培养学生学会质疑、自学和调查研究解决问题的能力。针对在校学生接触实际比较少,没有实际开发软件和工作经验的特点,应精选有代表性的案例,从问题的提出、方案的设计与实施,到最终问题的解决,给学生全面了解解决问题的全过程。然后,由学生当主角,让学生自己解决问题,锻炼他们综合运用知识的能力。

三、课程设计的选题

选题是整个课程设计的前提和关键。课程设计题目选择的难易程度、范围的大小和是否能激发学生的学习热情,直接影响到这一实践教学环节的效果。一个好的题目应该符合以下原则:首先,要符合教学要求,使学生通过课程设计进一步巩固所学的专业知识,培养学生分析问题、解决问题的能力;其次,一个好的题目应该和实践紧密联系。理论来自于实践,又服务于实践。要贴近学生学习和生活实际,先选择容易开发的实用的数据库应用系统,对学生以后从事相关工作有帮助。脱离实践的题目往往激发不出学生的学习热情,达不到预期的目标。

首先,将学生分成若干个小组。分组的依据为:学生的学习成绩、知识结构、学习能力、性格特点、男女搭配等,遵循互补的原则,成绩好的与成绩差的搭配,性格内向的与外向的搭配等。每组人员为5~6名,每组设组长,全面负责小组的学习讨论和任务安排。在组长的指挥下,对成员进行分工,善于口头表达的负责联系工作和调查研究,计算机操作能力强的负责代码的编写,程序设计能力强的负责整体规划、程序调试和连编,写作能力强的负责技术文档的书写等,成员努力的成果与个体成员共同分享。教师只需提醒学生合理分配工作时间,注意小组成员之间的沟通,帮助把握进度。实践表明:在互相讨论又各自有所负责的学习氛围中,学生之间可以相互学习、取长补短,对知识的掌握与巩固有很大的帮助。

其次,各个小组通过讨论、观察、思考、查资料等方式,结合各个学生的特长,参考教师指定的范围选定课程设计题目,然后与教师进行交流。教师应对学生选定的题目进行批阅,在可行性、工作量大小、小组成员及题目意义等方面进行把关评估,及时将意见反馈给学生,学生再针对教师的意见进行调整,最终确定课程设计的选题。结合教学实践可以选择如下题目:客房管理系统、学籍管理系统、学校工资管理系统、科研项目管理系统、高校设备管理系统、档案管理系统、图书资料管理系统、教学成绩管理系统、后勤管理系统、系办管理系统、居委会管理系统、职工人事管理系统、宿舍管理系统等。

四、方案设计和方案实施

选定题目后,即可着手完成数据库课程设计的各个阶段的任务。首先,各小组应对所选题目进行分析,通过查阅资料、小组讨论、走访专家或社会调查等途径,进行调查研究和可行性分析。通过调查组织机构情况、业务活动情况、数据情况、用户要求,确定新系统的边界,完成系统需求分析。然后,采用实体联系模型确定应用程序中的实体和联系,确定实体的属性和实体之间联系的类型,得到局部E-R模型,异对局部E―R模型集成进行输入/输出设计和软件结构设计等,完成概念结构设计。接下来,实现E-R模型向关系模型的转化,利用关系规范化理论进行关系模式的优化,设计用户视图,同时进行界面设计,模块设计等,完成逻辑结构设计阶段的任务。再往下,进行物理设计和软件实施,最后是应用系统的集成与。小组成员在组长的领导下,可以分头完成各自负责的任务,小组成员要分工负责和团结协作。教师在指导课程设计过程中,可以设置几个检查点,制定阶段性任务。如根据课程内容、教学目的、系统规模、工作量等因素,审查各小组递交的初始设计方案,在设计方案的实现方法、表现形式等方面做出调整建议,以避免在方案实施过程中出现不必要的反复。

在课程设计过程中,提倡通过模仿来学习,只有多模仿才能掌握方法,才有可能创新。学生根据初始方案,通过各种途径查找与自己的题目类似的范例,通过模仿范例来实现自己的程序。有的学生在范例中看到自己感兴趣的内容,通过适当修改,将其应用到自己的程序中,使程序更合理,内容更丰富。学生在掌握了基本方法和解决问题的途径后,对自己感兴趣的内容,自然愿意努力去寻找答案。学生在方案设计、修改、实施的过程中不断发现问题与解决问题,逐步产生了学习的乐趣。为了避免在分组的实验、设计中有的同学不积极参与的现象,可以采用随机抽查的办法来考核小组的成绩,促使小组内部互相监督、互相帮助、互相学习,有利于培养学生学习的积极性,提高教学效果。

数据库课程设计中实验是重要的组成部分,教师要详细布置实验,制订上机纪律,并且督促学生严格按照课程设计各阶段工作要求操作。实验可以参考以下内容安排:(1)建立数据库。包括创建数据库,创建表,建立字段和记录的有效性约束,建立索引,创建表间关系和触发器设计等。(2)使用表单操纵数据库。包括设计表单,创建表单,为表单添加对象,定义表单及其对象的属性、事件和方法。(3)设计用户视图。包括创建不同的用户视图,实现用视图来控制更新数据库中的数据的目的。(4)设计报表。包括创建报表,打印和预览报表,注意各个带区的使用。(5)设计菜单系统。包括规划菜单系统,创建菜单及其子菜单,为菜单指定任务,调试和使用菜单系统。(6)项目集成。包括使用项目管理器集成数据库、表单、视图、报表等数据库对象,设置主控程序,编译和发行软件等。

五、课程设计的考核与评定

学生在课程设计结束后,不仅要提交软件系统,还要提交课程设计报告,阐述其设计思路、运用的知识及自己的体会。课程设计的成绩由以下几部分组成:考勤占10分,平时抽查和提问题情况占10分,课程设计报告占30分,软件系统设计占30分,演示与答辩占20分。课程设计报告主要看各个部分的完备性,分析的透彻性和独到的见解。在评分方式上采取自评和互评的方式,首先由各小组依据教师给出的评价标准给本小组打分,然后由每组各选一名代表给大家介绍系统开发的情况并演示系统,同时回答学生和教师提出的问题。所有小组代表陈述完后,由各组分组讨论,对其它组开发的系统进行评价和评分。最后由教师根据其自评、互评分数结合实际情况(包括软件开发水平、演示能力、回答问题能力、软件开发文档等)适当总结并公布成绩。

为有效避免学生在课程设计过程中的抄袭现象,教师可以对学生进行有针对性地提问,学生当场解答;教师也可以采取删除软件中一些关键性语句由学生当场调试的方法检查学生的学习效果。通过评价和自我评价,学生的学习主体意识得到充分体现和加强,激发了学生发现、分析和解决实际问题的学习积极性,不仅提高了学生运用数据库理论开发出具有实际应用价值的数据库应用系统的能力,而且学生思考和解决实际问题的能力也有了较大提高。

六、结束语

课程设计是一种学习、实践、探索和创新相结合的综合教学,是高等学校培养人才的重要教育教学环节。通过近年来课程设计的指导实践.笔者深切地体会到,正确合适的选题、恰到好处的指导、学生积极性的调动、科学的评价手段及课程设计规范化管理等对提高课程设计质量是至关重要的。实践证明,课程设计大大激发了学生的学习兴趣,促使学生将所学的课程知识运用到实践中去,使学生对所学的知识融会贯通,巩固加深。课程设计培养了学生的团队意识和协作精神,增强了学生的创新意识,提高了学生的创新能力。

参考文献:

[1]靳学辉.数据库原理与应用[M].北京:电子工业出版社,2004.

第6篇

关键词:课程建设;课程设计;计算机软件

作者简介:张艳(1976-),女,河南南阳人,上海理工大学光电信息与计算机工程学院,讲师。(上海 200093)

中图分类号:G642.0 文献标识码:A 文章编号:1007-0079(2013)05-0096-01

计算机是一门技术性、工程性和应用性很强的学科,教育部高等学校计算机科学与技术教学指导委员会的发展战略研究报告中也指出:计算机专业的人才应该被分为科学型、工程型、应用型三类,而绝大多数应该是工程型和应用型的。许多高校注重学生专业能力的培养,纷纷开设实践类课程以满足信息社会对实用型人才的需求。因此,如何建设实践类课程无疑是摆在每位一线专业教师面前的重要课题。本文以“应用软件课程设计”课程的建设为主要探讨对象,介绍了该课程的设置意义、教学方法和实施细则,希望能对计算机专业实践类课程的建设和教学以及学生的就业有所帮助。

一、课程设置的重要意义

在大学里,设置一门课程,不能只关注这门课程所含的内容,更要考虑本科教育培养学生基本专业能力、可持续发展能力等这些本质性的问题。计算机学科问题求解的基本思路是“问题形式化描述计算机化”,以抽象、理论、设计为其学科形态。按照计算机科学与技术专业本科生的培养目标,到学生毕业时应具备计算思维;算法设计与分析;程序设计与实现系统的认知、分析、开发与应用等四大基本能力。

“应用软件课程设计”课程面向大三的学生开设,在计算机科学与技术专业四年本科教学中,是以前期的“数据结构”、“计算方法”、“离散数学”、“软件系统”(包括编译原理,操作系统)、“软件工程”、“程序设计”、“数据库原理”以及“计算机网络与通信”等课程为基础的一门软件开发技术综合应用的专业课程。该课程让学生综合运用专业知识,通过动手实践,以团队协作的方式根据软件工程的原理选择难度适中的课题,完成网络环境下基于B/S架构的综合应用软件的系统设计与实现任务。课程设置的目的就是通过本课程的系统学习与实训,达到全面提升学生综合应用软件的实际开发能力和团队合作能力,以解决传统教学中理论学习与工程应用相脱节、单门课程孤立地学习与缺乏正确运用学科体系的理念来指导学生实现综合技术全面应用的突出问题,以期有效地实现计算机科学与技术专业本科学生的培养目标。

课程开设近10年的实践证明,学生综合运用计算机专业基础知识,科学设计、开发软件,合理进行软件开发的能力得到全方位的、实战型的锻炼,不仅实现了专业理论知识与实践有效地相互结合,而且很好地锻炼了学生的动手实践能力和团队协作能力,为日后的择业起到很好的铺垫作用。

二、“应用软件课程设计”的教学内容

“应用软件课程设计”主要以曹渠江教授编写的《综合运用软件设计》一书为教材,辅助以课程网站和网络上的各类学习资源,要求学生利用软件工程、面向对象程序设计的思想,根据课程项目任务和功能完成课题的需求分析;制定课程项目详细的时间进度规范;利用面向对象程序设计、计算机网络、数据库原理、多媒体技术等相关知识来进行数据库设计与开发;熟悉和掌握网络应用的开发环境,分析课题中技术难点并进行技术攻关;根据制定的时间进度计划和需求分析,进行网络环境下基于B/S架构的系统软件模块的编写、开发与整合;对整个项目所有模块进行代码集成测试、软件产品完善;最后提交课程设计个人报告、课程设计小组报告以及完整程序。整个课程总学时为64学时,主要以机房实践为主,通过演示软件、答辩的形式公开、公平地评定成绩。

三、应用软件课程设计的实施方法

1.本课程的实施原则

实践类课程不同于其他计算机专业课程,主要以实践为主,这就比较难控制进度和公正地评价学习成绩,因此笔者制定了如下实施原则:

由教师提供网上新闻管理系统、网上宠物商店、网上公文流转系统、药品管理系统、继续教育管理系统、网上用户投诉系统、在线同学录、企业仓库管理系统、班级相册管理系统、在线学籍管理系统、网上聊天室、客户关系管理系统等难度适中的十几个项目,对于每个项目都讲明设计要求和要求实现的基本功能;按照自愿原则,四到六个同学组成一个项目小组,推选出一位组长。对于没被组合的同学,由教师统一安排,每组配备一位有项目开发与项目管理经验的研究生为指导教师,负责学生的上机辅导、课外答疑、技术咨询与指导;每组由组长填报所有成员的个人信息,以便师生之间紧密联系;每组组长代表小组全体成员与指导教师商定每周一次的辅导、提问与答疑的时间,并互通联络信息;教师每周安排两次上机,每次4个学时。最初的3周(12学时)进行理论授课,主要讲课程基本要求和安排以及软件工程、软件开发工具和方法的基本知识;设立课程公共电子邮箱,上传所有课程资料、进度安排和学生要提交的各个阶段的文档模板,每位学生必须根据给定的工作模板与课程要求,在不同时间节点完成个人与小组的初期、中期、末期三个时期的阶段报告和最终的课程设计报告;最后进行大组公开演示和答辩,全体指导教师根据答辩情况、提交的报告质量、平时上机表现与平时的检查情况集体打分,综合评定出每位学生的最终成绩。

2.本课程的教学安排

整个课程在实际教学过程中,按照16周的总体时间共分为以下5个阶段。

(1)课程设计第一阶段(3周):认真学习教材和阅读课题任务说明书,根据软件工程的理论和选定项目任务完成课题的需求分析;制定本课题的实施方案,完成个人角色任务分配等各类文档和开发规范;确定课题技术难点及其攻关措施;熟悉和掌握.NET的开发环境、后台数据库开发工具以及与课题相关的开发工具。在本阶段结束时,向指导教师提交课程设计个人及小组的初期报告。

(2)课程设计第二阶段(4周):根据制定的时间进度计划和需求分析,进行系统数据库的实现及应用软件的初步模块编写与开发。在本阶段结束时,向指导教师提交课程设计个人与小组的中期报告以及个人阶段性开发的程序源码。

(3)课程设计第三阶段(4周):本阶段是项目开发的实质性阶段,对整个项目所有模块进行开发并进行代码集成测试、完善整个软件产品。在本阶段结束时,向指导教师提交课程设计末期的个人和小组的报告。

(4)课程设计第四阶段(3周):完成全部代码的开发工作,检查并汇总本课题小组成果,课题小组完成项目开发总结报告,个人完成各自的课程设计个人报告。在本阶段结束时,向指导教师提交课程设计个人与小组的报告以及小组的完整的、可供运行的代码文档。

(5)最后是课程设计综合评价阶段(2周):对本课题设计项目综合评价,最后进行大组公开演示和答辩,检查程序运行效果;全体指导教师根据答辩情况、提交的报告质量与平时的上机情况集体打分,综合评定出每位学生的最终成绩,力求公平、公正。

另外,在课程结束后会召开师生座谈会,集中讲评、总结课程的教学、学习情况,征求学生对课程和教学方面的建议和意见,同时给学生指出专业学习的努力方向,学生给教师提出今后课程需改进的地方,使教与学相互促进从而不断完善该课程。

四、结论

“应用软件课程设计”在上海理工大学已经开设10年,是上海理工大学精品课程与上海市教委重点课程建设项目,它很好地体现了计算机专业课程的系统性、完整性、科学性和原理性,有效锻炼了学生的动手实践、软件开发和团队协作能力,对提高学生的专业能力和专业素质起到了关键作用。任课教师在教学实践中付出了很大的努力,不断完善课程的教学模式和评价手段,积累了大量经验,该课程多次受到学生的好评,很多已就业的学生反馈的信息表明:该课程对学生专业素养的培养和从学校到职场的衔接起到了很好的作用,为计算机专业的实践教学探索出一条切实可行的道路。

参考文献:

第7篇

关键词:JSP实训课程;实训教学;教学改革

1问题的提出

近年来,我们开展课程设计的教学实践证明:在二级学院里,相当数量的学生反映JSP语言程序设计课程设计动手实践比较困难,同时学生在课程设计中缺少项目的实践经验,缺少团队配合,很难独立开发一个项目;学生的动手能力和公司的实际要求有一定差距,缺乏文档先行的概念;在学校所学知识与公司实际开发脱轨,对软件设计在企业中的最新运作模式不是很清楚。这直接影响了教师在后继软件课程的理论教学和实践教学。

如何改革JSP语言程序设计课程设计教学实训方式,如何紧跟软件企业的运作模式,并且将这样的实际开发模式移植到课程实训的教学中,成为当前我系课程改革中最为急迫的任务。我系于2005年开始进行教学改革方面的研究,从二级学院生源的实际情况和Web程序设计基础课程教育发展的趋势出发,及时调整了教学计划,选择了JSP语言程序设计课程作为我系计算机专业课程改革的突破口。依据多年的实践教学经验,2008年我系对JSP课程设计教学改革进行了更深入的探究,推出一种新的实训结构和实训模式,将企业中软件开发项目的真实组织结构还原于课堂,让学生了解企业最新的软件开发模型,软件开发过程被很好地应用于课堂教学。

2JSP语言实训课程的教改模式

2.1教改目标

JSP语言程序设计实训课程教学改革涉及教学计划、教材建设、教学管理、教学实践环节以及思想教育等诸多因素。JSP语言程序设计实训课程教改目标是:通过多方位、综合性的课程建设,加强基础,强化应用能力,全面提高学生业务和思想素质。通过项目驱动的方式,使学生掌握网站设计的基本思想与方法,能够和同学合作编写中型网站程序,掌握一般网站开发的基本过程,学会撰写一般软件设计中需要的文档,为社会培养真正的应用型技术人才[1]。

2.2教改措施

课程教学改革实施的过程是实现教改目标的具体措施。从2004级开始,我们对JSP语言程序设计的实训进行了新的探讨。

2.2.1合理调整实训的组织方式

为了在一定程度上紧贴软件行业的发展,且让学生学有所得,我系在推行课程设计体系时采取的是一人一题制,这样可以使学生之间互不参考,独立地完成课程设计。但这种方式也存在很多问题,例如题目数量很多,题目难度不统一,学生在开发中遇到的问题不一致,完全依靠老师的个人动手能力来进行课程设计的指导,不利于规模化培养,也不利于培养学生的团队合作能力。

因此,在JSP的课程实训中,我们使用一种新的实训结构和实训模式,即将企业中软件开发项目的真实组织结构还原于课堂,让学生了解企业最新的软件开发模型,将软件开发过程应用于课堂教学[2]。

课程设计由一人一题改革为12人一组,一个行政班级分为3~4组,各组题名都完全一样,各组按照自己的方式组织开发团队,团队合作完成开发[3]。整个团队由6种角色组成,分别为产品管理(Product Management)、项目管理(Program Management)、开发人员(Development)、测试人员(Test)、用户教育人员(User Education)、管理(Release Management),如图1所示。

每个团队需要一名项目经理、一名测试经理、一名产品经理、一名程序经理(或称开发经理)、开发人员若干名、测试人员若干名、用户界面设计人员若干名。其中项目经理和测试经理需要专人承担,程序经理可以由开发人员兼任,各种角色的目标和责任如表1所示。

整个团队的一个主要目标就是在项目的约束条件下完成项目。项目的约束条件包括预算和进度等。为了实现这个目标,项目管理负责并推动进度表、功能集和预算资金。必须保证能够在正确的时间正确的项目或产品,保证正确理解了项目投资方的期望,并自始至终贯穿于项目执行过程中。产品管理的目标就是满足客户需求。首先必须认清和理解客户。需要清晰地区别和分析所有的需求,能规范说明详细描述了整个团队将要提供给客户的交付物。开发人员必须按照客户需求和功能规范说明来构建整个解决方案。同时,开发人员还需要为整个团队提供技术方面的咨询,这样在设计和技术选择时可以尽量减少开发风险。开发人员提供较低层次的功能设计,并预估完成设计所需的时间。所有的软件产品在时都存在缺陷,测试人员在前必须清楚地认识和鉴别出这些问题,可以以问题的形式给出解决方法,或者是给出如何绕开该问题的文档记录。

教师在项目开发前期扮演客户的角色,针对学生要开发的项目模拟企业客户回答学生前期的调研问题,对待开发的项目提出功能要求和界面设计参考。前期主要由学生选出的产品经理对项目进行调研,项目经理负责人员的分配,开发经理带领开发人员和测试人员进行知识储备,对可能用到的知识进行深入的学习和准备,对产品经理获得的调研信息进行教工,初步确定项目的需求,开始项目的概要设计,确定系统的功能和用户,进行数据库的设计和规范化。

2.2.2提交满足企业要求的开发文档

高校现有的实训模式中大多强调学生是否完成课程设计,不太注重文档的撰写,而文档的撰写是企业开发中及其重要的工作技能[4]。课程设计教学改革中将要求学生递交满足企业要求的开发文档,提高学生的动手能力,提高学生求职的基本功。

课程设计中将要求每组学生在项目开发的不同阶段提交软件概要说明书、功能说明书、详细说明书、用例图、类图等20多种文档,基本上包含了软件企业进行软件设计所需的全部文档。文档的撰写由学生自主分工,在项目进行的不同时间段由指导教师检查相应的文档,每一阶段的文档完全符合企业规范才允许进行下一阶段的开发。2.2.3合理调整实训流程

以前课程设计的流程是简单地教师发题目,学生按照题目进行程序设计;合理调整后,流程变更为以下7个步骤:

1) 文档阅读,需求理解;

2) 技术储备,角色分工;

3) 计划与规范;

4) 设计;

5) 开发与测试;

6)Bug追踪与修复;

7) 产品。

在7个环节中,很多阶段有了量化的标准,同时每个项目组都是同一道题目,相互的比较和参照性更强,如图2、图3所示。

在构思阶段,程序管理团队会确定满足项目需求和项目目标的任务和交付成果。这个阶段最后会达到一个远景/范围认可(vision/scope approved)里程碑。这个里程碑表明客户和团队对于项目的目的和方向已经达成共识。

在计划阶段,团队决定要开发什么,并计划如何创建解决方案。在本阶段,团队准备功能规格说明书、创建解决方案的设计、准备工作计划、估计成本以及各种交付成果的日程表。

在开发阶段,项目团队将创建解决方案。该过程包括编写实现解决方案的代码,并为这些代码编制文档。除了开发代码之外,团队还开发解决方案使用的基础结构。

在稳定阶段,团队执行解决方案的集成,装载以及Beta测试。另外,还测试解决方案的部署场景。团队着重于确定问题,区分问题优先级并解决问题,从而使得解决方案能够为做好准备。同时,在本阶段中解决方案的状态也从完成了功能规格说明书中定义的所有功能的状态,推进到了所定义的质量等级已经实现的状态。另外,解决方案也做好了向商业机构进行部署的准备。

在部署阶段,团队部署解决方案技术及站点组件、稳定部署、将项目转入运营和支持,并得到最终客户对项目的认可。在部署完成之后,团队进行项目评审和客户满意度调查。部署阶段将在达到部署完成里程碑后结束。

随着项目开发不断深入到各个阶段,开发过程的每次迭代都会使解决方案更接近于它的最终版本,而在一个具体的过程中迭代则会不断地进行,直到实现该阶段的目标。另外,迭代允许项目以更详细的步骤进行开发,从而使未来的迭代过程可以根据早期步骤的成功或失败来进行,如图4所示。

在开始课程设计的动员会上我们要求学生不再把自己看作学生,而把自己作为企业的真正一员,每天按企业上班的时间表执行严格的考勤制度[5]。老师不再针对每个学生,每天晚上集中各个项目经理开会,了解各项目小组的开发进度,汇总各小组遇到的技术难点集中讲解,督促项目经理注意开发进度。

2.2.4合理的激励制度

课程设计由以前单纯的老师管理学生,变更成老师管理项目经理,项目经理管理学生,学生之间进行交流,协作完成课程设计[6]。每个小组项目完成之后所有学生参加项目推广大会,由各小组的产品经理对本小组的作品进行介绍,然后由所有指导教师作为评委根据每个项目文档和代码的规范程度给出一个分数,学生评委给出一个分数,按不同的权值计算出每个小组项目的最终得分,由项目经理按小组成员的贡献程度给各组员不同的分数,从而解决了有学生出工不出力、混大锅饭的现象。

同时我们将在课程设计中评选出“课程实训优秀个人”,以提高学生的积极能动性。我们将管理的部分权利下放,既可以提高学生的管理能力和团队协作能力,又可以更多地专注于学生分析问题和解决问题能力的提高。

2.3预期教学效果

随着课程改革的开展。我们坚信经过JSP语言程序设计课程实训的学生基本能够自主编写一般Web网站的程序,基本掌握企业软件开发的一般方法,上机操作的能力大大提高,同时具有一定的文档撰写能力。

在课程改革的规划、准备和实施的过程中,我们深切地感到学生通过学习成绩的不断提高,学习热情和主动性也在不断加强,能力的提高使学生对未来充满信心。我们将进一步开拓思路、深化改革、不断创新,争取将JSP语言程序设计实训课程建设成为我院的示范性实训课程。

3结语

Web技术实训帮助学生建立了企业应用的全局观,了解了一个完整的企业应用场景,并且描述该知识技能所代表的职位在整个场景中的位置以及企业中其他相关职位的作用。这种实训完全按照企业实际做法展开实训,使得学生全面体验到企业应用的开发技术,通过Web应用项目的开发,巩固了学生的数据库设计知识,以简单、易用的实训模型要求学生提供符合企业规范的文档和代码,在给学生大量参考资料的同时对项目开发进行详实的考核,提高了学生规范化开发经验和团队开发体验。本实训模式经受了检验,取得了较好的教学效果,培养了学生软件开发的动手能力,解决了学生毕业后走上社会就业的“最后一公里”问题。

参考文献:

[1] 朱敏. 多元智能理论视野下的课程设计研究[J]. 华东师范大学学报,2003(6):54.

[2] 陈振华. 实践教育学的探索[J]. 湖南师范大学教育科学学报,2006(4):84.

[3] 微软公司. 基于.NET的需求分析和解决方案设计[M]. 北京:高等教育出版社,2007(8):1-45.

[4] 刘少华. 课程设计教学改革的思考[J]. 科技信息:科学教研,2007(18):34.

第8篇

关键词: Java;课程设计;项目驱动;教学方法

中图分类号:TP31 文献标识码:A 文章编号:1006-4311(2012)18-0216-02

0 引言

程序设计类课程是高校计算机专业学生必学的课程之一,是专业知识的基础与重点,也是一类理论与实践开展同步教学的课程。Java程序设计作为一门强调实践的课程,在其教学模式上应注意理论和实践的双重把握。与之相关的课程设计是这门课的一个重要实践性教学环节,是课堂理论教学的延伸与扩展。通过课程设计培养学生面向对象建模及编程的能力,加深面向对象程序设计的思想,激发学生学习的积极性和主动性,培养学生的创新能力、综合分析问题和解决问题的能力。在实际教学过程中尤其要注重学生实际应用能力的培养,以适应当今的社会需求,而实践动手能力正是通过该门课程的课程设计教学环节锻炼和体现的,也是最接近企业需求的重要内容之一,通过课程设计使学生在创新性、自主性、探索性和协作性等方面得到综合培养,以适应新形势下人才培养所应具备的基本要求。

1 Java语言课程设计教学现状

目前我们的课程设计教学环节存在严重不足,课程设计成为理论教学的附属,教学模式单一、教学内容多是单一的理论型、基础型、验证型题目,只是要求学生照搬照抄已有的知识简单地进行理论知识的验证,题目相对陈旧,而应用型、综合设计型的题目比较匮乏,且与工程实践相脱离,缺乏开展创新性和创造性活动的平台,这样以来使学生的学习主动性和积极性受到了严重制约,学生的思维能力、分析能力、实践能力及创新能力无法得到充分的发挥与发展,经过课程设计以后学生所掌握的的仍然是理论课上所讲授的一些基本语法和理论知识,而对整个项目的开发过程却依然很陌生,工程性的知识十分欠缺,不具备开发项目的必需素质与能力,也就无法很好地适应以后工作的需要。

本文所研究的主题是在Java的课程设计中采用项目驱动的教学形式来改善其教学效果,目的旨在培养出具有较强动手能力的,适应社会需求的学生。通过项目的开发来带动学生在深入学习语言基础结构的同时,培养学生的项目开发能力,同时在项目开发的过程中给学生制造更多发现问题并解决问题的机会,对学生的自主学习起到了很好的促进作用。另外,以团队的形式进行项目开发,还可以加强学生之间的团队协作精神。

2 项目教学法及其特点

项目教学法是由美国教育家凯兹博士和加拿大教育家查德博士共同创建的一种以学生为主的活动教学法[1],它以项目驱动教学,学生在项目教学中以探索性学习为基础。项目教学法的理论依据是建构主义的学习理论。建构主义认为学生学习的动力来自待解决的问题,教学关注的重点在于使学习者达到一定的程度,教师的职责在于使学习者置身于探索知识之中,为他们提供适当的“情境”,然后使学生在此情境之下,通过教师的指导、同学的讨论来解决问题,即协助和会话,在完成任务的同时,达到最终的教学目的即实现意义建构[2]。将项目驱动教学法系统地应用于Java的课程设计教学过程中,对培养学生的创新能力、协作能力以及应用实践能力起到了积极地推动作用。

项目教学法具有以下特点:

2.1 系统性:项目教学法注重从整体上把握系统的构建和设计,不仅要掌握Java语言特定的语法及使用规则,而且还要融合软件工程的思想,使学生具有独立完成项目的设计与开发的能力。

2.2 协作性:因为是以团队的形式由若干个学生协作完成一个项目,所以有利于加强学生之间的沟通与交流。虽然学生之间的能力有差异,但是通过彼此之间的交流、沟通、甚至争议,使他们可以交流心得和体会,共享学习资源,互相帮助,对所学知识能够加深印象,共同提高。小组成员也可以适时分工,相互协作并及时交流信息,既可以节约时间,也能够及时获得学习资料,提高学习效率[3]。

2.3 模拟性:项目方式的教学实际上就是对未来企业中项目开发的模拟,在课程设计教学中运用项目驱动方式,能让学生尽早的接触并感受到真实工程的开发过程,这对于掌握计算机语言知识以及提高自身的独立项目开发能力具有深远的影响。

2.4 多角度:由于渗透了软件工程的思维,因而项目教学法在实施的过程中对学生进行了多角度的培训,从项目可行性与需求分析到维护等各方面,加深了学生在计算机程序设计中的软件工程意识。

2.5 周期长:项目方式的课程设计在系统的设计这一环节可能会占用较多课时,因而其开发周期比较长。这样使得教学过程更全面,也增强了学生的工程性编程理念,这恰恰是课程设计最终所要达到的目标。

3 项目驱动教学法在课程设计教学中的实施

Java语言课程设计是将所学知识用于实践的过程,在课程设计中应用项目驱动教学法,使学生始终处于主体地位,能够充分发挥学生的智慧与创造力,提高学生解决实际问题的能力和创新意识。

3.1 实施的原则 项目是项目驱动教学模式得以实施的基础[4]。在教学开始前要选择好合适的项目。总体上应当注重遵循以下几个原则。

3.1.1 项目选择适当原则 项目选择的难易程度关系到该教学法实施的成败。合适的项目应该具备一定的综合性,不仅能使学生把已掌握的知识和将要学习的知识有机的融合,还包含了课程主要知识点。同时该项目还应利于和其他相关学科的知识相结合,以提高学生以一贯十的综合应用能力。此外,项目的难易程度适中,模块化程度要高。这样的项目有利于他们团队分工明确。选择项目时还应注意其趣味性和现实性,这样的项目对学生具有较强的吸引力,激发他们的学习热情,对系统开发能认真自觉对待,利于项目更快更好的完成。

3.1.2 注重多层次教学原则 教学中应注意学生的个体差异,结合学生的实际情况,从个人与整体两个方面考虑,因材施教,进行多层次项目设计,针对不同学生提出适当的目标要求。如第一个层次遵循的是教学大纲的基本内容,那么第二个层次可以在大纲的基础上有所扩充,第三个层次则要求学生具有较高的项目开发的综合能力。这样有利于学生整体水平的提高。

3.1.3 适时归纳原则 项目驱动教学法的学习主体是学生,而学生的学习能力是有差异的,对知识的掌握程度有所不同,容易造成学生两极分化和知识点掌握的不全面。教师应该在教学过程适当适时的加以总结和交流,对于学习有疏漏的学生或者学习能力差的学生来说,通过教师的总结弥补其疏漏的知识,跟上教学进度,达到教学目标,促进同步发展。另外,教师要及时对学生的学习效果进行评价,对学生的学习效果提供针对性的反馈信息,这样可以使学生清楚自身对知识的掌握情况,采用更合适的学习方法,同时教师也可以根据实际的教学效果为下一步的教学做出合理安排。

3.2 实施过程

3.2.1 设置开发团队 团队组织是否得力是项目驱动教学法实施成败的关键[5]。每个团队由5到6人组成,可以根据每个学生的特长分别担当项目组长、系统分析员、程序员、测试员、文档编写员等角色,由团队共同完成某个项目。创建协作学习环境。这与企业中真实的项目开景相仿,教师作为组织者要对学生分组的总体原则给予控制,使各组的技术力量相对协调。尽量为每个团队营造和谐的协作氛围,使学生群体的智慧为每个学生所共享,最终实现项目的开发。

3.2.2 完成项目 项目驱动的核心思想就是让学生在实践中学习,其教学方式是以学生为主体、教师为主导的学习过程,教师在整个教学过程起到引导和监督作用。首先学生思考如何去完成项目,在完成项目的过程中提出自己无法解决的问题,由教师协助分析,在教师的指导下得到解决问题的方法。这样不仅培养了学生独立分析问题及解决问题的能力,还调动了学生的求知欲。当然,教师不过分干预各团队项目开发的正常进度,保证团队的自主性和主动性。但要注意随时跟踪学生情况和项目的进展状况,一旦发现问题要及时给予协助指导,保证项目顺利进行。

3.2.3 项目总结 把项目开发划分为几个阶段,在每个阶段要求学生进行阶段性总结,不同团队之间可以相互交流开发经验,同时提出开发过程中及所遇到的困难。这种阶段总结可以明确各团队进度,促进团队之间的交流,锻炼学生的表达和交流能力。教师对出现的共性问题可以集中进行讲授。同时,教师还要启发学生对项目进行拓展,使之在今后遇到类似问题时能顺利解决,最后教师对项目的完成情况进行综合评价。

4 结论

通过项目驱动教学法在Java语言课程设计中的实施,使学生通过具体的项目开发自然而然地对语言语法结构融会贯通,掌握项目完整的开发过程,在项目的实践中缩短与企业之间的距离。同时我们还应注重其他教学方法的运用,只有合理的将各种不同的教学方法综合运用,才能在Java乃至其他语言的学习过程中,把项目教学驱动法切实的运用到其课程设计的教学中。

参考文献:

[1]肖胜阳.在计算机课程教学中开展项目教学法的研究[J].电化教育研究,2003,(10).

[2]张哲,陈桂生.在 Java 语言教学中实施“项目驱动”教学法的实践探索[J].教育与职业,2007,(18).

[3]侯书芹,刘学莉.计算机实验教学的素质教育作用[J].安阳师范学院学报,2003,(5).

第9篇

关键词:电子技术;课程设计;教学改革

作者简介:金丹(1978-),女,辽宁建平人,上海电力学院电气工程学院,讲师;王鲁杨(1963-),女,天津人,上海电力学院电气工程学院,副教授。(上海 200093)

基金项目:本文系上海电力学院“085智能电网技术本科教改研究”项目的研究成果。

中图分类号:G642.0 文献标识码:A 文章编号:1007-0079(2013)02-0098-02

“电子技术课程设计”是电气与控制类工科专业本科生的必修课程,该课程的基本任务一方面是巩固和加深模拟“电子技术”、“数字电子技术”课程的学习成果和“电子技术基础实验课”中所掌握的实验技能,另一方面是培养和训练学生的科研作风及在电子技术方面的实践技能,提高学生综合运用电子技术知识解决实际问题的能力和创新能力。[1]

学生通过熟悉设计任务、查找资料、设计电路、计算机仿真、安装调试、整理总结等环节,初步掌握电子工程设计思路,了解开展科学实践的程序和步骤。学习电子产品工艺的基本知识和操作技能,培养专业学习的热情,养成良好的专业素质,为较好完成后续课程的学习和设计做准备,为将来能在工作岗位上继续学习接受新知识,进而发明创新打下良好基础。因此综合性强,实践性突出的“电子技术课程设计”对学生的训练和锻炼是其他教学环节所不能替代的,是专业建设中值得重点建设的重要环节。

一、课程设计改革目的

近年来,电子技术课程实验条件不断改善,能够适应“电子技术课程设计”对硬件设施所提出的更加灵活、更加高端的要求,为“电子技术课程设计”改革提供了硬件基础。同时,随着学生人数不断增加,电子技术课程的师资队伍也不断壮大,为丰富课程设计内容、提高课程设计水平提供了人员保证。

在这样的情况下,提出并实施“电子技术课程设计”改革,突出学生在课程设计过程中的主体地位,培养学生实践动手能力与创新能力。结合本校实际,充分利用学校现有的教学资源,提高课程设计的教学效果和水平。

二、课程设计改革中的几个措施

1.优化设计题目

好的设计题目可以激发学生的兴趣,提高学生的积极性,这种内在的学习动力不仅能够提升教学效果,而且真正寓教于乐。

题目的选择原则是内容的丰富性、实用性、趣味性、先进性、创新性。题目的难易程度要适中,能体现出对基本理论、基本概念、基本技能的综合应用。因此,选题时宜选择与生活实际相关的题目;采用的芯片为目前主流的中等规模、大规模芯片;设计成品应该是一个包含信号源、信号处理、输出显示在内的完整的小系统。例如《洗衣机控制器》题目将课堂教学与生活实际密切联系,让学生切身体会到所学课程如何在工作中应用。再例如《乒乓球游戏机》题目,将课程与游戏相联系,活泼新颖,获得了学生的喜爱。

2.采用导师制

通常的课程都是以班级为单位,每个班级配置一名教师,以往的“电子技术课程设计”也采用这种方式。由于课程设计的题目灵活度较大,也具有一定深度,所以一般每个教师只会精通两到三个设计题目,而学生就只能在这几个题目中选择。随着师资队伍地壮大,每个教师掌握两个题目,那么所有教师加在一起就一共有三十几个题目。本校希望这么多的教学资源能够为所有学生所用。因此在本次教学改革中打破班级的概念,采用导师制。所有教师的所有题目均面向全体学生开放,学生可自由选择,选择题目的同时也就选择了导师。对某个题目特别感兴趣,可以直接选择该题目。或者特别喜欢某个教师,也可以为了追随那个教师而选择他的题目。此外,每四个学生为一组,结组时也打破班级的概念,学生可自由选择合作伙伴。所以学生不仅可以选择题目、教师,也可以选择同伴,自足选择性很强。

3.采用项目教学法

以往教学模式中,教师把课程设计的电路、具体步骤都传授给学生,学生很少思考,很少质疑,更没有探索。本次改革中采用项目教学法,由教师引导,学生自主完成一个个具体的工程案例,按行动路线设计教学思路,培养学生的探索精神,提高其实践能力。

设计过程模拟实际的项目开发过程,包含项目任务下达、方案设定、软件仿真、硬件调试等各环节。体现为课程设计中的如下环节:学生选定设计题目与导师、下达任务书、确定设计方案、电路连线图仿真、电子元器件的安装与对所设计电子系统的调试、撰写课程设计报告。

为了提高学生的创新能力,强调学生自主设计,重视启发式教学。教师只在大思路上加以引导,对具体方案和设计细节不做过多干预,只起组织、引导、检查、把关和解决一些疑难问题的作用,放手让学生大胆实践,充分发挥学生的主动性和创造性。同时,为了配合广大学生大胆的发散的设计,提供了门类齐全、种类丰富的元器件供学生选择。[2]

4.提高工程意识

“电子技术课程设计”本身就是一个工程设计的缩影,具有很强的工程特性,以其为载体,培养学生的工程意识具有天然的优势。

对于一个工程的实施,所设计产品的性能并不是唯一的评价指标。设计周期、设计成本、团队配合也同样重要。为此,在课程改革中相应地采取了一些措施。首先,为了提高对设计周期地重视,在课程考核中加入了时间概念。在完成设计要求的情况下,时间使用最少的组成绩最高。另外,为了提高对设计成本的重视,在设计中引入性价比概念,对高价格器件的领用进行登记、统计与限制,推荐学生采用低价格的元器件完成相同的功能。在帮助学生提高成本概念的同时,也为学校节省资金投入。最后,为了加强团队配合,在每个组的四个人中推举一名组长,负责整个设计过程的协调。由组员共同讨论完成对项目的理解并做出具体的设计方案,然后统一调配每个成员所负责的设计任务。每个成员必须在规定的时间完成自己所负责的部分。在项目调试过程中必定会出现一些问题,而解决这些问题需要各部分的密切配合。因此要求每个人除了了解自己的设计部分以外,还必须了解其他人的设计思路。因此为了考核团队配合,在答辩中除了检验每人分管的部分外,也会检验对整个方案和设计思路的理解。

5.引入模块化设计理念

随着电子电路产业的发展,所设计的产品在功能、线路等各方面都越来越复杂。在实际的电子电路开发中,教师一般将电路划分为多个模块,每个人负责一个模块。先设计单独模块并独立调试,然后再把几个模块联调,最终将整个系统联调。尽管在课程设计中所设计的电路功能较为简单,但是为了模拟电子电路的实际开发过程,仍然希望在设计中能够引入模块化设计理念。因此,每个教师开发自己的题目时,都有意识的使所设计的电路功能齐全,保证整个系统结构完整。所以在每个题目中都包含了信号源、输入、输出、控制等多个部分,可以很方便地划分为几个模块。每组中的四个成员可自行选择设计模块。既让学生学习了电子电路的设计理念,又保证了每个学生的工作量,做到人人动手。

6.软件仿真与实物调试相结合

由于计算机软件和硬件技术的飞速发展,在电子应用领域产生了很多成熟的开发与仿真软件,为实际电子电路的开发提供了准确的保证,同时节约了大量人力物力。EWB、Protel、ORCAD、PSPIC、Multisim等都是目前较为流行的电子电路仿真软件,在实际的电子电路开发中也得到了广泛的应用。因此,在本次教学改革中,模拟实际的电子电路的开发过程共十天的课程,其设计分成五天软件仿真和五天硬件调试。前面五天学生采用自己喜欢的仿真软件设计并调试电路。调试成功后根据所设计的电路制定元器件清单,并进行第一次答辩。答辩通过后根据清单领取元器件以及面包板、导线等硬件设备。后面五天进行实物连线与调试工作,调试成功后进行第二次答辩。然后撰写课程设计总结报告并提交,完成整个课程设计过程。在此过程中,每个学生都能体会到软件仿真与实物连线各自的特点。比如软件仿真在原理性错误的排查方面具有强大的功能,而实物连线除了让学生更熟悉元器件管脚排列以外,更加让学生对元器件的时间延迟以及因此可能引起的误动作产生更深的体会,这些都是在课本以及“电子技术实验”课程中不能收获的。通过课程设计,让学生在软件设计与元器件接线调试中均得到了锻炼。

三、结束语

通过实践,笔者发现这项教学改革效果十分明显。教师们精心准备的题目引起了学生的极大兴趣;采用导师制给了学生更多的自主选择性;采用项目教学法激发了学生的自主性学习,也培养了学生的创新性思维;加入工程意识、模块化设计理念以及软硬件结合的设计方式等改革措施在不同方面让学生体会了实际电子电路的开发过程,真正将理论与实践相结合。

参考文献:

第10篇

【关键词】软件工程;课程设计;需求分析

一、引言

课程设计是指学生在学完相关课程后,综合利用所学知识分析问题、解决问题、实现理论向实践转换的重要教学环节,也是对前期理论教学效果的检验。

软件工程专业的大部分课程设计是有关软件开发的。这就要求学生在设计过程中经历一个完整的软件开发流程:项目定义、分析、设计、开发、维护[1]。作为软件开发过程中的一个重要环节,需求分析在实际的课程设计中由于各种条件的限制往往被忽略,没有得到应有的重视[2]。针对这一问题,本文首先阐述了需求分析在软件开发过程中的重要性,分析了软件工程专业课程设计中需求分析阶段存在的主要问题,并给出了相应的解决方案。

二、需求分析的重要性

软件需求定义了系统必须具备的能力,即软件能完成什么样的功能,达到什么样的性能,这种能力体现了用户的需要和开发者对用户需要的理解。软件项目的开始,就是因为软件需求的存在,需求是项目开发的基石。

一个项目成败的关键因素之一就是对需求的把握程度,研究表明,软件项目中大部分的问题都是在需求分析阶段埋下的隐患,需求问题发现的越晚,软件维护的开销就越大。很多项目的失败,也是由于需求分析的不明确而造成的,有些项目甚至是在需求没有完全确认的情况下就开始执行了,这必然会导致成本浪费、进度延迟等严重问题。所以分析是软件开发中最为基础和重要的环节,是软件项目迈向成功的第一步。

需求分析也称需求建模,主要任务就是借助当前系统的逻辑模型导出目标系统的逻辑模型,解决目标系统“做什么”的问题,即对目标系统提出完整、准确、清晰、具体的要求[4]。分析用户需求主要过程如下:

(1)以图形描述系统的整体结构。

(2)为用户提供可视化界面供用户对需求做出评价。

(3)以模型描述系统功能、实体关系及状态转等内容[3]。

需求分析要保证需求明确,尽量避免需求描述不清楚、需求遗漏、需求互相矛盾等问题,避免在开发后期因需求问题对项目产生困扰。

三、课程设计中需求分析现状

(1)学生重代码,轻需求,急于完成可见的执行软件,大大压缩了需求分析时间。

(2)学生缺乏对所选课程设计题目相关的业务知识的了解,需求分析只是对需求的拼贴,不完善,不系统。

(3)教师缺乏实际项目经验,对需求分析的认知只是停留在理论阶段,不能在实践上给学生以高水平的指导。

四、解决方案

针对以上问题,文中给出解决方案如下:

(1)一方面转变学生对需求分析的认知误区,强调需求分析的重要性,通过一些案例及调研数据让学生了解忽视需求分析带来的严重后果,让学生重视需求。让学生了解软件项目开发工作和项目管理工作都与需求密不可分,如软件项目成本估算、进度计划、项目跟踪控制、验证、确认等工作都以需求为基础;软件设计、编码、测试最终的目的都是为了提交一个满足用户要求的可执行软件,用户的要求主要就体现在需求分析的制品上。

另一方面增强需求分析的趣味性,让学生主动参与需求分析,如选题上给学生充分的自主选择权利,或者让两个同学选相同题目(分别做不同模块),同组间进行需求分析竞赛等。

在软件开发过程中让学生记录并总结,自身项目中存在的那些需求问题,对项目产生了怎样的影响,让学生在实践中体验、总结需求的重要性,加深认识。

(2)题目选择范围上给学生更大空间,可从教师给定的题目中选取,也可学生自拟题目。因为课程设计的时间有限,需求又是一项要求精细、准确、全面的工作,所以在课设开始前至少一个月,让学生预先选好题目,进行需求调研、分析工作。需求分析开始前,由教师预先规定应分析什么,如:软件功能需求、性能需求、可靠性和可用性需求、接口需求、系统约束等;采用什么样的分析方法,建立什么模型,如:功能模型、数据模型、行为模型等;及最终要形成软件需求规格说明,该文档模板由教师提供。任何软件需求都离不开其涉及到的业务领域,因此也要要求学生对业务领域相关的标准模型进行分析和研究,对业界的一些标准和最佳实践进行熟悉,对业务领域进行大量调研。这样才能让才能分析出真正的需求,否则需求就会脱离实际。

(3)作为教师不但要有扎实的理论知识,还应具有较强的实践经验,指导学生完成由理论知识向实践技能的转换。所以在选择课程设计教师的一个重要条件就是教师要有软件项目开发经验及管理经验[5],熟悉软件开发的各个环节。若教师本身不具备这样的能力,也可以通过加强教师培训,让教师到企业中实习的方式来提高教师实践指导水平,通过考核的教师才可以指导课程设计。

五、结论

总之,需求分析是软件开发过程中非常重要的一个环节,是项目所有活动展开的基石,在软件工程专业软件类的课程设计中,作为教师在这一环节应为学生提供有效的理论和实践指导,让学生理解需求分析的重要性,积极主动地做好需求分析工作,为后续的各项软件工程活动展开打下良好基础。

参考文献:

[1] 秦放等.案例驱动与项目导向结合的软件工程课程教学模式探讨[J].计算机教育. 2013(9):87-90

[2] 陈杰.计算机专业课程设计中的需求分析[J].集美大学学报.2009(2):89-92

[3] 韩万江等编著.软件项目管理案例教程(第2版)[M].北京:机械工业出版社,2009.48

第11篇

一、分层次培养学生的程序设计能力

程序设计能力培养是由多门课程即“课程群”和很多教师共同完成。培养学生程序设计能力,可分四个层次[1]:基本程序设计能力、模块化程序设计能力、数据库应用系统开发能力以及多层分布式系统开发能力。这个四个层次有一定的逻辑先后关系、相互联系和相互促进。在教学过程中,狠抓学生这四个层次程序设计能力的训练培养。

二、基本程序设计能力的培养

基本程序设计能力是程序设计能力进一步提高的基础,也是后续许多计算机专业课程学习的基础,由大学一年级第一门程序设计语言课程来完成,对于大多数学生来说,这是一个新的领域,因此必须高度重视。学生的基本程序设计能力表现为能比较熟练地运用一门高级程序设计语言提供的数据类型、运算符、语句和函数和过程独立地编写解决简单问题的程序,在一定的程序设计集成环境下独立地上机调试程序,掌握最基本的程序测试和调试的方法。为了有效培养学生基本程序设计基本能力,在教学过程中 从程序设计语言的选择,教材的选用,到任课教师的安排,都必须进行周密的考虑。

根据多年的教学实践经验,谭浩强编写的《C语言程序设计》作为程序设计课程的启蒙教育,是比较好的选择;教学人员安排,要求至少具有三年教学工作经验、工作责任感强的老师担任此课程的教学。

三、模块化程序设计能力的培养

学生在学完第一门程序设计课程后,只掌握基本程序设计能力,能编写处理一些简单的问题程序(代码通常不超过20行)。对于复杂一点的问题,还不能运行模块化技术分解一个程序的功能进行设计程序。模块化程序设计能力培养主要由《C语言课程设计》完成,由《C语言程序设计》教师担任,更利于学生能力培养。在《C语言课程设计》中,教师重点培养学生抽象思维能力,对程序要解决的复杂问题按功能进行分解成一个个具有独立意义的子功能,用C语言函数分别实现各个子功能,并使每个函数包含程序代码长度符合学生容易理解的代码长度。

案例教学法是快速培养模块化程序设计能力的有效教学方法。任课教师精心准备几个典型的案例[3],并对这些案例进行详细分析、讲解,让学生运行程序和阅读程序代码,分析程序中各函数的功能和算法,分析各函数间的调用关系,使学生对程序的一般组成和结构有一个直观的认识,然后让学生模仿一个类似的实例,编制一个程序实践,使学生逐步适应和学会运用抽象思维方式,学会模块化程序设计技术,编写出有一定规模、具有一定实用性的程序的能力,从而掌握模块化程序设计的基本思想。在后续课程学习中,如《数据结构》、《操作系统》,教师要对模块化程序设计技术做进一步加强、提高。

四、数据库应用系统开发能力的培养

信息管理系统应用非常广泛,信息管理系统实际上就是数据库应用系统,因此,数据库应用系统开发技术是计算机专业类学生必须掌握的技术。数据库应用系统开发能力(单机环境)的培养主要是通过《数据库原理》、可视化面向对象程序设计(如VB)等课程设计完成。

在实践教学中,主要采取两项措施保证这种能力的训练。一是教师讲解数据库原理、面向对象程序设计(如VB、Delphi)课程时,一定要仔细分析一个信息系统开发案例,如“图书管理系统”,“人才信息管理系统”,“学生信息管理系统”等等。这种生动实用的案例学习,能激发学生的学习兴趣和动力,也很容易使学生理解掌握数据库应用系统开发的一般规律。二是通过随后开设的《数据库课程设计》、《VB课程设计》、《Delphi课程设计》,要求学生自己用学到的知识,严格按照软件工程的思想,开发数据库应用系统实例。这种反复的训练,使学生数据库应用系统开发能力得到进一步巩固、完善。

五、多层分布式系统开发能力的培养

随着Internet/Intranet网络的发展与广泛应用,应用系统的规模不断扩大,业务量的变化,用户需求的进一步提高,多层分布式应用系统开发模式成为系统开发的主流,掌握多层分布式系统开发的基本过程、思想,也成为学生程序设计能力必不可少的教学内容。这种体系结构的软件设计,要考虑两个个方面的问题,一个是业务逻辑层(也叫应用服务器)设计,是程序设计的一个重点难点。另一个是网络环境下,软件系统部署和运行在多台计算机上,需要相互协调地工作,必须考虑网络通信协议的使用,客户端与服务器之间怎样建立连接,以及怎样实现数据的交流等因素。

这个层次通常在数据库应用系统开发能力培养和计算机网络课程开设后进行。多层分布式系统开发编程技术训练,可以在第三个层次培养案例基础上进行,只需将系统的单机环境改为网络环境,教师学生都只要把精力重点放“多层、分布式”技术上,既节约了时间,而且效果好。

六、加强实践环节要求和管理

计算机课程光是“听老师讲”和“自己看书”是绝对不够的。在努力提高课堂教学的同时,必须大力加强实践环节的要求和管理。“理论+实验+设计”教学模式,表明实践环节的重要性,但还得管理好实践环节。对于课程的实验环节主要从以下几个方面加强落实管理。

一是抓好常规实验。教师必须认真对待上机实验课,要像理论课教学那样,每次都要明确指明实验的目的、要求,对上机实验内容要精心安排,对学生上机实验要严格监督。

二是抓好课程设计,即综合实训。为了快速、有效培养这方面的能力,通常由课程设计的指导教师,分析几个代表行的案例,然后由教师布置一些事先想好的课程设计作业,以小组为单位进行课程设计。每一个小组要挑选一到两个专业素质较好的学生担任正副组长,让他们对本组项目全权负责,充分发挥优秀学生在课程设计中的积极作用,既可以减轻指导教师的压力,又有利于课程设计质量的保证,发挥学生的创造能力。课程设计落实得好,将使学生的知识运用能力和程序设计能力得到迅速成长,教学效果也显著。

为了保证学生认真对待实践环节,防止学生复制或不做,比较好的办法是要求每个学生提交实践作业,并进行批阅,批阅的成绩,参与课程结束的期末成绩评定,实践表明,这种办法效果非常好。

三是组织各种程序设计比赛,鼓励学生自己积极编写程序代码,对于程序代码编写多又好多学生,给予表扬和适当的物资奖励,提倡在大学毕业前,编写10万行代码。试想一个在校大学生,如果编写了近10万行的代码,程序设计能力一定达到较高水平。

七、将科研项目与学生程序设计能力培养结合起来

教师要积极参加科研活动,通过科研项目活动不断提高科研水平、教学水平和实践水平。在进行科研过程中,可以将优秀好学的学生吸收进来,共同完成科研项目的开发。将科研与学生程序设计设计能力培养两者结合起来,不但提高了教师的实际项目开发能力,也培养了学生的知识应用能力、解决实际问题能力和程序设计能力。

第12篇

关键词 课程设计;实践教学;自动控制原理;计算机控制

中图分类号:G642.4文献标识码:B文章编号:1671-489X(2012)15-0041-03

1 引言

实践创新能力培养是当代大学生更快更好地适应社会工作需求的基础和保障[1-2],其培养体系、实施方法、教学模式等受到教育界的广泛关注[3-5]。课程设计是当前自动化专业实践教学体系的重要内容,对增强学生理论实践能力、提高自动化专业教学整体水平、建立适应社会发展与高校实践教学改革创新模式等关键问题至关重要[6-7]。

2 课程设计在自动化专业实践教学体系中现状

的分析

课程设计是自动化专业实践教学体系中的重要环节,一般涉及自动控制原理课程设计、计算机控制技术课程设计、综合设计等相关内容,不同学校可能侧重点不同,重庆邮电大学自动化专业课程设计在专业实践平台中的内容及安排如图1所示。

多年来,课程设计一般由学生分组作业,往往因学生人数较多,过程监控较难。如何有效激发学生积极主动性,既让每个学生在其设计题目中充分发挥作用,深刻掌握课程理论知识,又能有效锻炼学生协作解决问题的能力,一直是大家关注的问题。随着当前社会对创新性人才需求的增加,自动化专业课程设计日益暴露出一些新问题。一方面,为了增强教学效果,需要尽可能多地设计题目,以减小分组人数。然而如何掌握题目难度至关重要。往往一些题目应用背景非常广泛,学生实施过程中缺少对具体对象的直观理解,设计难度大,效果也很难验证,在有限的一两周时间内很难达到实际效果。另一方面,不同课程设计之间缺少统一联系,结果难以互相验证,成果难以共享。

如自动控制课程设计的模型难以为计算机控制技术课程设计和综合设计验证,计算机控制技术课程设计的算法与模块难以在综合设计中应用,不仅造成实践对象灵活性差、实践平台资源浪费,也致使实践教学整体效果难以保证,学生知识体系零碎,创新思维与创新能力受到极大限制。

显然,实现自动控制原理的控制模型、计算机控制技术的算法与模块、综合设计软硬件平台与系统开发的有机统一,对培养学生实践创新综合能力、增强自动化专业实践教学效果是非常重要的。

3 面向实践创新能力培养的自动化专业课程设计

策略与方法

3.1 创新实践教学方法,提高学生的积极性和主动性

由于课程设计一般都只有一周半或两周时间,设计时间非常有限,特别是计算机控制技术课程设计及综合设计,需要学生在这样有限的时间内,完成具有可验证的实验系统是非常困难的。另一方面,进行课程设计之前,很多学生都参加过电子设计大赛,完成了单片机等相关实验课程,具有一定软硬件基础与创新能力。因此,为了在课程设计中培养学生自主探索的创新能力与思维,必须探索新的课程设计实践教学方法。

目前,重庆邮电大学自动化专业课程设计在实践教学中采用了分段实施的方式,先停课一周集中进行设计,大纲要求的剩下时间安排在七八周之后再停课集中进行。这样学生可以根据自己设计进展的实际情况,利用两次集中停课之间的空余时间继续设计。这样不仅无形中延长了课程设计时间,学生有更充分的时间与精力进行设计,同时可以带着问题学习,主动查阅资料,探索一些可能还没学过的知识,提高积极性与主动性。当然,相应提高了设计的具体要求,增强了学生的设计效果。另一方面,对于自动控制原理课程设计,由于必须以理论教学为基础,也提前征集题目,让学生上理论课时就知道自己课程设计题目,这样就可以带着相关问题进行学习,对理论和实践教学都有明显的促进作用。同时,理论课教师一般都必须指导相应的课程设计。因此,要求教师有意识地结合自己设计的题目,在适当的授课环节分析设计相关问题,也极大地提高了学生的学习兴趣,促进了理论教学效果。

3.2 科学研究,整体规划,构建一体化实践创新平台

实现自动化专业课程设计间的协调统一,对增强自动化专业课程设计实践教学综合效果具有重要意义。这需要科学研究,整体规划,不仅要保证实践教学体系上的模型、算法、系统间的协调统一,也要求实践平台上的统筹规划、灵活配置,以构建综合实践创新平台[8-9]。在以往课程设计中,一些实验特性较好的对象,如电机控制,被不断地低级重复,上届学生的设计结果基本上不能为下届学生使用,造成极大浪费。因此,在现在实验平台基础上,统一规划,设计了新的综合创新实践平台,满足不同课程设计的实践教学要求。

在实践体系方面,自动控制原理课程设计以系统建模、仿真为主,实现系统分析、设计与校正;计算控制技术课程设计可以在自动控制原理设计的基础上进一步实现计算机控制策略、算法、方案的验证及控制模块设计与开发;综合设计可以在不同模块中实现系统集成、分析与验证,实现自动控制系统设计与开发。在实践平台方面,学生可以自己设计题目实现方案,灵活配置功能模块,实现具体环节功能,如软件模块、硬件接口等,让每个学生既在实践中验证了整体设计方案,又具体实现了一定模块功能。如自动控制原理课程设计的模型,可以直接在实践平台上验证,虽然学生实现的是控制对象的建模与仿真,但得到的是更直观的控制结果,极大地激发了学生学习兴趣,增强了实践教学效果。

3.3 加强过程监控,建立合理有效的创新能力考核方法

有效监控课程设计中每个学生的实际工作,对促进课程设计效果的提高至关重要。例如,自动控制原理课程设计由于必须以理论教学为基础,一般都安排在学期第十四五周,由于这段时间临近期末,很难保证每个学生都如期完成课程设计,有时出现一个组只有一两名学生实际在做设计的现象。由于种种原因,计算机控制技术课程设计、综合设计也都存在类似现象。另一方面,以往都是由指导教师根据设计报告,给出学生成绩。但由于缺少可实际操作的有效标准,设计成绩难以把握,一定程度上造成学生“课程设计都能过”的假象。

因此,制定新的课程设计教学大纲,采用集中答辩方式,要求每个学生都必须在规定的时间内提交设计报告,报告中必须体现学生自己的工作。这样学生必须在同一设计题目的整体框架下,独立寻找属于自己那部分问题的解决方案。指导教师根据学生实际参加设计过程评定每个学生的平时成绩。然后由学院统一分组答辩,指导教师一般不参加其学生所在组的答辩,答辩时间一般控制在10分钟内,采用学生口头报告与教师提问相结合的方式,根据学生实际设计工作和答辩情况评定答辩成绩,学生最终成绩由指导教师成绩和答辩成绩综合组成。

实际效果表明,在新大纲的统一要求下,经过集中答辩,学生的设计态度、报告质量、成果水平都比往年有了较大改进。同一题目,往往出现多种设计方案和不同实现方法,有的方案尽管不尽合理,也没有具体结果,但思路独特,仍然得到好的答辩成绩。这样极大地激发了学生学习兴趣,培养了学生解决问题的创新实践能力。当然一般仍有部分学生没有通过答辩,将参加下一届的相关课程设计。相信经过不断完善,设计效果将得到明显改进,学生实践教学质量将能得到有效保证。

4 结束语

自动化专业课程设计实践创新能力培养策略与方法适应了社会对当代大学生实践创新能力的需求。本文分析了课程设计实践教学实施创新方法、课程设计实践体系综合创新平台设计与开发、课程设计过程监控与创新能力考核等相关内容。实践表明,这些方法在自动化专业课程设计中取得良好效果,对促进学生创新能力培养,保障自动化专业实践教学水平的整体提高具有重要作用。

参考文献

[1]周济.创新是高水平大学建设的灵魂[J].中国高等教育,2006(3):1-4.

[2]华心祝,杨科,涂敏,等.加强采矿工程专业本科生实践能力培养的对策分析[J].实验室研究与探索,2011,30(3):103-106,115.

[3]王留芳,董德礼,周拓宇,等.多模式、多层次电子电工实践教学改革的探索与实践[J].实验室研究与探索,2011(3):94-96.

[4]刘德宇.关于加强大学生实践能力建设的思考[J].教育理论与实践,2009(11):17-19.

[5]周爱国.大学生实践能力培养存在的问题及对策[J].教育探索,2009(1):74-75.

[6]李加旺,黄依珍.构建具有创新教育的电子专业实践教学体系[J].装备制造技术,2011(3):198-200.

[7]李林,陆灵云,沈明霞,等.SRT计划创新人才培养模式的研究与实践[J].实验室研究与探索,2009(2):8-11.