[敏捷开发]研发管理 开发过程管理

article/2025/10/5 2:03:37

开发过程管理,主要面向开发人员的管理。其核心目的,是通过一个项目管理软件,来管理不同项目,然后通过项目的里的工作项,了解开发人员的工作量,效率,从而来管理开发人员,合理调配开发人力。

名词解释

项目:一系列独特的、复杂的并相互关联的活动,这些活动有着一个明确的目标或目的,必须在明确的起止时间、预算、资源限定内,依据规范完成。

迭代:重复反馈过程的活动,其目的通常是为了逼近所需目标或结果。是产品开发时,对项目的拆分。每一次对过程的重复称为一次“迭代”,而每一次迭代得到的结果会作为下一次迭代的初始值。开发项目中的迭代,往往是指产品版本的迭代,比如要实现一个产品最终版可能要三次迭代,第一次迭代实现基本原型,第二次迭代实现能用,第三次迭代的目标就是好用,这种情况下,迭代就和阶段、冲刺类似,而大多情况下,一个迭代,往往指一个产品已经具备了1 2 ..5...项功能,下一次迭代就是优化或追加功能。

冲刺:敏捷开发里的名词,和迭代类似。时间周期更短的阶段,一般在开发中为了快速出部分原型效果。

积压板:微软的tfs里的工具,主要可以用于在项目里存放idea,各种需求或想法。简单来说,记录一些idea的便签。

工作项:将需求分拆为一个个小的具体工作名词,开发任务。比如 “首页-导航栏”,“首页-登录按钮”。基本工作项就是一个开发的最小单元,当然这是理想化的时候,很多时候分不到这么细。简单来说,就是一件件要做的事。

一个项目,可能被拆分为多个冲刺,每个冲刺里的需求,被拆分为多个工作项。

项目>冲刺>工作项。(需求可被直接存放在项目里,也可以在冲刺里)

生命周期

UML-Sequence-for-UserStory-and-Tasks

 项目干系人:参与该项目工作的个体和组织。简单来说,就是项目里干活的,和管理干活的那拨人。

一次冲刺的相关流程

某一次冲刺里的流程

 

整个敏捷开发思想核心,是为了快。

快速的迭代,快速出一个版本,先用一个有核心功能的版本出来,然后再在后面的冲刺里,丰富这个功能。每次聚焦一个核心,然后不断迭代,扩充这个核心。

有的公司团队,使用的敏捷开发是按照,功能点拆分的方式,不同团队开发不同模块之类的,最后拼装在一起,类似于拼图模式。

而我们采用的是一种滚雪球的方式:把所有需求列出来后,抓住最核心的需求优先开发。到了下一冲刺,再根据已开发的核心需求,看其周边需要或配套的需求进行开发。在冲刺1,团队开发出一个,基础可以用的产品,冲刺2后,弄出一个略微丰富的产品。到了冲刺3,开发出一个好用的,功能丰富的产品。


个人经验

以下这些经验,主要偏向作为项目经理的思考的。

不过现在是这些想法,过个一段时间,可能我就不这么想了。

在冲刺或迭代启动会时,那份启动文档,一定要写明此次迭代(或冲刺)的目标。比如:为了让XX功能使用起来、将XX页面展示、显示xx信息等。这么做的好处是,在冲刺总结会时,可以用来评审此次的冲刺是否成功,也有利于总结文章。

偏差管理。如果项目组员在执行工作项(尤其是开发人员),后来发现和项目指定计划有偏差,不要立即“批评”组员的开发错误。而是,先询问其处理偏差的原因,若是反馈因为沟通理解的原因,可以记录下来(主要记录在哪个点上沟通出现问题),防止下次项目再犯。若是由于组员有自己的思考理解,“有意”处理成这样。要先鼓励他,项目经理表明自身的态度,欣赏他有独立思考能力,然后再沟通,进行“纠偏”。若是当时不小心气上头,骂了组员,后面私下抽空(最好是次日),可以沟通下“自己回去又想了下,你说的也有道理。不过,目前的项目应该是xxx”。道理很简单,每次做完一个项目,项目成员都应该有成长,无论是你引导的,还是他自发的,否则他永远不成长,你就永远要每次划分很细工作项,时刻盯着他。

以下是我们在执行敏捷开发时,遇到的问题:

        1. 工作项在实际开发拖拽使用时,由于开发人员对单独模块不了解,所以几个项都一并开发(比如,把一个页面拆分成了四个工作项:顶部工具栏、中部banner显示、左侧tab面板、中间状态列。开发人员,在开发时,非先单独开发完【顶部工具栏】,再去开发【中部banner显示】,而是在搭建整个页面时,每项都有涉猎)。造成项目经理在看迭代版(故事墙)时,看到某个开发人员有好几项都在并线开发,然后这几项周期显得很长。

A:我们考虑,在开发某些工作项时,尤其是有关联关系的工作项,优先将目前手上,正主力开发的工作项拖动到【开发中】   故事列,等这一项完成了,又着手关联的那个工作项时,再将其拖入到【开发中】

         2.工作项优先级和开发顺序的理解。在分析阶段,某个工作可能就是一个需求点A,觉得比较重要就会用高优先级标识。而在后面开发时,为了实现【工作项A】,要先去开发优先级低的【工作项B】。如果一个冲刺里,有大量的这种A/B矛盾,后面在时间点不够下,对于需求砍断很棘手

A: 在将需求点进行设计,并拆分为工作项时,要有个技术把关,知道哪些工作项要拆分的重点。并且,在项目时间不充裕的情况下,要进行每日站立会议,目的就是为了及时反馈开发人员,真正在开发的工作项,帮其处理这些A/B优先级问题。

       3.前期项目经验不足,或者对开发人员能力评估不够,冲刺里工作项如何合理安排?才能按时高质量完成项目?

A:进行冲刺安排工作项时,优先安排一整个完整业务单元的相关工作项。如果时间点确定(基本也是冲刺的出发点,短时高效),那工作项安排上宁多勿少,可以将下轮冲刺的部分工作项安排进来。因为安排工作项也是个费时费力的活,宁可到时间点,开发人员对于部分工作项未完成,也不可提前完成冲刺(除非该冲刺是最后一轮)。

还有一点补充下:工作项的划分,尽量是按照适度完成时长来安排,比如每个工作项都是2-3天即可完成,太长 一个工作项一周不可取,太短,两个小时就完成了也不可取。所以有时候,一个工作项里可能有两三个功能点,有时一个功能点又被拆分为若干个工作项。

      4.项目报告该怎么写?中期报告关心哪些内容?

A:这里提供一个我使用的范本。总共就报告三个方面:1.目前项目进度 2.后续计划 3.总结。其实和像老板汇报工作差不多,具体怎么汇报,有在如何向老板汇报工作?介绍过。这里说下,项目经理在汇报时,总结可以当部分问题反馈写,但是在你写问题反馈时,如果是具体的问题,一定要将自己的处理方案写入

     5.在敏捷开发过程中,前期的分析时,对于一些很细小的操作业务点可能没有提及,开发时才暴露这个业务问题。而且询问时,也是琐碎的询问。可能是问题类别也可能是询问时间,东一榔头,西一棒槌的。

A:问题的产生,由于分析时没有分析那么透彻,详细。当然要想避免这个问题,就要很牛逼的分析师,庖丁解牛的那种。不过,大多数情况下,都难以做到。我们采取的方案就是,将问题先记录下来,每个冲刺里都建立一个业务问题的记录文档,出现的问题记录后,在回答,同时再在文档里记录处理方案,等到站立会或中期汇报时再讨论。简单来说就是,(如果问题很小)先拿出一套解决方案,把项目继续进行下去,后期再细究这种问题。如果是很核心业务,那一定要验证真正需求,征求拍板人意见。

    6.敏捷开发的项目看板里,要把缺陷独立循环在体外吗?

A:原本在初版设计时,我们也是这么想的。像很多SASS产品一样,把缺陷独立于敏捷开发的项目看板外,项目看板仅是开发需求。但是,在实际使用过程中,如果一开始做了足够的分析,或者把工作项拆的合理点,那 看板中的工作项,就是当前迭代(冲刺)的功能说明列表,测试人员也仅需根据此列表比对测试,并在里面填写测试描述就行了。

所以,一个工作项就三种类别:开发、缺陷、改进整个团队人员只要关注一件事务即可,相关人员也可以直观地看清,哪些有缺陷,哪些要改进,在站立会议上,也不用切来切去了。 但是,这样也有缺陷,在不以缺陷为绩效考核的公司,可以这么干,如果涉及到 缺陷跟绩效挂钩,那这相关,在后面统计绩效时,就可能比较麻烦。

禁止转载使用

       7.在敏捷开发的过程中,优先关注哪些?是bug?是需求?还是用户反馈? 

 A: 大多数人第一反应是 【需求】,包括我自己,第一反馈也是如此。但经过这次我们自己去做敏捷开发的工具(加上听了某大厂产品经理的分析),感觉用户反馈真的是第一位。首先,做出产品就是给用户用的(无论2C,还是2B,亦或是自己家用的)。因为是给自己做工具(自己做,更顺手),所以对公司内使用员工感受,信息反馈更注重。根据他们的反馈即时调整下一轮冲刺的开发方向,才会使产品做出来的,让大家觉得更方便,好用。

部分参考资料:

arnoldwang,《创业团队的项目管理,如何面向开发人员优化》 


http://chatgpt.dhexx.cn/article/YI5P9ci6.shtml

相关文章

Arduino常用的附加开发版管理器网址

20211004更新 增加ESP32 常用的附加开发版管理器网址 ESP32 https://dl.espressif.com/dl/package_esp32_index.json 如果使用ESP32-SOLO要用这里的编译文件替换源文件 https://github.com/lbernstone/arduino-esp32-solo 替换位置 C:\Users\你的用户名\AppData\Local\Ar…

基于vue的后台管理系统开发

如果要快速开发一套基于vue的后台管理系统,你可以手动从0到1动手撸,也可以基于现有的vue的后台管理系统模版进行开发。 github上有几套关注度比较的vue后台管理系统模版[1]: vue-element-admin[2]vue-admin[3]vue-manage-system[4]iview-admi…

微信小程序 —— 成员管理及开发管理

引入 要理解微信小程序的成员管理,首先要理解微信小程序的注册。 微信小程序的注册需要用户提供一个邮箱作为登录账号,并绑定一个微信号作为管理员。登录账号会得到一个官方提供的appid作为标识码,作为登录账号的凭证。微信小程序登录账号与…

软件开发项目管理经验总结

这是我从事软件外包工作以来的项目管理经验的总结,编写文章的目的是为了回顾和总结自己的一些想法,如果其中有不足的地方大家可以一起讨论交流。 项目经理的职责 关于项目经理的工作职责有很多种说法,我自己是这样理解的作为一名项目经理第一…

管理信息系统开发方法——原型法

管理信息系统开发方法——原型法 引言 管理信息系统(MIS)的设计开发方法是系统开发人员和从事方法论研究人员极为关注的问题。对于MIS项目来说,在系统开发前期用户很难确定和表达对未来的信息系统的全面要求。这是因为用户对系统本身的想法是比较模糊的和不完全确…

产品开发的生命周期管理

背景 现今我们很多工程师在实际工作中,可能工作许多年都还未能感受到自己所在组织产品或项目的开发流程到底是怎样的,也不清楚自己在团队中为何存在,应该如何表现才能在团队中出类拔萃。 大部分原因就在于我们自己对于组织的结构和流程没有…

软件开发管理与质量控制

分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章。分享知识,造福人民,实现我们中华民族伟大复兴! 前 言  随着市场经济的进一步完善及全球经济一体化进程加快,企事业单位面临着激烈的市…

JAVA开发管理(敏捷管理具体工作细节)

一、站立会议 二、可视化任务管理 三、快速迭代与功能演示验证,同时进行功能驱动开发 四、代码走查和review 五、测试驱动开发 六、持续完成代码合并和功能集成,保障完成的开发功能均可用

软件架构设计之六:开发管理

一、本章要点 1)项目的范围、时间、成本 2)文档管理工作、配置管理 3)软件开发的质量与风险、软件质量属性 4)软件的运行与评价 5)软件过程改进 二、项目管理概述 1)项目是在特定条件下,具…

软件开发管理规范

1 容器化规范 在应用的容器化改造规范中,需要考虑的主要因素有:容器的高可用性、容器的运维、容器的安全性、容器的多租户隔离、容器的持久化存储等,容器化的过程中需要符合以下规范和要求: (一) 建立清晰的可自动化编译和构建过…

华为交换机设备运行检查的常用命令汇总

1、查看子卡的运行状态,可以用命令display device。此命令可以查看子卡在位信息及状态信息是否正常。 2、查看设备复位情况,可以用命令display reboot-info。 3、查看设备温度,可以用命令display temperature all。各模块当前的温度应该在上下…

华为交换机查看端口相关信息常用命令,排查故障法宝,转发收藏

一、查看接口状态 1、显示接口的运行状态和相关信息 display interface Ethernet brief 查看以太网端口的简要信息,物理端口是否连通,端口是否是全双工,带宽是多少,端口的流入流出的流量百分比。可以排查端口的基本信息&#xff…

eNSP - 华为交换机常用命令

eNSP(Enterprise Network Simulation Platform):企业网络仿真工具 eNSP是一款由华为提供的免费的、可扩展的、图形化操作的网络仿真工具平台,主要对企业网络路由器、交换机进行软件仿真,完美呈现真实设备实景,支持大型网络模拟&am…

华为交换机基础命令配置

1、要求&#xff1a;(1)、建立vlan (2)、交换机g0/0/1加入vlan <Huawei>sys [Huawei]vlan 11 [Huawei-vlan11]q [Huawei]int g0/0/1 [Huawei-GigabitEthernet0/0/1]port link-type access [Huawei-GigabitEthernet0/0/1]port default vlan 11 [Huawei-GigabitEthernet0/…

小白也能看懂的华为交换机常用命令大全

01 — 基础配置命令 1、用户模式 登陆设备后&#xff0c;直接进入用户模式&#xff0c;尖括号表示用户模式&#xff0c;在这个模式下只能执行少量查看配置的命令&#xff1b; 2、视图模式 用户模式下&#xff0c;输入system-view或者sys进入视图模式&#xff0c;方括号表示…

查看华为交换机端口状态的方法以及命令

华为交换机怎么打开端口&#xff1f; 登录进交换机&#xff0c;进入系统视图,命令为&#xff1a;system-view。2、进入以太网端口视图&#xff0c;命令格式&#xff1a; interface interface-type interface-number。 华为交换机查看端口状态的方法 1>将交换机开机&#x…

华为交换机常用命令大全

01 — 基础配置命令 1、用户模式 登陆设备后,直接进入用户模式,尖括号表示用户模式,在这个模式下只能执行少量查看配置的命令; 2、视图模式 用户模式下,输入system-view或者sys进入视图模式,方括号表示视图模式,可执行设备全局配置的命令; 3、交换机改名 这个…

华为交换机基础配置命令参考

华为交换机基础配置命令参考 基础配置 用户模式 登陆设备后&#xff0c;直接进入用户模式&#xff0c;只能执行少量查看配置的命令&#xff1b; 视图模式 用户模式下&#xff0c;输入system-view进入视图模式&#xff0c;可执行设备全局配置的命令&#xff1b; 局部配置模式…

华为交换机常用命令

案例1&#xff1a;华为交换机根据IP查他对应的MAC地址和交换机端口 设备 核心交换机&#xff1a; 华为S5735S-S24T4S-A VRP software, Version 5.170 (S5735 V200R019C10SPC500) 接入层交换机&#xff1a;华为S5720-28p-LI-AC VRP software, Version 5.170 (S5720 V200R011…

【Linux】linux下删除/清空文件夹/文件命令

linux下删除和清空文件夹命令 删除文件夹命令清空文件内容命令 删除文件夹命令 rm [选项] 文件强行删除文件&#xff0c;没有提示 rm -f 文件名删除文件夹以及文件夹中的所有文件命令 rm -rf 目录名字 选项说明&#xff1a; -r&#xff1a;向下递归删除 -f&#xff1a;直接强行…