技术人员的职业素养.docx

上传人:scccc 文档编号:13805194 上传时间:2022-01-24 格式:DOCX 页数:4 大小:21.72KB
返回 下载 相关 举报
技术人员的职业素养.docx_第1页
第1页 / 共4页
技术人员的职业素养.docx_第2页
第2页 / 共4页
技术人员的职业素养.docx_第3页
第3页 / 共4页
技术人员的职业素养.docx_第4页
第4页 / 共4页
亲,该文档总共4页,全部预览完了,如果喜欢就下载吧!
资源描述

《技术人员的职业素养.docx》由会员分享,可在线阅读,更多相关《技术人员的职业素养.docx(4页珍藏版)》请在三一文库上搜索。

1、文档个人收集整理勿做商业用途技术人员的职业素养程序员规范一、程序员的基本任务( 1) 基本任务组成 :“可执行代码” “程序员任务书” “程序员工作日志” 。( 2) 编码:根据 程序员任务书 进行编码。例如,一个“界面”或一个“类”。( 3) 日志:每天下班前须填写 程序员工作日志 ,所有记录用语必须简练明确。( 4) 测试:完成代码编写后须进行单元测试, 代码文档 一并上交项目经理。二、程序员的基本素质:(1 )团队精神:我们的理念是“团队协作精神能做出大系统,个人只能做小程序。”( 2) 文档习惯:程序员至少有 30的时间在写书面文档 ,没有文档习惯会被淘汰。( 3) 规范习惯:没有规范

2、化、标准化的代码编写和文档书写习惯,在团队内部成员之间的开发协作是绝对不可想象的。例如 :至少我们整个团队内部在如下这些工作内容上达成一致,界面布局;界面色调;界面命名;界面上操作流程;代码的变量命名;代码内注释格式;甚至嵌套中行缩进的长度和函数间的空行数字都有明确规定。(4)理解能力:程序员需要理解程序员任务书中模块的需求。很多程序员在写程序时往往只关注其功能需求,而忽视性能指标要求。例如 :百万甚至千万数量级的访问情况下的稳定性、并访支撑能力、安全性、潜在的危险、恶意攻击的可能性等。一个成熟的程序员需要评估该模块在系统运营中所处的环境,这一切,程序员至少需要 2 到 3 年的项目研发和跟踪

3、经验才有可能总结体会出来得。( 5) 测试习惯:一方面是正常测试,也就是看程序是否能在正常调用下完成基本功能;第二方面就是异常测试,比如高压力负荷下的稳定性测试,用户潜在的异常输入情况下的测试,整体系统局部故障情况下该模块受影响状况的测试,频发的异常请求阻塞资源时的模块稳定测试等等。并不是程序员要对自己的每段代码都需要进行这种完整测试,但是程序员必须清醒认识自己的代码任务在整体项目中的地位和各种性能需求,有针对性的进行相关测试并尽早发现和解决问题,当然这需要上面提到需求理解能力。(6)学习能力:要善于学习,是因为软件技术更新很快,需要不断学习新的技术、新的1 / 4文档个人收集整理勿做商业用途

4、技能。要善于总结,也是学习能力的一种体现,每次完成一个研发任务,完成一段代码,都应当有目的的跟踪该程序的应用状况和用户反馈,随时总结,找到自己的不足,这样才能逐步提高,从程序员升级为软件设计师、系统分析员、项目经理。设计师规范- 设计师的基本素质(1)需求理解能力(属于需求分析)用户提出 需求描述 往往在文字上很不规范,考虑问题也只局限于非技术因素的操作功能要求。他们不懂得技术性能要求、将来功能扩充、与外系统连通的未来因素。所以,我们的设计师要凭借自己丰富的经验和项目实际,从整体上把握用户的需求。(2)整体框架能力(属于总体设计)软件工程教科书上, 总体设计只涉及软件整体可以划分成哪些模块、模

5、块之间组成关系。设计师必须从更广的角度去设计,比如:产品定位、主体思路、公共规则、数据关系、接口约定等等。设计出一份功能完整、性能良好、结构清晰的总体设计报告 。这份报告必须考虑三方面的工作,一是,用户所有需求得到满足;二是,有利于项目的分工协作;三是,以便于程序员编码的按部就班。( 3 )流程处理能力(属于总体设计)流程处理能力非常非常重要!所谓流程处理分两类,一类是,软件系统的工作流程;二类是,项目实施的控制流程。软件的工作流程,就是采用什么设计方法去分解整个软件系统,属于总体设计报告 。实施的控制流程,就是系统模块完成?团队资源如何调度?形成项目实施计划书 。(4 )模块分解能力(属于详

6、细设计)作为系统分析员、设计师,所面对的问题很复杂,需要对“整体系统”进行分解,把一个个“系统部件”分解为若干可复用的“功能模块”和“调用函数”。每个“模块”和“函数”有一个独立的设计文档- 详细设计报告 。设计师也要考虑:接口约定、模块功能、重要算法、属性、公共规则、数据关系等等。一个大型的、 错综复杂的应用系统分解成一些相对独立的、具有高度复用性的、并能仅仅依靠几个参数完成数据联系的模块组合,是我们软件设计师和系统分析员的一项最重要工作,合适的项目设计方法,清晰的流程图,是实现这一目标的重要保证。(5 )项目评估能力(属于实施进度)评估项目整体工作量,评估各个模块工作量,评估项目所需的资源

7、,评估项目可能遇到的困难,确定项目工期。(6 )组织管理能力(属于组织管理)2 / 4文档个人收集整理勿做商业用途作为项目的设计者和项目的实施组织管理者,必须做到: 一是,工作的量考核化,没有量化就很难做到合适的绩效考核 ;二是, 对团队协作模式的调整,一般而言,程序开发的协作通常分为小组进行, 小组有主程序员方式的, 也有民主方式的, 根据程序员之间的能力水平差距, 以及根据项目研发的需求, 选择合适的组队方式, 并能将责权和成员的工作任务紧密结合,这样才能最大发挥组队的效率。简明软件工程- 我喜欢快速原型法( 1 ) 场调研:切记!只有服务于企业、服务于市场的技术和产品才能体现出最大价值。

8、( 2) 需求分析: 赶快跟客户交流, 从客户那里得到他们的需要, 分析需求做出五个文档:1、 用户视图:设计出客户端用户界面、后台管理员用户界面的页面样式;2、 操作流程:将所有这些用户界面关联起来,构造出完整的操作流程和条件;3、 数据词典: 描述 数据之间逻辑关系,数据词典做好了,数据库设计等于完成了一半;4、 操作手册:是用来指导操作 流程的 说明书 ;5、 性能需求:(性能需求通常只有懂技术的人能理解);6、 备注:用户操作流程和用户视图由需求决定,为程序研发提供了约束和准绳。( 3) 概要设计: 初步划分功能模块 ,给出合理的研发流程和资源要求。如果采用快速原型设计方法,完成概要设

9、计就可以进入编码阶段。但是完成原型代码后,根据评测结果和经验教训的总结,还要重新进行详细设计的步骤。(4)详细设计:把具体的模块以最干净的方式(黑箱结构 )提供给编码者。1、 一份好的详细设计说明书,可以使编码的复杂性减低到最低;2、 一份严格的详细设计说明书,应当把每个函数的每个参数的明确定义都提供出来;3、 从需求分析到概要设计到完成详细设计,一个软件项目可以说已经完成了一半;4、 换言之,一个大型软件系统在完成了一半的时候,其实还没有开始一行代码工作;5、 详细设计阶段,是考验技术专家设计思维的重要关卡。(5 )代码编写: 规范化的研发流程中,编码在整个流程中不会超过1/2 ,通常在 1

10、/3 时间。1、 磨刀不误砍柴功,设计过程完成的好,编码效率就会极大提高;2、 编码时, 模块间的进度协调最需小心,一个模块可能影响整体进度,被迫停工等待;3、 编码时,成员间的沟通应急相当重要,对程序员而言bug 永远存在, 必须永远面对。(6)软件测试:是个相当重要的步骤,因为软件永远都会又不可预料的问题存在。一个大型软件, 3 个月到 1 年的外部测试都是正常的。测试有很多种:3 / 4文档个人收集整理勿做商业用途1、 按照测试方式:分为内部测试和外部测试;2、 按照测试范围:分为模块测试和整体联调;3、 按照测试条件:分为正常操作情况测试和异常情况测试;4、 按照输入范围:分为全覆盖测试和抽样测试。5、 我们看到,印度的一个软件模块单元测试,测试用例达到三百多页。4 / 4

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 社会民生


经营许可证编号:宁ICP备18001539号-1