日期:2023-01-06 阅读量:0次 所属栏目:高等教育
第1篇:软件工程本科教学研究
随着计算机在各行各业的广泛普及,计算机软件人才的需求不断扩大。尽管每年都有大量的软件方面的本科毕业生涌入社会,但真正掌握软件技能、方法的人才却是极度短缺。其主要原因是软件工程概念如何在实际项目中应用并没有在软件工程本科教学过程中体现出来。这也是当前高校软件工程教学亟待改革的一个重要方面。
1国外软件工程本科教学
国外对软件工程本科教学的研究是多方面的。有一些学校开展实验室式教学,且整个教学过程是以面向对象方法出发,使学生所获得的经验迎合了社会的需求。通常,一个学生所具有的软件开发项目经验是来自于在实际的软件开发过程中的角色参与。为了使学生毕业后立刻带入到公司的开发人员队伍中,学生不仅仅要学会软件研发的生命周期、软件工程方法、还要参与到软件项目组中进行实际的训练。现以华盛顿州的乔治敦大学计算机科学学院为例,来看看国外的软件工程本科教学的改革是如何进行的。
1.1软件工程本科教学改革概况
乔治敦大学的计算机科学学院将软件工程本科教学分为两个学期进行。第一学期的软件工程教学内容是软件设计基础,这一阶段的软件工程教学被称为软件工程I(softwareengineeringI)。第二学期的软件工程教学内容通过实际或虚拟项目让学生以项目组的方式参与其开发过程,在该过程中理解并应用软件工程概念。这一阶段的软件工程教学被称为软件工程II(softwareengineeringII)。
1.2软件工程教学的第一阶段
在软件工程的第一教学阶段中,其主要讲授的课程内容是贴近软件设计的。在课程的开始主要介绍了软件工程的发展历史及简介,然后讲解面向对象设计、需求分析、用例图(usecase)、对象模型技术、Rational统一过程、UML技术、面向对象设计模式等一系列内容。在此期间,教师将下一阶段学生所要完成的项目内容介绍给学生,以便于学生有针对性的学习课程内容。
从其教学内容可以看出,国外的软件工程教学内容是紧跟社会需求的,是以面向对象的设计与实现为其主要教学内容,而不是以面向过程的设计方法为主。此外如UML技术,Rational统一过程等教学内容都是学生在实践过程中要用到的内容,可见教学是充分为需求服务的。
1.3软件工程教学的第二阶段
该阶段的教学主要是让学生通过实际的发过程获取真实的经验。这一阶段的课程安排在16个教学周内完成,每个教学周安排4学时该课程。前四周的教学内容是当前软件体系结构的介绍及对软件设计方法的回顾,这部分教学内容是对软件工程第一阶段学习内容的复习。接下来要将学生划分为分析小组、软件设计小组、软件开发小组及数据库小组。每一个小组都有一名组长,以负责该小组工作的安排,并要以甘特图的方式向教师汇报小组的工作进度。小组中的每个成员也要有固定的角色,以完成相应的工作任务。教师在此期间主要扮演用户,以便于及时向学生提供需求,让学生建立正确的问题定义及需求分析,以便于进一步的分析与设计。
在基于关键路径的软件开发生命周期过程中,每个小组的行为都会影响到项目的开发进度,影响到里程碑的建立,因此要求学生一定要在规定的人员及时间内完成阶段性任务,要让学生意识到关键路径上每项任务的重要性。由于按软件工程理论来设计软件时,各个阶段所需人员不同,而且每个角色的工作任务量在研发过程中也会发生变化。例如项目的需求确定后,即进入设计阶段,需求分析角色的工作量立刻减少。为了使各角色的工作量平衡,对每个角色在其主要工作分阶段从事其它辅助工作,以使学生在整个的软件设计过程中一直处于工作状态,使学生了解各个阶段的关联及前一阶段研究成果对后一阶段工作的重要性。
2我国软件工程教育
在我国,高校计算机本科教育的目标定位于培养综合型、应用型人才,为社会提供训练有素的专业工程师。软件工程是计算机本科教育中惟一涉及工程化管理和技术的专业必修课。但许多院校对该课程的教学是重理论而轻实践的。学生因缺乏切身的体验而感到理论抽象,难以理解,且动手能力差,不知道如何将软件工程技术应用于实际项目中,这与国外的软件工程教学形成了鲜明的对比,也说明了我国软件工程救生衣的问题所在。
那么如果提高学生的实践能力呢?为此,有部分学校展开了实例化教学,小组式教学或是1:1教学模式的研究。其最终目的就是希望学生能真正理解并运用软件工程的方法、技能,使学生动手实践能力加强。这些教学方法的研讨是非常有必要的。但与此同时,我们应清楚的意识到中国软件工程课程教育理论课与实践课比例失调的现状。实践课相对过少,要提高学生的应用能力,必须要对软件工程的课程体制进行改革。我们可以结合国外软件工程教育模式,结合中国学生特点,探索出具有中国特色的软件工程教育模式。
笔者认为软件公司与学校联合进行软件工程教育是提高学生实践能力的较好方法。学校可以与国内的一些软件公司建立良好的合作关系,公司可将学生签约后的实训课程提前到学生学习软件工程课程时进行。在具体实施时可从公司对人才的要求、学生的实际能力与就业意向双方面考虑,尽可能使公司培训出的优秀学生愿意到公司工作,公司也愿意接收其培训的对象。这过程中需要一定的合同约定以约束双方的权利与责任。在培训过程中,学生可实际参与到一些项目的设计与实现过程,将软件工程理论应用到实践操作过程中,做到学有所有。
此外,软件工程课程的改革还要从任课教师这一方面着手。现在有很多软件工程教师是“理论上的巨人,实践中的矮子”。这些教师缺少实际项目的研发经历,所以在授课过程中造成理论脱离实践的现象。为了使教师在授课过程中,讲授的理论有实践经验的支撑,应让任课教师参与到实际项目的研发过程中,组织教师深入公司学习,或是请资深人事到学校给教师培训,使教师的实践能力过硬。国外的软件这一点上做得就非常好。担任软件工程课程的教师往往都是大型软件项目的管理者或是技术员,他们有着丰富的经验,而这些经验使课堂教学具有感染力与说明力。
3结束语
中国的软件工程教育与国外的软件工程教育相比,还有一定的差距,这使高校培养出来的软件人才还要经过一段集中的公司实训锻炼,才能真正进入工作角色,担任起软件设计工作。因此,可以考虑公司与学校联合教育,使公司的培训提前进入学校,使学生的学习内容更贴近于实际的社会需求,以便于创造出中国式的两阶段软件工程教育模式。
作者:王微
第2篇:软件工程本科教学的探索与实践
1引言
软件工程这一术语首次出现在1968年的NATO会议上。软件工程这一概念的提出,其目的是倡导以工程的原理、原则和方法进行软件开发,以期解决当时出现的“软件危机”。张效祥院士主编的《计算机科学技术百科全书(第二版)》将软件工程定义为“是应用计算机科学理论和技术以及工程管理原则和方法,按预算和进度实现满足用户要求的软件产品的工程,或以此为研究对象的学科”。
“软件工程”作为计算机科学与技术及相关专业教学计划中一门重要的专业基础课,其主要目标是,培养学生运用软件工程的原则、开发方法和技术进行软件的开发和维护。作为一门多学科交叉的工程学科,如何合理地构建软件工程本科教学知识体系,对于培养国家急需的高素质的创新型软件人才具有重要的意义。
为了满足中国软件产业发展的需要,北京大学积极探索和推进软件工程教育。在1984年,北京大学首次为本科生开设了“软件工程”课程,培养学生在软件工程学科的基础知识以及基本实践能力。同年,在国家科委的支持下,北京大学和复旦大学分别举办了共4期软件工程研究生班,教学以工程实践为主,聘用国际上一些计算机专家任教,先后培养了近200名软件工程人才;1988年北京大学计算机科学技术系试办软件工程的本科专业;1996年北京大学开始招收软件工程领域的工程硕士。目前,在北京大学软件工程领域培养的人才,大部分已成为我国软件企业和国际软件企业的技术骨干。
通过多年软件工程领域的教学实践,杨芙清院士提出“软件工程教育体系需要多层次、多样化。比如,在本科教育阶段,重点培养软件工程学科的基础知识、基本的实践能力。而研究生教育阶段,首先要培养扎实的理论基础、软件工程技术和方法,然后再根据人才需求和职业发展分为两种,一是学术研究型,二是工程应用型”。
针对北京大学本科学生的特点,一是基础知识扎实、自学能力强,二是毕业后大部分继续学习深造,攻读硕士和博士学位(根据历届统计,直保本校研究生的比例大约在50%~60%),这为软件工程教育课程体系的建设提出了新的挑战,即如何体现启发式和因材施教原则,如何适应持续培养“本-硕连读”学生的需要。
围绕以上问题,我们自1984年开设本科生“软件工程”课程以来,不断结合北京大学软件工程团队在大型“软件工程”科研项目上的丰富的研究和实践经验,结合软件工程领域最新的研究成果,不断对软件工程本科教学知识体系进行改革,在探索和实践的基础上不断充实和完善,以期创建具有北京大学特色的软件工程本科教学知识体系。
2软件工程本科教学知识体系
在软件工程本科教学知识体系的探索和实践过程中,我们一直遵循以下两条基本原则:(1)一是软件工程本科教学知识体系不仅需要体现先进性、系统性,而且选取的内
容需要有助于提高学生求解软件的能力,特别是提高学生直接参与软件开发实践和工程管理的能力。(2)二是选取的内容是基础性的、比较“稳定”的,我们向学生尽量介绍有关软件工程的国际标准和成熟技术。我们从以下几个方面来推动软件工程本科教学知识体系的不断发展和完善。
2.1充分利用科研实践经验
多年来,北京大学软件研究所承担了数十项国家级科研项目(包括国家科技攻关计划项目、863计划项目、973计划项目、国家自然科学基金项目等)。其中,以研究软件工程开发环境为主要宗旨的国家科技攻关项目“青鸟工程”,对北京大学软件工程本科教学知识体系的构建影响最为显著。它是国家重点支持的软件产业的共性、基础性建设工程。从“六五”计划开始,历经二十个春秋,由北京大学牵头、中科院院士杨芙清教授主持了持续的科技攻关课题,其目标是以实用的软件工程技术为依托,建立软件产业基础,推行软件工业化生产技术和模式,提供必要的工业化生产手段和装备。
青鸟工程历经了国家“六五”科技攻关项目“软件工程核心支撑环境BETA-85”、国家“七五”科技攻关项目“软件工程技术、工具和环境的研究与开发(SEP)”、国家“八五”科技攻关项目“软件工程开发环境(CASE)的标准化与实用化”、国家“九五”科技攻关项目“软件工程环境(青国际上令人关注的一支科研队伍。通过这些大型软件工程项目的实践,使教师提升了软件工程领域的知识,丰富了(CASE)工业化生产技术及系统(JB/SEIMS)的研究与开发”、国家“十五”973项目“Internet环境下基于Agent教师的软件工程知识体系结构。我们坚持教学与科研相结合,教师积极参加科研项目,从学习跟踪到自主创新,并的软件中间件理论和方法研究”等,取得了一系列重要的研究成果,在理论上不断创新,每年在国际重要刊物和国际会议上发表上百篇论文,理论成果覆盖了软件工程领域几乎所有的研究方向。北京大学软件工程研究团队已成为不断将这些科研成果和软件工程实践经验融入、引入软件工程的教学和实践活动中。
另外,北京大学软件研究所积极接收本科生进入实验室从事科研实践工作,这些学生可以应用最新的科研成果进行软件工程实践,并对科研成果提出相应的反馈意见。这样,通过科研项目极大地提升了学生的软件工程知识和技能。
2.2加强课程体系与教材的建设
北京大学软件工程教育长期研究和借鉴IEEE/ACM推出的软件工程规范。IEEE最新发布的软件工程知识体系SWEBOK(SoftwareEngineeringBodyofKnowledge)将软件工程知识分解成10个知识领域,即软件需求、软件设计、软件构造、软件测试、软件维护、软件配置管理、软件工程管理、软件工程过程、软件工程工具与方法、软件质量,从而明确了软件工程学科的内容和体系。IEEE/ACM软件工程学科小组研究和公布了软件工程教育知识体系SEEK(SoftwareEngineeringEducationKnowledge),将软件工程的本科教育分为10个知识领域,包括计算基础、数学与工程基础、专业实践、软件建模与分析、软件设计、软件验证与测试、软件演化、软件过程、软件质量、软件管理。这两个知识体系明确提出学生要有工程素质和专业实践能力,要有问题求解和工程管理能力,要有职业道德和相关法律的教育,要有书面和口头表达能力,要有交流和沟通的能力,要有国际交流的能力,要有组织和管理能力,要有纪律性和团队精神、主动性和创造性、为适应科学技术发展和学科变化进行自主学习的能力等。我们在课程体系的建设和教材的编写中,不断完善对学生以上能力的培养。
在软件工程本科教材编写和教学过程中,参照以上两个软件工程规范,关注软件工程课程知识体系的完善。通过多年的教学实践,给出了软件工程本科教材的基本知识结构,如图2所示。软件工程基本知识结构,基于对软件开发本质的认识,即实现问题域到软件解域之间的映射,紧紧围绕软件开发,讲解软件工程的生存周期过程;讲解有关过程、活动和任务的组织框架,即介绍一些在工程中常用的软件生存周期模型;讲解实施开发活动和任务的一些基本途径,包括结构化方法和面向对象方法,以及支持软件评估所需要的软件测试技术等;简单介绍作用于开发活动上的一些管理活动,其中重点介绍支持管理活动的一些基础性技术,例如过程创建以及成本、进度估算等。
为了建设世界一流大学,培养出具有创造性的一流软件人才,我们充分地利用了北京大学软件工程科研队伍。这支科研团队在理论上的创新,给教材的编写和讲授提供了源源不断的新知识。在教材的建设中,不断总结新的知识和经验,编写了《面向复用的需求建模》、《构件化软件设计与实现》和《面向复用的软件资产与过程管理》,这三本书是北京大学软件工程研究几十年经验的结晶,在理论上有许多创新、对教学和科研有重大的指导意义。在多年从事软件工程教学和科研的过程中,编写了《软件工程》,该书先后出版三版,每一版都增添了新的教学经验和科研成果。
我们不仅利用自身团队的经验,我们也充分吸取世界最新软件工程成果为我所用。我们先后翻译了《软件工程——实践者的研究方法》、《软件复用实践》、《管理软件开发项目》和《软件工程最佳实践项目经理指南》等经典著作,作为我们所用教材的补充。
这些教科书和参考书的编写和翻译有力地推动了软件工程课程体系的持续优化。例如,在《软件工程——技术、方法与环境》第一版中,在面向对象分析和面向对象设计两部分,我们讲授的是Coad-Yourdon方法,而到了第二版,我们介绍的是主流的UML和RUP。又如,在《软件工程——技术、方法与环境》第一版和第二版中,我们没有系统地介绍软件项目管理内容,而在第三版中,我们参考和借鉴了软件工程知识体系SWEBOK,引入了“软件工程项目管理概述”一章,进而加强了对本科生软件工程管理能力的培养。
2.3注重因材施教
北京大学的学生具有很强的自学能力,而且不同专业和不同层次的学生对软件工程知识的需求也各不相同。基于以上因素的考虑,我们设置了以下课程分别满足不同层次本科生对软件工程教育的需求,体现了因材施教的原则:
(1)为计算机科学技术专业的学生在设置了“软件工程”课程,使学生系统地学习软件工程的基本思想和方法,培养他们从事软件开发、维护和软件工程项目管理的能力。
(2)为二学位的学生设置了辅修“软件工程”课程,与计算机科学技术专业的“软件工程”课程相比,该课程在内容和难度上有所降低,主要培养学生的软件工程思想以及基本方法的应用能力。
(3)为“电子信息科学类”专业、基础好、领悟力强的学生开设了“软件工程—实验班”。这些学生经过计算概论实验班以及数据结构与算法实验班的培养,具备了很强的程序设计技巧与能力。本课程不仅讲授软件工程基本思想与主流方法,而且主要通过实际系统的工程化开发,培养学生的软件工程素质和能力。
(4)为研究生和高年级的本科生共同开设了一些先进软件工程技术或研究探索性课程,如“高级软件工程”、“方案工程”和“软件项目管理”。这些课程的开设,主要是使学生对先进的软件工程理论、方法和技术有一定的了解和掌握,培养学生从事软件工程研究的素养。
图2所示的软件工程基本知识结构体现了计算机科学技术专业设置的“软件工程”课程的内容体系,而辅修“软件工程”根据非计算机专业学生的知识基础和专业需要,对软件工程本科教材内容进行适当剪裁,“软件工程-实验班”依据其培养目标,结合实际需求,更加关注软件工程有关知识的应用。
3软件工程本科教学实践的探索
3.1启发式教学培养创造性人才
我们不仅在教材编写过程注意启发式教学,而且在讲授中更要突出启发式教学,让启发式教学贯穿教学活动的始终,这样很好地调动了学生学习的积极性和主动型,开发了学生的创新思维,培养了学生的创造能力。
我们从以下三个方面贯彻启发式教学原则:
(1)教师授课中的启发式。教师讲授不是照本宣科,而是在深入备课的基础上提炼出重点、难点,拟好带有启发性的关键问题,在课堂上提出,让学生认真思考和讨论,老师有目的、有重点地做点评。例如,在讲授“软件过程”一章时,我们主要提炼出两个关键问题:①软件开发要做哪些映射-活动?②应如何正确地组织开发活动,形成求解软件的逻辑?让学生带着这两个问题去阅读、思索和讨论,从而得到对这一章节知识的深入理解。
(2)学生登台讲授。这是调动学生学习主动性和积极性的极好方法。北京大学的学生基础好、自学能力强,并有一定的动手能力,这是他们登台讲授的良好基础。我们选择一些章节,在教师的指导下,让学生做准备,然后在小组或班级做讲授。学生准备的过程就是深入学习的过程,这样学习的知识掌握得更深透。一位讲过课的学生深有感触地说:“自己讲一遍胜过听别人讲三遍。”
(3)老师解惑答疑。我们采用启发式教学充分调动了学生的学习积极性,并不能解决所有的问题。学生越愿意学习,越容易发现问题,提出问题。老师必须居高临下,采用讨论的方式,给学生以及时准确的回答,增强学生的信心,鼓舞学生继续向前攀登。
3.2加强课程实践培养动手能力
根据教材,我们设计了一些配套的课程实践课题,如结构化方法实践和面向对象方法实践课题,这样学生可以充分利用北京大学软件工程领域研究的各种软件开发环境(因为北京大学软件工程领域的研究成果覆盖了软件工程各研究方向),如青鸟面向对象建模工具JBOO、青鸟配置管理系统JBCM、基于软件体系结构的可视化建模和构
件组装工具ABCTOOL等,进行课程实践。软件工程课程实践要求学生采用“项目小组”的形式,结合具体的开发项目进行分析和设计,每组不得超过5人。每个项目小组选出项目负责人或项目经理,由其召集项目组成员讨论、选定开发项目。学生分工合作,学习软件开发小组的组织和管理,将项目开发各阶段的任务明确,熟悉软件开发环境,培养团队精神,共同完成该项目的开发任务。教师的主要任务是总体指导学生。学生在规定的时间内完成相应的课程实践,并对已有的科研成果进行反馈,从而进一步促进科研的发展。
从“六五”国家科技攻关项目的研究到目前的研究,我们一直利用科研促进教学,不断完善软件工程本科教学知识体系,在这个探索和实践的过程中,也培养了学生软件工程理论和实践相结合的能力以及创新性的思维能力,很多学生都说这正是北京大学软件工程教学知识体系和科研结合的独到之处,也是北京大学良好学风的体现。
4结束语
北京大学软件工程本科教学知识体系的建设和教学活动实践既参照了国际上计算机学科发展规范所提出的质量要求规范-软件工程知识体系SWEBOK和软件工程教育知识体系SEEK,又充分考虑了国家对北京大学的要求和希望,以及北京大学软件工程教学和科研团队,高质量的学生的特点,不断进行教材建设和教学活动的探索和改革,已经取得了一定的成果,对科研和教学起到了推动和促进作用。这种探索和改革还在继续进行中,我们相信未来会取得更理想的成果。
作者:孙艳春等
第3篇:浅议软件工程本科毕业设计质量
一、目前本科毕业设计管理中存在的问题
首先是毕业设计全过程的管理与监控不够规范,缺乏专门的组织机构。毕业设计的一些主要环节疏于检查和监督,因此存在影响毕业设计质量的问题,如选题陈旧、重复率高、与软件产业发展需求不适合、其次是教师的指导水平有限且精力投入不足,同时没有对教师指导工作的有效绩效考核,使得教师对学生的毕业设计不够重视;某些学生由于有就业压力,便将主要精力放在人才市场和各类招聘会上,没有意识到毕业设计的重要性,最后只能通过拼凑和抄袭完成毕业设计。其次由于毕业设计工作持续时间长,涉及所有毕业生和教师,如果没有规范化的指导性文件能够让指导教师和学生了解毕业设计工作的意义、目标、计划、流程、论文规范化格式、质量评价标准、成绩考核等具体实施细则,明确自己在该项工作中扮演的角色以及整个毕业设计流程对自身承担工作的质量要求,那么很难提高毕业设计。由于毕业设计成果是学校的重要知识和信息资源,完善的文档资料管理有助于毕业设计工作的传承和创新。长久以来,毕业设计作品和论文主要采用人工管理。学生答辩后提交资料袋,资料袋中包括毕业设计相关文档和设计作品的刻录光盘,但由于管理人员对毕业设计资料的重视程度不够或人员不够,导致毕业设计资料管理不善,出现查询困难、答辩记录丢失等情况,为以后查阅、成果展示及下届毕业生的论文指导工作带来不便。
二、改进的方法探讨
为了加强本科毕业设计工作的组织、管理和监督,学院可以专门成立毕业设计管理小组,从选题、审题、任务书下达到开题、中期检查、答辩、成绩评定和推优的全过程。为了提高毕业设计质量,毕业设计管理小组可以根据软件工程专业特点建立学院的具体工作规范和有效的毕业设计管理模式和监控制度,加强毕业设计制度建设,使得从选题、下达任务书到学生的开题报告,从每周汇报、中期检查到设计文档撰写、论文撰写、论文重复率监测、论文评阅及论文答辩,都有切实可行的实施细则及管理规章制度;构建集中管理与跟踪管理、周报提交、外出请假、抄袭检测、讲座出勤等平时成绩评定标准;完善从平时表现、系统设计实现质量、论文或设计文档质量、答辩水平等多方面衡量的客观、公正的综合成绩评定标准和推优程序。在毕业设计全过程管理中,力求做到有章可循及有据可查。多元化的毕业论文形式有利于培养大学生创新实践能力。根据软件工程专业特点,软件学院对毕业论文形式进行改革。毕业设计形式包括传统方式和新方式,学生可以选择其中一种方式,具体采用哪种方式则由指导老师负责。为了面向软件企业需求,培养学生的软件设计能力,新方式注重提高学生的系统设计文档编写能力。毕业生前期仍然要完成开题报告、英文文献、系统分析设计和编码,最后提交系统设计相关文档。
系统设计相关文档由以下文档构成:①项目开发计划;②软件需求说明;③系统设计说明;④数据库设计说明;⑤用户手册;⑥测试分析报告;⑦项目开发总结。根据软件工程学科特点及专业人才培养的要求,结合学校的毕业设计(论文)管理办法和软件设计文档国家标准,软件学院制定了符合专业人才培养目标的设计文档规范。为提高学生科技论文写作水平和研究报告的演讲能力,软件学院面向软件工程专业所有应届毕业生,在其毕业设计阶段开设8学时的“科技论文写作规范”“研究报告演讲技巧”讲座,强调科技论文写作的规范性和可读性,锻炼学生演讲研究报告的能力。毕业设计过程管理和监控面向的对象是学生和教师。软件学院毕业学生做毕业设计有不同情况,如有在校外软件公司做毕业设计的,更多的是在校内做毕业设计,因此需要有相应的不同管理模式。为加强学生培养质量和降低指导教师管理难度,软件学院提供集中管理与跟踪管理方式。集中管理是指学院设置固定机房和机位并安排助教作为管理人员,由指导教师给学生安排机房,由管理人员负责学生的日常考勤,学生需及时向指导老师汇报学习情况,学生若有事必须请假。跟踪管理主要针对在校外进行毕业设计的学生,要求这类学生完成校外毕业设计申请,由管理小组协助指导教师对校外学生进行跟踪,为这些学生提供及时的毕业设计信息服务。这类学生必须每周与学校指导教师联系,以便教师详细了解并掌握学生毕业设计进度。
这种具体的制度和规范,对在校内进行毕业设计和赴外进行毕业设计的学生进行了有效监控。可以充分利用计算机技术,构建完善的毕业设计管理平台,提高毕业设计管理水平,使毕业设计管理更加规范化。软件学院在毕业设计过程中使用的管理系统。为了提高本科毕业设计质量,加强学术道德和学风建设,营造学术诚信氛围,可以使用“大学生论文抄袭检测系统”对本科毕业论文进行防抄袭检测。抽检比例为应届毕业论文的50%,抽检名单由毕业论文管理系统随机抽取。另外,各答辩小组推荐的优秀毕业论文为必检对象。学院可以制定论文抄袭的认定标准(建议文字复制比不超过25%)和处理办法,对有问题的论文,责成指导教师对检测结果予以认定和说明或督促学生修改,取消被认定抄袭论文学生的答辩资格;对各答辩小组推荐的优秀毕业论文进行查重,查重不合格的论文取消优秀。
三、结语
对软件工程的考核模式是为了让本专业的大学生能够主动积极的参与软件工程开发的兴趣当中去。培养高素质的专业软件项目开发人员。以社会需要为动力,结合自身的实际情况,积极的创新,探索适合自己的软件工程教学方式。大学生只有理解软件的开发原理,掌握软件的开发技术,从而具备软件开发和维护的能力,才能为以后进入相关单位工作打下结实的基础。
作者:邬志成 杨冲 李世明等
第4篇:论应用型本科软件工程专业课程体系建设的研究
1概述
纵观中国各大高校,85%以上:校都设有软件工程这个专业,但是各个:校的人才培养方案、实施过程、培养效果却不尽相同。特别是在民办本科:校生源质量普遍低于公办:校的背景下,研究我:人才培养方案并制定符合自身需求的培养方案就显得尤为重要。据中华英才网、前程无忧网等数据显示:一方面企业难以招聘到符合企业需求的人才,岗前培训成本过高;另一方面,高校对企业的人才需求缺乏了解,导致人才培养与社会需求相脱节。因此,如何构建具有我:特色的软件工程专业课程体系,提升人才培养质量是学校应该认真思考的问题。
2软件工程专业课程体系构建的理论基础
2.1开启人才培养模式-校企合作为了使学生能够掌握当今企业最流行的软件技术,学:定期聘请企业资深项目经理人到我:课堂现场讲授部分课程。另外,我:与合作企业共同建立软件工程专业实习基地,并派出资深教师现场指导,这样使得学生学习的知识能够满足企业的岗位要求。同时避免了我:闭门造车,与企业需求脱节。
2.2根据社会需求岗位建立课程体系通过对中华英才网、智联招聘、前程无忧等三大求职网站招聘软件人才岗位的要求等数据进行系统分析得出:数据以搜索广州市为例,软件工程专业岗位需求主要有以下几类:Java软件工程师,Android开发工程师,C#软件工程师,C++软件工程师,高级系统架构师,数据库工程师,WEB网站开发与维护工;然而,Java软件工程师、C#软件工程师以及Android开发工程师岗位需求量较大。另外,这些岗位在理论上均要求入职人员掌握数据库原理、数据结构、操作系统、计算机网络、微机原理等基础知识,特别需要精通C/C++语言,基于以上这些思路来建立软件工程专业课程体系,保证学生能够系统地掌握并理解面向对象的程序设计语言。
3软件工程专业课程体系的确定
3.1调研分析市场主流技术,按照不同技术方向设定专业课体系因为我:是民办本科:校,同时又定位为应用型本科,毕业生主要服务于东莞,所以我们制定的课程体系所针对的对象是本科生;那么我们将4年8个学期划分如下:即5+1+1+1的教学模式,5个学期校内教学,一个学期软件开发实训,一个学期企业项目实训,一个学期校内项目综合实训(毕业设计);其中,又将5个学期划分为3个学期的专业基础教学,2个学期的专业分类教学,在专业基础教学过程中主要开设专业基础课,如数据结构,数据库,微机原理,C++等课程,在专业分类教学过程中将软件工程专业划分偏向硬件类软件开发和偏向软件类开发两个方向。高度模拟企业软件开发流程和项目管理,选择实际应用项目分组进行软件开发。1个学期软件开发要根据学生所选方向进行分类学习,在1个学期的企业项目实训时,组织学生到合作企业参与实际开发工作,使得学生能够整体掌握开发流程以及相关技术原理。
3.2根据学生基础以及学习兴趣选定课程体系方向根据岗位分布规律以及所学习技术的先后顺序,将主要课程体系归结为以下几个阶段:第一阶段开设计算机导论、高等数学、C语言程序设计、数据机构、计算机网络、微机原理机、数据库、操作系统等基础课程,为后续阶段打下坚实的基础,这个阶段主要培养学生过硬的理论基础和基本操作技能。第二个阶段开设C++程序设计、Java程序设计、C#程序设计,这个阶段主要培养学生具备初步较强的编程能力,并完全理解软件开发的过程和思想,此时学生能完成工作岗位上一些简单开发工作。第三个阶段开设程序设计、企业级开发、JSP程序设计、J2EE企业级开发,同时开设UML、XML课程供学生选择。
另外,第二阶段和第三阶段开设的课程划分偏向硬件开发和偏向软件开发两个方向:偏向硬件方向我们加开单片机,ARM等课程,学生只能选择其中一个方向。该阶段以前两个阶段为基础,结合校内实训,企业实习的项目,使得学生具备计算机软件的基础理论、基本知识和基本技能,同时能使用软件工程的思想、方法和技术来分析、设计和实现计算机软件系统的能力,毕业后能在IT行业、科研机构、企事业中从事计算机应用软件系统的开发和研制的高级软件工程技术人才。
3.3定期选派教师参加企业研发来保障师资水平建设一支德才兼备、结构合理、教学水平高、教学效果好的“双师型”教师队伍,对课程体系建设来说至关重要。目前,我校软件工程专业教师的理论水平能够满足教学要求,但欠缺企业大型软件开发的实际经验,因此在打造强大师资水平方面,我校也相应制定多种措施和规划,具体表现为以下几个方面:寒暑假可带薪到企业参加实际项目开发;鼓励教师继续深造,学校给予一定的奖励;定期组织教师到相应的科研单位、著名:校进行教学交流等实践活动。
4结束语
相信通过上述课程体系培养的毕业生能够综合运用所学的专业知识分析和解决实际软件工程所遇到的问题,并且具有1年左右的实际软硬件开发经验,适应现代化工程团队的分工以及新产品和新系统开发设计,能依据自身所学技能自发学习并优化自身的理论知识体系和实际工作经验,拥有较强的实际动手能力和敏锐的专业战略眼光。
作者:张东波 熊璐
第5篇:应用型本科软件工程专业人才培养模式探究
我国的高等教育是世界上最大规模的高等教育体系,在我国的现代化建设中发挥了巨大作用。随着经济的发展,高等教育早已从精英教育步入了大众教育阶段,但现阶段的高等教育结构性矛盾更加突出,同质化倾向严重,毕业生就业难和就业质量低的问题仍未有效缓解,生产服务一线紧缺的应用型、复合型、创新型人才培养机制尚未完全建立,人才培养结构和质量尚不适应经济结构调整和产业升级的要求[1]。这意味着高等教育必须转变思想,改革教育教学模式,必须从以前的以学科为中心,以知识为导向转变为以学生为中心,以经济和社会需求为导向。高校要把办学思路真正转到服务地方经济社会发展上来,转到产教融合校企合作上来,转到培养应用型技术技能型人才上来,转到增强学生就业创业能力上来,全面提高学校服务区域经济社会发展和创新驱动发展的能力[1]。目前很多的高校已经在积极地进行向应用型本科转型的探索。
软件工程专业在2011年被正式列为一级学科,作为一个工程类学科,它具有很强的综合性,学科的应用领域已经深入到社会经济生活的方方面面,无论是从所需知识和技能的角度,还是从应用的角度来说,应用型软件人才的培养只依靠学校的办学力量走闭门造车之路是行不通的,必须走校企合作培养之路。
1传统培养模式问题分析
1.1 理论教学过重,实践能力不强
传统的人才培养模式主要是传授知识,在学校的大部分时间都在学习理论知识,缺乏实践能力的培养,学生学习了很多专业课程,可是学生却无法运用这些知识去编写一个应用项目。
1.2知识分散、系统化、工程化思想缺乏
很多专业课程也在努力进行改革,加强案例教学以提高学生实践能力,但课程案例围绕知识点设计,虽然对学生理解知识点有帮助,但缺乏实用性,各案例之间也是孤立的,导致学生很难融会贯通。课程之间也是如此,各门课程之间缺乏系统化、工程化思想,最终导致学生学了很多课程,可是却不知道如何运用这些知识。
1.3教师缺乏实践经验
高校的青年教师一般都是从学校毕业后又直接进入学校工作,缺乏实际的项目经验,在指导學生时难免存在一些不足。
1.4职业能培养不足
由于中国教育模式的问题,高校对学生职业能力的培养不能满足企业的人才需求,学生缺乏实践动手能力,也缺乏创新意识。学生难就业,企业难招人的矛盾日益突出。
1.5校企合作不深入
高校办学与企业的互动偏少,企业参与办学的力度不够,不能真正将学校人才培养规格与企业需求对接。
2培养模式改革思路与措施
2.1建立以能力培养为目标的课程体系
课程体系以能力培养为核心,将学科的理论课程和实践课程有机整合,通过一体化课程体系设计,提升学生的工程实践能力,培养学生的创新意识,将实践、创新、创业、社会适应能力融入到理论课程和实践教学中。建立以能力培养为目标的课程体系和培养机制有三个核心原则:第一,培养目标定位以行业需求为导向,行业专家有效参与培养目标的评价与修订。第二,课程体系以能力产出为导向,面向全体学生,将能力要求具体分解落实到各门课程的教学环节,有效引导培养过程。第三,教学模式以培养学生实践应用和创新能力为导向,以项目驱动,实现“做学合一”。
软件工程专业课程体系包括通识教育模块、学科基础教育模块、专业教育模块、专业拓展模块和综合应用模块。
1)通识教育模块由数学、政治、英语、体育和管理学等公共基础课组成。学科基础教育模块由程序设计、计算机网络、操作系统、数据结构、组成原理、算法、编译原理、专业英语、离散数学等计算机类课程组成。
2)专业教育模块分为专业基础课程和方向性课程,专业基础课包括面向对象编程、软件工程、需求工程、软件过程管理、软件体系结构、软件测试、软件项目管理等课程,方向性课程包括建模、网站编程、信息安全、移动平台开发等相关专业课程组成。
3)专业拓展模块由电子商务、经济学、会计学、财务管理、ERP、数据挖掘、云技术等课程组成。
4)综合应用模块主要是针对专项能力的综合性项目实践,分为财务核算系统开发、电子商务系统开发、移动平台项目开发等。
另外,对制定的课程体系要采取有效的评价机制和动态轮换机制,计算机技术的发展日新月异,面对不断涌现的新技术,要合理地对课程体系中的课程进行置换,满足社会发展的需求。
2.2强化综合实践
强化实践能力一直是培养模式中强调的重点,针对人才培养中存在的知识分散、系统化、工程化思想缺乏等突出问题,树立以需求导向,强化综合实践的应用型人才培养理念,科学设定人才培养方案。应用型本科的教育内涵之一就是协助学生从学生角色过渡为职业人角色,职业人角色的标准并非由学校制定,而应以社会和企业需求为标准。因此,社会和企业需求是实践课程的起点和衡量标准。
为提高学生的实践能力,可以引入企业案例作为校内实训案例,也可以引入企业工程人员参与校内实训辅导,让学生熟悉企业开发人员的工作方法,规范学生的编程习惯,提高学生的代码编写速度,积累学生的代码编写量,让学生适应企业项目化管理,将企业化教学模式引入课程之中。
2.3深化校企合作
与企业联合培养,协同创新是应用型本科高校培养应用型技术技能型人才的重要途径和必然要求。校企合作不能浮于表面,既要借助企业构建新型教学模式,也要依靠企业改进具体教学内容,这是一种贯穿模式。引入校企合作的教学环节包括技术应用类课程的理论教学、实验课程教学、课程设计、毕业实习与毕业设计等环节。这些环节的合作不是一蹴而就的,在合作的过程中要不断探索与教学内容相适应的方式方法,切实保证教学效果,培养学生的应用能力和创新能力。
2.4加强师资建设
培养技术应用型人才的关键和难点是教师队伍建设,教师的科研能力、综合技术应用能力、实践教学能力、应用研发能力、创新能力的培养和提升迫在眉睫,可以从以下几方面来实现:1)以先进的设备和教学系统促使教师成长,以教师的成长带动课程建设和教学内容更新,以课程建设和教学内容更新带动实验室建设,形成一种良性循环。2)鼓励教师进修和到企业挂职锻炼,将先进和实用的知识技能带回到教学中来。3)从企业聘请具有丰富开发经验的专业技术人员作为实践教学教师。通过以上多种途径有效促進教师队伍的发展,夯实人才培养的基础。
2.5营造良好的学习和创新氛围
兴趣是最好的老师,除了在教学方面引导学生学习外,还应营造良好的氛围,让学生产生学习和创新的浓厚兴趣。可以在学院创办各种兴趣小组,工作室等,由教师带队承接一些简单的企业任务,引导学生共同完成,这是学以致用的最好方式。另外还可以鼓励学生参加一些专业技能比赛,通过比赛来促进学生的学习。
3结束语
应用型、复合型、创新型人才的培养是一个系统工程,软件工程作为一个工程类学科,具有很强的综合性,课程体系的构建,必须有企业的参与,才能做到知识和技能的兼备。学校和企业联合办学,各自发挥优势,为学生提供更好的学习平台和实践环境,使学生迅速成长,更好地满足社会和企业需求。
作者:陈慧敏
第6篇:基于应用型本科软件工程专业课程体系的现状研究
构建面向创新能力培养的应用型本科软件工程专业课程体系,是提升学生创新能力和创新意识、提高软件工程专业人才培养质量的基础,然而,我国大学生创新、创业的现状还不尽如人意,本文从高校大学生创新教育现状与不足、应用型本科课程体系现状与不足以及国内外同类课题研究现状与不足三个方面进行研究,为进一步探索面向创新能力培养的应用型本科软件工程专业课程体系提供理论研究基础。
1.高校大学生创新教育现状与不足
我国大学生创新、创业的现状还不尽如人意,主要表现为以下几个方面:
1.1大学毕业生创业比例低。由于大学生知识、经验、意识、能力等因素的欠缺,导致我国大学生自主创业的比例很低,不到毕业生的1%,而发达国家一般占23%―25%[1]。没有大学生的创业,全社会的创业无从谈起,创新型国家也无从谈起。
1.2大学生创新成果少。科技发明、学术论文、专利是反映学生创新能力的重要方面。我国大学生在公开出版物上发表过学术论文的寥寥无几,专利申请也是我国大学生的"软肋"。在创新等实验项目中的获奖作品,由于大学生没有实际商业运作的切身感受,计划书大都处于照着书本模拟阶段,计划书远离实际,获奖项目真正转化为生产力的极少。
1.3大学生创新能力弱。由于大多数高校创新教育体系仍然处于初级阶段,创新教育理念定位不明确,创新教育形式单一,缺乏多样性、系统性与层次性,从而直接影响了对学生创新能力的培养。
2.应用型本科课程体系现状与不足
为落实《国家中长期教育改革与发展规划纲要(2010-2020)》,应用技术大学(学院)联盟于2013年成立;2014年重庆市市属高校转型发展联盟成立。许多高校目前积极向应用型本科转型,取得了大批理论和实践经验。特别是在课程体系的构建和实践上进行了大量的探索,但课程体系存在一些不足,主要有以下几方面:
2.1通识教育课程与应用能力培养没有很强的正相关性。课程在教学内容与应用能力培养上缺乏主动性和关联性,培养学生的创新能力的课程比较少。
2.2专业教育课程体系重视理论基础忽视应用知识。由于受到传统教育体制的影响,在专业教育课程体系构建过程中强调理论的完备性和连续性,对理论如何有效运用到工程中、应用到创业中考虑比较少,培养学生创新能力的内容不足。
2.3实践教学课程体系的动手能力培养难以真正落实。主要表现在学生对课堂理论的实践能很好完成,但在面对现实的工程实践时茫然。原因在于实践教学课程体系中实践课程设置还停留在传统的模仿或实验室方式,脱离社会实践方式,因此培养学生的创新能力不足,没有为学生培养创业能力提供教学手段。
2.4素质教育课程趋于功利和保守。素质教育课程目前强调的学生非专业的知识理念多,难以使素质教育与专业教育形成良好的内在关系。素质教育课程的设置基本只是为了满足学生了解某一具体学科的功用而已,学生修习通识课程也无非是为了修满学分,无法使学生达到不同学科的知识能够相互通融,遇到问题时能够从比较开阔的、跨学科的视角进行思考,收集资料,与人交流合作,达到不同文化和不同专业之间的融会贯通。
2.5专业教育偏重学科化倾向。专业教育的知识仍以学科知识为主,强调学科的逻辑与结构,将学问知识作为课程内容选择的来源,不是按照人才培养规律,而是按照学科要求进行专业教育,表现出来的特点就是:重知识纵向研究,轻知识应用和相互渗透;重传统经典,轻创新思想。
2.6实践教育受困于传统教学管理方式。由于实践教学的动态性较强,不利于教学质量的监控,大多数实践教学以一篇实践报告、几周的实践时间、实践单位的证明等静态的指标来考核并予以认可,这并不能完全反映学生实践技能的掌握情况,因此通过实践,学生的创新能力提高不大。
3.国内外同类课题研究现状与不足
在软件工程专业课程体系构建相关国内文献中,有些是突出实践教学体系课程的改革;有些是突出专业课程的改革;还有基于不同的理念或目标提出自己的课程体系改革设想。总的来说,这些研究存在的主要问题是:
3.1比较孤立研究素质教育课程体系、通识教育课程体系、专业教育课程体系和实践教学课程体系。但把这些体系综合起来研究的比较少,基本没有看到。
3.2比较重视专业课程体系的研究,但没有对软件工程专业的素质教育课程体系、通识教育课程体系做深入的研究。
3.3面向创新能力培养的软件工程专业课程系构建与实践的研究基本没有,因此在考虑课程体系的构建和实践时,没有涉及对学生创新能力的影响。
3.4即使有创新能力培养的研究文章,也大都局限于素质教育课程体系的考虑,对专业课程和实践课程体系如何构建和实践才能提高学生的创新能力没有阐述。
3.5没有见到有一个完整的能体现以培养学生的创业能力为目标的软件工程专业课程体系,更谈不上成功的实践范例的文献报道。
因此无论从目前大学生创新教育及软件工程专业课程体系现状与不足,还是从国内外类似课程的研究现状与不足来看,面向创新能力培养的软件工程专业课程体系的构建和实践课题研究是非常必要和及时的。为社会培养高质量的、能够满足市场需求、具有较强创新能力和意识的应用型软件人才。同时,也给应用本科院校软件工程专业构建课程体系、办出特色提供借鉴意义。
作者:陈素琼 陶娟
本文链接:http://www.qk112.com/lwfw/jiaoyulunwen/gaodengjiaoyu/59894.html