书读百遍,其义自见,以下是勤劳的小编午夜为大伙儿找到的14篇软件设计模式论文的相关文章,欢迎借鉴,希望对大家有所帮助。
论文摘要:从卜个世纪90年代到本世纪,这十几年是中国营销传播没汁发展最快的一个阶段,也涎生了很多伟大的营销传播概念,它们或一举成就了一个企业、一个品牌,或一举转变了市场运行规则。这些奉不该被大家忽视却正在被大家忽视的经典案例综合在一起应该会给中国的营销传播设计者一些深刻的启发,值得新世纪的营销传播没计者们再度深思。
在市场逐渐饱和,竞争压力越来越大的今天,企业对消费者认知研究不断重视,对于营销传播设计的研究在企业里不断细化和深入,已逐渐作为一个独立的研究实体来开展工作。品牌的成功,离不开研发、营销,而这一切以现代整合营销传播设计的思想来看,都必须以消费者为中心,根据目标人群的特点来调整品牌形象,以整体的产品形象来强化人们的认知,甚至整个团队的工作方式必须及时调整,在产品的规划和前期设计时就花更多的时间和精力从用户环境的角度来琢磨产品的特性,达到营销传播设计的最优化,使产品中更多地体现出用户的情感和使用习惯,以获得消费者的认同,增强企业的竞争力。
一、对于整合营销传播设计的认知
整合营销传播英文为:(IntegratedMarketingCommunicatins),简称:IMCoIMC的核心思想是将与企业进行市场营销所有关的一切传播活动一元化。IMC一方面把广告、促销、公关、直销,CI,包装、新闻媒体等一切传播活动都涵盖到营销活动的范围之内;另一方面则使企业能够将统一的传播资讯传达给消费者,即营销传播的一元化策略。
二、营梢传播设计中企业的产品形象设计
产品的形象设计是服务于企业的整体形象设计,是以产品设计为核心,围绕着人对产品的需求,更大限度地适合人的个体与社会的需求而获得普遍的认同感,改变人们的生活方式,提高生活质量和水平。因此对产品形象的设计和评价系统的研究具有十分重要的意义,评价系统复杂而变化多样,有许多不确定因素,特别是涉及到人的感官因素等,包括人的生理和心理因素。笔者试图通过对企业形象的统一识别的研究,并 因此,企业以及产品的形象设计都是营销传播设计中的重中之重。
产品形象设计与企业形象设计的关系。对形象的研究大都基于企业形象统一识别系统(CorporateIdentitySystem简称cIS>,所谓企业形象,就是企业通过传达系统如各种标志、标识、标准字体、标准色彩,运用视觉设计和行为展现,将企业的理念及特性视觉化、规范化和系统化,来塑造具体的公众认可、接受的评价形象,从而创造最佳的生产、经营、销售环境,促进企业的生存发展。
企业通过经营理念、行为方式,以及统一的视觉识别而建立起对企业的总体印象,它是一种复合的指标体系,可以把它区分为内部形象和外部形象。内部形象是企业内部员工对企业自身的评价和印象,外部形象是社会公众对企业的印象和评价;内部形象是外部形象的基础,外部形象是内部形象的目标。
产品的形象设计是为实现企业的总体形象目标的细化。它是以产品设计为核心而展开的系统形象设计,对产品的设计、开发、研究的观念、原理、功能、结构、构造、技术、材料、造型、色彩、加工工艺、生产设备、包装、装磺、运输、展示、营销手段、广告策略等等进行一系列统一的策划、统一设计,形成统一的感官形象和统一的社会形象,能够起到提升、塑造和传播企业形象的作用,使企业在经营信誉、品牌意识、经营谋略、销售服务、员工素质、企业文化等诸多方面显示企业的个性,强化企业的整体素质,造就品牌效应,赢利于激烈的市场竞争中。
三、企业形象设计的组成
企业形象设计由基本要素与应用要素两大部分组成。企业形象设计中VI是指视觉认知,即企业的视觉识别(形象识别)。VI是以企业标志、标准字体、标准色彩为核心展开的完整系统的视觉传达体系。
VI是CIS的静态部分,通过统一化、系统化、规范化的视觉识别设计。
基本要素系统一—企业名称、企业标志、标准字体、企业标准色、企业标语、企业象征图形、宣传语言、市场行销报告书以及各部分的组合规范设计等。
应用要素系统—将基本要素系统中的设计运用到与企业相关联的各个领域。如:办公事物用品、生产设备、建筑环境、产品包装、广告媒体、交通运输工具、衣着服装、旗帜、招牌、标识牌、橱窗、陈列展示等。
视觉识别VI在CIS中最具有传播力和感染力,最容易被受众所认可,并占据主导地位。因为视觉识别系统是企业形象的直接传达系统,故被称为“企业的脸”。
四、曹销传播设计的经典案例
一个完美的企业形象传播设计就是一次与消费者心灵的沟通,让消费者产生购买欲望,这就是营销传播设计所要达到的最终目的。
IBM充分发挥整合营销传播设计的优势,因此铸就了辉煌。IBM公司是美国最早导人CIS战略的企业之一。时任IBM公司总裁的Thomas"Watson认为,为了使公司成为享誉世界的大企业,就非常有必要改变企业的陈旧形象,在电子计算机行业中树立一个良好的形象。这个形象不仅能体现出企业的理念,而且还有利于企业在市场中的竞争,特别是能在消费者心目中留下一个具有视觉冲击力的形象标志。于是,在设计大师保罗·兰德的建议下,把公司全称“InternationalBusinessMachines”缩写成“IBM’’三个字母,形成统一的、易于识别的标志,为“IBM’’的发展制定出一整套的CIS战略;还以此设计出具有强烈视觉冲击力的蓝色字体和富有灵感的造型,且选用明快的蓝色作为公司的标准色。从此,IBM公司通过CIS战略的导人塑造了企业形象,社会知名度与美誉度大增,市场占有率迅速扩大,“蓝色巨人”的形象在公众中树立了起来。公务员之家
然而,促使IBM公司成为计算机行业中首屈一指的霸主,却不仅是有一个良好的企业视觉识别VI,而且由于IBM公司树立了以“IBM就是服务”为宗旨的企业理念识别MI,并自始至�
"IBM就是服务”—这句话清楚而又准确的阐明了企业的指导思想。也就是说,IBM公司提供的不仅是产品机器,而且还有使人信赖、热情周到的服务—公司在创办之初就要求对于任何一位用户提出的问题都必须在24小时内给予解决;公司免费为用户提供维修、咨询和培训的服务;甚至对IBM公司提供的服务不满意,还可以退回机器·IBM公司用这样的理念作为指导,使得公司在服务方面的工作可以说几乎达到无懈可击的程度,令人叹为观止。
正因为IBM公司能为顾客提供如此周到的服务,这就使消费者确信公司在关心着每一位用户。所以,才能在广大消费者心目中留下如此美好的印象,才能使IBM公司在强手如林的计算机市场中一枝独秀、勇往直前。
至今,IBM公司给人的印象始终是“充满自信,永攀科技高峰的国际性大公司”,这都应归功于企业形象识别系统CIS的开发,特别是企业理念识别的成功策划,IBM公司已成为企业导人CIS的典范!
关键词:软件工程 实例化教学 项目实践
中图分类号:G462 文献标识码:A 文章编号:1674-2117(2014)16-00-02
1 前言
软件工程是一门研究用工程化方法构建和维护有效的、实用的和高质量的软件的学科。它涉及程序设计语言、数据库、软件开发工具、系统平台、设计模式以及管理、标准、个人技能、团队协作和专业实践等多方面的知识和技能。它是一门理论性和实践性并重的重要学科。
软件工程课程是计算机专业重要的专业基础课。通过软件工程课程的学习,学生能够了解和掌握软件工程的理论、技术和方法,具备作为软件工程师所需的专业能力。由于软件工程的课程特点,传统的教师课堂授课为主、学生被动听讲为辅的教学模式在实践环节上存在很大不足,软件工程的理论和方法是从众多软件开发实践中总结出来的。但是对于缺乏软件开发实际经验的本科生来说,单纯地讲授理论知识往往使学生感到枯燥无味且难以理解,这严重影响了课程的教育质量和教学效果。近年来,部分学校采用了案例化教学的方式改革软件工程课程教学,在案例化教学中收集和总结了若干典型的软件开发案例,将这些案例贯穿于理论知识的讲解中;同时引入“做中学”教学模式,让学生在实际的项目开发中进一步理解理论知识,取得了很好的教学效果。[1-4]
我们在软件工程的授课过程中,也引入了案例化教学模式。总体来讲,学生的反应是积极的,不过也发现了一些问题。
(1)任课教师本身缺乏使用软件工程方法开发一个完整系统的经验,仅限于照本宣科地介绍基本原理和实际案例,不能将当前实际案例和软件工程方法有机地结合在一起,与实际的软件工程实践有明显的差距。
(2)大学阶段的课程实践基本以个人编程完成为主,软件工程方法起到的作用有限。即使面对需要团队协作的作业,
(3)现有的软件实验环境偏重于提供编程工具的支持,缺少一个完整的软件工程支持环境,缺少适合教学使用的实验环境和资料,学生得不到真正的锻炼。
2 教学改革
针对现存的问题,结合ACM和IEEE联合的CCSE2005的相关内容[5],我们进一步改革课程体系框架和教学内容,本文将着重介绍我们在软件工程课程教学中的经验和成果。
IEEE的软件工程知识体系包括10个知识领域:软件需求、软件设计、软件构造、软件测试、软件维护、软件配置管理、软件工程工具和方法、软件工程过程和软件质量。参考这10个领域知识,根据教学目标,结合理论知识、软件工具和工程实践等方面组织整个课程内容,在理论、应用、实践三个层次上建立了软件工程的课程体系。
理论部分以当前流行的统一开发过程RUP和UML语言为核心,覆盖IEEE的软件工程知识体系。包括软件需求、软件设计、软件实现、软件测试、软件演化、软件质量和软件配置管理等内容。
应用部分结合实际案例,覆盖IEEE的系列软件工程标准,学习RationalRose、ClearCase、ClearQuest、JUnit、MicrosoftProject等常见软件工程工具和环境。
实践部分要求学生以团队的方式协作开发具有一定规模的软件系统,并且在实践过程中能够熟练使用软件工程工具。实践部分着重培养学生应用软件工程的思想和现代技术解决软件开发问题的能力。
2.1 理论知识
理论部分的教学仍采用教师授课为主的模式,向学生讲述软件工程的基本理论,内容力求少而精,目的是在较短时间内让学生了解现阶段最广泛使用的软件工程技术的理论基础,为下一步应用部分的学习奠定基础。在具体的授课过程中,为避免单纯理论学习的枯燥性,授课内容围绕典型的软件开发案例展开。学生学习的注意力和兴趣是影响教学质量的重要因素。我们使用的案例是从国内著名的软件开发公司得到的真实案例,学生可以完整地看到项目的全景,这样既帮助学生认识到学习课程的必要性,又调动起学生的学习兴趣。
2.2 应用技术
软件工程与其他计算机课程不同,学生需要面对的不只是单一的软件工具,而是一组软件工具组成的软件支持环境。为了增强软件工程课的真实性,我们选用了一组业内流行的软件工程工具,营造一个适合软件工程课程项目实践的软件工程环境。使用RationalRose完成需求分析与系统分析和设计,使用ClearCase完成源代码管理,使用ClearQuest完成缺陷管理,使用MicrosoftProject完成项目资源调度等。考虑到相关软件工具的复杂性,为避免学生陷入单纯学习软件功能的误区,我们坚持“用中学”的方针,不要求学生面面俱到掌握软件功能,而是从实用角度出发,以完成� 我们会首先演示如何使用相关软件完成典型案例,然后要求学生模仿示例,自行创作设计。
2.3 项目实践
大学阶段,大部分计算机课程实践通过学生的独立编程即可完成,软件工程课程实践则不同,软件工程方法和技术的作用必须在完成项目的过程中通过团队合作才能体现出来。
我们刚刚开始教这门课的时候,为了便于管理,选择的项目偏小,一般适合3~5人完成。不过通过几学期的实践,发现效果不佳。因为规模不大,通常只会有1~2人来承担主要开发工作,其他学生通常只起到辅助作用。在开发过程中,由于核心开发人员少,口头沟通远要比书面沟通简单有效,没有认真准备项目文档的动力;而且项目是从头做起,不需要利用以前文档来了解项目情况,无法体会到项目文档的重要性。在此种情形下,学生感觉到引入软件工程只是额外增加了工作负担,并没有明显的益处。
为了更好地帮助学生认识到这门课的重要性,我们在实践阶段做了若干改进。
(1)有意识地扩大了项目的规模,开发团队的人数也相应增加,通常开发团队人数在10人左右。人数的增多使得单纯的口头交流很难保证项目的顺利进行,从而促使学生撰写项目文档。
(2)分组时,根据学生的能力和水平,明确学习任务,进行合理有效的分工。在一个项目组内,应该有项目经理、系统分析师、软件工程师、配置管理员、测试工程师等角色。同一名学生在不同的开发阶段可能会承担不同的角色。
(3)项目开发也分为两个阶段,第一阶段完成后,我们会再提出一份更新的需求,要求在第一阶段的成果上继续开发。项目组的成员也不是一成不变的,第二阶段时每个项目组至少更换50%的成员。
在项目开发过程中,我们会监控项目的开发过程,参与项目阶段成果的评审工作。项目开发过程尽可能模拟真实软件企业的开发过程,最终使学生完成需求分析、设计、代码编写、测试、部署全过程,培养学生的合作意识、责任感和集体荣誉感。学生在开发过程中遇到问题,我们也不会直接给出答案,会建议他们自行讨论来解决,提高他们的沟通交际能力,培养其团队合作精神。
在教学过程中,理论部分、应用部分和实践部分并不是相互独立,而是有机地结合在一起。我们在该课程教学初期,首先给学生若干项目课题进行选择,题目选定后,以自主结合的方式完成分组。这样做可以有效地增强学生学习时的目的性。在重要章节的教学过程中,遵循先理论知识、再应用技术、最后实践部分的次序进行。完成某章节的学习后,就应该在规定时间内提交项目相应阶段的工作成果。例如,需求分析章节的理论知识学习安排在第2周、应用技术部分安排在第3周、需求分析说明书要求在第5周提交;系统分析的理论知识学习安排在第4周、应用技术部分安排在第5周、系统分析报告要求在第7周提交。我们会及时对每一部分的工作成果进行评讲,指出缺陷和不足,保障项目开发的顺利进行。在期末考试结束之前,结束第一阶段的开发工作。随后,我们会给出项目的新增需求,并调整项目成员,开始第二阶段的开发工作。由于第二阶段是在所有课程考试结束之后,学生有条件在固定地点集中上机,因此第二阶段的工作将尽可能模仿软件公司的开发模式。首先,项目经理必须和组员共同讨论出一份可行的项目开发计划。我们将根据该计划监控项目进展过程,并在重要节点抽查该项目的进展情况。项目计划的重大变化,必须及时更新项目开发计划。其次,在项目进展过程中,每个开发阶段的工作成果都必须经过评审。不评审或者评审不合格,不可以开始下一阶段的工作。最后,每个项目成员必须每天提交工作进展报告,内部会议也要有会议记录。所有这些项目管理相关文档和项目本身的文档都需要在项目结束时一并提交。评定成绩时结果和过程并重,项目管理相关文档是过程的重要体现。
3 考核方法和教学效果分析
为突出实践环节的重要性,我们将项目实践部分的考核比例增加至总成绩的50%,即成绩标准为项目实践成绩(50%)+笔试成绩(30%)+平时成绩(20%)。其中第一阶段的项目实践成绩占20%,第二阶段占30%。在对学生的实践环节考核中,我们更侧重于对学生的实践操作能力、文档编写能力、团队合作和沟通能力的考核。为避免浑水摸鱼,在评定成绩时,根据贡献不同,组中的不同成员会有不同的权重,每个学生的最终成绩是团队成绩和权重的乘积。采用新的考核方法后,极大地调动了学生参与项目实践的热情,取得了良好的学习效果。在随后的毕业设计和程序设计比赛中学生都体现出较强的团队开发能力。
4 结语
软件工程是一门理论和实践并重的课程,只有加强实践环节的训练,理论知识才能得到有效巩固。我们在教学过程中,始终把项目实践放在突出的地位,通过增大项目规模和引入两阶段项目开发,让学生主动认识到软件工程课程的重要作用。实践证明,现阶段软件工程的教学改革工作,有效地提高了学生的学习兴趣,增强了学生使用软件工程方法和技术解决实际问题的能力,培养了学生团队合作精神。下一步我们准备通过“校企合作”,增强项目实践的真实性,使软件工程的项目实践更加合理、完善。
(上海海洋大学信息学院,上海201306)
参考文献:
[1]张剑波,方芳,袁国斌。软件工程专业实践教学体系改革[J].计算机教育,2013(12):37-41.
[2]王卫红,杨良怀,江领。软件工程优势专业的建设与发展[J].计算机教育,2013(10):1-4,9.
[3]汤淼。软件工程专业“项目驱动”实验教学模式研究[J].实验技术与管理,2012(4):267-271.
关键词:实践性教学;软件设计;课程改革;计算机专业;项目实训
中图分类号:G642
文献标识码:B
文章编号:1672-5913(2008)02-0082-04
0引言
从1956年哈尔滨工业大学率先开办“计算装置与仪器”专业算起,到现在普遍采用的“计算机科学与技术”专业,计算机专业教育在中国的大学里已经走过了50年的历程。70%以上的本科学校开设了计算机专业,在校学生近30万[1],其规模居所有本科专业的首位。加上专科、高职、中职在内,其数量还要大得多。计算机专业人才在信息化建设过程起着举足轻重的作用。然而,企业面对十里挑一的大好形势,却经常会找不到合适的人才,造成这种局面的主要原因是学校培养与单位需要存在一定的脱节现象,主要表现为重理论轻实践,动手能力差,因而改革实践环节提高学生的操作技能成为高校计算机类专业的必经之路。
1软件设计类课程实践性教学的内涵
实践性教学是指为配合理论教学,培养学生分析问题和解决问题的能力,加强专业训练和锻炼学生实践能力而设置的教学环节,通常有两种落实途径:一是随堂实践,即课程作业、实验、上机操作等;二是集中实践,即社会调查、各类实习及见习、课程设计以及毕业论文或毕业设计。教学计划中规定的作业、实验、实习等环节和集中实践环节是学生必修的内容,在课程和专业学习中具有突出的地位。不同专业的实践性教学方式,教学管理和考核办法也不相同,但都是以专业培养目标作为前提。对于计算机(包括软件工程)专业的软件设计类课程,其教学目的就是培养合格的软件工程师,适应软件设计和项目管理岗位的需要。
1.1软件工程师岗位需求
任何一个软件企业,开发团队都需要这样三类人才:一是既懂技术又懂管理的软件人才即系统分析师(高级),二是软件工程师(中级),三是程序员(初级),这三类人员在软件企业的正常比例应该是呈金字塔结构,根据国际经验,高、中、初级软件专业人才的比例应基本维持在1:4:8。通常系统分析师由研究生承担,软件工程师由本科生承担,程序员则由大专生以及专门培训机构的学员完成。如图1所示。
从图1可以看出,计算机专业的本科生对应软件工程师岗位,在软件开发团队中处于中间层,优秀者可以上升到系统分析员层次。同时,软件工程师也要兼任程序员角色,因为不少软件企业规模较小,难以按照软件工程的规范细化分工,需要能做分析、能写代码、能做实施甚至用户培训的“多面手”。作为高校,必须充分考虑这种情况,以培养软件工程师为主线,也要提高系统分析能力,同时还应该加强代码编写的训练。
1.2软件设计类课程实践性教学的内涵
软件设计类课程主要包括计算机语言类、开发类、设计类、制作类和工程类课程,共同的特点都是经过系统学习,既能够按照规范独立设计小型软件,组成团队后又能够设计出具有实用价值的中大型软件。
软件设计类课程实践性教学标目的是培养学生两个方面的能力:即独立编程能力和项目合作开发能力。一方面,能够利用所学语言和平台设计小型软件,同时能够按照项目分工,在项目经理(负责人)的统一安排下,在技术上服从既定的设计方案完成模块的开发,并做好相应的文档。良好的责任心、解决问题的独立编程能力和分工合作制的团结协作精神是必须重点培养的内容。软件设计类课程实践性教学的内涵如图2所示:
2软件设计类课程实践性教学的组织
按照软件设计类课程实践性教学的内涵,一般应包括3个环节:课堂实验实训、课程设计、项目实践,分阶段实施。其具体安排如图3所示:
2.1课堂实验实训环节
如果一门课程的教学任务规定在一个学期内完成,课堂实验实训环节应该安排在学期的前半部分进行,以讲授语法、数据类型、常用类库、开发平台为主。学生所学知识和编程技术有限,难以形成完整的程序思路,实践环节只能是练习基本功单独完成,以每一次堂或者每一个章节为单位安排学生进行相关的训练,以熟练掌握语法的基本用法,为后一阶段的课程设计做准备。老师指导时,要注意培养学生良好的编程习惯,包括标识符的规范化命名、注释语句的广泛运用、编程语句的缩进格式、帮助文档的使用方法,逐渐形成编程思想。
为了配合实践性教学,教材的选择也十分关键,最好是采用基于案例教学法或者项目驱动教学法的教材,这种教材往往会通过一些典型的实例或企业项目组织内容,大部分章节的主题相对集中,围绕项目展开讲述,特别适合于实践性教学。如果采用实践性较弱的教材,老师需要自行补充一些实习实训内容让学生当场消化吸收。
2.2课程设计环节
这一阶段十分关键,完全模拟软件企业的开发流程组成小组共同完成一个中小型项目的设计,一般安排在后半学期进行。这时要求学生停止其它课程的学习,每天八小时工作制,甚至晚上可以加班加点,专心设计项目,其最终成果包括软件和文档以及用户操作手册。以每班30人为例,可以考虑分为5个小组,每组6人,每个小组安排组长(项目负责人或称项目经理)一人,组长的职责是:组织成员实地项目调研、模块划分与任务分工、接口的确定、进度的监督与协调、集成测试等,组长直接接受指导老师的安排。鉴于组长在在项目设计过程所处的重要地位,老师在确定组长时,至少考虑三个方面:一是组织能力,二是专业技能的基本功,三是责任心。
这一过程通常安排两周到三周集中在校内机房(实训中心)进行,老师每天针对总体要求及当天的任务进行讲解,然后分小组实施。选择课题时,不宜太复杂,应尽可能让大多数课题组可以在规定的时间内做完。一般选取学生们比较熟悉的内容,如学生成绩管理系统、班级管理系统、教材管理系统、仓库管理系统、工资管理系统、就业反馈跟踪系统、水电费管理系统等,这些课题的要求大家都比较清楚,在校内即可进行客户调研和需求分析,同时也具有较强的推广价值,为将来的职业奠定基础。这时每个人同学都应该至少准备一本项目开发类指导书作为参考,因为涉及到数据库、界面、网络通信、硬件编程等方面的知识,仅仅靠教材还不够。
2.3项目实践环节
项目实践环节是学生到软件研发企业(校外实训基地)全程参与项目开发的过程,一般应安排在学期的最后一到两周或者利用假期顶岗实 完成本部分实践内容要做好以下三个方面的工作:
确定好项目指导老师:企业开发与在学校进行课程设计并不尽相同,软件公司具有自己的风格,往往更加愿意采用自己熟悉的开发工具,以达到客户的需求作为目标,并不一定会使用最新技术,这点与教学理念不同。理想的方案是由任课老师带队进入软件企业(校外实训基地),并选择目前正在开发的项目经理担任总负责人(校外实践指导老师),任课老师也参与项目实践并组织学生实施,因为一个优秀的项目经理不一定是优秀的老师,能做软件不见得会上课,项目负责人与任课老师共同配合更能发挥各自的优势,便于学生理解项目思想和相互沟通。经过简短的培训后,由模块责任人指导学生设计或者由学生独立完成,一切按照企业的开发规范进行。考虑到软件企业一次难以容纳过多实习生的特点,也可考虑将项目拿到学校来做,或者将项目经理请到学校现场指导,以节省时间和费用。
确定项目指导方法:开发应用项目没有现成的教材,需求分析、概要设计说明书、详细设计说明书、数据库和数据字典就是设计的依据,老师必须严格按照这些文档指导学生进行设计,定期检查学生的进度及过程,一旦发现偏差,及时纠正,将错误消灭在萌芽状态。
及时组织项目总结:每天规定一个时间,将同组学生集中起来,针对当天完成的任务进行总结,交流自己的想法,提出存在的问题,集体讨论,这样就能够做到日日有收获,天天有提高,从而锻炼自己的实战水平和组织经验。
3软件设计类课程实践性教学效果的考核
软件设计类课程实践性教学效果的考核也是一个较难把握的环节,既要考核学生的独立编程能力,也要考查其团队协作精神,同时还要考虑其组织能力、表达能力、文档编写能力、纪律性等内容。为了客观科学地评价学生的实际效果,最好是分阶段考核,各部分按照一定的比例综合得到总成绩,可以等级表示,也可以用分数反映。
在课堂实验实训阶段,可以由任课老师根据每一次操作任务的完成情况进行登记评分,重点考察其规范程度,对于具有创新性的作品,可以适当加分,并在全班展示,让设计者讲解思路,为其它同学提供启示。
课程设计阶段的考核由指导老师和项目组长组织学生共同进行,首先由组长汇报课题的设计思想、主要技术、任务分工等情况,并演示软件,大家可以相互提问。老师根据项目完成效果确定这个组的等级,然后由各位成员介绍自己所设计的模块,老师重点检查此模块的功能、难易程度、技术含量、界面美观等因素,再确定其成绩或者等级,这时还要充分考虑组长对成员在设计阶段各方面的综合表现。
项目实践阶段的考核由校外指导老师和校内老师组成考核小组,利用项目汇报加平时表现的形式评定,既要考察项目的完成情况,也要考察各位学生在企业实习期间的领悟能力、工作主动性、团队合作情况、算法的复杂性、程序的规范性等方面,其主要依据是提交的软件(包括源代码)以及各种文档。
实际上,对于实践性教学的考核可以采用灵活的方式进行,不拘一格,比如聘请行业专家、现场答辩、随机抽题、项目论文等形式,只要能够检查学生的真实技能即可。
4我们的实践
我们学校十分重视实践性教学,长期坚持强化学生的动手操作能力和实战水平、力争与企业零距离接轨的做法。为了提高程序设计类课程的实践性教学效果,主要采取了以下措施:
4.1严把教师关
教师是实践性教学效果的基本保证,学生的水平在一定程度上反映了教师的水平,既具有扎实的理论功底,也拥有丰富的项目经验是优秀教师的标准。一方面,我们积极将已有教师定期送到企业实地参加项目开发实践,积累经验,另一方面,不断从软件企业引进专业技术人才,将他们的成功案例带回学校,同时,每年组织专业教师进行实践性教学能力考核,通过考核者才能承担课程设计和项目实践的教学任务,并频发相应证书,作为教师晋升职称和评先评优的重要指标。
4.2实践性教学环节流程化
改革原来的学期一贯制,将一个学期分为两个阶段,前一阶段以学习基础理论为主,随堂考试,在学期的最后几个礼拜专门安排做课程设计,一般开设两门小课,专心实践,在项目指导老师的统一安排下,综合运用本学期所学的程序设计工具,结合前面所学内容,以项目小组的形式,完成一个小型软件的设计,成绩计入学生档案,完成者才能获得相应的学分。暑假或者寒假以及最后一个学期,老师分批带领学生前往校外实训基地或软件企业从事项目开发,作为社会实践或毕业设计的成绩,并要求撰写项目总结或论文。
4.3实验室环境企业化
聘请软件企业技术人员设计实验室(实训中心)建设方案,将原来的布局改造成软件研发中心或者工作室模式,服务器、网络设备、数据库完全仿真企业的环境,将开发流程和软件文档国家标准打印并悬挂在墙上,并购置专业书籍存放在实验室,让学生一旦进入实验室,就能迅速感受到真实的企业氛围,还能方便查阅相关资料。
4.4实践项目规范化
教师和软件企业合作开发一整套实践教材,采用项目驱动、案例教学作为主要方法,将常用软件项目的全部开发过程编写到教材中,源程序存放在服务器,供学生编程参考。每次课程设计或者项目实践后都要评比出优秀作品,将其全部程序及文档资料保存下来,供以后教学和低年级学生使用。
经过近几年学生的反馈情况,我们的改革收到了良好的效果,学生在校期间已经具备了一定的经验,走入社会即可迅速融入开发团队,胜任软件工程师职责,深受单位的好评,不少毕业生特别是原来担任过项目小组长的学生很快即可成为业务骨干或者项目经理。
5结束语
高校教学与行业脱节是普遍存在的现象,程序设计类课程实践性教学更是一个永恒的话题。所幸的是,学校和企业都充分意识到了这一点,各高校正在采取积极的举措消除这一段距离,企业已变得越来越务实,不断细化岗位职责。随着校企合作的深入,订单培养方式的持续,相信在不远的将来,这种差距会越来越小,直到完全消失,那时学校、企业、学生三方都能成为实实在在的受益者。
收稿日期:2007-10
参考文献:
[1]教育部计算机科学与技术专业教学指导分委员会。 中国计算机本科专业发展战略研究报告[OL]. , 2005,05.
作者简介:胡伏湘(1967-),男,湖南益阳人,副教授,博士研究生,专业带头人。主开方向是网络技术,信息工程。
通信地址:湖南 长沙市 雨花区 香樟路22号 长沙民政学院 软件学院,410004
TEL:13077319484
历史的时针进入21世纪以来,我国迎来了信息技术快速发展时期,伴随着信息技术的飞速发展,Internet 的发展与完善使我国获取了世界范围内的大量信息基础设施。软件设计过程中所运用的设计模式也得以初步显现。设计模式(Design pattern)指的是一种运用范围广泛且基于分类编码以及代码设计的一种总结形式。在软件设计中运用设计模式可有效地提高代码的使用率,不仅确保了代码的稳定性而且更加的易于被人们理解并接受。设计模式在当下的今天已经被广泛的用于到各类软件的设计中去。本文接下来将围绕设计模式及其在软件设计中的运用展开分析和讨论。
【关键词】设计模式 软件设计 运用
设计模式的功能主要是针对面向对象进行设计的过程中频繁出现的设计中反复出现的设计问题给出具体且行之有效的解决方案。设计模式概念诞生于上世纪九十年代,是由Erich Gamma 等人从建筑设计领域引入到计算机领域内的。在当下有关于设计模式尚存许多有争议的话题,但因其可以给出一套完整的软件设计公共语言,使得一些相关的工作人员能够分享高端设计大师们的宝贵经验,这种争议的声音也就逐渐趋于平静。说到设计模式的作用还远不止以上那些,其最为让人称道的是软件的重构提供了目标。
1 设计模式相关概述
追溯设计模式的起源其是一种源于建筑学的概念,被导入到计算机领域之后其主要的功能是记录软件开发人员发觉出的一系列共性问题以及软件开发人员经验证所得出的成功解,并且理清特定上下文所表现出来的问题及其与之对应的解决方案之间的联系。本文所提及的软件设计模式当前多是用于明确设计模式与另外的面向对象设计方式的关系,并且得出两者之间所适应的范围等等。
2 设计模式的具体分类
设计模式的分类大体可以分为行为型、创建型以及结构型。其中各个分支又可以进行进一步的细分。
行为型模式可细分为以下几种:备忘录模式、迭代器模式、解释器模式、观察者模式以及中介者模式。
创建型模式可细分为以下几种:原型模式、单例式模式、建造模式、抽象工厂以及工厂方法模式。
结构型模式可细分为以下几种:享元模式、组合模式、桥模式、外观模式以及装饰模式。
3 设计模式在软件设计中的运用
当下国内的软件设计模式普遍都是运用于两个层面。首先,待到整个软件系统结构搭建初步完成后,可以及时的加入满足特殊需求的组件以及给予模块指定的设计使其在功能上更加灵活。软件设计模式本身就具有明显的复杂性,这也就使其无法用于相关具体的软件设计,一种原因是由于设计模式在运用的过程中得不到指导,另一种原因是软件设计模式所对应的设计师在设计的过程中没能够正确的把握设计方向。
3.1 设计模式的一系列步骤
为了使设计模式的效果达到最佳,应充分的遵照下列步骤进行:
(1)抽象化有待进行解决的种种问题,类型实施合理规划拆分。
(2)针对问题所属类型采取适用于这一类型的设计模式。
(3)规划问题并进行相应的模式匹配。并且把问题与选择的模式两者进行对比得出相互间共同存在的特性。针对需要解决问题所涉及的整体区域进行所有类及其对应的模式进行通盘归纳,在此过程中一旦发现所采用的设计模式并不适合立即重新返回第三步进行重新设计。
(4)对所采用的设计模式进行变体,所采用的方式可以是对初始结构拓展或修正,以便及时的解决当中所存在的问题。
(5)对所涉及到的软件体系进行结构细化使其进一步完善。
(6)对设计质量实施度量。
3.2 设计模式选取
在软件设计过程中设计模式的选取至关重要,选取恰到好处的软件设计模式,一般要充分结合以下几点因素。
(1)事先总结出在设计进行过程中哪些因素是非固定存在即可以变化。
(2)充分考虑设计模式对所遇到的问题的解决方式,并且分析所给出的解决方式是否行之有效。
(3)明确反复进行检查的原因是什么,所选用的设计模式是否可以很好地解决此类问题。
(4)对设计模式的主要方向实施浏览。
(5)需要对与目相关的模式进行研究。
(6)清晰地了解并掌握模式是如何实现相互关联的。
3.3 设计模式的应用
待到软件设计模式选定以后,在执行的过程中需要严格遵照科学方式方法进行设计。
(1)将其所设计的模型实施详细浏览。
(2)深入的对协作、结构以及参与者三部分进行研究探讨。
(3)仔细观察代码示例部分以及观察相关的一系列案例。
(4)选取设计模式相关参与者名字,以使其在全文的运用上更具鲜明的意义。
(5)对设计中所涉及的类进行定义。第六,对应用中的操作名称采取在定义模式中专用,良好的实现在设计模式中的责任与协作的操作。
4 结语
进入新世纪以来,在软件设计面向对象领域工作者们所收获的最有意义的成就就是设计模式概念问世与其所得到的稳定发展。从设计模式由建筑领域被引入计算机领域以来,设计模式概念被提出至今其凭借着表达的清晰性和简洁性备受广泛关注,自身拥有的强大适用性也得到了深入的发掘。实践是检验一切的唯一标准,反观设计模式从出现至今这一路走来,设计模式在软件设计中的运用经受住了一次又一次的检验,时光荏苒相信随着面向对象理论的发展,设计模式在软件设计中的运用也定会愈加完善。
参考文献
[1]G Vanmeerbeeck,P.Schaumont,S.Vernalde,M.Engels,and L Bolsens.Hardware/Software Partitioning of Embedded System in OCAPI -xl.Proc.of the Ninth Int.Symposium on Hardware/Software Codesign(CODES' 2009),2009(22):26-29.
[2]姜昌A,胡幼华,杨旭丽,张婕洁。一个基于遗传算法的仿真优化包的设计与实现[A].系统仿真技术及其应用(第7卷)――2010系统仿真技术及其应用学术交流会论文选编[C].2010(12):16-19.
[3]苏飞,张能立,王紫绮,万小林。面向对象设计模式在B/S 架构Web应用中的运用[J].武汉理工大学学报(信息与管理工程版),2009(08):09-11.
作者单位
1.1如何更好地达到教学效果
服装结构设计课程作为一门知识系列性较强的课程,有较完备的理论知识内容,教学中旨在使学生系统地掌握结构设计的理论,包括人体与服装的关系,省、领、袖的结构设计原理及结构设计方法,各部件间的组合变化关系,因此习惯性教学常以理论教学为主来完成课堂授课;但结构设计课程中的知识点内容较抽象不易理解,因此常需要实践补充来加深理解知识点,另一方面理论知识最终是运用于具体的实物中,因此服装实践也是检验服装结构理论运用的最佳标准。然而究竟在什么地方运用实践、什么地方理论阐述、二者如何结合,使服装结构课程在有限的学时内达到理想的教学效果?这些都是教师从事服装结构课教学长久以来一直的研究方向和目标。
1.2如何加强专业课程间的内在联系
服装结构设计课程与诸多服装专业课程有着紧密的联系,如服装设计、服装款式设计、服装造型设计课程内容是其结构设计的基础,而服装工艺学、服装工业制板、服装生产管理、服装人体工程学等课程又以服装结构为基础。因此,服装结构课程既是一门独立的课程,又是服装知识储备运用的综合课程,如果能将服装结构置之于服装系列教学的大课程中,不单纯地将其看为一门课,而是作为一个教学分支来展开教学,对服装相关专业知识的学习,将是一项深化工程,因此服装结构设计课程中如何恰到好处地贯穿相关课程专业知识,加强专业课程间的内在联系,也是服装结构设计课教学模式探讨的一项重要内容。
2服装结构设计教学模式的改革
2.1增加项目式教学,与实践紧密结合
服装结构设计课程是为未来进入社会的服装生产服务,因此不可避免地与服装订单及目的性生产相关联,因此在服装教学的实践中可以结合订单的实际要求进行项目式教学培养,增加实践环节。如在讲到女西装的综合制图环节时,由于女西装结构复杂,很容易使学生产生困倦和烦燥的情绪,不能正确将结构制图的方法掌握。在这个环节中可采取项目式教学,指定客户需求,让学生为其设计款式,并根据自己设计的款式进行剖析和绘制结构图,学生们产生了兴趣,乐于实践,积极参与制图,再由教师依据学生设计的款式及结构图进行单独讲解和西装系列化款式变化及结构设计变化的综合总结,不仅使学生掌握一款西装的结构设计,还对比学习了其它的款式结构,增加了学好西装结构的兴趣,加强了款式图结构图间对应互换关系的认识。
2.2增设教学实验环节,贯穿服装工程各环节
服装如果纯以理论教学为主,会有大部分学生对抽象的结构关系的理解片面化,适时地增加服装生产环节是对结构内容学习的加强。如学生在学过裤装结构以后,很多同学对裤装中的上裆、下裆、中裆、侧缝、横裆、立裆的位置混淆不清,相互间的关联更无从理解,严重地影响了裤装结构原理的掌握,只能机械的记忆,对不同款式的变化只能照搬照用,因此,增加裤装制作的实验,让学生自己设计款式、制板并缝制裤装,复杂的结构关系通过工艺制作很容易理解,此时再讲款式结构及变化,板型的疵病修正,印象就更为深刻。在实验环节结束后,学生们感慨地说:“实验中,我开始将裤子缝反了,后来终于搞明白了哪片接哪片,通过实验我知道了裤子制作的全过程,也知道了裤子结构图中线条的意义,很开心”,“通过制作我对服装结构产生了兴趣,很期待下学期的结构课”,“我在实验中知道了认真的重要性”。通过实验教学环节的开展,使大部分同学对所学到的结构知识进行了运用和发挥,制板能力大大增强,同时,简单的裁剪、缝纫操作为以后的制作工艺做好了准备,减少了易出错的环节发生。
2.3强化制图训练体系,提高制板能力
服装结构设计的实现需用结构制图体现,因此制图水平的高低是制图优劣的体现,也是结构设计能力的体现,一张好的结构图不仅要求结构合理,还要制图清晰干净、准确表达结构意图,因此制图本领的培养尤其重要。结构课作为一门必修课,为了考核知识点的掌握情况多数高校将其设为考试课,70%~80%左右的成绩需要在试卷中体现,如何在有限的时间里督促学生认真完成结构图的绘制,除了要求学生认真记好课堂笔记还要即时做好课下练习,制图中需要耐心和细心,稍不留心就会出现制图错误,而自己经常对较大的错误“熟视无睹”,小错误如不及时纠正往往会造成更大的错误,因此课程中大量的结构图需要教师即时的纠正和检查,除此之外,对于不能时时关注的制图细节,可采取课堂互批互改的环节,取长补短,共同学习,活跃了课堂的气氛也激发了学生的思考,尽量避免学生带着错误进入下个环节的学习。同时教学中还可适时地将制图作业或笔记进行展示,让学生在看到别人作业的时候,看到自己的差距和位置。久而久之,在一查二批三看的强化制图训练体系制约下,达到共同进步的教学目的,只有将制图训练做好,制图的本领提高了,结构制图的原理掌握了,制板的能力也才会加强。
2.4导入立体构成教学环节,提高服装综合制板能力
众所周知,服装平面结构设计与立体结构设计同为服装制板的两个方面,二者有着极大的互补关系,随着社会上人们对服装款式求新、求异心理的迫切驱使,立体构成式服装越来越多地走入社会,立体构成服装着装效果好,成功率高、造型直观,但单一的立体构成服装成本高、效果具有随机性,且受操作者经验手法、操作中必须具有人台等的限制,常具有局限性,只有将二者有机结合才能达到扬长避短、提高工作效率、合理使用面料,达到优化设计效果的目的,如在领子的学习中,可结合花式领的设计让学生体验平面结构与立体构成结合的制板方法;再如样衣的试穿阶段,可结合立体构成的方法进行板型校正,减少了疵病,优化了设计。通过立体构成教学环节的加入,实现了平面结构与立体构成的结合,提高综合制板的能力,学生在教学中学习了方法,为高级制板水平的培养奠定基础。
3结语
艺术设计教育旨在培养德智体美全面发展,具有良好的艺术修养、艺术设计与表达能力,掌握相关的艺术学、社会学、文化学及心理学方面的知识,并具备一定相关技术知识的宽基础、高素质,具有创新精神和实践能力的高级应用型艺术设计专门人才。邓小平在1992年的南巡讲话中说:“……应该主要看是否有利于发展社会主义社会的生产力,是否有利于增强社会主义国家的综合国力,是否有利于提高人民的生活水平……”这也指出了艺术设计的发展方向。英国首相撒切尔夫人说:“设计是我们工业前途的根本,优秀的设计是成功企业的标志。”社会经济的不断发展,使人们对生活质量提出了更高的要求,这又要求艺术设计必须跟上社会经济发展的步伐,紧随时代的发展而发展。从这个角度来说,“艺术设计也是一种生产力”、“设计就是经济效益”。这就要求艺术设计必须与先进的信息技术相结合,艺术设计的发展方向必须符合知识经济的发展方向。一方面,随着经济的发展,人们生存要求的变化,大众审美趣味的转移等,促使设计必须时时以新的姿态不断演变。另一方面,艺术设计又影响着人们的生存方式。当今,以计算机网�
二、优化艺术设计教育课程设置
为了培养学生的创新思维,面向未来的艺术设计教育课程设置安排应更加科学化、系统化、灵活化。结合本校本地区特点,系统规划、组织、实施产、学、研一体化模式;加强艺术理论、专业理论课在课程设置中的类型选择和比重设置。当代艺术设计是科学与艺术、营销与市场、时尚与地域文化高度结合的设计;调整教学大纲和课程内容,突出岗位技能和创新能力的培养。大纲和课程内容是培养目标的具体体现。它们不但要体现应用性,更应突出岗位技能和创新能力的培养。因而,设计教育只能因地制宜,因市场需求而发展,并且随时都处在一种应对市场的变化,随社会需求而改变的状态之中。那种希望建立一个稳定的、标准的,以不变应万变的设计教育体系的想法只能是空想。我们要积极吸收和借鉴世界设计界的新思维、新流派为我所用。教育目标和教育手段以及教学内容应与企业对设计师的具体要求衔接;借鉴发达国家的方法和手段来帮助我们发展。总之,对于艺术设计教育来说,课程设置的安排应该是将设计作为一种高度复合型的交叉学科来组织教学。强调教师和学生能动性的发挥。激发彼此的潜能,采用不拘一格的教学手法,实现理论知识向实际能力和社会责任的转化,提升整体教学质量。
三、采用灵活的教学模式和教学方法
设计艺术教育与相关行业、市场的关系十分密切。设计产品要直接经受市场的检验,并得到消费者的认同,因而社会学、市场学、营销学以及广告学、设计管理等不仅是设计艺术学的相关学科,更是设计艺术各专业必修的科目。因而,在设计艺术教学中,除了对学生进行设计艺术理论和实践的培养之外,也要将市场经营的知识导入其中,使学生尽早了解社会、了解行业、了解市场,以缩短学生对市场认识的过程,使学生能够尽早认识设计与市场的关系。可采用以下的教学模式:
1.工作室教学模式
所谓工作室模式就是实行“以学生为中心,以教师为主体”,实行导师负责制。工作室以个案教学为特征。既有独立的研究方向,又注重学科之间的相互渗透,具有融合性、开放性、互动性、可选择性等特征,并注重课题教学的实践性环节。实际上它也是一种综合化的教学模式,是建立在多学科系统性知识基础之上的,因此它能够为学生创造力的发挥提供良好的空间,为创造设计的成功奠定基础,它顺应了时展的需要,是对当今艺术设计教育改革的一次有益的探索和尝试,它促进了师生的互动交流和学习实践,给学生提供了掌握专业技能、培养创新思维的良好操作平台。2.建立校外实习基地,注重学生实践能力的培养
通过实践,让学生贴近专业、企业、市场、社会。当然,在建设设计实践教学基地时,我们应与当地和周边地区产业紧密结合起� 各院校应根据不同的地域特色和专业特点选择不同的教学点。在此之前,要先组织教师深入企业进行调研,一是了解企业的生产技术状况,为理论教学的应用提供现实参照;二是通过调研,搭建互动平台,增进彼此友谊,培养与企业管理者之间的感情,为友好合作奠定基础;三是了解企业的合作意向,明确校企双方的需求,通过合作办学,实现双赢,实现实践教学模式的可持续发展。有了稳定的实践基地,学校就可以利用假期到实践基地参与设计,使学生在实践中发现问题,解决问题,获得实践经验。由此获得真正意义上的教学和社会实践紧密结合,也使产学研相结合的综合化设计教育模式得以真正实现。
在不同的教学模式下,教师应采用相应的教学方法。其中,可以运用兴趣法将学习变成愉快的创作体验过程;营造主动思考的学习氛围;运用讨论法使课堂变成教学互动学术气氛浓烈的研究场所;建立严谨的治学态度;建立师生交流平台,为学生开设第二课堂;教学相长,重视历届学生学习状况的研究总结等等。
四、建立健全的就业指导体系,将学生成功推入市场。
在校期间不仅要重视学习成绩,还要重视考察各地、体验生活、课程交流以及参与项目、合作课题等一系列的经历和体验,这些都是积累经验、丰富知识的重要方法。各教研室应围绕着“怎么准备实习”、“怎么安全实习”、“怎么顺利毕业”三个问题展开实习动员,处理好毕业顶岗实习与就业的关系,确保学生“下得去、留得住、稳得下”。还要求学生在实习当中要做到“三练”——练应变能力、练综合素质、练知识运用;做到“三找”——找问题、找差距、找方法;做到“二带”——带着任务去、带着收获回。动员会普遍呈现“教师热情高、学生收获大、现场气氛好、整体效果佳”的好效果。对于就业较困难的专业,还应该研究讨论出一些具体的对策措施,比如:
第一,书记、主任带头寻找困难专业的就业渠道,找突破口,广泛联系,发动教职工找渠道,派出人员到各地挖掘资源,传递信息,落实具体的就业办法。
第二,系上再次修改有关就业的奖励措施,重点是要奖励做出突出业绩,做了实际工作的老师,不再吃大锅饭,不搞照顾政策。
五、结语
根据经济体制转轨、产业结构转型的需要,为了加快推进科技教育与经济社会联动发展,我们必须积极探索建立服务型教育体系、产学研结合体系和教育培训服务体系,增强教育对经济社会的人才支撑能力、知识贡献能力和学习服务能力。高校在构建服务型教育体系的过程中,应积极探索产学研合作的新模式和高校与企业利益共享机制,应根据自身的办学条件与资源条件,扬长避短,走体现自身优势的发展道路,应勇于创新,结合实际、不拘一格、突出特色,积极探索多种模式和灵活有效的机制,并为提高高等教育对支持和服务地方经济的能力起到积极作用。邓小平说:“科学技术是第一生产力”。我们认为,艺术与技术相结合的产物——艺术设计,同样是一种生产力。它像其它生产力一样,推动社会经济的发展。我们的艺术设计教育要培养出真正有创意的设计人才就应该改变旧有的观念,把科学理性思维纳入到艺术设计思维之中。只有具有正确的思维方式才能解决创意能力的问题。现代艺术设计必须是理性的、科学的创意设计。只有这样,我国的设计教育才能在激烈的人才市场竞争中适应新形势下的市场需求。
【摘要】社会经济是基础,艺术设计教育要发展并为社会经济服务,就必须与社会经济密切联系,顺应市场经济的发展方向。本文从四个方面入手,浅谈了市场经济驱动下的艺术设计教育模式。
【关键词】市场经济发展艺术设计教育模式
参考文献
1全国高等院校艺术设计教学与实践学术研讨会论文集。目标与特色。湖北美术出版社,2005.11
22005国际工业设计教育研讨会论文集。2005当代工业设计教育纵横。机械工业出版社,2005.11
关键词:数学软件;实践教学;教学改革
中图分类号:G642.0 文献标识码:A 文章编号:1674-9324(2012)07-0110-02
一、课程简介
随着科学技术的快速发展,数学模型已经在社会各个领域得到广泛的应用,数学软件就是建立数学模型的强有力工具,MATLAB、Mathematica、SAS等都是很优秀、应用广泛的数学软件[1]。数学建模,数学实验等一系列基于应用的数学课程需要有数学软件的支撑,数学算法思维被引入实践教学当中,数学软件的应用正是算法思维得以实现的程序设计工具[2]。高校数学相关专业开设了数学软件课程。数学软件课程主要针对只讲定理、推导、计算,理论性比较强的课程,如高等数学、线性代数、微分方程、图论等,讲授如何运用MATLAB、Mathematica等数学软件,结合数学模型、算法设计和软件应用,分析推导过程,计算结果,通过理论与实践相结合加强学生对所学知识的感性认识[3]。
二、《数学软件》课程的现状
面向21世纪高速发展的科技,高等教育肩负着培养基础扎实、知识全面、有创新思维的实践性人才,而高等教育主要以课堂讲授、理论教学为主,这对于《数学软件》等实践性较强的课程教学远远不够[4]。
1.大纲教材难定。数学软件引入高校教学的时间不长,推广过程中还存在各种问题[1-2]。其中的关键问题是教学大纲难以确定,究其原因,主要是目前数学软件的授课内容无法指定,可以选择教学的软件多不胜数,如MATLAB、Java、Mathematica、Lingo等,不同高校、不同专业所安排的教学内容各不相同。从而,各单位也只是根据具体的大纲来选定教材,整个《数学软件》课程的教学大纲、教材和教学参考书都没有形成规范,难以统一。
2.课时安排偏少。《数学软件》课程安排偏少,课时数不足[4]。以我校为例,在课程安排上,仅为数学系学生在第5学期开设数学软件选修课,这意味着并不是全部学生都会选修,而在此之前并没有其他正式的课程介绍数学软件,学生没有机会系统地学习软件计算。课程总计只有48学时,其中16学时为授课,32学时上机训练,在这么短的时间内,要将科学计算的理念讲授给学生,使他们在将来能运用数学软件工具来解决问题,这对教师的教学能力要求过高。
3.理论考核欠妥。《数学软件》作为一门以实践训练为主的课程,在理论传授、实践训练以及考核方式上面都应该以实际操作为主线[4-5],然而,现在的教学除了稍微加大了实践训练课时之外,在其他方面未见有改变,特别是考核方式,很多高校不能摆脱传统的考核模式,还是采用理论考核,以卷面成绩作为对学生掌握数学软件程度的评价。实际上,理论考试成绩优秀的学生,其实际动手能力不一定很强,而编程能力强的学生,其理论考试成绩往往处于中等或中上,因此,实践课程只做理论考核明显是不合理的。
三、教学改革初探
数学软件作为算法设计和数学建模不可或缺的工具,很有必要在高校的数学相关专业开设该课程,让学生学习并掌握相关编程技巧。针对我校数学软件课程设置与课堂教学的不足,初步提出以下教学改革措施。
1.转变教学形式。在《数学软件》教学过程中,时刻联系数学建模的方法与模型,把数学建模的思想融入课程教学当中,重视如何将实际问题抽象成为数学问题,重视模型算法的理论推导和优化运算。在教学中强调相关的数学建模知识点,提高学生的思维能力,引导学生提出解决问题的方法,并能够运用数学软件自行设计算法并编写程序,最终解决问题。
2.拟定教纲教材。《数学软件》课程作为数学专业学生的专业课程,需要确定教学大纲。我们首先应该借鉴其他优秀高校的教学经验,由教学课题组的教师一起讨论,教学大纲应该以实践为主题,可以安排MATLAB、Mathematica、SAS、Java等的一种或多种数学软件的教学,给学生安排更多的机会上机训练,训练应该突出重点,强化学生动手能力。合适的教材可以不只一本,教材的内容应该是以实践指导为主体,结合我校学生的实际情况进行选取,同时可以选择实践训练指导用书。此外,结合课题组各位老师的教学经验,参阅数学建模、数值分析、算法逼近等相关课程的经典教材,自行编著适用于我校数学软件教学的教材。
3.加强理论授课。实践训练必须有相关的理论基础,《数学软件》总的课时量应课程安排有部分课时用于理论授课,我校安排理论授课的课时比例比较合理,但该增加。在理论课程中,给学生讲解数学建模中常用的算法模型和经典的案例,由浅入深、由表及里地讲解每一个重点和难点,深化学生对理论知识的理解,强化学生利用数学软件来解决实际问题的手段和方法,培养学生使用计算机程序处理问题的能力。为学生的实践训练奠定理论基础。
4.激发学生积极性。我校《数学软件》课程作为专业选修课开设,本专业学生选修应该是兴趣所致,但教学过程中发现,学生学习缺乏应有的热情,特别是上机训练的课时,学生动手练习的积极性不足,对于课堂练习和课后作业都应付了事。针对这种情况,教学需要调动学生的学习兴趣,关键在于开课的前几个课时,特别是第一课时,可以通过介绍生活中的工程建模引入数学软件,由此引入课程教学。在授课过程中,不仅要介绍某个函数的功能作用,而且还要介绍该函数的使用方法和使用技巧。运用类似这样的教学技巧,有望提高学生的学习积极性。
5.转变考核形式。《数学软件》课程应该以实践考� 减少理论考试所占的比重,重点考核学生实际编程解决问题的能力。上机考核给学生提出实际工程中所面临的实质性问题,让学生根据自己所掌握的知识基础,提出自己的想法,建立数学模型,并使用数学软件来整理算法,编写、编译、运行程序,最终解决问题。
数学软件已� 为了培养学生丰富的数学算法思想,为他们的想法提供了实践平台,在高校的《数学软件》课程教学中应该考虑利用多种有效的教学手段,开启学生的算法设计与构造模型的思维和技巧,鼓励他们大胆创新,促进学生对于一种或几种数学软件的偏好,达到提高教学质量的目的,
参考文献:
[1]王海英。数学知识、数学建模、现代数学软件关系与结合途经的探讨[J].中国地质教育,2011,(1):95-97.
[2]吝维军,季素月。数学实验——数学方法、数学软件和数学应用的融合[J].大学数学,2011,27(1):153-156.
[3]刘智,黄磊。数学软件在高等数学教学中应用及价值分析[J].价值工程,2011,(30):238.
[4]宁,赵珅,宋方臻。MATLAB教学应重视科学计算能力的培养[J].中国现代教育装备,2009,(5):73-75.
[5]杨夷梅,杨玉军。Matlab教学中的方法与实践[J].中国电力教育,2008,(127):59-60.
关键词:软件工程专业;应用型人才;培养模式
中图分类号:G642 文献标识码:A
1国内软件人才培养中存在的问题
软件人才培养模式的不合理会给软件业带来一系列的影响:
(1) 软件企业中的软件人才结构不合理。企业中只有极少数的几个主力,企业的发展、项目的开发、项目的管理及对开发成本的控制都由这几个主力来担当,这导致企业的发展及生存全都压在主力上,风险高。
(2) 软件人才缺乏“实战”训练。软件人才无法围绕软件工程的相关过程开展工作,导致软件项目的开发和管理难以按一种好的模式、好的机制展开,在关键问题上的处理能力不强,使得软件项目的失败风险不断提高。
(3) 软件企业中的软件人才知识结构不合理。理论与实际动手能力不平衡,在项目开发和管理中表现出无预算性、无预见性、无文档指导性、随意性强,往往导致软件开发周期长,开发成本过高,影响了软件企业的生存和发展。
由此可见,软件人才的培养模式关系到中国软件企业的发展。如何培养社会急需的软件人才,已成为关注中国软件业的人士最关心的问题。但是国内高等院校在软件工程专业人才的培养模式上还有着明显的不足,主要表现在:
(1) 培养目标不明确,培养层次不清,致使教材的选择、教学大纲的拟定、教学模式及手段的运用和教学计划的执行缺乏灵活性、层次性和实用性。最终导致学生个性在专业方向上得不到发展,可塑性较差。
(2) 闭门造车式的人才培养模式无法适应企业现实的需求。软件工程是一门新兴的学科,其发展与信息社会的发展及需求息息相关。而目前大多数高等院校依然沿用老一套的培养模式,使得许多学生将精力集中在过多过泛的基础教育中,以理论讲授为主的教学方式致使学生的实践能力与理论能力严重失衡,实践教育的不同步性导致了多数人才只能“纸上谈兵”,最终表现出来就是:软件工程专业人才远远跟不上企业现实的需求。
(3) 课程体系的设置缺乏以“实训应用兼顾理论指导”为向导。在培养模式中,往往走了两个极端:一种情况是过分强调理论,教师授课过程中无法营造一个好的实际工程项目环境,教师授课就会枯燥无味,而学生在脱离了对实际项目的参与后,要理解整个课程体系的相关理论就会更加吃力,失去学习兴趣后难免产生厌学情绪,最后导致另一个恶性循环;另一种情况是教师主要强调简单的开发应用――表面化实训,缺乏系统性的理论指导,学生整个学习过程中就是掌握了如何实现系统的某部分功能,培养出来的专业人才只能编写代码而缺乏理论指导,致使其发展空间有限。
(4) 缺乏综合应用能力的锻炼。现行各地方高校的教育体制比较落后,在软件工程人才的培养过程中,教学计划的执行死板硬套,各门课独自设立实践教学,缺乏综合的实践教学,忽略了指导学生理性地将各专业课程的知识有机揉合在一起,学生缺乏综合应用能力的锻炼,致使学生仅仅专著于某一门课程的实践锻炼,学生综合运用知识的能力得不到提高。虽有毕业实习,也往往表于形式化,未能真正锻炼学生综合实践动手能力,学生步入社会后还得从头再学习。
2结合实际,提出人才培养指导思想
肇庆学院为了贯彻落实“教育部财政部关于实施高等学校本科教学质量与教学改革工程的意见”(教高[2007)1号)文件精神,提出了“软件工程专业应用型人才培养模式优化改革”,改革体现了“新形势下的软件工程教育教学改革与建设”,并应符合肇庆学院提出的“口径宽、基础实、适应广、能力强”的人才培养目标:
(1) 理论教学为辅,加大实践教学比重;
(2) 突出学科平台关键课程,模块化的专业基础课程和专业选修课程有利于学生按需的个性化发展;
(3) 增设综合应用实践教学,注重培养学生的综合应用知识能力、创新能力和团队合作精神。
3软件工程专业应用型人才培养模式的改革和优化
3.1推进改革软件人才教育理念和模式
地方性高校的很多学生底子比较薄,动手能力较差,因此存在的问题也比较多,例如针对计算机基础课程――程序设计,学生在课堂上学习了很多程序设计的语言语法、函数库、数据类型等,但许多学生都不知道学习这些知识的用处,无法与解决实际问题联系起来;学习了数据结构和算法设计但却无法使用前期所学的计算机程序设计语言来实现;学习了数据库系统原理和软件工程,却不能通过需求分析开发出一个满足用户需求的简易MIS。若沿用传统的人才培养模式,理论与实际应用只是单独过程性结合起来,课程没有预留出综合性应用实践教育的时间段,始终依然无法很好地解决上述问题。
推进改革软件人才教育理念和模式主要是通过参考、修订和引进软件业发达国家对软件人才培养成功的经验,采用以链式案例式的教学模式。通过一个完整的项目案例,在引导学生进入专业基础课程时介绍项目实现的每个步骤所涉及的主要知识内容,让学生了解在整个学习阶段所要掌握的主要知识模块。在学习计算机语言阶段,掌握相关的语法、函数后,以案例的某一简单功能为参照,让学生用对应的计算机语言设计实现,既巩固了学生的程序设计思想,又让学生认识到所学知识的实际应用;再附加大量程序设计题目,让学生通过大量编写程序来提高动手能力。在学习数据结构、算法设计、数据库系统原理等也结合学生早已熟知的案例进行详细分析,并用相应知识完成对应部分的设计和实现。最后,在软件项目管理、软件工程等高年级课程中,让学生按照相关的理论指导,完成需求分析、概要设计、详细设计、测试文档等文档的编写。在链式教学过程中,学生在每一个阶段能得到相应实践能力的锻炼,都可以看到实践成果,感受到成就感,使学生的学习兴趣和动手能力都得以提高,把所学的知识融会贯通,同时锻炼了学生的团队合作精神和相互探讨相互竞争的意识。
3.2合理利用校园资源,创建实践教学环境
高等院校中实践教学环境主要可用的资源是专业实验室和校园网络。
专业的实验室是培养专业人才所必需配备的硬件设施,为了配合链式案例式的教学模式,建设对应的专业实验室是必不可缺的步骤。教师需要通过专业实验室来实施项目案例教学,演示案例的设计与实现的过程及方法;学生也需要在良好的实践环境中相互合作、相互讨论和学习;同时专业实验室也有利于教师对学生进行集中式的指导,锻炼学生的实际动手能力,培养学生的团队合作精神。
通过校园网络,构建一个有利于讨论、交流经验的平台,同时构建一个有利于学生在线获取学习任务、提交学习作业的教学平台。教师通过校园网络随时随地公布相应的学习要求和作业要求,学生能方便、快捷地通过这个环境获取相应的信息,还可以在线提交课程作业,并可与其他同学进行讨论和交流问题的解决方法。教师在网络教学平台中的参与,更能起到一个指导性的作用,例如在计算机语言程序设计的教学中,教师在线公布大量的题目,让学生可在线提交所编写的程序并反馈一定的信息,这个过程中可不断更新任务要求,还可针对某一问题进行讨论、分析。网络和教学平台的有效应用,打破了教师受时间、地理位置和实验室的分配利用而无法进行实践教学的约束,是一个有效的实践教学辅助环境,同时也提高了教学效率。
3.3应用为主,设置模块化的专业课程体系
以教育部高等学校计算机科学与技术教学指导委员会所编制的《高等学校计算机科学与技术专业发展战略研究报告暨专业规范(试行)》为指导,结合培养应用型人才的目标,结合地方高校对软件工程专业发展的规划和实际情况,为适应社会信息化和软件工程技术的不断变化发展对应用型人才的需要和要求,通过设置多个模块化的专业课程体系,合理按需修整软件工程专业课程体系,既有利于培养出满足社会、企业需求的软件人才,也有利于学生发挥各自所长的个性化发展。
(1) 合理设置基础课程模块,突出核心基础
在软件工程领域,最新、先进的软件技术文档、技术文献、发展研究等都是英文撰写的资料;操作系统等系统的核心代码的相关注释、变量、函数名等都是用英文命名的;合资、外资公司中的软件工程人员所使用的工作语言也是英语。因此,能否掌握及应用好英语这门语言就显得特别重要。在教学中,在第一至第四学期对学生的英语能力进行强化训练,通过阅读、听力、写作和口语交流等方式提高其英语运用能力;并在第二学期开始的所有专业基础课程、专业核心课程和专业选修课程中加入一定比例的专业英语训练,将英语融入到专业理论知识学习的过程中,达到巩固和不断提高的目的,为学生动手编写英文程序代码、查阅英文技术文献、文档扫除语言障碍。
软件工程人才必须具备良好的逻辑分析能力,高等数学、离散数学、面向计算机的数理逻辑的学习是软件工程人才培养过程中必不可缺的一个重要环节,这些课程的学习对专业基础课程(如数据结构、算法设计与分析、计算机图形学等)的学习起着至关重要的铺垫作用。
(2) 合理设置专业入门基础课程,以引导为主
能否激发起学生对本专业课程的学习兴趣,合理设置新生入学阶段的专业入门基础课程就显得尤为重要了。以计算机导论为主,应以设置类型多样、专业覆盖面广的专业基础知识讲座或新生研讨课为辅,学生学习了计算机最基本的概念后,通过生动有趣的讲座获得更广的认识和了解。通过激发学生的学习兴趣,能引导学生更容易进入专业领域;另一方面,通过拓宽学生的视野和思路,使学生在了解本专业的基础知道自己的专业需求,有利于学生在本专业的个性化发展。
(3) 合理设置专业核心课程,以应用为主
专业核心课程关系到培养出来的软件工程人才的质量,针对计算机学科的需要,应设置以操作系统、计算机网络、数据库系统为核心的软件系统类课程;设置面向对象程序设计、数据结构、算法设计与分析为核心的软件实现类课程;设置软件工程、软件测试技术、软件项目管理、软件系统结构为核心的软件工程类课程;设置相应课程的课程设计、实际项目开发为核心的软件设计及实现类的实践类课程,有利于将一系列的核心课程的相关知识整合在一起,通过综合应用实践,有利于培养学生团队合作精神和提高学生的动手能力。有了核心课程的支持,为下一步的专业个性化学习和发展打下良好的基础。
(4) 设置专业方向模块化课程,突出个性化发展
� 设置多个专业方向的模块化课程,让学生可按需选修相应课程体系,有利于其发挥专业创新能力和专业个性化发展。
4结束语
信息社会的快速发展,软件工程专业应用型人才的培养模式也应与时俱进,一定程度上的校企联合,有利于主动适应就业市场的需求,有利于将学生培养成为高素质实用型人才,为企业输送满足其需求的软件工程专业人才。通过对软件工程专业人才培养模式优化改革的实施,改善在校生的学习效果,提高毕业生的就业率,促进其职业生涯中的快速成长。
参考文献
[1] 费宁,陈春玲,宗平。 软件工程人才的培养思路[J]. 计算机教育,2008,(14):9-11.
[2] 罗代忠。 应用型本科院校软件工程专业人才培养模式探究[J]. 计算机教育,2008,(08):121-122.
[3] 林丕源,刘才兴,张明武,徐建民。软件工程专业的实践教学改革初探[J]. 实验室研究与探索,2007,(12):245-247,254.
[4] 徐建民,林丕源,孟晓飞。 软件工程专业培养模式浅析[J]. 实验室研究与探索,2007,(12):335-337.
Reflection on the Applied Talents Cultivation Pattern of Software Engineering Major
Bai Wei-Hua, Li-Jian, Zhu Jia-Xian
(Dep. of Computer Sci of ZhaoQing University, ZhaoQing 526061, China)
关键词:Zigbee;组网结构;物联网
中图分类号:TN915.65 文献标志码:A 文章编号:1674-9324(2012)04-0213-02
通信技术、嵌入式技术、信息家电的飞速发展,使智能家居网络的构� ZigBee是一种短距离、低速率的无线网络技术,而与物联网的结合更加突出了ZigBee的技术。ZigBee一般采用IEEE802.15.4收发器与ZigBee协议栈的组合,在数千个微小的节点之间相互协调实现通信。这些节点只需要很少的能量,以接力的方式通过无线电波将数据从一个传感器传到另一个节点,所以它们的通信效率非常高。因此,ZigBee在传感器网络、智能家居、工业自动化等领域有广泛的应用。在这样的背景之下,很多公司都开始了ZigBee产业化的道路。智能家居是未来家居的发展方向,它利用先进的物联网技术将家居生活有关的各种子系统有机地结合在一起,通过统筹管理,为人们提供智能、舒适的居住环境。ZigBee技术是一种家电智能控制无线系统,是近几年发展起来的一种短距离的无线通信技术,具有短距离、低功耗、低数据率、低成本、安全可靠等优点,而物联网使用的无线技术,实现物物相连,给人们的生活带来重大改变。家庭内部地理范围小,非常适合ZigBee技术对其进行联网,而ZigBee的最初切入点也正是家庭自动化。采用ZigBee技术组建智能家居内部通信网,其网络采用网络拓扑结构,实现简单,并且具备自组网功能,新传感器节点入网无需人工配置,考虑了系统异常的情况。每一个Zigbee网络节点(FFD)还可在自己信号覆盖的范围内,和多个不承担网络信息中转任务的孤立的子节点(RFD)无线连接。ZigBee技术会因室内环境影响做出相应的改善,采用了多工作模式(如休眠模式)降低了传感器节点的功耗,延长了节点的使用寿命。智能家电控制系统实现了传感器的通用接入,组建了基于ZigBee技术的自组织网络,系统安装方便,扩展性好,具有很好的实用价值。总之,智能家电控制系统已把人们从日常琐事中解放了出来,实现了智能化家居。
一、Zigbee无线组网技术及其协议
家电智能控制无线自组网络系统采用ZigBee技术,对于一种近距离、低复杂度、低功耗、低数据速率、低成本的双向无线通信技术,它符合IEEE802.15.4协议。在网络组建上,它选用的是“星状组网”方案,因为星形结构适合于实时性要求高,数据量比较大的场合。以下是家庭网络的总体结构。
IEEE 802.15.4标准是针对于低速无线个人区域网,把低能量消耗、低速率传输、低成本作为重点目标,旨在为个人或者家庭范围内不同设备之间低速互连提供统一的标准。基于ZigBee的无线传感器网络具有备成本低、传输速率低、设备体积小、省电、网络自愈等特点,ZigBee可以广泛应用在家庭自动化。
二、Zigbee技术家电智能硬件设计
在硬件设计上,家电智能控制系统的硬件设计,主要有射频数据模块、微控制器和设备组成。微处理器选用Freescale公司推出的超低功耗MC9S08GT60,无线收发器选用Freescale公司推出的一种短距离、低功耗,工作在2.4Ghz的MC13192。
三、Zigbee技术家电智能软件设计
在软件设计上,家电智能系统的软件设计分为三层:系统平台层、协议层和应用层。系统平台层通过API应用程序接口来给协议层提供服务;协议层则实现了基于802.15.4的物理层和链路层以及基于ZigBee的网络层协议;应用层通过API来调用协议层提供的服务,实现网络的管理和数据传输等任务。
Zigbee技术的协议层结构简单,不同于蓝牙和其他网络结构,这些网络结构通常为7层,而Zigbee技术仅为3层。在Zigbee技术中,PHY层和MAC层采用lEEE802.15.4协议标准,其中,PHY提供了两种类型的服务:通过物理层管理实体接口(PLME)对PHY层数据和PHY层管理提供服务。
四、结束语
通过项目组全体成员和指导老师的努力,经过了一年左右的时间,我们终于完成了本次项目的论文。从开始申请这个项目时的茫然到这个项目论文文章的完成,每一个阶段对于我们来说都是一次新的尝试和挑战。在这段时间里,我们学到了很多知识也感受了很多,因为这不是一个人独立完成的而是以小组形式,分工合作来完成的。明确目标很重要,小组成员之间的相互协调更是不可或缺,这些都体现出了团队合作的重要性。虽然本次项目不是很完善,还有很多不足之处,但是小组全体成员和指导老师的努力大家是有目共睹的,这些对于我们来说就是莫大的欣慰和成就感,我们相信其中的酸甜苦辣终究会化成美味的甘泉。这次论文的经历让我们受益匪浅,从中我们知道论文是要用心去写,是真正学习和研究的过程,没有学习就不可能有研究能力,没有研究就不会有所突破。希望这次的经历能让我们大家在以后的学习和工作中更加努力,激励着我们继续进步。
参考文献:
[1]李文仲。CC1110/CC2510无线单片机和无线自组织网络入门与世界[M].北京:北京航空航天大学出版社,2008.
[2]
备注:项目负责人:刘娜;学校名称:浙江邮电职业技术学院;项目组成员:周镔、周莎、王琪;指导
省属高校的软件工程专业多脱胎于计算机科学与技术学科,在研究生人才培养模式上受限于计算机科学与技术研究生培养模式。部分高校甚至于采用同计算机专业研究生实施无差别培养方式,这一根本性原因带来诸多问题。
1.人才培养方向目标定位不清晰
软件工程专业硕士应当仅限于软件工程师的培养。软件工程具有极强的工科属性,其人才培养,除软件工程科学硕士和计算机科学技术一样,可培 研究型人才外,专业学位应当清晰定位于培养具有软件工程必备基础知识,在软件工程某一领域具有较强专业知识与技能的工程师。
2.师资比较缺乏,尤其是双师型师资缺乏
软件工程正式成为独立的学科时间相对较短,软件工程师资大多来源于计算机科学与技术专业。计算机科学与技术专业可以胜任软件工程基础课程,但这部分教师往往缺乏工程实际经验,在教学中往往表现为重理论轻实践。省属高校十分缺乏来自软件企业一线的项目经理以上的技术管理人员充任实践课程教师。
3.培养模式陈旧,不适应国家教育部要求
由于全日制软件工程专业学位研究生2009年才在全国开展,很多高校沿用学术型学位研究生培养模式,忽视了国家对专业学位研究生培养要求中的专业实践能力的培养,未能很好地开展专业实践教学。
4.课程设置陈旧,不适应软件企业的人才需求
大多数高校软件工程研究生课程设置大多套用计算机科学与技术专业的课程设置,未体现软件工程学科特点。原因主要是因为师资缺乏、招生规模较小,出于节约培养成本的考虑。
二、一种实用的软件工程全日制工程硕士培养解决方案
四川师范大学作为四川省属高校中最早开设计算机科学与技术、软件工程本科生培养的院校之一,在软件工程工程硕士培养的诸多问题上,做了一些有益探索与研究,针对性地提出了一套适合于省属高校软件工程全日制工程硕士培养的解决方案,希望能为同类型高校提供人才培养的借鉴。研究生培养方案的制定,重点需要解决课程体系设置、培养流程规划与控制。对专业学位研究生而言,还需要解决专业实践能力的培养与训练这一关键问题。
1.课程体系设置
软件工程学科正式确立的两个标志性文件是2004年IEEE推出的软件工程知识体(SWEBOK)和软件工程教育知识体(SEEK)。两个文件内容相近,都包含了软件工程核心类的知识领域、基础类或前导类的知识领域,以及其他相关领域的知识。软件工程研究生的培养从原则上说应遵循上述两个文件,围绕上述知识领域进行教学。但由于这两个文件将软件工程的知识体系划分为知识点,各领域之间必然存在重复和交叠。在课程设置上无法照搬上述两个文件。以SEEK为基础,我们对软件工程的课程设置进行规划。整个课程设置被分为五个层次,分别为工程基础课程、计算机基础课程、软件工程核心课程、扩展课程和实践课程,如图1所示。课程开设顺序大体按照五个层次由低到高依次开展。其中,工程基础课程提供软件工程所需数学理论基础、外语能力培养、软件工程文档写作、论文写作基本功训练。计算机基础课程提供软件开发必须的计算机基础知识,如网络、算法和数据库知识。
相对于本科课程而言,此类课程讲授内容更深入全面。软件工程核心课程设置了高级软件工程、软件体系结构和软件测试与质量保证三门课程。高级软件工程侧重于软件分析与设计、软件工程过程、软件开发案例分析。软件体系结构侧重于结构风格、案例研究、共享信息系统、结构描述、结构的分析与评估、特定领域的软件体系结构和流行的软件体系结构等。软件测试与质量保证着重于软件质量的改进,讨论如何提高软件质量的方法。扩展课程包含系列领域知识课程,研究生可根据研究方向选择两门;软件开发工具讲授最新流行的软件开发、过程管理所需要的软件工具的使用,以实践教学为主。软件开发新技术研讨课程以讲座形式开展,教师和学生均可作为一个专题的主讲。实践课程包含校内实践、校外实践和毕业设计三个环节。
2.培养流程与实施
教育部明文规定,专业学位研究生学制原则上为两年,同时要求应届本科生进行专业实践不少于一年。一般来说,研究生在校课程学习时间应有一年左右,加上专业实践的一年,如何合理安排学习计划,在两年内完成培养环节成了一个现实的重要问题。我校以周为单位制定了四川师范大学软件工程专业学位研究生培养流程,如表1所示:上表规划了研究生培养中的几个关键环节,依次为报到入学、课程学习、校内实践、校外实践、开题、毕业设计、论文写作和送审答辩。第一学期研究生主要是课程学习,同时在校内导师指导下开展文献阅读和编程能力锻炼。第二学期前半学期结束理论课程的学习。后半学期和暑期开展校内实践和毕业设计开题工作。第三学期研究生到实习基地进行校外实践。从第二学期后半段和整个第三学期,学生在专业实践的同时,需完成毕业设计。从第二个寒假开始直到第四学期前六周,研究生完成毕业论文的初稿。从第七周开始,进行论文修改、查重、盲评和答辩工作。
从培养流程表可以看出,这种安排具有两个显著特点。一是理论课程学习安排在一个半学期完成,二是实践课程分为校内实践和校外实践。研究生理论课程学习任务并不重,完全可压缩到一学期半,同时可为实践提供更多时间。校内实践非常有必要。由于是省属高校学生大多能力一般,为保障学生进入企业能融入研发团队从事技术工作,必须先期培训其实践能力。这种安排时间较为紧凑,也比较合理,符合专业学位研究生侧重于实践能力培养的要求,也在两年的学制内确保了研究生的实践时间不少于36周。
三、专业实践能力的培养与训练
软件开发能力是软件工程专业硕士必备的核心能力,其能力培养既是对前端课程学习效果的检验,也是后端毕业设计和就业的必然需要。我校将软件工程专业硕士实践能力培养融入了众多环节。从前期的实验型课程教学,到中期的校内实践、再到后期的校外实践和毕业设计。实验型课程教学解决软件设计开发的基础技能,校内实践解决中小规模软件设计开发能力,校外实践和毕业设计解决中大规模软件设计能力。
1.实验型课程教学
包含软件工具的使用训练、软件开发环境的搭建、软件开发案例分析和新技术研讨。软件工具的使用训练学生单个软件开发工具的使用,如项目管理软件Project、开发文档化软件Rational、软件测试工具LOADRUNNER、QTP、TD等。由于这些工具结构分散,还需进行开发环境的搭建训练。开发环境搭建训练内� 软件开发案例分析中研究生将自己放在决策者的角度来思考项目所涉及到的具体问题,增强了学生的实际应对能力。新技术研讨促进学生或主动或被动地掌握了一些新兴技术,拓宽了技术领域。
2.校内软件开发实践
采用项目驱动形式开展。要求研究生必须申报各类实际的软件开发项目,如四川省苗子工程、学校研究生科研创新项目、学院研究生科研创先项目。研究生可组织本科生参与项目实施,但必须任项目组长,在项目中担任核心角色,完成软件需求文档审定、软件架构设计、软件详细设计、大部分编码工作、测试方案制定等重要工作。
3.校外软件开发实践
在上述环节经历后,研究生已经掌握中小规模软件开发的基本技能,此时将研究生派到实习基地,实战参与企业软件开发项目。其实践由校内导师和企业导师共同负责。前期技能的培养已保证研究生胜任企业中一般性的软件开发角色。
4.毕业设计
研究生在校内和校外实践的36周中,还需要同时进行毕业设计的开题、实施。研究生可结合企业实习工作完成毕业设计。专业实践的考核分为定期汇报和实践环节结束汇报两种形式。研究生应每隔两个月集中汇报一次实习期工作心得,取得的成绩等。实践结束时在全院公开汇报,其成绩作为实践课程成绩。
四、结论
软件工程专业学位研究生的培养,在学科教育与培养面向市场需求的人才方面有着事实上的矛盾。四川师范大学针对现有的培养模式存在专业定位不清晰、师资不足、课程设置陈旧等问题,根据学校学科特点和力量,实现了一套比较适合于省属高校软件工程专业学位研究生培养的解决方案,包括五个层次的课程设置体系、合理地流程安排和实践教学的环节设置。该方案在学校研究生培养中实行以来,研究生专业实践能力有了较大提高。2011年在四川省苗子工程中获得了一项重点项目和四项一般项目支持。该方案尚有一些不完善之处,例如实践教学环节质量的中间控制、过程控制,尚需进一步建立系列制度和规定,确保实践教学的质量。
关键词:日文软件人才;教学模式;项目训练
计算机科学与技术专业的本科毕业生就业情况不理想是一个不争的事实,但这并不是因为市场不再需要这方面的人才。相反,市场对于软件开发人才的需求量非常大。
日文软件人才需求的现状
软件外包是一些发达国家的软件公司将软件项目通过外包的形式交给人力资源成本相对较低国家的软件公司开发,其目的是降低软件开发成本。目前,全球软件外包市场规模已达1000亿美元,并以平均每年29%的速度增长,在目前全球的软件产值中,三分之一都需要通过软件外包来完成。软件外包已�
近年来,
“六双”教学模式在人才培养过程中的实施
在“六双”教学模式下,日文软件人才的培养具体采取了如下措施。
优化软件工程专业的任课教师采取“双师”配置,由学校的教授、讲师主讲专业基础课程以及相关的理论课程,聘请企业具有丰富日文软件项目开发经验的工程师讲授技能训练的课程并进行案例教学。通过“双师”的教学,使学生在较短的时间内掌握软件理论和编程技巧。
将日语作为学生的第一外语为了满足日文软件外包人才培养的需要,在语言教学的设置上,软件工程专业在外语教学上将日语作为学生的第一外语,英语为学生的第二外语,跟踪学生语言的学习效果并适时进行调整。毕业生的日语水平应达到日语二级水平,训练有素且深谙日本企业文化,能胜任日文软件开发和应用工作。根据不同的需要,在完成各层次技术课的基础上,还应加强日本语言、日文软件开发流程与规范、日文软件项目管理与企业文化、项目实战等针对日文软件设计开发的专业知识与能力培养。
取得职业资格证书在学校“双证书一体化”培养模式下,使学生在学习期间通过专项的技能训练取得劳动部门认证的职业资格证书,并参加人力资源和社会保障部、工业和信息化部组织的计算机技术与软件专业技术资格(水平)考试,从而取得人力资源和社会保障部颁发的专业技术资格证书。
实行互助教学模式在教学环节上,为了充分调动教师的积极性,通过采取“主讲教师+助讲教师”的互助教学模式,既充分发挥主讲教师的理论水平和实践经验,学生又可掌握助讲教师熟练的编程技巧。
为技能训练创造优异的教学条件虽然国内外提出了不同的软件人才培养模式,但是不管采用什么样的教学模式培养人才,如果培养人才的过程中没有实际项目做支撑都是纸上谈兵。要想提高学生的技能水平,就必须在技能训练上创造条件。可是,使所有学生深入企业实习又是不现实的。我们结合软件工程专业的人才培养定位目标,引进工程教育的理念。为此,我们针对软件工程专业建设,以培养软件应用型人才为目标,以实际工程项目实训为手段,以市场需求为导向,设计开发了软件技术实训平台(以下简称平台)。平台包括用户信息管理模块、理论知识学习、协作交流、软考训练及工程实践等模块,为软件工程专业的学生提供实时在线的服务,最终达到增加学生软件项目实际设计经验,实现企业需求与人才培养对接的目标。日文软件人才培养在技能训练上实行机房教学模拟训练与企业项目实际训练相结合的方法;在实验实训环境建设方面,利用软件人才工程项目训练教学管理平台为学生提供较为严格的软件项目的训练环境,培养学生掌握与企业项目开发接近的技能水平;在学生具备了相当的技能水平后,安排学生到企业完成企业项目实际训练,使学生能够近距离地接触软件企业的项目开发过程。此外,在教师的指导下,学生还面向学校和社会承揽一些软件开发项目,在项目的开发过程中,锻炼学生实际软件开发能力;还可以通过参加各级专业竞赛,在竞赛中提高学生的软件开发能力。学生实行“基础理论+工程实践”的培养模式:先完成“公共基础和专业基础教育”;然后进行“专业案例教学”、“对日软件开发专业教育”的学习。从教育模式上,先主要完成基础语言教学和专业基础课程的教学,让学生系统地接受软件开发和项目管理方面的语言(日语和开发语言)基础、数据库基础、网络基础等方面的教育,从而夯实专业基础知识。“专业案例教学”又可大致分为两个阶段,但是这两个阶段可以根据实际情况相互交叉和重叠。第一个阶段主要进行“软件案例教学”,第二个阶段主要进行“工程实践教育”,通过让学生在校进行相关的专业课程设计以及在企业进行生产实习、综合课程设计、毕业设计、顶岗工作等方式锻炼工程实践的能力。
充分发挥学校教学基地和企业实践基地的优势,全面提高学生的师范能力和实践水平在教材建设方面,学习国外教材的设计理念,配合案例式教学思想,编写符合本专业教学需求的教材。日文软件人才的培养目标是既能动脑、又能动手,具有较高知识层次、较强创新能力的复合型实用型人才,能够服务于滨海新区的对日软件外包。采用“基础理论+工程实践”培养模式,专业基础教学与案例及工程实验教育并重,通过校企合作等途径切实保证学生的实训实习效果。为了使该专业发展更加符合社会人才需求,体现我们的办学特色,也为学生的就业和个人发展提供更多机会,一方面,使学生在学习结束之后成为既掌握良好理论知识,又具备突出的实际操作能力的实用型人才,与社会接轨,能被企业所用;同时面向企事业单位和日本市场,成为具有创新意识的软件工程技术人才。另一方面,从学生发展方面,强化学生专业理论和实践能力全面发展的素质,依据学生不同的需求,在侧重于培养符合日文软件外包服务行业要求的同时,增设师范选修模块以保证学生的师范能力,从学生自身的特点和社会需求出发,打造实用人才,拓宽学生就业和发展渠道。
参考文献:
[1]谢安邦。高等教育学[m].北京:高等教育出版社,1999.
【关键词】智能家居 GSM模块 单片机
随着网络技术的发展,网络化智能家居系统可提供遥控、家电控制、照明控制、窗帘自控、防盗报警、可编程定时控制及计算机控制等多种功能和手段,使生活更加舒适、安全和便利。本文设计的基于GSM网络的智能家居监控系统由智能监控模块、数据采集系统和用户手机构成,通过GSM短信息的收发实现对家庭设备的远程监控。
1 总体设计方案
系统由中心控制模块和各分散控制模块组成。中心控制模块实现控制用户手机和各分散控制功能模块。选用AT89S52单片机作为该监控系统的核心控制元件。主控单片机模块接收用户手机发送的短信息,根据短消息的内容控制各子功能模块;同时主控单片机模块将家居系统的控制信息以短信形式发送到用户手机,由单片机构成各控制模块子系统。
1.1 系统硬件部分
根据任务需要,合理选择单片机、传感器、GSM模块和设备来构成系统。为使硬件设计尽可能合理,系统的电路设计遵循了以下几个方面:
(1)选择标准化、模块化的典型电路,提高设计的成功率和结构的灵活性。
(2)选用功能强、集成度高的电路或芯片。
(3)选择通用性强、市场货源充足的元器件。
(4)在对硬件系统总体结构考虑时,考虑通用性的问题,采用模块化的设计方式。
(5)系统的扩展及各功能模块的设计应适当留有余地,以备将来修改、扩展之需。
(6)在电路设计时,充分考虑应用系统各部分的驱动能力
最终确定采用AT89S52单片机作为处理芯片。西门子的TC35系列的TC35iGSM模块,TC35i与GSM2/2+兼容、双频(GSM900/GSMl800)、RS232数据口、符合ETSI标准GSM0707和GSM0705,且易于升级为GPRS模块。该模块集射频电路和基带于一体,向用户提供标准的AT命令接口,为数据、语音、短消息和传真提供快速、可靠安全的传输,方便用户的应用开发与设计。
1.2 系统软件部分
软件部分由以下几部分构成:数据采集单元、手机短信信令识别与分析单元、GSM模块TC35 modem接口程序部分、分析控制部分。其中数据采集部分和手机短信信令识别需要作实时处理;GSM模块TC35 modem接口程序部分和分析控制部分则是根据采集和手机短信信令进行分时操作有利于提高系统效率。
2 系统软件设计
软件设计部分主要有数据采集部分、手机短信信令识别、TC35Modem接口程序部分、分析控制部分。其中数据采集部分和手机短信信令识别需要作实时处理;GSM模块TC35Modem接口程序部分和分析控制部分则是根据采集和手机短信信令进行分时操作有利于提高系统效率。本智能家居监控系统软件设计的内容主要有主控模块程序、TC35Modem模块通信程序、串口通信初始化程序和短消息的编码解码程序。软件设计模块如图1所示。
2.1 单片机系统软件设计
为了实现单片机与TC35I模块的通信顺畅,必须使二者的串口波特率一致,如果单片机F=11.0590MHZ,设置串行口波特率为9600,工作方式为方式3,Tl定时器采用工作方式2。其中串行口和定时器的工作方式和初值可以根据具体情况加以更改。
本系统的软件设计是将整个短信处理模块放入单片机的中断服务子程序中。发送和接收串行口数据采用中断方式进行,这样可以大大节省CPU资源。当接收一帧数据进入一位寄存器,送入接收SBUF中,同时将Rl置1;当发送数据载入发送SBUF中开始向外发送,发送完毕后即将TI置1。无论Rl置1还是TI置1,均会激发串口中断,执行中断服务程序。响应中断时,首先判断中断是接收程序还是发送程序,若为接收中断则将SBUF中的数据存入接收队列缓冲区;若为发送中断便将待发送的数据帧发送到SBUF中。
2.2 短消息PDU模式编码解码程序
在GSM标准中,中文编码采用UTF-8的编码,不是目前国内常用的GB-2312编码,因此需要对中文编码进行转换才能与采用GB-2312汉字库相配合,方可正确显示出短消息中汉字字型。由于UTF-8和GB-2312编码之间不存在一一对应的线性关系,因此需要采用查表的方式进行转换。
2.3 短消息收发程序设计
发送短信息的主要工作是将发送的内容进行相应的编码,其次就是将发送所用的SMS服务中心号码、目标号、有效时间和短信内容按照PDU编码的格式发送出去。如果是接收短信息,其工作就是将接受到的短信息内容进行解码,发送和接收的PDU串的结构是不同的。接收程序流程图如图2所示。
3 运行结果
运行结果如图3所示。
4 结论
本文设计了一个基于GSM网络的无线传感智能家居监控系统。系统在运行中还有改进之处,还需进一步对程序结构进行优化。本设计只是智能家居控制中的一部分,目前国内很多公司都在致力于智能家居产品的开发,随着相关技术的进一步发展,我国将全面普及智能家庭网络系统和产品。
参考文献
[1]黄欣荣。基于GSM短信模块的家庭防盗报警系统的设计[J].中国新通信,2010(06),19-22.
[2]曾志永,凌振宝,王君。基于GSM技术的智能家居系统的设计[J].电子技术应用,2005(10),33-35.
[3]齐赵毅,陈杰浩,罗颖等。基于GSM的智能家居远程监控系统[J].科技信息,2013(04),19.
[4]申利民,刘冬香。基于GSM智能家居控制系统的设计[J].传感器世界,2011,17(1):32-36.
[5]王骐,何嘉斌。单片机控制GSM模块实现短信收发的软件设计[J].单片机与嵌入式系统的应用,2005.
[6]马忠梅。单片机的C语言应用程序设计[M].北京:北京航天航空大学出版社,2007.
[7]邱文静。基于GSM短信息的家居设施遥控监测系统设计[D].南京:南京理工大学硕士学位论文,2009.
[8]苏江福。基于GSM网络的智能家居监控系统设计与实现[D].哈尔滨工程大学硕士学位论文,2008.
作者单位
【关键词】自适应软件 开发 应用 自适应对象模型 方法 开发思想 分析
在软件开发设计与应用领域中,随着软件开发技术的不断发展提升,以及对于软件开发需求的不断提高,通过合理、有效的开发模式实现对于需求软件的开发应用,已� 其中,自适应软件作为一种能够自动对于需求变化进行适应以及实现问题域的深入理解、促进技术进步的环境变更因素应用软件,在实际软件开发与应用领域中具有较大的研究和分析价值。尤其是自适应软件在实际应用中对于软件生命周期中,以检测方式实现软件需求以及环境变化情况下规划调整与开发修改特征,在软件开发与设计应用中更具优势,下文将对于以自适应对象模型进行自适应软件开发的方式途径进行分析,以促进自适应软件的设计开发与应用发展,推进软件开发技术发展提升。
1 自适应软件及自适应对象模型分析
1.1 自适应软件及其开发应用现状分析
在软件开发以及设计应用领域中,自适应软件是一种能够自动进行需求变化以及问题域深入理解、技术进步等环境变更因素适应的软件类型,在实际开发应用中强调对于软件生命周期中,以需求与环境变化检测方式进行软件开发设计调整修改的功能特征,具有较为突出的开发设计与应用特征优势。在进行自适应软件的开发设计与应用研究中,为了提高自适应软件的开发设计以及应用灵活性、可维护性等性能特征,开发设计与研究工作人员分别从该软件的开发设计过程以及面向对象的理论成果、技术实践等方面,对于自适应软件进行不同的研究和论述。其中,在对于自适应软件开发设计过程进行研究中,分别提出了敏捷软件开发方式和模型驱动开发方式等,这两种开发方式在自适应软件的实际开发应用中分别具有各自不同的功能特征与优势;其次,在进行自适应软件面向对象的理论研究中,对于传统的面向对象方法进行改进与扩展、面向对象的自适应软件开发方式、自适应对象模型等,都是以自适应软件开发中面向对象的理论研究方面的成果;最后,在进行自适应软件开发设计与应用技术实践的研究中,ASD自适应软件开发方式的研究提出就是比较突出的表现。
1.2 自适应对象模型的体系结构分析
在进行自适应软件的开发中,自适应对象模型方法是一种以元数据进行对象描述实现的自适应软件开发模型与方式,其中,元数据主要是指相关业务实体的属性以及行为、实体间关系、业务规则等相关的配置描述信息,在以自适应对象模型进行开发的自适应软件运行过程中,元数据对于自适应软件的运行具有解释执行的功能作用。通常情况下,在进行软件开发设计时,进行软件开发设计的技术方法中多数面向对象的开发技术与方式都是一种静态的对象模型建立方式,而自适应对象模型进行自适应软件的开发设计,由于是以元数据进行对象的属性以及业务规则描述实现,而元数据又是一种实例级的概念,在软件运行过程中具有解释执行的作用,因此,这种方法进行开发的自适应软件同样具有动态特征。在实际开发应用中,自适应对象模型的体系结构主要包括三个部分,即元模型以及模型引擎、支撑工具等。其中,元模型是业务模型实现的解决方法,它是自适应软件设计模型中的重要一部分;而模型引擎则是通过进行元模型的解释进行实现模型生成的结构单元;支撑工具具有能够为领域专家进行建立业务模型提供,同时实现最终用户编程的功能作用。
2 自适应对象模型在自适应软件开发中的应用分析
应用自适应对象模型进行自适应软件开发中,所具备的最大特征优势就是开发过程中对象模型的变化情况能够在模型引擎的解释执行功能作用下,在新开发软件中进行快速的反映实现。首先,应用自适应对象模型进行自适应软件开发中,用户使用支撑工具在进行对象模型定制过程中,对于系统中的修改不需要进行重新编译,在软件系统运行时由解释执行的对象模型进行应用系统的自动生成;其次,自适应对象模型在进行软件开发中,用户可以对于业务规则进行改变,这主要是由于元数据通常存储在数据库中,因此只要进行对象模型以及业务规则描述的更改,即可以对于系统行为进行更改;再次,自适应对象模型进行自适应软件开发应用,还能够及时有效地对于系统中改变进行反映,从而减少软件开发设计的时间,有效的减少软件开发设计费用;最后,自适应对象模型进行自适应软件开发过程中,由于类的数目减少,因此进行开发设计软件的维护也比较方便。但是,值得注意的是,自适应对象模型在进行自适应软件开发中,并不能够对所有软件开发与设计问题进行解决适应,通常在开发需求变化比较多以及灵活的系统开发中应用较多,同时对于具有配置系统能力的软件开发也具有一定的适应性,因此,应注意结合实际情况进行选择应用。
3 结束语
总之,自适应对象模型是一种具有突出特征与优势的自适应软件开发应用模型与方式,在自适应软件开发中具有一定的应用优势,进行自适应对象模型的开发应用分析,具有一定积极作用和价值意义。
参考文献
[1]陈洪龙,李仁发。一种面向体系结构的自适应软件构件分派模型及算法[J].计算机研究与发展。2011(12).
[2]常志明,毛新军,齐治昌。Bigraph理论在自适应软件体系结构上的应用[J].计算机学报,2009(01).
[3]赵欣培,李明树,王青,陈振冲,梁金能。一种基于Agent的自适应软件过程模型[J].软件学报,2004(03).
[4]何智勇,贲可荣。一种面向多目标的适应性设计规约方法[J].计算机研究与发展,2008(1).
[5]陈洪龙,李仁发,李蕊。一种面向体系结构自适应软件中的高可靠性组件分派方法[J].小型微型计算机系统,2012(06).
[关键词]软件工程;翻转课堂;云计算;教学平台
[中图分类号]G40-057 [文献标识码]A [论文编号]1009-8097(2013)08-0026-06 [DOI]10.3969/j.issn.1009-8097.2013.08.005
一、引言
计算机类课程内容抽象,难于理解,不易自学,学习难度较大,很多学生遇到困难后容易产生畏难情绪,缺乏学习的动力与兴趣,甚至产生厌学心理,学生逃课率高,并形成恶性循环。软件工程是一门综合应用学科,软件工程专业具有实践性、工程性、实用性等特征。学生难以靠听讲软件工程的理论学会开发一个真实的软件,而是在“动手做”和“真正练”中体会和掌握软件开发的思想。传统计算机类课程教学重理论、轻实践,“学”、“用”脱节,重教师的知识传授,轻学生的主动学习,学生积极性低。计算机类课程本身的特征形成了课堂理论讲解越多、学生整体收获越少的怪圈。诸多学者提出采用项目驱动式教学法,强化实验、实训,提高学生实际操作能力、思维能力与创新能力。而“翻转课堂”是有效实施项目驱动式教学法的教学模式,“翻转课堂”成功的关键是技术工具与教学的结合,云计算等现代信息技术的运用是“翻转课堂”得以实现的重要手段和资源。
二、“翻转课堂”、云计算辅助教学的应用与研究现状
1.“翻转课堂”的应用与研究
“翻转课堂”(Flipped Classroom)是一种对知识传授和知识内化的颠倒安排,即“学生白天在教室完成知识吸收与知识内化,晚上回家学习新知识”的教学模式,是“老师白天在教室上课传授知识,布置家庭作业,让学生回家练习完成知识内化”这一传统教学模式的翻转。通过运用现代技术手段,教师将常规课堂讲授的部分制作成教学视频,作为家庭作业布置给学生在家中观看、学习,而课堂变成了师生、生生之间互动的场所。“翻转课堂”的实质是:增加师生互动;提供学生自主学习的环境;教师成为导师:直接指导和建议式学习混合;缺席学生不会被落下功课;内容永久保存;所有学生参与学习并获得个性化教育。美国学者Maureen LaKe,Glenn Platt and Michael Treglia最早在教授《经济学入门》课程时采用翻转教学模式,但没有明确提出“翻转课堂”这一概念。2007年,美国卡罗拉多州伍德兰高中两位化学老师JonathanBergmann和Aaron Sams在课堂中采用“翻转课堂”教学模式并发现用这种模式取得的教学效果远比传统模式好得多,两位老师的实践引起越来越多的关注,此后,这一模式在美国中小学教育中快速推广。2011年,Salman Khan在TED(Technology Entertainment Design)大会上做了《用视频重新创造教育》演讲报告,阐释了“翻转课堂”的内涵,“翻转课堂”成为全球教育界关注的教学模式,并被加拿大《环球邮报》评为2011年影响课堂教学的重大技术变革。
2011年,重庆市江津聚奎中学和广州市海珠区第五中学相继实施“翻转课堂”并获得了良好的教学效果,成为国内基础教育领域“翻转课堂”实践的一面旗帜。国内学者对“翻转课堂”的研究逐渐增多,曾贞(2012)探讨了反转教学的特征、实践及问题;张金磊、王颖等(2012)在对国外教学实践案例研究的基础上,构建出“翻转课堂”模型;朱莎、宋化民(2012)探讨了“翻转课堂”在农民科技培训中的应用;马秀麟、赵国庆(2013)对大学信息技术公共课“翻转课堂”进行了实证研究,认为课堂讨论对知识内化有帮助,对于大学信息技术公开课具有潜在优势;张金磊、张宝辉(2013)提出了基于游戏化学习理念的“翻转课堂”模式;钟晓流(2013)构建了一个太极环式的“翻转课堂”模型并给出了实施的要点。目前,对“翻转课堂”的研究与应用主要集中于中小学教育,在普通高校尤其是针对某一专业的研究与应用成果较少。
2.云计算辅助教学的应用与研究
2009年,黎加厚教授正式提出了“云计算辅助教学”(Cloud Computing Assisted Instructions,CCAI)概念,即利用“云计算”提供的服务,支持教师的教学和学生的学习,提高教学质量。“云计算”可以应用于教学、实验实训、教学管理、学生管理等方面。云计算辅助教学具有一切皆服务(everything as a service)、事事可在线(everything online)、更快更方便(everything easy and quick)、更加个性化(everything personal)等特征。云计算的廉价和方便会使越来越多的学校和个人把自己的信息处理迁移到“云”上。2012年4月,厦门大学软件学院、工信部移动云计算教育培训中心、厦门超级计算中心(云计算中心)举行共建“云计算教学实训基地”签约仪式,开创了我国云计算实训教学的先河。2012年3月,聚奎中学构建了“翻转课堂”云计算教学平台,成为江津云计算产业在教育领域应用的典型范例,但只是互联网功能的简单替代,未进行真实在线软件开发实践。近几年,诸多学者从云计算辅助教学的可行性与作用、协作学习与网络学习策略、云计算教学资源平台的构建等方面做了较多较为深入的研究,但结合“翻转课堂”教学模式构建云计算教学平台的研究成果较少。
三、软件工程“翻转课堂”云计算教学平台架构
1.软件工程“翻转课堂”教学模型
美国富兰克林学院Robert Talbert(2011)教授结合线性代数课程实践总结出“翻转课堂”实施模型并取得了良好的教学效果,如图l所示,“翻转课堂”包括课前和课中两个阶段:课前,学生在家观看教学视频,然后进行针对性地练习;课中,学生快速完成少量测评,然后通过解决问题来完成知识的内化,最后,进行总结和反馈。
软件工程专业具有很强的实践性,理论知识抽象,难于理解,不易自学。因此,需要对Robert Talbert提出的“翻转课堂”教学模型进行改进才更加适合于软件工程专业。如图2所示,在课前,学生在家观看教学视频学习软件开发理论与进行针对性训练时,需要及时与任课教师进行交流、答疑,否则,学生将“知难而退”,难以实现课前学习的目标。为了让学生在课堂上有更多的时间进行项目训练,将学生课中的测评移至课前,学生训练过程即完成测试过程,并且教师能快速统计、掌握学生的课前学习情况。在课中,以真实项目开发为主线,教师首先简单讲解多数学生在课前学习中存疑的概念、知识点,然后简要介绍软件项目背景,提出项目目标,引导学生了解项目任务,分组探讨并进行项目规划、需求分析、系统设计、编码实现与软件测试。在软件开发过程中,学生之间可以进行交流,研讨问题,不断向教师提出疑问,教师回答学生疑问,并适当点拨理论知识,不断引导学生思考更深层次的问题,学生在“训练-思考-提问-点拨”的过程中不断提升,理顺各知识点之间的关联性,直到学生提交、展示设计成果,教师进行点评总结,进一步提升理论。
2.软件工程“翻转课堂”云计算教学平台架构
课前学生视频观看、训练与测验、学生管理与监控、学生学习状态信息的统计与获取、师生交流、课堂学生软件开发管理与文档提交、学生成绩评定等都需要网络教学平台。云计算网络教学平台不但有利于实现“翻转课堂”良好的教学效果,为师生提供方便,而且能降低学校固定资产投资与运行成本,减轻学生负担。如图3所示,软件工程“翻转课堂”云计算教学平台按照服务类型可以分为三层:第一层为基础设施服务层(Iaas),由计算机、存储器、网络设施、数据库等物理资源组成,并将同类型物理资源集成为计算资源池、存储资源池、网络资源池、数据库资源池、软件资源池等虚拟化资源,将硬件设备等基础设施封装成服务供用户使用,是整个云计算服务体系的基础,通过虚拟化资源池为“翻转课堂”云计算教学平台提供计算、存储、网络等按需的动态云基础设施服务,最大特点是允许用户动态申请或释放节点,按使用量计费;第二层为软件在线开发平台服务层(PaaS),构建在基础设施层之上,对资源的抽象层次更进一步,使用特定的编程环境,遵循特定的编程模型,负责资源的动态扩展和容错管理,为软件项目开发全过程提供环境支持、构件支持、开发工具支持、文献支持,为软件开发资源与虚拟教学资源如视频资源等的建设提供接口,通过分布式计算环境和分布式存贮环境提供海量资源系统、海量数据库系统、海量信息系统等服务,在线云通过在线开发平台将操作系统、应用开发环境等平台级产品以Web服务的方式提供给师生,方便教师在同一平台上进行教学资源设计,也方便学生在同一平台上进行真实项目训练,有利于师生对教学资源的充分利用;第三层为教学资源应用服务层(Saas),位于最上层,是师生与云计算服务体系的接口,将某些特定应用软件功能封装成服务,如直接为师生提供开发文档生成、软件检测、视频资源播放、课前训练与测试、师生、生生之间在线交流、学生管理等应用软件服务。师生不受时空限制,使用PC电脑、3G手机或其他移动终端设备访问“云”端,接受云计算技术系统提供的海量服务。
“翻转课堂”云计算教学平台既可选择公有云,也可选择私有云。公有云平台能够提供通用的运行环境和网络教学功能,学校无需自行构建网络教学平台,可以降低建设成本。但公有云平台一般不向用户开放源代码,用户不能将教学资源以编译代码的方式上传至云平台,限制了云计算教学平台的个性发挥与软件的复用。因此,最好选择公有云与私有云相结合的“混合云”方式构建软件工程“翻转课堂”云计算平台,即通过公有云模式降低学校IT基础设施的投资成本,且通过私有云模式来确保平台个性化的充分发挥。
四、软件工程“翻转课堂”云计算教学平台主要功能模块
“翻转课堂”云计算教学平台功能模块主要包括课堂软件开发模块、课前理论学习模块、运行管理模块、学生评价模块,其关系如图4所示:
1.软件开发模块
“翻转课堂”由传统课堂的“先教后练”转变为“先学后练”,弱化“教”,强调“学”,突出“练”,其中“学”为学生采用观看视频的方式自学软件开发理论知识,“练”为软件项目开发训练,并且“练”占全部学习时间的比例大大增加,更加重视学生实验实训,学生学习的自主性增强,自由度增加。因此,要想达到良好的教学效果,对学生“学”的内容、“练”的环境提出了更高的要求。“翻转课堂”云计算教学平台应满足真实实验实训基地的“真实的企业项目”、“真实的企业化管理”和“真实的企业环境标准”三个“真实”要求。软件开发模块是软件工程“翻转课堂”云计算教学平台的核心模块,主要包括项目规划、需求分析、系统设计(总体设计、详细设计)、编码、测试等项目开发全过程并展现软件产品,每一个过程应能生成相应的项目文档。在课堂上,通过教师的引导,学生登陆至学校的云计算平台进行真实的软件项目开发训练,并且可以得到教师的全程适时指导、动态监控。学生在同一平台上,既可以分组研讨开发,又可以单独思考,并与教师实现一对一的面对面交流。通过校企深度合作,学校在云平台上建立真实软件项目库、案例库,为学生提供真实开发项目,或者校企共建软件开发云平台,学生在企业项目经理的统一安排下参与企业真实项目开发,起到“工学结合、顶岗实习”的作用。
2.理论学习模块
曾贞提出了“翻转课堂”的三个关键步骤:观看视频前的学习一讨论并提出问题;观看视频时的学习一根据问题寻找答案;应用并解决问题的学习一深入问题进行探究。在“翻转课堂”中,学生主要通过观看教师提供的教学视频来获取理论知识,通过课前针对性训练基本消化理论知识,并且师生都需要及时了解学生理论知识的掌握情况。可以看出,云计算理论学习模块由教学视频、课前训练、课前测试统计、师生交流等子模块组成。教学视频子模块具有视频播放、快进、慢放、重放、后退、暂停等功能,便于学生自定进度,自主学习。教学视频的视觉效果、互动性、时间长度等对学生的学习效果有着重要的影响。不但视频内容要与教学目标和课堂训练内容相吻合,而且要清晰、简明、到位地解释新知识点、主题要点,知识点的解释要先浅后深,具有逻辑性、层次性、递进性,同时要注意讲授节奏、选取例子、互动策略。在每个知识点讲授之前需设置问题,以便学生带着问题观看视频并在其中寻找答案,每个知识点讲解结束之后,学生通过课前训练子模块及时进行简单训练、应用知识与研讨问题。师生通过课前测试与统计子模块检测学生对理论知识的掌握程度,及时向师生反馈,教师还能快速了解学生的总体情况,便于在课中进行针对性的讲解。在课前学习全过程中,学生均可以通过师生交流子模块进行交流,及时解答学生的疑问。
3.运行管理模块
云计算运行管理模块是“翻转课堂”软件开发训练与课前理论学习的支持与保障模块,位于云计算教学平台应用服务层(SaaS),通过特定应用软件封装成服务提供,主要包括:项目管理、学生管理、资源管理等子模块。
(1)项目管理子模块
教师通过项目管理子模块对学生项目开发训练的全过程与结果进行监控与检查。项目管理子模块主要涉及项目的集成管理、范围管理、质量管理、成本管理、时间管理、资源管理、风险管理、合同管理、沟通管理等九大知识领域,其中,质量管理、成本管理、时间管理为项目管理的核心领域,成为“翻转课堂”教师监控的重点。软件项目开发各阶段的开发文档与产品,经文档输出子模块与产品展示子模块进行输出和展示,任课教师通过项目管理子模块及时进行监控与阶段评价。学生将开发过程中遇到的问题在项目管理平台上,教师通过师生交流子模块进行交流或者进行面对面的交流,及时解决学生在训练中存在的问题。项目管理各阶段对所有学生开放,让各小组学生能及时了解其他组学生的软件开发进度、质量等情况,进行成果交流;一方面,促进各组之间互相学习、协作开发、共同提高,另一方面,建立竞争机制,让学生亲身感受各组之间的竞争与压力,体验企业工作氛围。
(2)学生管理子模块
学生管理子模块可以进一步分为课堂学生管理子模块与课外学生管理子模块。课堂“翻转”以后,基础理论知识的学习由学生在课前自主观看视频进行,学生课外自学效果直接影响到课堂训练,教师不能现场监控,因此,有效的课外学习监控是“翻转课堂”成功的重要因素。哪些学生观看了视频?哪些学生对哪些知识点没有掌握及掌握的程度又如何?教师只有对学生的课前学习状态了如指掌,才能在课堂上有针对性地安排训练内容,组织研讨活动,进行答疑解惑、擦漏补缺、总结与提升。课外学生管理子模块与课前测试与统计子模块相连,不但能动态监控学生课前视频观看、课前训练过程、课前协作研讨,而且能输出课前测试情况、课前关键控制点及统计信息,以便教师及时全面地掌握学生课外学习效果。
在“翻转课堂”中,课� 另外,应具有:对学生请假、考勤与学习态度进行监控的功能;对学生个体与小组实训计划完成、理论知识的应用、创新等的检查功能;对学生团队学习的监视功能,如开发经理、计划经理、测试经理、技术支持经理等角色任务分配、岗位轮换、协调配合、团队成员士气、团队之间竞争与压力等。
(3)资源管理子模块
软件工程“翻转课堂”所需资源主要包括课前理论学习视频资源与课堂软件开发资源,“资源”本身的质量很大程度上决定了学生学习的效果。课前理论学习视频资源必须要与课堂软件开发训练资源高度相关,主讲教师可以亲自录制或者使用网络优秀开放教育资源建立视频资源库。自行录制教学视频容易与课堂训练和教学目标保持一致,甚至可以针对不同基础的班级录制不同版本的教学视频,学生自学的效果容易保证。如果借鉴现有网络资源,可以节省人力、物力,提高资源的利用率,但难以保证视频内容与课堂训练的一致性。视频资源管理子模块负责对视频资源的管理与调度,视频资源主要有视频制作工具、软件开发“云课件”、“云教材”、“云案例”、“云试题”等。课堂软件开发资源子模块主要对软件开发资源进行管理与调度,课堂软件开发资源主要包括软件开发云环境、企业真实软件项目库、案例库、软件开发专用技术资料、重点与难点讲解资料及相关文档、模版等,这是高级应用型软件人才培养的基础,是可教学化实训体系的核心。软件开发云环境通过云计算在线开发平台层(PaaS)提供,主要有软件开发的各种主流技术、先进开发工具、相关的帮助文档、开发文档。真实软件项目、案例应来源于校企合作企业,校企双方建立深度合作机制,按照培养计划的要求,精心挑选软件项目与案例,并进行可教学化改造,通过“云”端在线开发平台层(PaaS)建设真实的软件项目库、案例库。
4.学生评价模块
学生评价既是对学生学习全过程(课前理论学习、课堂软件开发实训)与效果(理论成绩与实训成绩)的评估,对教师教学过程与效果的检查,又是对“翻转课堂”教学模式及其云计算平台有效性的检验,是师生共同改进与努力的依据。学生评价模块涵盖如图4所示虚线范围,包括学生学习过程评价模块与学习结果评价模块。学生过程评价模块由软件开发各阶段文档生成、课前视频观看、课前训练与测试输出等子模块组成,学生结果评价模块由软件产品展示、实训报告、实训成绩、理论成绩与总成绩生成子模块等组成。项目文档输出模块能反映学生训练全过程的质量,也是学生专业知识、技术能力、综合能力和职业素养的直观展现,是任课教师课堂控制的重点:课前视频观看、课前训练与测试输出子模块能反映学生自我控制、自学过程与学生课前理论知识掌握程度,是课前云平台过程控制的重点。理论成绩是学生课前测试的结果体现,软件产品是学生开发真实软件项目的成果展示,实训报告是学生课堂实训过程的总结与提高展现,实训成绩是学生课堂实训的综合表现,总成绩是对学生学习、教师教学过程与结果的定量综合评定。