软件人才标准与高校培养模式的研究.docx
《软件人才标准与高校培养模式的研究.docx》由会员分享,可在线阅读,更多相关《软件人才标准与高校培养模式的研究.docx(23页珍藏版)》请在冰豆网上搜索。
软件人才标准与高校培养模式的研究
第一部分 软件人才标准与高校培养模式的思考与分析
一、软件行业人才需求当前现状
软件产业正在成为信息产业和国民经济发展新的经济增长点,其发展将决定着经济的发展速度。
但国内软件企业一直强调国内软件人才不足,尤其是具有经验的技术和管理人缺口很大。
根据2007年相关新闻报道,中国国内尚存在20万软件人才缺口,而另一方面,人才是软件企业的核心,留住人才是其发展的重要部分的“软件人才观”已经为越来越多的软件企业认可。
腾讯CEO马化腾曾经表示:
“我看到很多资金、机会,其实很多行业和企业都不缺乏,最关键还是人才。
包括很多互联网行业和在国外竞争中,差距最大的还是人才。
”
传统理论认为中国的软件人才最合理的结构是“金字塔型”或者“纺锤型”。
“金字塔型”即最上层是既懂技术又懂管理的软件管理人才;中间层是软件工程师;底层是熟练的程序员,也就是软件蓝领。
软件蓝领的需求量最大,然后逐层递减。
“纺锤型”缺口最大的是两头,即精英型的金领人才和大批的蓝领程序员。
而目前国内软件人才结构不合理问题突出,在入门级人才上明显供大于求,而在软件高端人才,高质量的复合型人才,国际化软件人才等几类人才上严重短缺。
据统计,中国当前软件从业人员3/4以上来自于全国各大高校和科研机构的计算机与软件相关专业。
高校学历教育周期长、课程更新慢、实践偏少,对于软件人才的培养与企业需求相对脱节,教育的滞后严重影响了软件行业的快速发展。
在企业普遍反映目前市场从业人员不能满足自身需要的同时,高校和各类软件培训机构又苦于无法得知企业的真正需求所在,缺乏具体针对企业实际流程的培养模版和考察标准,造成了软件人才培养与聘用的脱节。
因此,如何使企业与高校形成教育的“共识”,规范人才培养模式,建立和实施软件人才标准在高校培养中的应用成为了迫在眉睫的问题。
典型案例分析
对于每个公司来说,其内部对人才往往有着自己的评判原则,通过对大量企业进行综合分析,可以得出软件行业对从业人员的基本要求标准。
以下通过两个具体案例来说明软件公司2007年的人才需求情况和招聘条件。
1、微软中国研发中心(上海)2007招聘两例
职位:
LeadSoftwareDevelopmentEngineerinTest/MSIT/RXD(软件开发测试主管)
要求:
●计算机相关专业本科/硕士学位,8年以上工作经验;
●精通C#编程,深度掌握SQL相关知识;
●四年以上功能测试,整合测试,性能测试专业经验;
●有以下任意软件技术经验者优先:
VSTF,WCF,WPF,BizTalk,.NetFramework,WebServices,MSCRM和SQL;
●理解软件开发生命周期(SDLC);
●善于沟通,克服挫折,可以带领项目组在完整的开发周期中进行独立测试;
●优秀的英文书写和交流能力。
职位:
SoftwareEngineerInDesign(软件设计工程师)
要求:
●计算机/软件相关专业本科/硕士学位;
●至少四年从事设计和开发大型软件产品经验;
●精通C#和.Net技术;
●非常善于中英文交流;
●有声频/视频编码经验优先;
●必须有积极的工作态度,注重细节。
微软在2007年重点的招聘职位是高级软件工程师,其中测试方向工程师更为紧缺,而普通程序员需求很少。
微软考核人才的方法很多,但是这些复杂的考核方式背后所透露出来的是一些对人才本质性的要求。
微软副总裁兼中国研发集团总裁张亚勤博士阐述微软的人才标准如下:
第一,个人品行,诚信、正直是微软最看重的人才品质。
第二方面,头脑灵活,聪明好学。
第三点要有团队合作、沟通的能力以及工作激情,即对技术、产品、用户主动热情,全心投入。
2、华为技术有限公司2007招聘两例
职位:
技术支持工程师(核心网)
要求:
●本科及以上学历,计算机、通信、电子相关专业毕业,具备较强的英语读写听说能力;
●掌握通信原理,熟悉操作系统和数据库,两年以上通信或网络系统集成行业相关工作经验;
●掌握固定/移动系统体系结构与相关协议、数据网络IP网络技术协议组网应用、程控交换原理与7号信令、或SIP/BICC/A口信令等至少其中一项;
●具备一定的项目管理和客户技术交流能力、良好的团队合作精神,能够适应长期海外和国内出差要求;
●具备大型通信公司工作经验或相关资格认证者优先。
职位:
软件测试工程师
要求:
●本科及以上学历,计算机软件、通信以及相关专业;
●具备扎实的计算机软件或通信基础知识,两年以上的软件开发或者测试经验;
●熟悉C/C++、Java、SQL等编程语言,有着相关的项目开发或测试经验,或者自动化开发和测试经验;
●具备一定的软件工程知识,掌握基本软件开发、质量保证流程及相关工具;
●如具备参与WCDMA、GSM、CDMA等通信设备软件,网络管理软件或其他大型系统软件开发、测试经验者优先考虑;
●CET-4级以上,较好的英语读写能力,良好的合作精神。
人才素质是华为选人用人的最主要标准。
华为公司在招聘时首先着重挖掘应聘者的潜在素质,即潜在的社会角色、价值观、自我形象、品质、动机等,这是预测一个人未来发展的重要因素。
在专业方面,华为公司除了要求具备一定的专业基础之外,认为具有较强的学习能力和不同专业背景的人才更有互补和发展优势。
此外,要具有强烈的成就事业的愿望和较好的团队合作精神。
从以上的案例可以看出,人才的综合素质是公司普遍重视的首要条件。
由于“综合素质”的概念比较模糊和广泛,对于高校和培训机构来说,只研究个别公司的人才需求标准是远远不够的,因此,通用软件人才标准开始引入,推广,并逐步应用。
二、通用软件人才标准探讨
标准,顾名思义,即受广泛认可的规范性指标。
在相当长时期内,学历在人才选择中被作为衡量的关键指标,甚至被许多企业视为惟一标准。
随着我国IT产业不断发展成熟,IT企业在用人方面也不断成熟和理性化,并逐渐形成了对专业技能、项目经验和职业素质三方面的综合标准。
尽管各企业都有其内部招聘要求,但在人才的培养和评测方面,则迫切需要一个准确的量化标准来规范市场。
该标准必须适应大部分企业的基本需要,并且是软件行业人才素质的总结与划分。
通用的软件人才标准正是在这样的环境中应运而生。
1.目前流行的人才标准
此前,我国对计算机软件业的发展非常重视,制订有《计算机程序设计员国家职业标准》。
该标准主要针对国家职业技能鉴定需求,按工作岗位的技能要求依次递进,设置有程序员(国家职业资格四级)、高级程序员(国家职业资格三级)和程序设计师(国家职业资格二级)三个级别。
对于不同级别均有职业功能、工作内容、技能要求和相关知识的具体要求。
但是,随着计算机软件技术的飞速发展,该标准已远远落后于社会发展的需要。
其次,在该标准中对软件岗位的分类粗、对软件行业中新兴的大多数岗位没有罗列或描述,因此该标准在软件行业中的实施有很大的缺陷。
目前,在全球软件行业有两大标准:
一个是针对软件企业的CMM、CMMI标准,由美国CarnegieMelloUniversity提出的。
另一个就是针对软件从业人才的标准SFIA,它由英国提出、爱尔兰完善。
SFIA已经被欧盟欧盟确定为2011年对BPO(业务流程外包)企业的强制标准,成为代表性的国际性软件人才标准。
2007年4月17日,金海洋教育集团在香港与IRELANDCORNERSTONE签约在中国共同举办基于欧盟软件人才培养标准SFIA(SKILLSFRAMEWORKFORINFORMATIONAGE)的SISE(SINOINTERNATIONALSOFTAREENGINEER)合作框架协议以及BPO软件外包合作架构。
2007年9月8日,由爱尔兰国际基石集团、金海洋教育集团共同主办,成都市软件行业协会协办的2007首届欧盟软件外包人才技能标准及培养SISE/SFIA国际报告会在成都召开。
在2008年4月,在成都召开第六届中国国际软件合作洽谈会期间,由斯菲亚(中国)软件技术外包研究院、成都西部实训联盟(基地)有限公司等单位联合召开“斯菲亚中国信息服务业职业技能架构规范(CNSFIA)发布会”,正式将西欧国家软件从业人才的标准移植到国内,这标志着目前国际流行的SFIA软件人才标准全面登陆中国。
相比之下,国内的本土软件人才标准起步较晚。
2006年初,针对IT软件企业普遍提出来的职业技能、项目经验和职业素质三方面要求,北大青鸟APTECH在最新推出的ACCP4.0课程中,在国内首次提出了IT人才培养明确、量化的指标。
2006年六月,为引导国内软件职业培训的发展方向,根据《国务院关于大力发展职业教育的决定》等相关文件精神,中国软件行业协会、科技部火炬中心和中国国际人才交流基金会联合实施“中国软件专业人才培养工程”(简称CSTP),为中国的软件培训行业树立了新标准。
2.关于人才标准的确立与探讨
国内软件从业人员鱼龙混杂,不仅不利于企业筛选人才,也不利于软件人才自身的发展。
因此建立IT人才专业评价体系,是促进软件行业发展的新的驱动力。
SFIA把软件人才分为7级人才,共78个知识结构.这些对中国软件人才培养提供了有利的指导,也对本土企业如何开发欧洲BPO项目提供了模板。
而CSTP则侧重于独立的人才培养项目,并包含人才测评,其具体的人才标准理论确定还尚待完善。
由此可以看出,软件行业发达的欧美等国家已经率先确立并推广了软件从业人才标准这一概念,使其在人才培养上更专业,更有针对性,更适合企业需要。
而国外标准的引进,一方面给国内软件行业带来新的观念和理论,一方面也对双方带来挑战:
国内软件人才是否能够达到国际从业标准,从而与国际接轨走出国门;国外标准是否符合中国具体国情,是否能够确实有效的指导国内人才培养;在这个过程中,国内本土标准能否尽快确立,并被广泛认同,都有待时间考验。
但无论如何,软件人才标准的推广与最终实施都是大势所趋。
三、软件人才培养
1.高校传统培养模式
传统教育体制下培养出来的软件硕士更重理论课程。
教学模式仍然以课堂讲授为主,学生在课后通过实验掌握实践技能。
但由于实验室与现实企业差距较大,学生无法掌握大型项目的具体流程和操作细节,更无法具备整体架构与策划设计能力。
以个人实习为主的企业实践,也往往由于无法进入核心开发,或者周期太短,没有针对性,未能有预期效果。
因此当前软件人才培养存在以下三方面问题:
一是人才培养与产业发展需要脱节,难以学以致用。
培养出来的软件人才实际操作能力不强,普遍不熟悉国际标准、工程和技术规范。
其二,通过正规院校培养的毕业生总体上实践能力比较差,需要锻炼很长一段时间才能胜任工作。
其三,软件人才的培训结构和层次不尽合理,软件培养模式比较单一。
约80%的软件人才来自高等院校、职业技术学校的软件相关专业毕业生,过于依靠正规院校培养,造成人才培养机构失衡。
2.软件人才标准与新型培养模式的推行
2000年起,软件职业技术培训大规模兴起;2002年,国家建立35所示范性软件学院,以“校企结合“,邀请国内外企业高层开发管理人员授课的新思路,着力培养实践能力与理论知识并重的高端软件人才;2007年,清华IT教育培训中心针对中端人才推出了“T型人才”培养计划。
所谓“T型”就是指具有“专业深入的技术技能”,同时具备“宽泛扎实的基础知识”和“精准娴熟的工程实践”三种综合素质的人才。
针对各个层次培训的机构看似已经覆盖了软件人才的所有需求,但这些国内软件人才培训认证始终缺乏统一标准和规范的市场竞争环境。
培训市场的火爆,使得培训市场规模迅速扩容。
软件培训市场快速发展,市场竞争也随即升级。
一方面,跨国巨头纷纷进入中国市场淘金;另一方面,大量缺乏资质的培训机构也趁机在软件培训行业内浑水摸鱼,引起了职业培训的混乱。
2007年SFIA标准进入中国以后,SFIA(中国)软件外包服务研究院在成都建立。
该研究院将由爱尔兰国际大学、国际基石、金海洋、西华大学网络与软件学院等企业与高校专家发起组织,主要研究与欧盟对接的软件人才培养体系、BPO软件企业管理模式等,并开发相关的课程体系和案例体系。
这是第一个将SFIA国际标准应用于具体人才培训的项目。
此后,西安与爱尔兰软件外包人才培训项目也于2008年1月启动,SFIA得以在中国开始推广。
相应的,“中国软件专业人才培养工程”(即CSTP)也成立CSTP西安就业服务中心,在全国各地搜索和培养IT人才。
CSTP在全国的软件园中建立了实训基地,将软件专家、一线的软件工程师有效的整合起来。
3.人才培养的未来发展趋势
目前,软件人才标准在国内的推行还属于实验阶段,缺乏实际培养效果的论证。
但是人才标准与人才培养相结合的趋势是不可避免的,越来越多的高校和教育机构已经开始尝试使用国际化的人才标准来规范自己的教学,达到企业需要的人才素质水平。
软件人才标准在教育培训得到应用以后,培训过程中需要从基础知识、职业素质、操作技能、项目经验几个环节加强训练力度。
特别是在学员的时间能力上,需要从实际的项目流程入手,强调规范化、工程化、标准化,项目开发的规范、流程管理,甚至开发人员的内部沟通,都应该达到相应水平。
学生从课堂毕业之后能够直接或者经过少量学习参与到开发环节中来,尽量减少在内部业务培训中花费的时间。
经过培训的人才,能够达到软件人才标准的要求,独立承担完整项目,实现企业开发用人需求的角色对接。
总之,在软件人才队伍结构需求多样化的今天,软件企业要保证投入有效,教育培训机构要使其培养的人才真正适应社会需要,需要建立一套系统的方法、体系和制度,来确立人才培养的目标以及对人才进行切实有效的测评。
软件人才标准的确立和在高校培养模式中的推广,有利于加强资源的整合,这种资源的整合对于教育培训机构有着更加重要的指导意义,能够有效提升教育培训机构的能力和质量,缩短人才成熟周期,使得企业生产效率提高,成本降低,从而推动信息产业和国民经济发展。
第二部分软件开发职位标准的确立与探讨
根据行业调查结果及当前软件行业普遍对人才的需要分析,我们认为“斯菲亚中国信息服务业职业技能架构规范(CNSFIA)”可以作为我国当前及今后软件从业人才的标准。
在该标准中,对IT信息服务业划分了“战略与规划、研发”等不同六个大类,在六个大类中又进一步划分成17个不同的细类,总体设置为78种不同的技能职位,针对不同技能职位设置有七个不同的等级,可以说是囊括了IT软件行业不同类别、不同岗位的各种情况。
在该标准中还对每一个职位描述、岗位职责、岗位职责对应的知识结构、知识点的权重和能力架构都有规定。
尽管该规范的项目和内容目前还不十分完善,且在“洋为中用”的移植的过程中因国情不同尚有许多内容需进行修正,但是该规范的发布对国内软件业的持续发展有以下积极意义:
1.在中国软件行业有了第一部完全市场化的软件人才培养的标准。
该标准首先解决了在中国软件市场没有通行技能规范的问题,且该标准在移植过程中有许多相关企业参与,得到软件行业的认可;
2.该标准为我国建立了第一个市场化的评价体系,为国内培养软件人才确立了基本的参考标准;
3.该标准为我国确立了一套完整的实训体系标准;
4.该标准建立了动态、与国际标准接轨的交流平台。
通过对软件专业毕业生所从事的工作岗位和目前软件专业的发展情况分析,当前国内软件行业需要高素质的复合型开发人才。
作为高职教育软件专业培养的毕业生,可以从事程序设计员、软件开发工程师、数据库设计员、测试工程师、售后技术支持工程师等岗位工作,经过三到五年实际工作锻炼,可发展成为高级软件开发工程师、数据库开发工程师、高级测试工程师、客户服务经理等职位。
根据我校开设的计算机软件专业的需求,我们重点对CNSFIA标准中“系统开发项目/软件开发”规范进行的分析。
针对软件技术专业(软件开发方向)目前的行业需求及从业人员素质、技能要求依次递进,建议设置程序设计员、软件开发工程师和高级软件开发工程师三个不同级别,并提出各级别的标准如下:
一、程序设计员
1.职位描述
计算机软件程序员,即能编写设计文档,设计程序模块流程和编写代码,能进行软件的调试和基本测试的专业人员。
2.市场定位分析
2.1市场要求
●有良好的合作沟通能力和团队合作经验及独立工作的能力;
●掌握软件工程的基本概念,理解软件需求分析方法,能够进行软件需求分析;
●能配合分析人员和开发人员协作完成项目需求,如项目模块的需求调研、需求分析、模块设计模块编码和模块测试等相关文档编写。
2.2主要职责
●理解项目的需求分析和概要设计文档;
●在指导下编写并提交模块的详细设计文档;
●编写程序代码和规范的注释文档;
●对程序模块实施调试和测试。
3.知识技能架构规范
3.1专业知识
●计算机软件基础、数据结构、C/C++语言、软件工程、设计模式、计算机网络安全等;
●JAVA语言基础、VS.NET语言基础、面向对象的VS.NET语言及VS.NET高级编程、SQLServer数据库管理和开发、VS.NET框架技术实战、VS.NET模式应用。
3.2核心知识点
●结构化分析与设计方法;
●面向对象的分析设计与编程方法;
●数据库分析与设计方法;
●多线程技术;
●集成测试方法和质量保证知识。
3.3技能要求
●能够运用建模语言和相关工具理解项目的概要设计文档;
●能够确定模块的具体实现算法,运用详细设计的描述工具进行模块的设计;
●能够运用一种面向对象的编程语言;
●能够实现数据库编程,运用一种以上的工具加载与编写组件和动态链接库;
●能够进行性能优化,运用调试工具对模块进行跟踪调试和编译;
●能够编写单元、集成测试计划及用例;
●能够使用常用测试工具实施测试,根据具体测试结果编写规范的测试报告。
二、软件开发工程师
1.职位描述:
软件开发工程师,即设计、创建、测试、标准的规格文件,并且监控项目进度和任务的分配协调开发人员成功完成项目验收的专业人员。
2.市场定位分析
2.1市场要求:
●有良好的合作沟通能力和团队合作经验及独立工作的能力;
●熟练掌握软件工程,精通软件需求分析方法,能够独立进行软件需求分析;
●能配合分析人员和开发人员协作完成项目需求,如项目模块的需求调研、需求分析、模块设计模块编码和模块测试等相关文档编写。
2.2主要职责:
●配合系统分析人员完成软件系统及模块的需求调研与需求分析;
●配合系统分析人员完成软件系统及模块的设计;
●负责编制与项目相关的技术文档;
●负责项目的进度和任务的分配,以及项目进度的监控;
●负责团队开发小组的沟通和协同工作,最终成功完成项目和项目的验收。
3.知识技能架构规范
3.1专业知识
●计算机软件基础、数据结构、C/C++语言、软件工程、设计模式、计算机网络安全等;
●JAVA语言基础、VS.NET语言基础、面向对象的VS.NET语言及VS.NET高级编程、SQLServer数据库管理和开发、VS.NET框架技术实战、VS.NET模式应用、Windows系统管理、VS.NET企业级应用开发(包括XMLWebService)等。
3.2核心知识点
●计算机软件基础:
掌握计算机软件开发的基本原理、方法、技术和工具;
●软件工程:
包括软件项目的整个生命周期;
●设计模式:
包括设计模式的概念、组成、分类和实现、模式和软件架构的关系等;
●计算机网络安全:
包括计算机软件安全技术、网络安全防护技术、备份技术、密码技术与压缩技术、数据库系统安全、计算机病毒及防治、防火墙技术和系统平台与网络站点的安全。
●Java语言基础:
掌握Java语言的基础知识;
●VS.NET语言基础:
掌握VS.NET语言的基础知识;
●VS.NET高级编程:
掌握VS.NET平台体系结构和.NETFramework;
●SQLServer数据库管理和开发:
掌握SQLServer数据库管理和应用;
●Windows系统管理:
掌握Windows系统管理的基础知识;
●VS.NET企业级应用开发:
掌握基于VS.NET技术的企业级软件技术实现、大型软件厂商基于的VS.NET产品的开发管理及应用、VS.NET应用开发管理。
3.3技能要求
●善于表达,有良好的合作沟通能力和团队合作经验及独立工作的能力;
●具有良好的职业道德、敬业精神以及团队组织和协调能力;
●阅读外文原文文献和开发资料的能力;
●具备相关技术文档的编写能力;
●使用常用的项目软件工具对项目计划和任务的分配的管理。
如Project等;
●有很强的团队项目管理能力,熟悉一些团队开发管理软件,如VSTS等。
三、高级软件开发工程师
1.职位描述:
高级软件开发工程师,即设计、创建、测试和标准的规格文件,参与自己的工作评估和带领同事评估工作,用标准的编程工具和技术,来管理开发团队,按照要求分配工作给编程人员并对执行情况进行监测,对经验不足的同事提供忠告、教导和帮助的专业人员。
2.市场定位分析
2.1市场要求:
●高级软件开发工程师需要有3到5年以上软件开发经验,有很强的沟通和组织能力;
●熟练掌握软件工程,精通软件需求分析方法,能够独立进行软件需求分析;
●了解和掌握当前流行的网络工具能够熟练使用相关的设计、文档等工具撰写统计与相关分析报告能够协助团队提高项目的可测量性、扩展性,和可维护性有TDD和持续集成及迭代开发经验,能够对团队内新成员或技术新手给与辅导与培训。
2.2主要职责:
●整理需求、编写设计方案,并对设计方案进行技术论证,在此基础上设计软件产品的应用架构(模块构成)及接口,产品的软件流程、数据模型、关键算法和关键性能等;
●负责程序模块的架构设计;
●负责撰写模块的开发文档;
●负责程序模块的后期维护;
●软件结构和算法设计以及详细设计;
●独立领导软件开发小组完成应用软件开发;
●按计划执行项目管理检查;
●组织并参加项目周会,善于团队合作,项目提交时共享相关经验,积极主动总结经验并执行预防/矫正措施;
●积极主动担当项目组和客户的英语交流的职责。
3.知识技能架构规范
3.1专业知识:
●计算机系统综合知识、数据结构、C/C++语言、软件工程、设计模式、软件架构设计、UML软件建模、计算机网络安全等;
●VS.NET高级编程、SQLServer数据库管理和开发、VS.NET框架技术实战、VS.NET模式应用、Windows系统管理、VS.NET企业级应用开发(包括XMLWebService)。
3.2核心知识点:
●计算机系统综合知识:
包括计算机组成与体系结构、嵌入式系统和操作系统等方面的知识;软件架构设计:
包括软件架构的概念、软件架构与设计、架构风格、特定领域的架构风格、基于架构的软件开发方法、架构评估、软件产品线和系统演化等;
●软件工程:
包括软件项目的整个生命周期;
●设计模式:
包括设计模式的概念、组成、分类和实现、模式和软件架构的关系等;
●软件建模:
包括定义问题与归结模型、结构化系统建模与数据流图、面向对象系统建模、数据库建模和逆向工程等;
●计算机网络安全:
包括计算机软件安全技术、网络安全防护技术、备份技术、密码技术与压缩技术、数据库系统安全、计算机病毒及防治、防火墙技术和系统平台与网络站点的安全。
●Java高级编程:
包括在不同环境中运用Java语言和API开发应用程序的技术;
●VS.NET高级编程:
包括VS.NET平台体系结构和.NETFramework;
●SQLServer数据库管理和开发:
包括SQLServer数据库管理和应用;
●Windows系统管理:
包括Windows操作系统管理的基础知识;
●.NET企业级应用开发:
包括基于