



下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第三部分 尽可能并行工作1.1. 各种角色可以协同工作敏捷的特征就是要是使工作更加高效。很少有公司仔细考虑过项目成员在工作流程上的优化可以为项目提高多大的工作效率。但是,只要我们想一想,项目中的每个成员其实都是一颗能够独立计算并完成任务的CPU,那么我们是否会像IBM的网格计算专家一样去不断优化这些CPU的工作流程以达到一个新的世界记录呢? 千万不要认为必须完成所有的需求后才能够开始开发,完成开发后才能开始测试。软件管理者应该要非常清楚,所有的项目成员都是可供利用的CPU资源,无论在项目的任何阶段,你都不应该让这些CPU资源过分闲置。 项目的工作推进要想CPU的流水线一样,不要形成顺序流程,而
2、要尽可能并发开展,这样才能最大限度利用资源。 需求分析还在进行,开发人员干什么呢? 设计还在进行,需求人员可以干什么呢?测试人员又可以干什么呢? 作者不是善于剥削劳动力的资本家,问这些问题是为了启发大家明白“人力资源”是非常富有弹性的东西,很多时候感觉“资源不足够”并不是真正的不足够,而要问问自己“是否让资源充分发挥了价值”。 下面这张表是作者提供给大家参考的一个敏捷工作计划。在这个计划里,作者要强调几点:1 软件项目中存在很多隐性的工作,要尽量在项目立项的时候就考虑到,并排入计划。比如培训,制定规范,组织公用工具开发等2 清晰的角色划分,尽量明确每个人的工作职责,会使整个团队工作得更积极、有
3、序。3 不要忽略了协调的层次,项目组内,部门内,跨部门都需要良好的沟通渠道和协调资源。阶段 角色需求师/人机工程师架构师/设计师开发工程师测试工程师需求调研l 与客户沟通l 编写用例和需求规格说明(功能需求、非功能需求)l 培训(业务背景)l 组织需求评审l 架构设计l 与需求师确认需求l 构造原型l 培训(工具使用指南、编码规范、环境搭建、调试指南、性能问题处理)l 组织公用工具开发l 参与需求评审l 安装并熟悉工具l 了解业务背景l 培训和学习l 开发公用工具l 参与需求评审l 列写测试计划l 编写测试用例分析/设计l 持续确认需求l 细化功能清单l 细化逻辑检查清单l 界面需求l 参与设
4、计评审l 架构设计精化l 模块概要和详细设计l 编写接口文档l 编写性能测试计划和性能保障计划l 组织设计评审l 参与设计评审l 编写针对接口的单元测试l 细化测试用例l 准备测试环境实现/测试l 持续确认需求l 检查功能实现l 检查界面规范l 代码走查(代码结构、接口、异常处理、性能瓶颈)l 难点公关l 微观性能测试l 编码实现l 对照逻辑检查清单编写单元测试l 修改bugl 参与技能培训l 功能测试l 宏观性能测试l 集成测试1.2. 始终做最该做的让整个团队都可以尽可能地并行工作,这看起来似乎非常理想。但是要在项目管理实践中做到这一点,并不容易,需要整个团队有统一的价值观,并遵从一个工作
5、原则,那就是“始终做最该做的”。这里的“始终做最该做的”原则包括:1依赖项优先2接口优先3关键路径优先4广度优先.依赖项优先 大家都知道,并行工作的关键就是要让每个任务处理尽可能没有依赖,这样每个任务就可以单独进行下去。但是,任务之间往往不可避免存在各种依赖项,依赖项使任务的执行变成了串行。 在项目中,每个人每天的任务往往很多,这些任务中有些是独立的,早点完成还是晚些完成对别人没有影响。有些任务是被依赖的,如果自己不完成,他人也就不能完成。依赖项优先的原则就是要求整个团队的各成员树立一个意识:始终优先解决他人对自己的依赖项。一个这样做,还看不出效果;但是如果整个团队都能真正奉行这一原则并落到执
6、行的实处,那么整个团队的协调工作量就会大为减少,整个团队也就会持续保持在较高的工作效率状态。 案例:测试人员A等着需求人员B为其提供一个功能检查清单f 才好对某个模块进行有效测试。那么f 是A对B的一个依赖项。如果B手头的其他事都只影响自己的工作,这是时候需求人员B应该优先完成f,以免测试人员A无法进行自己的工作。 这里也有另外一个问题值得一提,那就是,每个人有应该清楚,如果自己的工作发生了依赖项,除了协调对方尽快去解决外依赖项外,还应该明白,自己绝对不应该就这么干巴巴等着。而应该切换去处理其他工作,一旦依赖项被解除,再切换回原来的工作。.接口优先 尽管“接口”一词让面向对象的程序员理解起来更
7、为容易,但是这里把这个概念推广。“接口”用来表达两个部分组合到一起的交接部件,可能是代码,也可能是文档。 接口优先的原则就是强调要优先把双方的依赖项明确下来,并尽可能使之稳定。有了接口,双方遵从接口即可并行工作。接口优先是依赖项优先的特殊形式。 接口优先要求:A 尽早定接口B 谨慎定接口,提供方和使用方共同确定接口,并要求接口评审C 接口变更要受控 从实际项目中看来,围绕接口制定太晚,而导致返工的现象十分突出。一个典型的场景就是等到项目集成了才发现接口并不符合需要,而这个时候修改接口往往伤筋动骨,重构的代价很大。 另外,就是制定接口需要很丰富的经验,要充分考虑到接口将来存在的变更可能。可是实际
8、项目中经常看到的一个现象是:接口的使用方往往一开始并不关心接口的具体细节,接口由提供方自行制定,而到了集成阶段,接口的使用方才提出接口无法满足自己的需要,并要求接口提供方进行变更。大家应该非常清楚,这个时候的接口变更不仅要求接口提供方修改内部逻辑代码,更大的隐患是牵一而动全身,一个接口的变更会引起所有接口使用者的代码调整。 作者比较建议推行“接口评审”制度,评审会上必须要求接口的制定方和使用方共同派代表参与,明确接口的需求和形式。这样做往往能够形成好的气氛: 第一,接口的使用方参与了接口的评审,有助于他仔细考虑自己的需求是否能够满足。 第二,接口的形式是经过使用方评审的,使用方要为日后接口的变
9、更负责任。这样可以促使接口的使用方提前充分理清自己的需求。 第三,双方见面进行沟通,明确了相关人,便于日后工作中的协调处理。.关键路径优先 学过图论的读者都知道关键路径的概念,项目管理理论也告诉我们,关键路径上的任何活动的推迟将使整个项目推迟。 关键路径要求:1 项目管理团队需要清楚项目的哪些工作是关键路径2 项目管理团队要制定可行的计划保证这些关键路径的完成。.广度优先 广度优先也是图论中的一个概念,表示在树搜索的时候优先从广度上处理。这里沿引过来表示始终要要优先分解任务,而不是处理任务。考虑整个团队任务的并行处理效率,如果说任务A可以如下图分解为子任务A1,A2,A3,并且子任务A1可能继续分解为子任务A11,A12。团队中的每个成员应该这样处理:第一,考虑把任务A分解为几个子任务A1,A2,A3。第二,考虑如何处理任务A1,发现A1可以分解为两个子任务A11,A12。OK,这个时候不要钻进去处理A11或者A12,而是处理A2。发现A2只需要处理子任务A21。接下来去处理A3,把A3分解为A31和A32。第三,这个时候可以处理A11了,处理完A11就处理A12,玩了在处理A21等等。 为什么要这样做?我想这是大
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025新进厂职工安全培训考试试题带答案解析
- 2025年各个班组安全培训考试试题及参考答案(B卷)
- 【部编版】四年级语文下册口语交际《朋友相处的秘诀》精美课件
- 2025机械设备购销合同范本下载
- 2025租赁合同印花税计算
- 2025劳动法律对劳动合同的新规定
- 【部编版】四年级语文下册《语文园地二》精美课件
- 纹身模特合作协议书
- 药店医保协议续签委托书
- 2025企业物业保安劳动合同模板
- 第18课《井冈翠竹》课件-2024-2025学年统编版语文七年级下册
- 公立医院成本核算指导手册
- 第七章-生物医学工程的伦理问题
- MOOC 中医与辨证-暨南大学 中国大学慕课答案
- 年产10吨功能益生菌冻干粉的工厂设计改
- 中联HIS系统挂号收费 操 作 说 明
- HIT(肝素诱导的血小板减少症)课件
- Mayo肘关节功能评分
- 螺栓加工工序卡(共7页)
- 《焦虑症基础知识》PPT课件.ppt
- 基于钻石模型的南通纺织产业竞争力分析
评论
0/150
提交评论