研发管理
文章平均质量分 89
天涯兰的博客
技术专家、IT技术图书作译家
展开
-
技术管理的维度
技术管理无疑是一项综合性工作,包含业务、技术和管理这三大维度。如何把这三大维度通过一定的方式展示给开发人员,从而让开发人员能够快速和准确的理解进而完成转型是我们首先需要明确的一个核心问题。针对该问题,很难通过一个面面俱到的模型或视图做出完整的回答。我们在思路上也是使用分解的策略,把技术管理者所应该具备的转型方法转换为不同的子维度。子维度的提出也是为本书如何进行内容组织提供了具体的表现形式。要想...原创 2019-08-02 10:47:03 · 3171 阅读 · 0 评论 -
技术变革的基本规律
不可否认,任何产业以及产业下的产品都有其生命周期,这点对于软件行业尤为明显。随着互联网行业的蓬勃发展,很多传统行业也都纷纷转型开发出很多“互联网+”型产品。结合我们在第2章中对行业的分析,我们就会发现从行业成长的角度来研究创新过程,分析技术创新与行业成长的关系,是技术创新首先要明确的重要内容。从技术创新的角度分析行业成长,具有代表性的模型是A-U模型。A-U模型认为企业的产品创新和技术创新是相...原创 2019-08-10 10:44:46 · 1591 阅读 · 0 评论 -
技术创新策略与模式
根据技术扩散曲线,我们希望自己能够成为创新者,如果由于各种条件所限无法成为创新者,那也应该争取成为早期采用者。为此,技术创新需要有相应的策略和过程来支持这一目标。1. 技术创新策略与维度(1)技术创新的策略技术创新有自主创新、模仿创新和合作创新三种基本策略。对于软件开发而言,目前大多数技术创新还是以模仿创新为主,并在与产品创新相结合的特定领域中实现合作创新和自主创新。自主创新所谓...原创 2019-08-10 10:46:11 · 2867 阅读 · 0 评论 -
技术内部创新的类型和要素
如果决定是有内部创新,首先需要明确的是创新的类型,然后才是展开创新活动。对不同的创新类型而言,内部创新所需的活动和过程基本保持一致。1. 内部创新的类型这里有必要强调一下,所谓的技术创新实际上不可能脱离一个具体的产品或一个具体的组织,纯粹为了技术创新而技术创新是没有任何意义的,所以对于技术创新而言,除了技术本身之外,其切入点往往还包括产品或管理。(1)面向基础研究的的技术创新基础性...原创 2019-08-14 22:06:31 · 2556 阅读 · 0 评论 -
CMMI中的过程改进
无论是经典的软件过程模型,或是多种基于管道理论的敏捷方法,都是通过软件过程模型来组织软件开发过程,软件过程模型偏重于开发流程管理,这一节我们通过过程要素的另一个视图来剖析软件开发过程。任何形式的软件开发过程都可以使用流程、人员和技术三个方面来切入。流程定义一系列开发的步骤和操作方法,人员需要通过培训和管理提升技能,而广义上的技术包括应用领域、工具、语言、信息和环境。 业界对如何进行过程改进也...原创 2019-08-23 22:40:28 · 4061 阅读 · 0 评论 -
敏捷中的过程改进实践和工具
敏捷思想中有一条原则指导我们进行过程改进:每隔一定时间,团队会在如何才能更有效地工作方面进行反省,然后相应地对自己的行为进行调整。由于很多不确定性因素会导致计划失效,比如项目成员增减、技术应用效果、用户需求的改变、竞争者对我们的影响等都会让我们作出不同的反应。敏捷不是基于预定义的工作方式,而是基于经验性(Empirical)的方式,对以上这些变化,敏捷团队通过不断的反省调整来保持团队的敏捷性。敏捷...原创 2019-08-24 00:01:58 · 1000 阅读 · 0 评论 -
软件过程模型的管道理论
软件开发过程体现的是一种管道(Pipeline)思想,为了确保对开发的投入和产出达到平衡,必须考虑完善的资源分配策略从而确保使技术开发管理处于最优性能水平上。管道理论是一种高度抽象,代表着软件开发过程中出现不良现象的根源,这些不良现象包括各个项目和产品开展的组织瓶颈、部分团队与其他团队工作数量和饱和度不匹配所造成的浪费以及长期的为了应对各种线上问题而投入的人力物力等。经典软件过程模型在一定程度...原创 2019-08-11 11:53:37 · 1360 阅读 · 0 评论 -
敏捷方法 - 敏捷的理念
在《软件过程模型的管道理论 》中我们介绍了软件过程的模型以及管道理论。从本文开始,我们将开始一个新的系列,讨论目前主流的敏捷方法。结合软件开发过程,我们把敏捷的理念分成四大块内容,即适应变化、团队协作、交付价值和过程改进。1. 适应变化敏捷最为人称道的一个理念就是“拥抱变化”。为什么“拥抱变化”这一理念会深入人心,程度上是受软件开发的本质特征所决定,即任何软件的需求并不是在一开始就能完全确...原创 2019-08-11 18:14:12 · 4062 阅读 · 1 评论 -
敏捷方法 - Scrum与过程管理
1. Scrum简介Scrum基本组成结构见下图,以一组称之为Sprint的迭代周期组成,典型的迭代周期为1-2周或者最多一个自然月,产品的设计、开发、测试全部都在一个迭代内完成。Scrum中存在三大角色,分别是Product Owner(简称PO)、Scrum Master(简称SM)和Development Team(简称DEV)。Product Owner的交集比较广泛,对内需要...原创 2019-08-11 18:18:26 · 1395 阅读 · 0 评论 -
敏捷方法 - 精益思想
精益(Lean)思想来自制造业,21 世纪初由Tom 和Mary Poppendieck 引入软件开发领域,精益的很多思想也被认为是对软件行业有参考价值。与Scrum所提供的的过程管理框架不同,精益更多体现为一种思维方式,精益的思维方式也常被称为精益思维(Lean Thinking)。1. 精益思想精益是敏捷开发的一个重要部分。当把精益制造的一些思想应用到软件开发中时,我们从敏捷开发的其他...原创 2019-08-11 18:22:09 · 1915 阅读 · 1 评论 -
敏捷方法 - 看板方法与流程管理
“看板方法”是一个制造业的术语,由David Anderson 引入到软件开发领域。David 在其的著作《看板方法》一书中这样描述看板方法与精益之间的关系:“看板方法带来了一套复杂的适应性系统,该系统的目的就是在一个组织中催生出精益的效果。”1. 看板方法正如David Anderson所说,看板方法本身并不是一种软件开发流程或者项目管理方法。使用看板方法之前,你必须已经具备某种流程或方...原创 2019-08-11 18:25:38 · 3333 阅读 · 0 评论 -
敏捷方法 - 极限编程与工程实践
前面我们介绍了Scrum、精益和看板,这三种都偏向于过程管理,代表敏捷方法论的一大派系。在敏捷领域,还存在另一大派系面向工程实践,代表性的有极限编程(eXtreme Programing,XP)。这两个派系分别从开发方法和管理方法给出了各自关于敏捷方法论的阐释,但两种之间也存在一定的共性。针对如何实施敏捷方法,目前主流的做法就是把极限编程与其它过程管理框架合起来一起应用,通过Scrum、看板等...原创 2019-08-11 18:36:18 · 1137 阅读 · 0 评论 -
技术管理者的角色
角色是规定一个人活动的特定范围和与人的地位相适应的权利义务和行为规范,是组织对一个处于特定地位的人的行为期待。角色定位需要认清自己以及竞争者的位置和职责,正视自我,同时以强烈的职业意识给自身的事业和未来发展确定一个方向。我们从所从事的活动、定位和所需技能对技术管理者这一角色进行全面剖析。1.技术管理者的活动技术管理者是负责规划、设计和实现技术能力,从而完成组织战略和运营目标的人。通常,这个...原创 2019-08-02 10:40:14 · 985 阅读 · 0 评论 -
技术管理者眼中的行业
行业特性在不同人员眼里具有不同的表现形式,对于技术管理者而言,自然也有其对行业的理解模型。尤其在当下软件产品处于互联网的大背景下,各个行业在自身特性上也表现出一定的共性。1. 互联网背景下的行业与软件产品特征我们处在一个互联网空前繁荣的时代,随着“互联网+”概念的提出,越来越多的行业从传统的线下模式转移到了线上模式,意味着软件产品也从以往面向特定用户群体的应用变成面向所有潜在用户的模式。互...原创 2019-08-05 23:25:12 · 266 阅读 · 0 评论 -
实现业务决策的维度和业务基线
业务决策的维度一个产品的业务需求一般具有很多来源,彼此之间可能会产生冲突。业务结构的建立最终需要表现为一种被广泛认可且稳定的形式,但团队各方可能存在利益上的冲突影响到业务结构的稳定性。例如在移动医疗系统开发过程中,对于预约挂号这个常用功能,系统的开发人员、产品经理和医院相关人员可能会存在如下图所示的冲突。 显然,我们可以看到上图中存在一致的地方,但也包含很多相互冲突的业...原创 2019-08-03 15:57:37 · 1173 阅读 · 0 评论 -
研发范围和时间的“信息透明化”之Redmine统一平台
一. 范围和时间基本概念原创 2014-09-27 15:06:01 · 3548 阅读 · 0 评论 -
研发范围和时间的“信息透明化”之多项目多平台下的协作与流程
对多项目、多平台下研发信息的透明性,本文从两个角度进行了梳理和抽象:首先项目线-研发线协作流程为不同工作线上的团队提供统一的项目研发视图和工作模式,围绕完成目标版本这一项目实施目的展开具体工作,确保信息的透明性和有效传递;其次确立明确的信息闭环管理思想,通过多种工作平台下信息传递和交互使相关干系人明确测试范围、时间节点和结果,并保证过程的可跟踪和可追溯性,为回顾提供数据依据。原创 2014-11-10 08:23:45 · 2540 阅读 · 0 评论 -
轻量级研发知识管理--如何帮助研发人员建设过程资产
研发知识管理把“隐形知识显性化”,是一项涉及知识库、过程资产、环境和交流等元素的整合过程,所管理的知识将作为一个团组织中过程资产的重要组成部分。本文从知识管理的概念出发,对研发过程中普遍存在的知识管理方面的问题和现状引出轻量级研发知识管理的思路与目标,并根据思路和目标提出两个工作流程和五个工程实践作为实施研发知识管理的框架。原创 2014-10-07 16:52:24 · 3084 阅读 · 2 评论 -
Retrospective--The Way To Make Things Better
本文讨论回顾(Retrospective),从为什么我们要做回顾这一问题出发,清晰阐述怎么做回顾,包括流程、时机、参与者和持续时间、背景和目标、活动和工具、产出和行动。通过对这六个方面的具体展开并配合场景分析帮助大家了解和掌握回顾会议中的具体做法和注意点。最后通过分析传统型周会的特点,强调回顾会议的重要性并建议使用回顾型周会作为日常开发过程中的一项实践。原创 2014-10-10 08:29:14 · 2284 阅读 · 0 评论 -
研发管理学常用定律与思考
管理学上有很多您听说过或没有听说过的定律,这些定律虽然看上去很简单易懂,但看完之后联系实际不得不让人佩服第一个提出这些定律的大师们的睿智。有些定律对本人也是启发良多,引导着日常工作的方方面面。本文从研发管理学的角度出发,谈谈对一些定律的理解和思考,包括帕金森定律、康威定律、布鲁克斯定律、手表定律、木桶定律和墨菲定律。原创 2014-10-04 16:17:33 · 2757 阅读 · 0 评论 -
研发范围和时间的“信息透明化”之协作与流程
研发范围和时间的透明来自于团队的相互协作,这些协作需要以一定的流程和模式作为基础。本文首先从角色和数据流、Issue状态、Issue与角色、范围和时间的组合以及版本从何而来等基本要素出发,对使用Redmine进行研发范围和时间的透明化工作流程进行展开,重点阐述PO、DEV和QA的工作流程和协作方式。最后梳理日常工作中的几项最佳实践作为本文的总结。原创 2014-10-11 20:45:26 · 1878 阅读 · 1 评论 -
配置管理之数据库版本控制策略
数据库版本是研发过程中需要把控的一个方面,但实际操作上很多时候并没有使用配置管理的思路进行统一管理,尤其是对研发管理尚未完善的团队而言更是如此。本文围绕配置管理这个主题,针对研发过程中的数据库版本控制策略展开讨论。从数据库版本这一概念入手分析数据库版本要素,明确思路和目标并提供工作流程和实践模式。原创 2014-10-20 08:26:51 · 3712 阅读 · 0 评论 -
精益之识别和消除研发过程中浪费的思路和模式
本文基于精益思想和精益软件开发,针对研发过程中的“浪费现象”进行深入分析。浪费分成存粹的浪费和必要的浪费,其中存粹的浪费需要消除,而必要的浪费可以进行压缩。结合日常研发过程,本文对如何识别这些浪费、如果消除存粹的浪费以及如何压缩必要的浪费进行剖析,并提供思路和模式。原创 2014-10-17 09:22:54 · 5310 阅读 · 0 评论 -
开放话题系列之使用新技术还是使用成熟技术
最近公司一个研发团队把使用一段时间的新型技术框架重新调整到了以前的成熟技术框架,个人也是颇有感触,系统开发中我们是使用新技术还是使用成熟技术?原创 2014-11-25 21:25:14 · 2005 阅读 · 1 评论 -
当技术开发碰撞技术管理
技术管理者的主要工作围绕技术和管理这两个维度展开,通过对技术和管理两维度的排列组合,我们可以得到技术与管理四象限图(见下图)。请问你目前属于哪一个象限? 根据上图,本书介绍是如何成为第一象限中技术管理型人才的方法,而主要面向的对象是第二象限中的技术型人员。技术型人员普遍存在两种角色,一种是普通的程序员,一种是代表技术专业度较高的架构师。接下去我们针对这两种技术角色与本书讨论...原创 2019-08-03 11:01:39 · 339 阅读 · 0 评论 -
技术开发向技术管理转型
转型成功的三段式模型转型需要一个过程,任何过程一般都可以抽象成人、工具和流程的组合。但是对于转型过程而言,显然普适意义上的人、工具和流程并不能直接应用。如何找到更加有效的途径来完成从开发人员到技术管理者的转变,本文基于下图所示的由思路、方法论和工程实践所构成的三段式模型,结合技术管理这一特定转型主题做进一步介绍。1. 思路思路意指思考的条理脉络,通俗的解释就是心里的想法。转型需要...原创 2019-08-03 11:14:25 · 708 阅读 · 0 评论 -
建立业务结构的系统方法
建立业务结构的过程就是将业务背景、业务范围和业务约束进行拆分并形成可以作为技术实现输入的过程,下图展示了对业务结构三个方面拆分的一种方式。业务背景实现一个解决方案,创造或修改一个产品的初衷往往是为某些人提供有价值的服务和获取一定的回报。业务背景就是要对所面临的机遇、目标进行分析,提出产品发展的愿景并认识到可能所面临的的业务风险。(1)业务机遇从解决方案出发,业务机遇一般体现在业...原创 2019-08-03 11:36:12 · 1282 阅读 · 0 评论 -
技术外部创新的类型和要素
在《技术内部创新的类型和要素》一文中,我们提到了内部创新。与内部创新一样,外部创新同样也有类型以及相应的要素。1. 外部创新的类型外部创新的类型主要就两种,分别是外部获取和跨业创新。(1)外部获取一家强大的公司可能会选择并购等方式来改变现有的技术体系,但更多的手段是通过与其他公司或组织进行合作以获取新的技术 。并购和合作构成了技术外部获取的两种基本方式。如果一家公司没有时间和能力,...原创 2019-08-20 22:17:45 · 1745 阅读 · 0 评论