《Rapid Development:Taming Wild Software Schedules》阅读(四)

 
第十一章 激励机制(motivation)
1、激励是决定工作表现最重要的影响因素,研究表明, 激励对生产率的影响比其他任何因素都大
 
2、开发人员的典型动机!
 
3、激励研发人员最重要的5个因素
    (1)成就感
        a、拥有对自己的自主权——完成自己设定的目标会更积极;
        b、为研发人员设定目标——加快开发速度的简单有效方法;
    (2)发展机遇
        a、可以提供进修的机会;
        b、为员工提供参加培训的机会;
        c、为员工购买专业的书籍;
        d、参加其他项目扩展其技能;
        e、为其指定导师,关注其职业发展;
    (3)工作乐趣
    (4)个人生活
    (5)成为技术主管的机会
 
4、研发人员士气杀手
    (1)保健因素——工作环境不利于研发人员身心健康;
    (2)被管理者操控——开发者倾向于处理明白无误的事务,并希望管理者以直截了当和实事求是的方式处理;
    (3)执行计划的压力——执行不可能完成的任务;
    (4)缺乏对付出努力的肯定——要及时肯定为开发而付出的努力;
    (5)因技术措施不当被牵连——非技术管理者命令开发人员离开开发主题而进行其他开发工作;
    (6)开发人员没有参加与自己有关的决策行为——使开发人员得不到足够的重视;
    (7)生产率障碍——开发人员不能发挥自己的最佳效率;
    (8)低质量——开发人员的成就感是从自己所从事的开发工作中获得的,低质量的产品会直接影响开发人员士气;
    (9)过分夸张的激励形式——开发人员会觉得自己收到了侮辱;
 
第十二章 团队合作(team work)
1、对“团队”含义的认识——并不是恰巧在一起工作就可以称为一个团队,团队是指能够相互负责、拥有共同的目标以及技能能够相互补充的一些人。
 
2、研究发现:个人生产力可以分为10个等级,而 最好的团队的生产力是最差团队生产力的4倍
 
3、最好的团队有什么样的特点?
    (1)共同的目标和愿景;——提高凝聚力,为共同的目标努力奋斗;
    (2)团队成员之间的认同感;——从团队成就中获得满足;
    (3)结果驱动的结构;——构造最大产出的团队;
    (4)能够胜任职位的团队成员;——胜任自己的职位,扮演好自己的角色;
    (5)对团队的承诺;——团队的成功来源于成员的承诺;
    (6)相互信任;——四个核心内容:诚实、开放、一致、尊敬;
    (7)团队之间的相互依赖;——各自发挥各自的优势,做有利于团队的事情;
    (8)有效的沟通;——增加理解,减少沟通成本;
    (9)自主意识;——团队成员自由地去做能够使项目成功的事情;
    (10)授权意识;——被授权后可以采取任何为获得成功所采取的行动;
    (11)小的团队规模;——8到10人是团队最佳规模;
    (12)高层次的享受。——打造自己团队的专属幽默感。
 
4、团队需要进行长期建设,原因如下:
    (1)持久的团队会有更高的生产率;
    (2)长期的团队避免高额的启动费用;
    (3)长期的团队降低了个人问题风险;
    (4)长期的团队降低了人事变动。
    (5)时间空闲问题——保留团队比重新组织团队更划算。
 
第十三章 团队结构(team structure)
1、即使你拥有了技术、好的努力工作的员工,错误的团队结构依然会削弱他们的努力而不是将他们推向成功!
 
2、组建团队时首先要考虑的因素是决定团队的主要目标:为了 解决问题?为了 创新?还是为了 战术执行
 
3、团队的种类
    (1) 解决问题型团队——主要从事一个或多个特定问题的解决,团队成员要求 可信赖的、聪明的、活跃的
    (2) 创新型团队——探索创新性和可能性,团队成员需要 自我激励、独立、富于创新和百折不挠
    (3) 战术执行型团队——重点在于执行一个良好定义的计划,以高度集中的任务和清楚定义的角色为特点,团队成员要求有 使命紧迫感、行动敏捷性以及忠诚于团队
 
4、团队模式汇总——为实现团队目标而组建团队的方式
    (1) 业务型团队(business team)——有一个技术领导带领的团队
        a、技术领导负责制定困难技术问题的最终决策;
        b、可适用于问题解决型、创新型和战术执行型;
    (2) 首席程序员团队(chief-programmer team)——基于首席程序员是普通程序员效率的10倍这一事实
        a、突出首席程序员的作用——一般团队把首席程序员与一般程序员放在同等位置;
        b、由 首席程序员负责起草整个说明书、完成所有的设计以及大多数代码的实现,并最终负责几乎所有的项目决策;
        c、 一般程序员扮演对首席程序员支持的角色,对首席程序员的设计和代码实现进行专门的研究;
        d、该种团队类型目前使用较少,但是还是推荐使用,尤其是针对 创新型目标和战术执行型目标
    (3) 臭鼬项目团队(skunkworks team)——典型的黑箱管理方式
        a、一批有才华、有创新能力的开发者,放在一个不受组织官僚限制的机构中,使它们能够放手开发和进行创新;
        b、不利方面:对项目进展没有足够的可视度;
        c、尤其适合于创新型目标。
    (4) 功能负责团队(feature team)——开发、质量保证、文档管理、程序管理和市场人员都采用传统的等级报告结构
        a、 团队位于传统组织的最上方,从每一个部门中抽取对产品功能负有责任的一个或者多个成员;    
        b、尤其适合问题解决型目标,也适用于创新型目标,但是不适于战术执行型目标。
    (5) 搜索救援团队(search-and-rescue team)——重点在于解决特定问题
        a、团队成员要求有能力立即解决问题,有过硬的专业知识;
        b、专门针对于问题解决型目标,太过基础不适于创新型目标,太过短期不能支持战术执行;
    (6) SWAT团队(SWAT team)——每个人都是某一方面专家,高度默契使得他们像一个整体
        a、SWAT——special weapons and tactics,在软件领域,SWAT——skilled with advanced tools;
        b、持久型的团队,习惯在一起工作;尤其适合于战术执行型目标,也可用于问题解决型目标。
    (7) 专业运动员团队(professional athletic team)——强调高度细化的个人角色
        a、特别适用于战术执行型目标,强调高度细化的角色。
    (8) 戏剧团队(theater team)——强烈的方向性和与众多项目角色协调为特点
        a、在共同的目标愿景下,强调个性突出。
        b、尤其适合创新型目标。
    (9) 大型团队(large teams)——沟通和协调是团队中的关键问题
        a、可以划分多个小组,每个小组是不同的团队模式。
 
5、项目经理与技术领导
    a、项目经理与技术领导两个角色之间的职责有重叠也有区分;
 
第十四章 对功能集的控制(feature-set control)
1、功能蔓延是阻碍项目快速开发的重要问题。
    
2、对项目功能集的控制主要分为三个阶段
    (1) 项目前期:重点在于对功能的简化
    (2) 项目中期:重点在于控制功能蔓延
    (3) 项目晚期:重点在于剪切多余功能
 
第十五章 高生产率工具(productivity tools)——好工具才能够事半功倍!
 
第十六章 项目修复(project recovery)
1、一般的修复方案
    (1)缩减项目规模——以便于在计划时间内完成规定任务量;
    (2)关注短期改善,提高生产效率;
    (3)面对不能按时交付的软件,放弃原计划,着手准备危害控制。
    (4)放弃部分功能,提高生产率。
 
2、在进行项目修复时, 最根本的问题是如何完成这个项目
 
3、修复计划安排
    (1)了解现状
        a、评估项目处境;
        b、应用W-理论分析;
        c、做好修复项目的心理准备;
        d、询问开发人员需要做什么;
        e、面对现实,贴近现实;
    (2)人员方面
        a、采取一切措施鼓舞开发人员士气;——士气决定一切;
        b、确保为开发小组创造了良好的环境;——良好的环境是保证;
        c、消除重大的人员隐患问题;——保持组内成员没有搅局者;
        d、消除重大的领导问题;——替换不适合的领导;
        e、增加新手一定要慎重;——新手会浪费更多的时间;
        f、充分利用开发组时间;——集中精力,高速运转;
        g、允许开发组成员各有不同;——不能强求千篇一律;
        h、观察开发人员节奏;——调整好节奏,提高开发速度。
    (3)过程
        a、修正支离破碎的过程;——找出偏离开发主线的原因;
        b、创建详细的小型里程碑;——小型里程碑既可以追踪进度,又可以鼓舞士气;
        c、依据里程碑的完成情况安排进度;——根据实际情况安排进度计划;
        d、细致地追踪进度情况;——追踪进度,保证不偏离主线;
        e、记录里程碑未完成的原因;——一定要找出原因所在才能避免再犯;
        f、短期后再继续调整;——实时校准,才能使计划更准确;
        g、在得出有意义的里程碑进度前不要提交新计划;——新计划的提交要有根据;
        h、进行风险管理要不辞辛劳;——进行风险管理,防范于未然。
     (4)产品——产品性能没有管理好的话,不可能修复好一个项目。
        a、稳定需求;——需求的稳定是其他一切的基础;
        b、修正功能集;——分出优先级;
        c、评估自己政治地位;——寻找项目停止的原因中是否涉及组织政治问题;
        d、去除无用垃圾;——果断丢弃垃圾;
        e、降低缺陷数量,并持续降低;——保证软件质量是减少时间浪费的关键;
        f、找到一个良好的状态,并在此基础上继续。——找到好的基础,再往上进行。
 
4、找准项目修复的时机——可能并不是第一次项目陷入麻烦的时候。
    a、 当你的管理者和开发组都准备接受这一现实,并同意进行修复,且做好的项目准备时
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值