软件技术专业技能标准2010年10月1日发布2010年11月1日施行湖南省教育厅目录前言建立基于职业岗位,以职业活动为导向的软件技术专业技能标准,本标准依据国际、国内相关标准、法规,参照国际、国内通行的职业技能标准制定。本标准和软件技术专业技能抽查考试方案、软件技术专业技能抽查考试题库构成湖南省高职软件技术专业技能抽查考试标准。本标准由湖南省教育厅提出并召集。本部分为《软件技术专业技能标准》。本标准制订专家组:企业专家:叶柏龙、刘敏玲、欧阳柳波、刘俊清高职院校专家:杨贯中、佘正德、黄志刚、陈立、杨夏、王方智、陈雅莉、胡胜丰、江文吴振峰、雷军环、李健、彭顺生、阳小丽、吴廷焰本标准主要起草单位:湖南科技职业学院、湖南力唯中天科技有限公司本标准起草人:杨贯中、佘正德、黄志刚、陈立、杨夏、王方智、陈雅莉、胡胜丰1标准制订原则采用“自顶向下、逐步分解”的原则,确定知识和技能项:1.根据软件企业岗位设置确定高职软件技术专业就业的主要职业岗位;2.根据职业岗位确定职业活动;3.根据职业活动,明确工作内容;4.根据工作内容,确定知识和技能项。2适用范围本标准确定了高职院校软件技术专业就业的主要职业岗位,明确了各职业岗位的职业活动、工作内容及所必需的知识和技能,适用于省内各高职院校软件技术专业技能实训和专业技能测试等。3术语和定义下列术语和定义适用于本标准。3.1职业岗位依据专业知识、技能要求及实际需求划分的不同的工作类别。3.2职业活动3.3工作内容3.4知识点3.5技能项完成职业岗位工作任务必需具备的专业知识、技能水平和熟练程度。3.6基本知识职业岗位从业人员必须掌握的通用基础知识,主要包括职业岗位相关并贯穿整个职业活动的基本理论和相关知识。4职业岗位种类依据软件企业岗位设置和省内各高职院校人才培养方案,软件技术专业毕业生适合的就业岗位包括:程序员、测试员、配置管理员、软件实施人员,岗位主要职责如下:4.1程序员1.根据模块设计进行代码实现;2.编写《单元测试用例》和单元测试脚本;3.负责执行代码走读和单元测试,记录单元测试结果;4.执行集成测试。4.2测试员1.编写测试用例;2.完成“执行测试”的工作;3.完成测试计划的编写工作;4.掌握基本的测试方法、测试技术和业务流程。4.3配置管理员1.根据软件项目计划制定配置管理计划;2.在配置管理计划约束下,负责配置项、基线的生成、变更和相关管理;3.为项目组提供SCM理论和相关工具的培训,并提供技术支持。4.4软件实施人员1.在实施经理安排和指导下,执行项目用户现场实施任务;2.参与编写《用户手册》、《操作手册》和相关培训教材;3.参与进行“用户确认测试”和编写《确认测试报告》。5本标准文档规范各岗位知识点和技能项按以下表格形式进行描述,在每项工作内容、知识点、技能项前加上编号,以便于统计。职业活动工作内容知识点—知道/掌握/理解/识记技能项—能或会一、搭建开发环境J1:安装系统软件J2:安装开发工具J3:安装辅助工具K1:计算机硬件系统基础知识K2:计算机软件系统基础知识K3:计算机网络基础知识K4:计算机应用基础知识S1:安装、配置操作系统S2:安装、配置数据库管理系统S3:安装、配置开发工具S4:配置开发环境S5:配置常用的外围设备S6:配置网络环境S7:安装配置管理工具S8:安装、配置单元测试工具S9:安装软件建模工具S10:安装开发辅助工具6专业技能标准∶程序员5.1职业岗位名称程序员5.2职业岗位定义能根据软件开发项目管理和软件工程的要求,按照程序设计规格说明书编制并调试程序,写出程序的相应文档,产生符合标准规范的、实现设计要求的、能正确可靠运行的程序。5.3职业岗位能力目标1.掌握数据及其转换、数据的机内表示、算术和逻辑运算,以及相关的应用数学基础知识;2.理解计算机的组成以及各主要部件的性能指标;3.掌握操作系统、程序设计语言的基础知识;4.熟练掌握计算机常用办公软件的基本操作方法;5.熟练掌握基本数据结构和常用算法;6.熟练掌握C程序设计语言,以及C++、Java、C#中的一种程序设计语言;7.熟悉数据库、网络和多媒体的基础知识;8.掌握软件工程的基础知识,了解软件过程基本知识、软件开发项目管理的常识;9.了解常用信息技术标准、安全性,以及有关法律、法规的基本知识;10.了解信息化、计算机应用的基础知识;11.正确阅读和理解计算机领域的简单英文资料。5.4知识和技能职业活动工作内容知识点—知道/掌握/理解/识记技能项—能或会一、搭建开发环境1-J1:安装系统软件1-J2:安装开发工具1-J3:安装辅助工具1-K1:计算机硬件系统基础知识1-K2:计算机软件系统基础知识1-K3:计算机网络基础知识1-K4:计算机应用基础知识1-S1:安装、配置操作系统1-S2:安装、配置数据库管理系统1-S3:安装、配置开发工具1-S4:配置开发环境1-S5:配置常用的外围设备1-S6:配置网络环境1-S7:安装配置管理工具1-S8:安装、配置单元测试工具1-S9:安装软件建模工具1-S10:安装其它开发辅助工具二、设计流程图2-J1:阅读需求分析文档2-J2:阅读详细设计文档2-J3:设计流程图2-K1:UML建模知识2-K2:数据库设计知识2-K3:常用数据结构和算法知识2-S1:理解用户需求,读懂用例图2-S2:理解详细设计,读懂类图、状态图、活动图、顺序图2-S3:设计用例图和类图2-S4:理解数据库设计,读懂E-R图2-S5:运用数据结构和算法进行程序设计,并绘制规范的流程图三、编写代码3-J1:熟悉项目标准3-J2:控制台应用程序开发3-J3:图形界面应用程序开发3-J4:基于C/S模式应用程序开发3-J5:基于B/S模式应用程序开发3-J6:混合模式应用程序开发3-J7:写代码注释3-J8:调试代码3-J9:配合美工进行程序界面设计3-J10:源代码版本控制3-J11:提交程序代码和程序开发文档3-K1:项目标准(代码标准、文件格式标准、软件开发规范和文档标准知识)3-K2:面向对象程序设计(类、对象、属性、封装性、继承性、多态性)3-K3:开发工具的使用3-K4:数据库基础知识(数据模型、E-R图、数据操作、SQL)3-K5:网页设计工具的使用3-K6:网页编程知识3-K7:版本控制知识3-K8:配置管理工具的使用3-K9:网络基础知识3-K10:框架技术知识3-K11:组件技术知识3-K12:多线程知识3-K13:I/O文件流3-K14:分布式应用开发基础知识3-S1:制订、实施工作计划3-S2:遵照项目标准进行软件开发3-S3:使用开发工具进行面向对象编程3-S4:使用图形化控件编程3-S5:使用TCP/UDP协议进行网络编程3-S6:使用多线程技术编程3-S7:使用网页设计工具进行网页设计3-S8:使用脚本语言进行网页编程3-S9:使用RMI技术实现分布式计算3-S10:使用框架技术开发企业级应用系统3-S11:实现基于MVC三层架构的Web应用系统的能力3-S12:报表输出编程3-S13:使用组件技术编程3-S14:使用WebServices技术编程3-S15:使用主流应用服务器3-S16:根据数据库设计文档,实现数据库3-S17:使用数据库访问API实现数据库操作3-S18:使用T-SQL的DDL语句创建与管理数据库的能力;3-S19:使用T-SQL的DML语句完成数据操作3-S20:编写数据库存储过程3-S21:备份、恢复数据库3-S22:编程实现文件操作3-S23:遵循规范编写代码注释3-S24:运用调试工具对程序进行语法和逻辑的跟踪调试3-S25:使用配置管理软件进行源代码版本控制四、单元测试4-J1:编写单元测试用例4-J2:实施单元测试4-J3:编写单元测试报告4-K1:软件测试基本理论4-K2:单元测试用例的知识4-K3:单元测试方法的知识4-K4:单元测试工具的使用4-S1:设计单元测试用例4-S2:使用单元测试工具实施测试4-S3:根据单元测试结果修正程序4-S4:编写单元测试报告五、沟通和交流5-J1:与项目组成员沟通交流5-J2:与客户进行沟通交流5-K1:组织沟通知识5-K2:访谈相关知识5-K3:团体传播相关知识5-S1:和项目组成员、客户进行互动5-S2:倾听项目组成员、客户讲述5-S3:对问题和意见进行及时反馈5-S4:表达自己的观点