发布时间:2023-02-27 11:14:21
序言:写作是分享个人见解和探索未知领域的桥梁,我们为您精选了8篇的软件工程专业论文样本,期待这些样本能够为您提供丰富的参考和启发,请尽情阅读。
一、软件行业人才需求现状
1. 企业用人学历要求走高
据中国软件行业协会《2013年中国软件与信息服务业人才发展报告》(以下简称《报告》)调查统计,从全国软件企业对软件人才的需求来看,本科学历需求量最高,占51.6%,其次是大专学历,为36.2%。《报告》显示,2013年,软件企业对应届专科毕业生的不满意反馈比例最高,占到17.3%,表示比较满意的企业仅占35.2%。而对应届本科生毕业生的不满意率有所下降,为13.3%,但比较满意的评价也有所减少,仅为27.8%。相对而言,应届研究生更能得到软件企业的认同。
以上各项数据表明,企业对软件人才学历的要求已经呈现逐年走高的趋势。特别是90后进入职场以后,这一趋势更加明显。不难理解,自2011年开始,人口出生数量低谷导致生源数量急速下降,使得部分高校面临严峻的生存危机。为了完成招生指标,高校不得不降低门槛,伴随而来的就是生源质量的下降。随着90后进入高校,这种现象愈发显著。这也就迫使企业提高员工的学历要求,本科越来越成为最低入职门槛。
2. 软件行业技术的要求
伴随着移动互联、云计算、物联网、大数据等新技术新应用的飞速发展,软件技术呈现出两种走向。一种是面向移动互联等技术,以短平快的轻量级产品开发为主,要求开发人员不仅掌握开发技术,还要有比较开阔的视野,要对美工、产品设计、用户体验等多个领域有所领悟。另一种趋势是面向框架技术、云计算、物联网、大数据等背景,软件产品趋向于航母级规模,要求在某一领域技术非常精专的同时,要对软件有较高层次的视角和更全面的认识。无论是面向哪一种走向,对从业人员的要求都是越来越高,越来越全面。这也是对从业人员学历要求日趋走高的重要原因之一。
我国软件工程教育经过多年发展开始逐步走向成熟。2005年教育部组织编写了软件工程专业规范,2006年成立了软件工程专业教学指导分委员会,其重要任务就是要根据现代软件工程人才的培养要求,不断发展和改革软件工程专业教育,而改革的目标和重点在于培养高质量的、适应社会经济发展需要的软件人才。
软件工程专业是一门关于如何构建有效、实用、高质量软件的技术性学科。它涉及到计算机应用技术、程序设计语言、数据库、软件开发工具、系统平台、行业相关标准、设计模式、软件开发方法、软件开发过程、软件开发环境、软件测试技术、数字化技术、计算机辅助软件工程(CASE)、软件质量管理及软件经济学等方方面面的内容。由于软件工程要求应用计算机科学和数学用于构造模型与算法,工程科学用于制定规范、设计范型、评估成本及确定权衡,管理科学用于计划、资源、质量和成本的管理,因此,软件工程也是一门实践性非常强的学科,融合了计算机科学、数学和管理科学等现代科学。综上所述,软件工程专业的学生必须学会将理论原理和实践相结合,不仅要具备良好的软件设计能力,还要能够超越计算机学科获得其他应用领域的专业知识,从而支持其他应用领域软件系统的开发。
三、探索应用型本科的职业教育特色
目前,开办应用型本科专业的院校有两大来源,一是普通高等教育转型而来,二是原有高职院校升格而成。在开办应用型本科软件工程专业的过程中,既不能照搬原有高职专业课程体系,也不能一味模仿本科院校教学计划,而背离本科教育的优势和职业教育的特色。比较合理的思路是在尽可能保留现有专业优势的同时,将本科层次的优势和职业教育的特色有机结合。
1. 专业课程设置
无论是哪类院校开办应用型本科软件工程专业,都会在原有课程基础上设置部分新课程,还有部分课程虽然与原有课程名称相同或相近,但内涵和定位会有所区别,需要重新建設。因此,一项重要工作是研究课程关系,探索建立科学合理的课程体系,并在此基础上,确定各门课程的内涵。
为了顺应软件行业发展的趋势,应用型本科设置的专业课程,应突出深和新两个特点。一类课程在理论上有一定难度、深度,在某一领域引领学生深入开发或研究,并培养学生的专业理念,如操作系统、数据结构、软件工程以及一些框架级开发技术等类型的课程。另一类是新技术方面的课程,体现行业前沿技术和发展趋势,用以拓展专业视野,如移动互联应用开发、虚拟化技术与云计算、大数据处理技术等类型的课程。
高职、研究型本科和应用型本科的人才培养定位各有不同。高职层次的目标定位是培养技术技能型人才,普高研究型本科的人才培养目标是高素质研究型人才,而应用型本科的专业培养目标是高新技术应用型人才。因此,两种来源的院校在设置专业课程时,切忌简单照搬原有课程内涵,即使课程名称相同,教学内容也应有所区别。理论为主的课程,如上述操作系统、数据结构、软件工程及框架技术等类型的课程,在满足理论深度要求的同时,一定要保证理论与实践相结合,使理论能落地,避免空洞理论的堆砌,避免口说无凭。而在实践性较强的课程中,如软件开发、实操类课程中,要注重渗透理论性、理念性的内涵,强调精、专,内容上有一定的深度和广度,避免泛泛而谈,避免知其然不知其所以然。
因此,应用型本科的课程设置要注重理论深度和广度与坚持课程体系和课程内容的实用性和应用性相结合,才能较好地在满足本科层次要求的同时突出职业教育特色。
2. 校企合作共建软件工程专业
在建设职业教育特色的软件工程专业过程中,发挥行业企业的作用,可以有效地为校企合作搭建平台,开展企业参与办学、指导学生就业、资源共享、战略合作等一系列工作。
企业参与制定专业发展规划,可以对学校的办学定位、专业发展方向提出可行性建议。通过企业调研访谈,可以了解行业最新技术动态和用人需求,修正课程体系和课程内容设置的偏差,及时更新教学内容,共享先进技术,利于专业发展与行业需求无缝对接。
以专职或是兼职教师的方式引入企业人才,可以有效解决因新技术发展过快等因素而导致的师资力量不足和师资队伍培训的问题。组织学生到企业参观和实践,使学生了解企业工作模式和工作流程,感受企业文化,可以为今后就业作好准备。企业与学校共建实训基地,提供校外实习场所,选聘技术专家指导实习,协助落实学生就业,利于学生快速适应社会需求,实现就业的平稳过渡。
企业可以共享学校的场地、设备、人力等资源,学院可以共享企业的管理经验、企业信息、用人需求信息、软件项目和研发技术等资源。企业和学校合作完成科研项目,积极推进先进技术和科研成果转化,可以实现校企双方互利互赢。
总之,校企合作共建专业是达成为企业输送合格人才的办学目标,突出职业教育特色的便捷途径。
大学教育不是培训班
重视基础教学是中国科大一贯的办学特色,如何在工程型人才培养过程中找到理论与实践、科学与工程之间的“平衡支点”?
中国科大软件学院执行院长周学海认为,高校应当从企业的需求出发,结合高校自身的培养模式,提炼出人才应具备的能力、素质。“软件工程人才,不仅要上手快,还要有后劲,后者更重要”。
学院软件工程硕士目前学制是两年半,要求完成不少于40个学分,分为3个阶段:第一年是理论学习,第二年开始到企业实习、做毕业论文,最后半年是论文整理、答辩和学位申请。
据中国科大软件学院副院长李曦介绍,学院强调专业基础课教学,很重视学生的计算机、软件、数学等基础能力培养,比如,《算法设计与分析》这门基础理论课,其他高校一般开40学时,该校是60学时。学生也有很大的学习自主权。全院共开设了108门课程,除本专业的几门核心课程外,5个专业方向的学生可以自由选修各模块的课程,也可以跨专业选课。
自主不代表要求降低。学生入学头一年要完成30多个学分的理论课学习,要求核心课程平均分不得低于75分,否则就失去学位申请的资格。即使是拥有计算机和信息专业背景的学生,每天也要学到夜里11点多。
“我们培养的不是简单的打工仔,而是技术骨干和懂技术的管理者,要为大家今后的职业成长和发展打好基础。”最让李曦欣慰的是,毕业生返校做讲座的时候,总会在结尾提到:感谢那段艰苦学习的岁月。
教学与实践相结合
“做软件的首先要有IDEA(创意),然后开发设计出样品,最终按照工程的要求做出产品。”在软件学院总支书记、副院长吴敏看来,软件公司其实就是一个“软件工厂”,如果学生不下车间锻炼实践,就无法树立起一个工程师应具备的“工程意识”。
在实践教学方面,学院在第一年就设置了“工程实验”的必修环节,首创了如同“三明治”一样的“多阶段分层次实践教学”模式,将实践教学细化为“专业基础、专业强化、专业综合”3个阶段,共3个学分,把不同阶段的理论学习与实践紧紧地镶嵌在一起。
其中,专业基础部分主要针对各专业方向的基础课程,要求学生能熟练掌握和运用本专业项目开发所需的基本理论、编程语言和开发环境。专业强化部分是完成某专业方向的综合性实践能力的训练,要求学生能综合运用本专业相关理论知识和方法,以及软件工程项目管理工具。在专业综合部分,学生自主选题,或者是企业提出需求,3~5名学生组成一个小团队,利用一年的课余时间,按软件工程规范完成一个工程开发项目,以培养学生的创新能力和团队协作能力。学院还建立了软件工程中心,承接项目开发,为学生提供工程实践环境。
据李曦介绍,设置工程实验环节后,学生的实际开发项目能力得到显著提高,能够熟练使用本专业的各种软件开发工具。从学生实习单位反馈情况看,学生的动手能力和团队合作能力得到工业界的认可,对提高学生的一次就业质量帮助很大。
从机制上确保学生实习质量
第一学年结束后,软件学院的学生像候鸟一样飞往70家稳定的校外实习基地。这些基地多为国内外著名研究所和IT企业,如中科院计算技术研究所、微软、惠普、IBM、华为等。2011年,平均每个学生有5个实习岗位可供选择。
接下来的一年里,他们将扎根企业进行严格的实习,同时开始准备毕业论文。
到企业之后,学生每人都配有企业导师,进行全程指导。实习3个月左右,学院派校内导师到学生所在实习城市检查实习情况,指导论文开题。
论文题目要求来自企业生产实际,不仅强调先进性和可行性,还对论文所涵盖的内容有明确要求。
软件产业属于知识密集型产业,软件理论方法技术在不断演进,软件产业在持续快速发展,我国软件产业也在由低端向中高端发展提升。由于软件产业的战略地位越来越高,产业规模越来越大,软件产业的国际竞争日益加剧。软件产业的竞争归根结底就是软件人才的竞争,软件行业企业核心职业岗位对软件人才的职业能力和素质要求越来越高,对高端应用型软件人才的需求越来越迫切,本科软件人才的理论基础、知识水平和专业能力达不到这样的层次,而学术学位软件硕士研究生侧重于科学研究,实践动手能力、技术应用和创新能力等难以快速适应软件企业对技术骨干的现实要求,软件工程专业硕士正是针对这样的人才需求,为软件企业发展培养急需的高层次应用型软件人才。
教育部规划建设的应用科技大学是现代职业教育体系的高端职业教育,主要任务是培养中高端技术应用型人才。当前我校正在创建南京软件科技大学,我们软件工程硕士专业学位的办学定位就是要针对江苏省大力发展软件产业、南京市打造“世界软件名城”对高层次软件人才的迫切需求,为软件企业培养能将软件理论方法和技术应用到生产实践,解决实际问题,并能在生产实践中进行改进、创新和再创造的软件高端技术应用型人才,满足软件企业发展的需要,服务于地方软件产业、行业和企业的发展。
二、培养目标和规格
学术学位培养主要面向学科专业需求,针对科研院所和企事业单位培养从事科学研究工作的高层次专门人才,就业去向主要是学校、科研院所等,人才目标定位为专家、学者、教授、研究员等。专业学位主要面向特定行业的职业岗位需求,培养的是能将知识、技术应用到特定职业领域的高层次应用型人才,就业去向主要是专业知识技能要求高、职业素质要求高的工作岗位,培养出来的人才目标定位为职业领域高层次人才。
学术学位培养强调理论修养,重视知识的创新,注重探索研究能力和理论创新能力,核心是培养科学研究能力,旨在培养相关学科的研究型人才。而专业学位培养强调理论与实践的结合,重视知识的应用,培养以理论知识、方法技术的应用和创新为核心的实践能力,旨在培养具有高层次职业能力和良好职业道德的应用型人才。
中国电子工业标准化技术协会信息技术服务分会(简称ITSS分会)在工业和信息化部的指导下,研究制定信息技术服务标准,并力求标准服务于技术、产业发展,服务于市场需求,最终实现我国信息技术服务的标准化和国际化。信息技术服务标准,简称ITSS)中“信息技术服务从业人员能力规范评价指南一一设计与开发服务”中将信息技术服务从业人员设计与开发服务的职位体系分为六个职位系列,每个系列又分为不同的级别,具体包括:
1、软件项目管理:
4级——项目经理,5级——高级项目经理,6级——资深项目经理
2、软件架构设计:
5级——软件架构师,6级——资深软件架构师
3、软件需求/系统分析
3级——需求分析师,4级——高级需求分析师,5级——系统分析师,6级——资深系统分析师
4、软件开发
1级——助理软件开发工程师,2级——初级软件开发工程师,3级——软件开发工程师,4级——高级软件开发工程师,5级——资深软件开发工程师
5、软件测试
1级——助理软件测试工程师,2级——初级软件测试工程师,3级——软件测试工程师,4级——高级软件测试工程师,5级——资深软件测试工程师
6、软件交互设计
4级——交互设计工程师,5级——高级交互设计工程师软件工程专业硕士学位人才培养的目标针对的就是各个职位系列中的4级及以上软件人才,培养规格是以软件企业对高层次应用型软件人才的实际需求为导向,以软件企业高级岗位职业能力要求为标准,培养具有宽厚扎实的计算机和软件理论基础与知识水平,具有一定软件工程实践经验,具有良好职业道德,健康的身体和心理素质,善于团结合作和组织协调,具备很强专业实践和创新能力,能将软件理论方法和技术应用到软件企业生产实践,解决实际问题,并能在生产实践中进行改进、创新和再创造的应用创新型高级软件人才。
三、校企合作培养模式
学术学位培养以学校为主,主要是理论教学和参与科学研究。专业学位应采用校企合作人才培养模式,教学过程强调理论结合实际,突出应用创新能力培养,引入企业的实际问题,注重培养学生研究实际问题的意识和解决实际问题的能力,借助企业的环境条件和资源,把课程学习、专业实践、岗位实习紧密结合。
在信息产业、软件行业快速发展的时代背景下,南京、江苏、长三角区域的信息产业和软件行业的蓬勃发展为我校软件工程专业硕士人才培养提供了广阔的空间。一方面我们要针对软件行业、软件企业对高层次软件人才的需要而培养人才,另一方面,我们要依托软件行业、软件企业的资源和力量来培养人才,借助企业的环境条件和资源,把课程学习、专业实践、岗位实习紧密结合,走产学研相融合的办学道路,探索软件工程专业硕士培养的新途径,形成提高应用型人才培养质量的新机制,提升专业学位研究生的实践能力、工程能力和创新能力,提高软件硕士研究生培养与软件产业人才需求的匹配度。
具体而言,软件工程硕士专业学位人才培养可以从以下几个方面来开展校企合作
(一)校企联合成立专业建设指导委员会
通过成立校企联合专业建设指导委员会,可以把企业的人才需求规格,技术应用前沿和热点等引入学校,指导学校的人才培养规格定位,促进学校教学内容的更新。
(二)企业科研项目驱动学校人才培养
企业为赢得市场往往需要不断技术攻关和研发投入,而学校的专业学位研究生已经具备一定的技术攻关和科研能力,可以将企业的研发项目引入学校,驱动学校的人才培养,同时也可为企业降低成本,这对中小企业尤其具有现实意义。
(三)学校人才定向服务和支持企业发展
学校按照企业所需定向培养高层次人才,人才毕业后即可投身该企业,为企业的发展贡献力量。
(四)企业资源服务学校人才培养
作为实践性很强的学科专业,软件工程硕士专业学位人才培养需要较好的实验环境、条件、技术和设备支撑,并最好能有实际生产环境来进行实习实训,为此,可以将企业资源引入,服务于学校的人才培养,充分发挥企业的资源优势,降低学校的实验条件投入,避免浪费,提高整个社会的资源使用效率。作为回报,学校可以为企业提供人才、科研、技术等服务,实现合作共赢。
四、人才评价标准
学术学位人才评价标准的核心是学位获得者是否具备了扎实的基础理论知识,掌握了科学研究的方法,能够开展科学探索、研究和创新,可以满足科学研究工作的学科知识和科研能力需要。而专业学位人才评价标准的核心是学位获得者是否具备了特定社会职业所要求的专业能力和职业素养,具备了从业的基本条件,有良好的职业道德,能够运用专业理论、知识、方法和技术解决实际问题,满足特定领域高层次职业岗位的能力和素质需要。
具体而言,软件工程专业硕士学位人才培养的评价标准与学术硕士学位人才培养的评价标准在以下方面应有所不同:
(一)毕业论文
学术学位论文的质量评价主要以科研能力考核为主,学位论文强调理论价值和在未知领域的原创性发现和探究。而专业学位论文应侧重于理论联系实际,解决实际问题,可以结合生产生活具体问题或者实际需求选题,强调创新性的设计和应用,突出实践过程、应用价值和实际意义。软件工程专业硕士学位人才培养的毕业论文,可以结合企业的技术攻关、项目研发、产品创新等,采用系统设计、方案设计、产品设计、项目开发、调研报告等多种形式来体现,主要考核毕业论文工作的技术含量、创新性和实际应用价值。
(二)成果
攻读学术硕士学位学生的成果主要体现在参与纵向课题申报和研究、发表高水平学术论文等,而攻读专业硕士学位学生的成果主要体现在参与横向课题申报和研究、解决企事业单位实际问题、技术创新、科技成果应用和转化、社会服务、自主创业等。对软件工程专业硕士学位学生的成果考核,还可以将获得专利和软件著作权、设计开发的软件产品或软件系统、等纳入考察范围。
(三)职业资格
专业硕士学位是高层次的职业教育,是针对特定领域高层次职业岗位培养人才,职业性是专业硕士学位的特征之一。软件工程专业硕士学位人才培养可以将是否获得软件类相关职业资格证书作为人才评价的参考指标之一,引导学生积极对接职业需求,获得职业资格,为今后的职业发展奠定基础。
五、结语
浙江工商大学软件工程专业从2005年开始招生,在校学生达到280人,其培养目标为培养德、智、体全面发展,掌握计算机基础理论和软件工程专业知识,具有软件开发能力和初步的项目管理经验,具备创新能力和团队合作精神、适应软件产业市场需求的高素质软件工程专门人才。从专业成立以来,学校就在大学生创新能力培养方面进行了积极探索,开展了一系列的改革和实践,包括软件工程专业教学体系的研究,教学计划、课程内容的完善与调整,软件工程实践等专业课程的教学改革等,形成了将实践能力培养贯穿整个学习阶段,充分与课程教学、实践实验、学科竞赛和科研活动等结合的培养体系,具体形式如图1所示。
1.1三个培养阶段——完善的实践课程教学体系建设
浙江工商大学结合软件工程专业的特点,加强实践课程教学,全面优化和修订培养方案,调整课程设置,将传统以基础理论教授的模式转化为以培养实践能力为主的课程体系建设。课程体系体现“厚基础”、“重技能”、“多实践”的特点,课程类型基本分为公共基础课、专业课、专业选修课、实践课等。在整个课程体系中,软件工程专业学生培养分为3个阶段进行,即初期阶段、中期阶段和后期阶段。1)初期阶段。初期阶段是指第1学年和第2学年的第1学期。该阶段学生的任务主要是学习数理基础和提高软件开发能力,包括夯实数理基础、提高学习能力、解决语言听说写的问题和解决编程能力问题。一、二年级暑期短学期,开设高级语言程序、数据结构、Java程序设计等实践课程,使学生具备较强的软件开发能力。当然在该阶段,学生也可以申报创新项目,或是参与一些学科竞赛、科研项目等,但由于参与上述项目的要求比较高,参与这些项目有个知识准备的过程,所以一般来说该阶段软件工程专业的学生参与力度不大。相对来说,这个阶段的学生可以考虑参与一些与课程相关性比较强的实践内容,如开放实验、创新实验、C语言程序设计大赛等,而等数据结构课程学完之后,部分对编程感兴趣或是编程能力相对比较强的学生可以考虑参与ACM程序设计大赛的训练。2)中期阶段。中期阶段是指第2学年第2学期和第3学年。该阶段的主要任务是学习Web技术、软件建模与设计、软件项目管理、软件质量与测试等专业课程,强化专业知识教育,通过校内项目实践课程,加强学生动手能力、实践能力,提高系统设计能力。学生在这个阶段应该掌握完备的计算机专业基础知识,学习软件工程的基本原理和方法。我们特别设计了两个学期的软件工程实践课程,通过以小组为单位的完整项目实践,让学生真正掌握和应用软件工程的各种方法以及团队合作技能。该阶段是软件工程专业学生主要实践锻炼、创新能力培养、动手能力累积的主要阶段,在该阶段,学生可以根据自己的兴趣爱好,在教师的指导下参与各种创新实践项目、学科竞赛、科研项目等。3)后期阶段。毕业阶段是指大四整个学年。在该阶段,通过开设一些专业选修课,让学生了解专业前沿,学习软件工程规范,拓宽专业前沿知识和领域知识。大四第1学期的后半学期开始到优秀软件企业进行实践,学技术、学管理和学做人。企业实习可以与毕业设计挂钩,实习的内容可作为毕业设计的内容,使学生能够更好地适应产业界的需要。
1.2实施保障措施——全程专业导师制、全面实践课程改革、全方位实践活动
1)全程专业导师制。学生的培养体系通过实施“全程专业导师制”,加强对软件工程专业本科学生的专业指导,提高学生的专业实践能力。专业导师的职责主要是负责对学生学习方法、专业认识和实践动手能力等方面进行指导,主要向学生介绍学科和专业的教学内容、方向和发展前沿,引导学生明确学习目的和成才目标,端正专业思想和学习态度,促进学生知识、能力、素质协调发展,并创造条件让学生参加科研活动,鼓励和引导学生参与社会实践等活动,积极引导学生参加各种学科竞赛并给予辅导,在大四阶段指导学生的毕业设计和择业。2)全面实践课程改革。对培养体系中的所有实践课程进行改革,改进教学方法,加强教师指导,提高教学效果。以软件工程实践课程为教学改革试点课程。以“大班授课小班讨论”的教学改革方案下,以已有实践课程改革方案为基础,针对该课程的具体情况,制订出一套适合于软件工程专业学生的最佳实践方案,以开源软件为开发和管理工具,以团队合作为组织形式,真实地模拟软件工程项目从需求分析到软件的完整过程。本课程在教学方式、小组交流与合作、实践指导和考评体系等方面进行了强化和扩展。(1)教学方式:课程共60学时。课程采用大班教学,小班讨论与实践的教学模式进行。其中,课堂教学(即大班教学)约20学时,实践教学(即小班讨论与实践)40学时。学生在大班教学阶段全面学习了目前现有软件企业在实际软件项目开发中所使用的项目开发和管理技术和业界普遍使用的软件工具。在小班讨论阶段将这些知识融入实际的软件项目管理与开发中。(2)小组交流与合作:以开源软件工程工具和开源软件组件的学习和使用为基础,从真实软件工程项目的需求分析、概要设计、详细设计、编码实现、软件测试至最后的软件,学生们以理论教学促讨论,以讨论促实践,从实践中真正学到了软件工程业界的理论与方法。(3)指导实践:主讲教师除了进行理论教学的授课之外,必须直接参与实践讨论的教学环节,这不仅有利于提高实践讨论的效率,实时解决学生所遇到的理论知识问题,给其他实践讨论指导教师起到良好的示范作用,更有利于从实践讨论教学环节中得到学生的反馈,对下次的理论教学进行强化、修正和扩展。每班配备2~3名实践讨论指导教师。(4)考评体系:以小组整体成绩与个人贡献相结合的考评方法,可以更合理地评估每位学生的实际表现。3)全方位实践活动——创新实践计划,软件设计竞赛等。本着“注重应用、提高素质”的实践培养要求,为学生提供全方位的实践活动,包括创新实践计划和软件设计竞赛等。创新实践计划原则上要求学生具有基本的程序设计和开发能力,掌握软件工程开发各个环节的基本知识、基本技术(嵌入式系统、信息系统、多媒体开发)。创新实践的主体为软件工程专业本科三年级学生。为了创新实践的梯队培养和团队协作,创新实践的对象还可以包括优秀的大学二年级学生和研究生。考虑到软件工程项目在时间上的整体性、迫切性和定时性,同时结合学生能够充分利用连续时间,以及指导教师的空闲时间,每届学生的创新实践的开始时间为第4学期末开始,至第7学期毕业实习期之前。实践的工作制度为弹性工作制,即按照项目开始时制订的工作计划,每人按时完成各自的工作任务。参加创新实践的学生首先在专业实践机房进行培训和实践模拟训练,学校每个学期开始、期中和期末各进行一次实践考核,考核优秀者可以进入校内实践基地,从事真实项目的开发工作。软件设计大赛旨在通过竞赛活动,提高学生的软件系统设计、开发水平,培养学生在软件工程方面理论与实践相结合的能力,激发学生参与实际软件开发工作的兴趣,培养学生的团队协作能力,树立科技创新意识,丰富和活跃校园文化氛围,培养经济和社会发展需要的优秀人才。竞赛要求二、三年级学生混合组队,以三年级学生为主,二年级学生为辅,培养学生之间的沟通能力和协作能力。大赛遵循自由命题的原则,体现创新,所有作品必须为学生的原创作品,不得侵犯他人的知识产权。竞赛注重基本知识的掌握与应用,体现实际操作能力和综合应用水平。学生提交作品后,由专家委员会组织专家从多个方面对参赛作品进行量化评分,包括:作品相关材料的真实性与完整性、作品的创新性、作品的技术先进性、完成作品的工作量与工作难度、理论与实践相结合程度、回答问题的正确性等。
1.3评价保障机制
社会的发展、时代的要求推动了人才培养模式的改革,单纯注重知识传授转变成加强实践创新能力的培养,教学资源建设也由传统的分散的单一型向集约型、立体化、网络化、共享型转变,教学管理机制由原先强调规范向满足学生自主选择和有利于学生个性发展转变,学校以及学院为配合本专业大学生创新能力培养提供了保障机制。1)科研项目为教学科研改革提供动力。本专业学生通过创新项目立项、专业实践锻炼、参与导师的横向、纵向课题等方式,为师生的科研教学和学习提供了真实的问题环境,使他们在实战中提高了科研教学能力和学习应用能力。此外,学生也可以将所参与的项目与毕业设计、科技创新、社会实践等相结合,体现自身价值的同时,也能激发教师科研创新的积极性。2)“创新学分”冲抵选修课学分,丰富学生评价方式。我们将“实践创新能力”这一指标引入学生的评价系统,加强学生素质拓展教育,凡是参与实践创新活动并能提供相关成果的学生经认定后可获得一定的“创新学分”,其中修得1个创新学分是在校学生必备的要求,而获取该学分有多种方式,如参与各个教师所开设的创新实验满15课时,且提交一定成果,经指导教师认定为良好以上的,可向教务处申请获得1个创新学分;参与校级以上学科竞赛并获得三等奖以上的也能获得相应的创新学分;发表学术论文的学生根据文章排名也能获得相应的创新学分。而多出来的“创新学分”可冲抵相关的专业选修课学分,进一步丰富了学生评价方式。3)“系统/论文替换”,丰富毕业设计环节的形式。我们在毕业设计环节施行“系统/论文替换”的新形式,增强了毕业设计环节的灵活性。凡是参加省级以上竞赛并取得三等奖以上的学生提出申请后经学院认定,可根据竞赛的成果替换毕业设计环节中的相关内容,如某个学生获得浙江省电子商务竞赛设计类一等奖的排名第一的学生,可以将竞赛的成果(系统和报告)申请毕业设计系统和论文都替换,而发表B类以上学术论文的学生可以申请论文替换。
1.4建设校内软件外包基地
软件实践基地对于软件工程专业的实践教学有着重要意义,在实践基地进行的实践教学能使课堂上的知识完成从理论过渡到应用。目前,各个高校普遍通过与软件企业合作建立校外实习基地进行实训学习,但这种方式存在不少问题:实习点分散不利于管理;到校外实习一般费用较高;由于软件企业担心泄露机密、干扰正常工作等原因不愿与学校建立校外实习基地,或同意建立校外实习基地,但对实习的时间和实习的岗位加以严格限制,甚至学生只能观摩不能操作。因此,为了提高浙江工商大学软件工程专业学生的实践能力,除了建立校外实习基地以外,建立完善的校内实习基地尤为重要。从2008年起,浙江工商大学与知名的软件服务外包企业(杭州星移软件有限公司、杭州富士制冷机器有限公司)合作,建立了校内软件外包实践基地,让学生有机会参与对美、日软件外包项目的实践,为学生实践提供了良好的工程实践环境。我国软件外包正飞速发展,软件外包是企业为了专注核心竞争力业务和降低软件项目成本,将软件项目中的全部或部分工作发包给提供外包服务的企业完成。软件外包项目符合我们实践教学的需要,软件外包项目的特点是种类丰富,部分项目规模小,周期短,也经历软件生命周期的各个阶段。软件实习基地不仅使得学生与社会更好地衔接,也为人才培养模式改革、师资队伍建设提供良好的载体。该实践基地的建设,可充分利用校内良好的实验室软硬件资源和强大的师资力量,通过承接各类软件外包项目,引入服务外包企业的运作模式和管理机制,方便学生在校内参与真实的软件外包项目,提高各个层次学生的软件工程与外包实践能力,为顶岗实习实践打下基础。可充分发挥学校和企业在软件服务外包人才培养方面的各自优势,整合与优化现有各类资源,为学生提供良好的实习实践环境。
2应用效果
浙江工商大学面向软件工程专业的大学生创新能力培养体系根据产业发展不断调整和完善。2005届学生毕业后,该专业课程体系进行了一次深入改革,课程设置从偏向理论、细粒度化设置转换成注重实践、粗细力度相结合,而2006版和2007版课程体系标志着该培养计划基本内涵的成熟,2008版课程体系则是对软件工程专业教学的进一步总结。在该培养体系指导下,学生对学科知识架构认识清晰、理解深刻、基础扎实、适应性强、独立解决实际工程问题的能力突出,毕业生受到用人单位青睐,就业率和就业层次高;据软件行业协会调查和用人单位反馈,学生在工程能力、创新能力、国际化适应能力以及团队合作精神等方面均得到广泛认可;学生在竞赛中也取得了可喜的成绩,如2011年该专业学生团队获得浙江省电子商务竞赛设计类一等奖、国家电子商务竞赛一等奖等,2012年该专业3组学生获得浙江省服务外包创新应用大赛二等奖。该培养体系对于确立浙江工商大学软件工程专业的学科定位与教学内涵也起到了积极作用,得到广泛认可。2009年,软件工程专业“软件工程实验室”获得省属高校实验室建设项目;2011年,软件工程专业被评为“软件工程实验室教学中心”省级实验教学示范中心。
3结语
关键词:软件工程;课程体系;培养方案
软件工程教育兼属科学教育和工程教育范畴,软件工程的科学教育属性主要是引导学生对人类意识与智慧进行科学理解、增强运用软件本质特性(构造性与易演化性)和解决具体问题的能力;而软件工程的工程教育属性主要是引导学生综合应用计算机科学、数学、管理等科学原理,借鉴传统工程的原则、方法,提炼和固化知识,通过创建软件来达到提高质量、降低成本的目的。然而,McKinsey Global Institute2005年10月发表的一份报告称,我国2005年毕业的60多万工程技术人才中适合在国际化公司工作的不到10%,主要原因是中国教育系统偏于理论,学生在校期间几乎没有受到Project和团队工作的实际训练,这对我国高等院校工程教育改革与创新提出了挑战,也为软件工程专业建设指明了方向。
合理的课程体系是高等院校保证培养目标和形成办学特色的重要手段。目前,我国1900多所普通高校中虽有100多所院校开设了软件工程专业,但与当前软件工程技术发展差距较大。为了培养出既有理论知识又有应用技能的工程型实用软件人才,软件工程专业课程体系必须进行改革。对此,本文结合CC2005、SE2004、SWEBOK、国内软件工程专业课程设置现有的研究成果,探索软件工程专业本科教学课程体系建设问题。
1 软件工程专业课程体系设计策略
计算学科本科教学常用的课程体系设计策略主要划分为:课程启动策略、课程组织策略、特色课程设置策略。课程启动策略主要包括:1)围绕算法设计展开的算法优先策略;2)自底向上展开的硬件优先策略;3)从计算机导论展开的广度优先策略:4)强调编程能力的程序设计优先策略;5)强调系统使用命令优先策略;6)从面向对象展开的对象优先策略。
课程组织策略主要有:1)基于主题的组织模式,它把知识体系中的每个知识域组织成一门或几门课程;2)基于系统的组织模式,它把每类计算机软硬件系统设置成一门或几门课程;3)混合模式,在课程设计时不考虑区分前两种方法,兼而有之。特色课程设置策略主要依据本校办学特色和研究专长来确定。
由于软件工程教育兼属科学教育和工程教育范畴,其科学属性和工程属性决定了软件工程专业本科教学课程规划,一方面要强调工程性、技术性、实用性、系统性、综合性和复合型,另一方面要强化基础软硬件知识在解决复杂软件构造和应用方面起到的关键作用。对于课程启动策略而言,传统计算机科学专业的课程启动方式并不适合于本专业,但工程优先策略似乎也不适合于没有任何计算机基础的本科生;同样,在课程组织策略上,基于主题的组织模式更多地具有科学研究属性,而基于系统的组织模式又不利于基础知识强化;此外,特色课程设置时,有时会缺乏全面综合考虑,因人设课会造成特色课程系统性差问题。因此,在软件工程专业课程体系设计策略方面,应根据软件工程学科自身属性,综合考虑以上各种策略特点,全局思考,统一规划,避免课程系统性差、教学内容重复和遗漏并存等现象。
2 软件工程专业课程体系架构模型设计
根据软件工程专业本科教学的培养目标及规格要求,其课程体系采用“夯实基础教育、提高系统认知、强化软件开发、推进工程实训”为主线的设计思路,构建了“分层次、互动式、工程化”的课程体系架构模型(如图1所示)。该模型共分为四个层次,即基础知识教育层、系统认知教育层、工程设计开发层和工程实践训练层。各层次不是相互独立的,而是相互关联、相互影响、逐层递进的演进关系。该模型简化了计算机科学核心课程数量,突出基于主题的组织模式,沿着由浅入深、循序渐进的认知路径,力图实现“基础与编程一体化、编程与系统一体化、系统与工程一体化、工程与职业一体化”四位一体的工程型实用软件人才教学目标。
2.1 基础知识教育层
基础知识教育的设计思路,强化学生的基础知识和编程意识,实现“基础扎实和编程意识强”两个目标。基础知识教育层结构具体划分为:数学基础类课程模块、外语类课程模块、软件基础类课程模块、其他公共基础类课程模块。根据各模块自身特点,全面考虑各模块之间的关联性,做好彼此之间的衔接。在课程启动策略方面,主要采取基于基础的编程优先策略。在数学基础类课程模块中确定一门衔接较好的基础课作为软件基础类课程模块的启动,软件基础类课程模块率先启用软件设计基础课程,力图达到“基础与编程一体化”的教学目标。在课程组织策略方面,采取基于主题的组织模式,有利于学生掌握基础理论知识。
2.2 系统认知教育层
系统认知教育的设计思路:强化学生的编程能力和对软件系统的认识能力,实现“编程能力强和系统级认知”两个目标。根据软件工程专业对硬件系统和系统软件的知识要求,系统认知教育层结构划分为:数据库系统类课程模块、网络系统类课程模块、操作系统类课程模块和编译系统类课程模块。在课程启动策略方面,主要采取基于编程的系统优先策略。通过软件基础类课程模块的数据结构等课程和系统认知类课程模块的数据库原理及应用等课程,进一步强化学生的编程能力,并以程序设计为主线引导学生的系统级认识能力,实现“编程与系统一体化”的教学目标。在课程组织策略方面,采取基于系统的组织模式,简化计算机科学核心课程数量,提高学生学习的有效性和对知识的掌握程度。
2.3 工程设计开发层
工程设计开发的设计思路:以工程化方法为手段,依托项目培养学生的“工程”意识,锻炼学生对软件系统的设计与开发能力,进一步强化学生的系统级认识,实现“更完整的系统级认识和软件系统工程化设计开发技术”两个目标。根据软件工程项目开发流程,工程设计开发层结构划分为:软件过程类课程模块、软件设计类课程模块、软件架构类课程模块、软件测试类课程模块、人机交互类课程模块、特色项目类课程模块、可扩充类课程模块。该层综合考虑核心专业课程和特色项目课程设置,基于专业方向设置若干动态可扩充课程,全面考虑课程之间的关联,强调统一设计、统一规划。学生在这个层次必修一些工程设计开发系列课程,选修可扩充类课程,达到“系统与工程一体化”的教学目标。课程启动策略采取基于系统的工程优先策略。课程组织策略采取项目的组织模式,以此来提高学生的软件系统设计与开发能力。
2.4 工程实践训练层
工程实践训练总体设计思路:通过实验训练、专业实习、项目实训、毕业设计等教学环节,依托校内 外实习实训基地,采用校外实习实训、自主实习实训、校内实习实训和外聘软件工程师等形式,强化学生的工程能力,培养学生的职场素质,实现工程与职业一体化的教学目标。工程实践训练层结构具体划分为两大类,一类是实验与实习类课程模块,另一类是工程实训与毕业论文类课程模块。其中,实验与实习类课程模块的具体设计思路,通过基础实验、系统体验、编程能力训练三个环节,进一步夯实学生的基础知识,完善学生的系统级认识,强化学生的开发技能;而工程实训与毕业论文类课程模块的具体设计思路,通过“软件工程项目实训”这个载体,采取“企业+实训+论文+就业”捆绑的运作模式,与多家国内知名IT公司合作,让学生到企业进行实际项目综合训练,并完成毕业论文设计工作,实现理论与实践结合、技巧与职业素质结合的教学目标,同时也为学生就业提供一个良好平台。
上述四个教育层是彼此联系和互动发展的,在课程体系设计中充分考虑衔接性、系统性和创新性。交流、沟通、讲演、写作的培养更多体现在第二课堂科技学术活动中。
3 软件工程专业核心课程设置
3.1 课程设置原则
软件工程专业课程设置遵循六个基本原则,即先进性、灵活性、复合性、工程性、创新性和模块化。1)先进性:课程设置和课程内容需反映国际上先进的软件技术发展成果和软件企业对先进技术的需求,以及相关的基础理论。2)灵活性:课程设置需具有灵活性,应根据软件技术的发展及时调整。3)复合性:课程设置需包括技能、工程、管理等方面的教学内容,使学生具有必要的综合技能和基本素质。4)工程性:课程设置面向软件工程实践,强调工程实践能力培养,使学生能够自觉运用先进的工程化方法和技术从事软件开发和项目管理,具有团队协作精神。5)创新性:课程设置应倡导学生自主学习,并给予必要的指导,从而培养学生自主学习和自我提高能力,以及勇于开拓和善于创新能力。6)模块化:课程应按照模块化准则设计,课程模块设计可以交叉。根据软件技术最新发展、当前市场需求及专业培养方向、学生目前具备的领域知识等,灵活调整课程设置和课程内容。
3.2 核心课程模块设置
1)软件基础类课程模块设有:计算机硬件基础、软件设计基础、数据结构、计算机组织原理、面向对象程序设计、算法分析与设计等课程。2)操作系统类课程模块设有:操作系统原理、LINUX系统基础、嵌入式系统基础等课程。3)网络系统类课程模块设有:计算机网络、网络规划与集成、网络安全检测与防范技术、网络协议与网络软件等课程。4)数据库系统类课程模块设有:数据库原理及应用、ORACLE数据库、数据仓库与数据挖掘技术等课程。5)编译系统类课程模块设有:编译系统原理、编译技术等课程。6)软件过程类课程模块设有:软件工程、需求工程、软件项目管理、软件建模技术UML等课程。7)软件设计类课程模块设有:C++高级程序设计、J2EE与中间件、.NET架构技术、设计模式等课程。8)软件架构类课程模块设有:大型软件系统构造、软件体系结构等课程。9)软件测试类课程模块设有:软件测试技术、软件测试与评估等课程。10)人机交互类课程模块设有:人机交互技术等课程。11)特色项目类课程模块设有:软件工程项目案例解析、大型软件工程项目实训等课程。12)可扩充类课程模块设有:手机游戏开发、网络游戏开发、计算机图形学、嵌入式Linux网络及GUI应用开发、嵌入式Linux驱动开发、手持设备软件开发等课程。
4 软件工程专业培养方案制定与实施
软件工程专业培养方案制定是基于软件与工程的复合,将软件工程与领域应用相结合,强调计算机科学和数学基础的同时,将专业课程重点放在软件新技术和软件工程新技术方面,通过对实践类课程工程化改造,增设软件工程项目实训环节,开设部分技能课程,试图使学生的基础知识、专业技能、创新能力、工程能力和职业素质都能得到全面均衡发展。具体措施如下。
4.1 建立英语为主日语为辅的外语教学体系
根据IT市场的实际需求,软件工程专业培养方案制定,除正常开设四个学期大学英语外,增开两个学期标准目语和一个学期专业英语,坚持外语学习四年不断线,旨在为学生选择日企或对日外包企业就业提供方便。
4.2 建立工程化实践教学体系
建立“四年不断线、三个层次相呼应、两大措施为保障”的工程化实践教学体系。“四年不断线”是指实践环节四年不断线,每个学期至少有一个集中性的实践教学环节,体现“全过程”实践;“三个层次相呼应”主要是从实践教学内容设计上考虑的,包括第一层次教学实验,第二层次课程设计及专业实习,第三层次工程项目实训与毕业设计;“两大措施为保障”主要指教学计划保障和考核制度保障。
4.3 设置专门的实践课程
针对工程化软件人才应具备的个人开发能力、团队开发能力、系统研发能力和设备应用能力,以必修课和选修课形式,开设四类特色化、阶梯状工程实践学分课程,即程序设计类实践课程、软件工程类实践课程、项目管理类实践课程和网络平台类实践课程,构成了系统全面的学生实践能力训练体系。
4.4 提高专业课程教学中的实验课时量
除个别侧重理论教学的专业课程外,80%以上的专业课程包含实验或实习环节,实验或实习成绩占总成绩的30%以上,一部分实践性较强的课程是以上机考试和答辩作为最终考试方式。
4.5 开设部分技能课程
在技能课程中,与该领域内具有国际领先水平的企业在课件共享、教师培训和资源投入等方面展开合作,共同设计、讲授和评估课程。鼓励学生参与企业提供的专业认证考试,或参加国家相应的专业资格考试,对此,学院将计算机网络、Oracle数据库、J2EE与中间件等认证课程纳入本科教学计划中,全面体现学生的“多证多能”。
论文关键词:软件人才;人才培养模式;企业需求;应用型
软件产业作为信息产业的核心和国民经济信息化的基础,日益受到政府的高度重视。软件产业快速发展的关键是人才。当前我国软件人才的规模、结构和水平还不能适应软件产业的实际需求,存在着一个怪现象:一方面,软件企业招聘不到合适的人才;另一方面,很多软件专业的应届毕业生找不到工作。如何构建适应企业需求的软件人才培养模式,缩小高校培养人才与企业需求的差距是当前高校应当研究的课题。
一、当前软件人才培养中存在的问题
1.软件人才培养定位不准
IT业将软件人才分为“蓝领”和“白领”两种类型。软件“白领”首先必须是一个优秀的软件“蓝领”,这是非常重要的。综合性高校将自己的人才培养目标定位为培养软件“白领”,这本身是没有问题的。但在实际的培养过程,却往往忽视达到“白领”的目标,首先应该培养学生成为一个“优秀蓝领”,掌握“蓝领”所必需的知识技能,然后再将其升级培养为软件“白领”这一规律。学生接受到的是“白领”所必需的课程,但由于缺乏实际的软件开发经验,不能设计出具有可操作性、可重用性和可扩展性的软件结构,不能胜任“白领”的工作。甚至会处于沦为“蓝领”仍有可能不能进入工作状态的尴尬境地,这样的人才较容易被淘汰。
2.软件人才专业能力不强
“专业性”是高等教育三个性质中最重要的性质,它贯穿于高等教育的专业、课程等各个环节,它强调了大学生一定要具有一定的专业特长。在大众化教育的今天,我国的人才培养强调“宽口径、厚基础”,强调的是大学生知识面广和毕业时就业面宽的特征,但如果这样就不重视学生专业特长的培养就是不合理的了。目前,大部分高校的软件工程专业是在计算机科学与技术专业基础上发展起来的。在这样的学科特点下,软件工程专业人才培养方案和教学模式就会沿用计算机科学与技术专业的人才培养方案和教学模式,就容易导致学生缺乏软件人才所必需的软件开发、软件工程、团队沟通与合作及软件重用与变更等方面能力的培养,缺少了其作为软件专业毕业生所应该具有的特长,不能适应软件企业的需求,学生很难找到一份满意的工作。
3.教师软件工程能力薄弱
高校的三大职能当中首当其冲的就是人才培养的职能。人才培养的关键是教师,教师的教学水平和科研水平是高校人才培养质量最为重要的因素。对当前高校教师的评价结果主要决定于教师的学历、科研水平及教学水平,其中前两项更能短期体现教师的个人价值和能力,这就导致教师重学历、重科研、重理论而轻能力、轻教学及轻实践。对于软件专业的教师,为了提高自己的职称和体现自己的价值,就忙于软件理论的研究及发表科研论文,简单应付学校的教学任务,疏于软件开发、软件工程实施、软件架构设计及软件系统分析等方面的研究和实践,使得自己本身就缺乏实践工程能力,当然自己的学生就容易空具有扎实的理论知识,但却不能胜任实践能力和工程能力要求较高的软件企业的工作,不能满足企业的要求。
二、软件工程专业人才培养模式的改革和创新
NIIT(National Institute of Information Technology),是印度拥有20 余年软件开发与IT职业教育经验的IT培训厂商,其先进、高效的教学方法,可以确保学员可以在较短的时期内,全面掌握业界的主流软件开发技术,满足市场对软件人才的的需求。我校于2006被江苏省教育厅遴选为首批与NIIT合作的高校之一,学校已与NIIT签署协议,联合培养可从事软件开发的各专业本科生。为了提高我校软件专业人才培养质量,扬州大学信息学院建立以企业需求为导向的,将NIIT课程嵌入到软件工程专业人才培养方案中的嵌入式面向企业需求的人才培养模式。
1.制定一个符合现代软件发展需求的软件人才培养方案
我校遵循先进性、灵活性、工程性、实用性及创新性五个原则,在充分调查了当前江苏省软件企业需求的基础上,建立扬州大学软件工程专业培养方案。培养方案在突出企业需求的基础上,着重突出了三个要点:注重基础、精练方向、拓展兴趣。
注重基础强调计算机基础理论教学,开设了9门学科基础课程,包括数据结构与算法、离散数学、软件工程、操作系统原理、计算机通信与网络、C及C++语言程序设计、计算机硬件基础、程序设计基础及算法设计与分析等,所有课程都请资深的教师担任课程的教学工作。
精练方向实施模块教学,强调对学生在某一方面能力进行培养,这部分内容主要实施的是NIIT的课程内容。我们将NIIT课程建设成为两大课程模块:.net课程模块及Java课程模块。每一模块都包括从开发语言、WEB编程、移动程序设计、中小企业程序设计、企业级架构设计及数据库等一整套循序渐进的课程体系结构,学生可以根据自己的喜好来选择一个模块进行比较深入的学习。
拓展兴趣强调学生在某一方面技能比较突出的情况下,可以选择其他学习模块及其他拓展兴趣的课程进行学习,其中拓展兴趣的课程主要包括电子商务、网络安全、数字图像处理、计算机图形等。
2.面向应用,改革传统教学的方法,实现教学方法创新
我校根据软件专业的特点,对传统的“教师+教材”为资源,以“黑板+粉笔”为主的课堂讲授模式教学方式进行了变革,主要体现在两个方面:“混合教学法”(Blending-Learning)及“榜样案例教学法”。
“混合教学法”是把传统课堂教学和利用网络教学平台进行自主学习、协同学习(E-Learning)的优势相结合,以培养学生实践能力和创新能力为目标的一种教学方式。我校于2007年构建了自己的网络教学平台作为教师和学生的第二课堂。软件专业任课教师在课堂中主要进行框架内容和重点、难点内容讲解,并合理安排学生自主学习内容。课堂外教师在网络平台中设置问题情境,组织学生讨论,引导学生积极进行自主、探索式学习。
“榜样案例教学法”MCLA(Model Centered Learning Architecture)是一种在专家引导下的独立解决实际问题的科学学习方法,是NIIT课程教学使用的方法。教师将整个课程内容分解成若干个小的教学过程,在每个过程中教师根据所讲的内容,结合企业的实际需求,提出一个实际存在的问题案例,然后由教师系统的讲解解决问题案例的思路和方法。然后对学生提出另一个类似的实际问题,学生可参照教师的方法来解决问题,这是在专家指导下的实践。最后,学生将这些所学的知识综合运用到解决一个新的实际问题上,且要求独立完成,这就是无指导下的实践。整个教学过程是在专用的机房中进行的。通过这样的方法来培养学生独立解决实际问题的能力及软件工程能力。
3.创新实践教学体系,培养学生工程能力
实践教学是提高学生工程能力及创新能力的有效手段。我校软件专业根据自己的特点,依据实践教学整体化、多元化的原则,对原有实践教学体系进行了创新,主要表现在两个方面:加大实践教学力度、规范实践教学管理、监控实践教学过程。
为了加大实践教学力度,在2010修订的人才培养方案中,并加大了实践性教学的学分数,达58个学分(不包括NIIT课程学分)。依托NIIT培训,建立了软件专业近100人的专用机房,保证学院软件专业学生的上机时间,且将NIIT课程(51学分)切入到人才培养方案中作为实践类课程进行教学,加大实践教学力度。与国内外各类知名IT企业合作建立了IT实训基地,让毕业生最后一学年进入企业进行工程实习,积极为学生营造更为真实的“实战”环境,来提高学生的项目管理能力、交流与组织协调能力,把握软件市场的需求能力等。为了规范实践教学管理,学校建立了《实验教学管理条例》、《实习教学工作条例》、《本科生毕业设计(论文)工作条例》、《实践活动组织办法》及《NIIT课程教学管理条例》等一系列的实践教学管理规定。通过与企业沟通,重新编制了各门课程的实践指导书,让学生的实践课程的内容与企业需求接轨。为了监控实践教学过程,我们建立校、院两级督导监督制度对教学过程进行监督,并组织专家抽查学生的实践设计成果。每年两次请学生对教师进行评价,公开评价结果,并请督导对得分较低的教师进行指导,真正起到督导“既督又导”的作用。
4.加强教师队伍建设,提高教师素质
软件人才的培养质量很大程度取决于教师队伍的整体水平和素质。我校根据自己的特点,在教师队伍建设方面采取多元化的建设方法,即采取了外引内扶,专兼结合与专业教学研究团队建设相结合的多元化策略。
[论文关键词]多元智能 职业能力 软件工程专业
一、引言
多元智能理论创建于20世纪80年代,是美国哈佛大学霍华德·加德纳在前人的基础上创立的一种新的智能理论。该理论认为教育中需要利用有效的方法和策略来开发、培养学生的多元智能,而实践是培养学生解决实际问题能力和创新能力的有力方式,是培养学生多元智能的有效途径。在单位用人策略越来越趋向实际的情况中,学生如何在了解一个完整的职业生涯发展道路的基础上,完善和积累“职业能力”,把自己的能力和企业需要联系起来,合理地利用“职业能力”,将最终成为学生能否被企业接纳的重要因素。
广西工学院(以下简称“我校”)长期以来积极探索办学体制改革。1994年,在柳州市委和柳州市政府的倡导下,由广西工学院、广西柳州钢铁(集团)公司等13家单位共同发起成立广西工学院董事会。目前,董事单位已发展到44家。多年来,我校与企事业董事单位有着密切的产、学、研合作关系,以董事会的运作为载体,努力创新办学体制,走出了一条学校与社会企业之间“优势互补、互惠互利、共同发展”的特色办学新路,逐步形成了“校市相融,校企合作”的鲜明办学特色。
计算机软件工程专业人才的培养继承和发展了我校这一办学特色传统,高度重视学生动手实践能力的培养,建立“课堂实训、项目实训、企业实训”三个层次递进的实践教学体系,加强与企业和社会的联系,引入社会资源参与办学。我校软件工程专业与区内知名IT企业广西德意数码、南宁平方软件、柳州蓝海科技、广西软件评测中心、南宁时空网以及区外中软国际、四川华迪、深圳达内、深圳计算机协会、上海杰普、珠海永亚等单位签订了校外实习实训合作协议,安排学生赴公司实习实训,并取得了很好的效果。
二、多元智能理论的特征
在加德纳的多元智能框架中,人的智能至少包括下列八个方面:言语—语言智能、数理—逻辑智能、视觉—空间智能、音乐—节奏智能、身体—动觉智能、交流—交际智能、自知—自省智能、自然观察智能。
多元智能具有以下特征:第一,关注文化性。智能是在一定文化背景中学习机会和生理特征相互作用的产物。第二,突出多元性。智能是以多元化形式存在的,多种智能因素同等重要,需要给予同等的关注。第三,强调差异性。多元智能理论认为每个人都同时拥有相对独立的多种智能,在不同环境和教育条件下,个体的智能发展方向和程度有着明显的差异性。第四,重视实践性。把智能作为解决实践问题中的能力,是智能理论发展的一个突破性进展。评价一个人的智能水平,要看这个人解决实际问题的能力,以及在自然合理的环境下的创造力。第五,注重开发性。人的多元智能的发展水平的高低关键在于开发。
三、软件工程专业“职业能力”培养方案
软件工程专业“职业能力”的培养必须坚持做中学的原则,让学生在“做事”的过程中学习怎么“做人”,课程的设置要面向市场,以“厚基础、精方向、重实践、突特色、强外语”为原则指导课程设置,强调按照现代工程和软件开发、设计、分析和管理等技术来设置课程组,以实际应用为需求,依据学生特点,建立个性化培养方案,其别强调实践教学,构建“课程实训项目实训企业实习”的实践教学体系。
1.关注文化性,实现校企合作办学。多元智能理论尊重个体的文化背景和社会环境,加德纳的智能定义强调了智能的社会文化性。随着我国经济的高速发展,寻求经济发展模式的转型,着力发展少能耗、低污染和高附加值的高新技术产业是我们面临的主要任务。全球经济一体化已成为当今世界经济发展和竞争的一个主要特征。这些都需要大量适应经济形势的高级工程型人才,除要求他们掌握日益增加的专业知识和技能外,还要更懂得人文知识,了解全球问题,具备文化多样性和高效的交流能力。这对智能的培养,“职业能力”的培养提出了更高的要求。 转贴于
我校软件工程专业在课程实习、暑假实习和毕业设计等环节进行改革,探索高效的工程训练内容设计、过程管理新机制。坚持走“走出去”(送学生到企业实习)和“请进来”(将企业好的做法和项目引进到校内)相结合的新路子,充分调动企业积极性,发挥企业优势,使其参与到教学活动中来。办好“校内”“校外”两个实训基地建设,在校内继续凝练、深化“校内实习工厂”的建设思路,在校外与深圳、上海、南宁等软件公司建设好实训基地。将传统授课模式改写成在实践过程中去施教的过程,在“做中学”,以项目和案例为学习过程的载体,以不断涌现出来的问题为学习知识的驱动力,在学习的过程中,让学生不断接受企业的文化,体验团队协作的精神,提高“职业能力”。
2.突出多元,强调差异,改革授课内容和授课模式。多元智能理论认为,智能是以多元化形式存在的,每个人都同时拥有相对独立的多种智能,在不同环境和教育条件下个体的智能发展方向和程度有着明显的差异性。
我校软件工程专业强调面向市场,面向企业,保障学生实验和设计的题目全部来源于工程实践项目,正视学生的智能多元性和差异性。学生可以根据自己的爱好和专业知识选择校内企业联合实验室项目、指导教师项目、实习企业项目,完成自己的各项课程设计和毕业设计。这有利于激发学生的学习兴趣,规划今后的专业发展方向。此外,我们鼓励学生以团队的形式在完成课程学习的同时完成规定的大作业,使学生在软件系统开发(分析、设计、实现和测试)、团队实践和过程控制、管理能力等方面得到系统的训练和提高。
3.重视实践性、开发性,完善教学体系。实践性、开发性正是多元智能理论的核心特征。我校软件工程专业培养模式重视实践,强调必须在实践过程中去施教的过程,在“做中学、学中做”。重视培养学生的综合能力,围绕培养具有综合竞争能力的软件工程师这一核心,对教学内容、课程体系、实践环节、教学方法和组织方式和教学过程管理等进行改革,探索适合软件人才培养的新型教育模式和新机制。具体方案设计如下:
基础知识教育。围绕基础知识和专业基础知识教育,围绕数学基础、程序设计主线展开教学,使学生能够具有扎实的基本功,为高层次人才和创新能力的培养打下坚实的基础。在暑期前后进行近一个月的编程强化训练,由企业教师和校内教师主讲,强化训练结束后进行编程能力的考核。
专业知识教育。围绕专业基础、软件工程基础、计算机硬件基础等展开教学。在此阶段,学生参加为期三个月的模拟项目实训,聘请企业教师主讲,校内教师做教辅,实训结束后进行第二级项目能力的考核。这是二年级到三年级的过渡阶段,也是软件工程专业学生在校项目实际锻炼的重要阶段。
软件工程教育围绕着软件开发、专业方向课程展开教学。对相关的课程进行整合,形成课程群,突破学期、授课教师、课程各自独立的局限,实现总体设计、综合布局、交叉穿插、协同配合的新模式。设计一个综合项目,贯穿于几门课程之中。学生以团队的形式在规定的时间内完成学习课程,提高软件系统开发、团队实践和过程控制、管理等能力。
软件工程实践学生参加为期一年的企业实习,参加企业的实际项目的开发与运作。学生可以根据自己的爱好和专业知识选择校内企业联合实验室项目、指导教师项目、实习企业项目,完成本科毕业设计论文。
Jeffrey J.P.Tsai University of Illinois,
Chicago, USA(Eds.)
Machine Learning
Applications in Software
Engineering
Series on Software Engineering and Knowledge Engineering Vol. 16
2005,355Ppp.
ISBN 9789812560940
软件工程中的
机器学习应用
D张JJP特赛编
本书是《软件工程与知识工程》丛书的第16卷。Brooks在其经典的论文“无银弹”中对于在变化的环境中开发和维护大量软件系统的挑战已经做出了具有说服力的阐述。复杂性、一致性、可变性和隐形性,这些都是在开发大型软件中固有的基本困难。
人们提出了许多演化或者递增改进的办法,每一种改进办法都试图致力于改进这些基本困难的某些方面。人工智能技术对软件工程的应用产生了某些令人振奋的结果。这些成功的人工智能技术包括了基于知识的方法,自动推理、专家系统、启发式搜索策略、时态逻辑、规划及模式识别。为了最终克服这些基本的困难,人工智能技术能够发挥重要的作用。而作为人工智能的一个子领域,机器学习涉及一个问题,即如何建立一个计算机程序,该程序通过经验能够改进它们在执行某些任务时的性能。
机器学习专门致力于创造并且编译可验证的知识,而这些知识与人工制品的设计与构建相关。机器学习领域包括了监督学习、无监督学习和增强学习,它已经被证明在许多的应用领域中具有极大的实用价值。软件工程领域已成为一块沃土,在那里许多软件开发和维护的任务可以系统地阐述为学习问题和依据学习算法的方法。本书涉及了在软件工程中的机器应用这个主题,它提供了对机器学习的综述,总结了这个领域中的最新实践,给出了对现有工作的分类,提供了某些应用准则。书中还包括了在该研究领域中先前发表的论文集合。
本书由9章组成。第1章机器学习与软件工程介绍;第2章预测和估计中的机器学习应用;第3章属性与模型发现中的机器学习应用;第4章变换中的机器学习应用;第5章生成与合成中的机器学习应用;第6章重复使用中的机器学习应用;第7章需求获取中的机器学习应用;第8章开发知识管理中的机器学习应用;第9章准则与结论。
本书可供软件工程以及机器学习专业的研究人员和研究生阅读参考。也可供从事软件开发工作的人员阅读。
胡光华,高级软件工程师
(原中国科学院物理学研究所)