小团队如何落地敏捷开发

spring boot maven打包jar包太大,怎么办?这个方法解决你的烦恼 在springboot maven项目中,有两种打包方式,一种是war包,一种是jar,今天我们讲一下jar的打包方式。但是在jar包打包只要我们发现,我们的项目jar太大了,每次上传到服务器的时候非常的慢,接下来我们就来解决一下这个问题,让jar包也能先war包一样,不用每次都上传那么大的jar。 阅读详情

点击上方“芋道源码”,选择“设为星标”

管她前浪,还是后浪?

能浪的浪,才是好浪!

每天 8:55 更新文章,每天掉亿点点头发...

源码精品专栏

 

来源:jianshu.com/p/908cae2e23c5

  • 为什么要实施

  • 使用的工具

  • 如何做好这件事情

  • 公开需求管理

  • 产品研发需求管理

  • 技术任务管理(任务效能看板)

  • 测试BUG管理(BUG看板)

  • 小结

You can't manage what you don't measure. - Peter Drucker

你如果无法度量它,就无法管理它。

这是现代管理学之父,彼得·德鲁克的一句名言。项目管理、敏捷开发的前提,还是需要把数据串起来,进行可视化、数据化,这样才能看到它,管理它。

本文将以公司SaaS产品为例,介绍下“小团队”是如何进行敏捷研发的落地的。

为什么要实施

  • 需求的进展不透明,不知道现在到哪里了

  • 需求延期发布成为了家常便饭,不知道什么时候会发布上线

  • 需求发布上线后,心里总是忐忑不安,不知道什么时候会出现问题和故障

  • 团队沟通成本太高,经常性出现RD、FE、QA、PM信息不一致

  • 需求插入随意、频繁,不计成本

  • 不清楚,研发团队的工作量,是正常、超负荷、还是有人不饱和

在互联网初创公司里,需求和有限的资源,永远是矛盾命题,如何在矛盾中寻找平衡,把有限的资源专注于符合公司战略的需求,保持团队的节奏和良好的情绪,就是要实施敏捷管理的痛点,也是我们为什么要实施,敏捷管理也可以很好的回答上面出现的各种问题,给出答案。

使用的工具

下面是我们所使用的工具,Confluence主要是知识库和文档的汇集,JIRA是项目管理工具和BUG管理工具,下面是之前写的如何搭建这些工具的文章,大家可以参考

✔️Atlassian Confluence

创业公司基础设施如何搭建(三) -- Confluence(Docker版本)

✔️Atlassian Jira

创业公司基础设施如何搭建(四) -- Jira(Docker版本)

如何做好这件事情

需求评审 ➡️ 设计评审 ➡️ 研发实现 ➡️ 测试 ➡️ 验收 ➡️ 发布 ➡️ 后评估

为了让产品和研发过程可视化,更加可控,信息互通,我们采用***4个看板***模型进行敏捷管理实践,看板名称和功能如下:

公开需求看板(Kanban Board)

通过「看板」建立一个公开需求池,向跨部门成员广泛收集需求,一切市场反馈及时传递到位。看板类型为Kanban Board。

需求看板(Kanban Board)

为需求生命周期搭建流程,按「Backlog - 评审 - 排期 - 设计 - 开发 - 发布」设立多个阶段,需求流转可视化。

任务效能看板(Scrum Board)

为需求预设好发版时间,所有人都可以及时预知逾期风险;产品、开发和需求提出者随时发起沟通,及时同步需求变化或者开发进展。

BUG看板(Kanban Board)

通过看板查询,迭代中的各种类型的BUG数量情况,清楚明了。

20201111123104.jpg

公开需求管理

公司属于教育类SaaS,其公开需求主要来源有下面几类:

  • 重要客户(学校)

  • 用户日常使用反馈(教师、学生、家长)

  • 销售渠道

甄别和过滤伪需求和次要或者不符合战略的需求,在这里进行,但是“业务方”提出的众多的需求如何管理,也是一件头疼的事情,这里主要流程发生有下列几种:

  • 用户使用体验  ➡️ 客户成功同学  ➡️ 记录问题  ➡️ 反馈处理结果

  • 大客户需求  ➡️ 客户成功同学  ➡️ 记录问题  ➡️ 反馈处理结果

客户成功同学、销售同学或者其他干系人,都可以在这个看板内,提交原始需求问题,产品同学会过滤、调研,转化为产品需求,到产品需求池内,下面是*公开需求看板*,卡片的内容主要包含了:需求描述、问题类型、解决状态、经办人

20201111110736.jpg

  • 判断价值很低或者肯定不会做的需求,直接拖到已完成

  • 判断有一定价值或需要在分析的需求,拖到调研讨论,最终确定后,再拖到已完成

产品研发需求管理

需求分类

产品研发内部,我们把需求分成2类:

  • 产品需求:PM提出的迭代、紧急、日常类需求

  • 技术需求:研发内部为了稳定性、扩展性、维护性而进行的技术重构类需求

需求等级

古语云:师出有名,需求的提出也是如此,为了让研发同学知道需求的重要和紧急程度,需求等级划分是特别需要的一件事情。

  • 产品需求等级划分

    P0:紧急任务,必须穷尽所能,最短时间完成;可以调人支援,可以停止其他项目,需要加班

    P1:非常重要任务,有Deadline,并且不可以Delay;如遇到P0,那么就需要加班保证P1的Deadline

    P2:重要、有影响力的任务,有Deadline,如遇到P0和P1,可以顺延(应该是大部分任务)

    P3:锦上添花的正常任务,优先级最低

  • 技术需求等级划分

    T0:重大性能和漏洞,需要加班加点进行修复

    T1:扩展性和性能风险问题,一般是单独任务进行修复

    T2:设计或者一般性能缺陷,一般是随着迭代进行相关改进

产品需求管理(需求看板)

PM和研发同学,通过PRD的方式进行沟通和交流,研发同学最终也是通过PRD进行开发、测试工作,所以第一步是需要创建PRD,PRD的管理方式采用相对灵活的方式,PM写PRD的工具有的是蓝湖,有的墨刀,我们这里为了统一归档,在Confluence做了归档的统一管理(PRD的详细链接可以是任何工具的链接), 在Confluence创建时选择模板创建,见下图:

20201109163916.jpg

20201109163929.jpg

主要包含了

  • 背景描述

  • 业务目标的描述

  • 需求链接和功能列表(即Story)

    需求看板的 泳道有P0、P1、P1以下、技术需求的4个泳道,为了便于搜索,在快捷搜索列加入了常用的搜索关键词,卡片主要包含:需求等级、到期日、需求负责人

技术需求管理(需求看板)

类似数据结构的变更、技术架构的改进,比如:更换配置中心为Apollo,这类需要简称技术需求,其数据显示和看板功能,和产品需求基本一致,也显示在***需求看板***内,看板如下:

技术任务管理(任务效能看板)

这个阶段,主要是从需求阶段进入到了研发阶段,这个阶段主要包含如下类型的任务:

  • 开发任务:RD、FE

  • 开发自测:RD、FE

  • 测试用例编写:QA

  • 测试用例执行:QA

技术任务类型的问题,主要来源于2个方面

  • 产品需求

  • 技术需求

对于此类任务管理,我们使用的看板是*任务效能看板*。在开始之前,我们需要在Backlog内,拖动需要进行迭代的技术需求或产品需求,如下图:

然后,以产品需求和技术需求为父任务,在***需求看板***内,创建子任务,界面如下:

创建好后,可以查看父子任务详情,并有工作量体现

点击开始Sprint,并设置好时间,如下图:

RD & QA & FE,在每天下班前,填写其任务的工作量即可达到任务工作量跟踪的效果,如下图:

20201110101104.jpg

测试BUG管理(BUG看板)


在Sprint中产生的BUG都会显示在***BUG看板***中,工作流主要是打开 ➡️ 处理中 ➡️ 已解决 ➡️  已关闭,如下图:

我们所采用的BUG类的问题类型有以下几种:

  • 功能错误

  • 界面优化

  • 功能优化

  • 性能问题

  • 安全相关

    在这个迭代结束后,测试人员,会根据BUG的统计报告数据,分析得出本次迭代的测试报告,测试报告,我们在Confluence创建了统一模板,主要内容如下:

小结

需求和效能的生命周期管理,这里仅仅是按照目前产品和团队的需求和阶段,规定了一些适合我们的方法,这个周期管理,还是需要随着人员和阶段的不同而进行不断的改造和演进的,下面是我们在JIRA和Confluence使用的一些核心流程和方法:

  • 4个看板

    公开需求看板:处理市场、销售前端部门提出的“大客户需求”和“用户使用体验问题”

    需求看板:主要是管理技术需求和产品需求

    任务效能看板:主要是管理开发阶段,RD & FE & QA的任务和工作量,跟踪其任务合理性

    BUG看板:主要是管理迭代内产生的5类BUG问题,功能优化 & 功能错误 & 界面优化 & 性能问题 & 安全相关

  • 2个模板

    产品需求模板:产品需求的管理

    测试报告模块:迭代后,针对BUG和其他问题,进行的测试相关的总结

    目前,敏捷相关的管理,这个阶段也仅仅是做了一小部分,还有很多实践方法,在后续的变化中,会加入和实施

    敏捷管理是为了快速、稳定的交付产品而服务的,切忌不要为了追求敏捷工具的使用而耽误了实际要达成的目标。



欢迎加入我的知识星球,一起探讨架构,交流源码。加入方式,长按下方二维码噢:

已在知识星球更新源码解析如下:

最近更新《芋道 SpringBoot 2.X 入门》系列,已经 20 余篇,覆盖了 MyBatis、Redis、MongoDB、ES、分库分表、读写分离、SpringMVC、Webflux、权限、WebSocket、Dubbo、RabbitMQ、RocketMQ、Kafka、性能测试等等内容。

提供近 3W 行代码的 SpringBoot 示例,以及超 4W 行代码的电商微服务项目。

获取方式:点“在看”,关注公众号并回复 666 领取,更多内容陆续奉上。

兄弟,艿一口,点个赞!????

Maven使Jar包缩小上百分倍的方法详解 maven打包在实际部署的时候是一个非常头疼的事情,jar太大导致上传时间很慢,今天我们就来出一个优化jar的好方法。分布式项目我们一般会采用Maven管理,整体架构分为三部分:三方依赖:通过pom.xml文件配置,添加到项目中来特点:变化小,占用空间大静态资源:特点:变化适中,占用空间大;不过一般的静态资源都另外管理,很少会直接放在项目里面业务代码:特点:变化大,占用空间小整个项目打包会被构建成一个Jar包,其中三方依赖也会被构建进去,占用空间最大的也是这个pom.xml文件,也就是大家通常说的。... 阅读详情

相关推荐

springboot整合druid 监控sql

springboot整合druid 监控sql 包括去除广告教程

一名代码爱好者的博客 1593

晒一晒程序员桌面,你惊呆了没?

点击上方“芋道源码”,选择“设为星标”管她前浪,还是后浪?能浪的浪,才是好浪!每天 8:55 更新文章,每天掉亿点点头发...源码精品专栏原创 | Java 2020 超神之路,很肝~...

芋艿V 866

[敏捷开发] 敏捷开发在团队落地的总结反思及改进建议

以前,当讲到我们团队采用敏捷开发进行APP迭代的时候,我会把“敏捷”二字打上引号。但是最近总结、反思、参加TAPD分享会、公司组织的敏捷培训以及系统的学习了敏捷的理论知识后,我觉得应该把这个引号给去掉。 本文将从 什么是敏捷、待优化的地方及建议 及 总结 三个方向阐述。 什么是敏捷,我们敏捷吗? 个人认为,敏捷的核心就是:“小步快走、迭代优化”。 “小”:指Stroy要小、落地开发的Task要小...

weixin_43834662的博客 1825

MyBatis连接数太多报错问题:message from server:“Too many connections“

话不多说,直接干货! 第一步: 在navicat里面使用命令: show variables like '%max_connections%'; 此处是我已经修改好了以后才显示1500,如果未设置默认是100,因此一般线上服务都需要修改此配置 第二步: 继续执行: set persist max_connections=1500; 由此即可修改成功.但千万不能漏了第三步!!! 第三步: 去对应的mysql部署的服务器查看mysql的端口号 紧接着就是重启mysql,即...

weixin_46816552的博客 1510

AI质量预测落地的项目管理:架构师总结的敏捷开发流程与团队分工建议

你有没有遇到过这样的场景?——AI团队花3个月训练出“准确率95%”的质量预测模型,兴高采烈部署到生产线,业务方却皱着眉头说:“这模型预测的‘缺陷’根本不是我们关心的!”或者模型上线后准确率突然掉到70%,工程团队一头雾水,不知道问题出在数据还是算法。AI质量预测(如制造业产品缺陷预测、软件bug预测、电商商品质量评分)的落地,从来不是“算法调参”的单点问题,而是**“业务需求-数据工程-算法开发-工程部署-持续优化”的全链路系统工程**。

AIGC应用创新大全的博客 1190

modelsim软件安装教程及踩坑(极简版)

1.安装的网盘链接:链接:https://pan.baidu.com/s/1ltUfssyXlCnqDmLhWyhlwA提取码:jery 2.步骤(参考博文):https://blog.youkuaiyun.com/weixin_42693097/article/details/90523692?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522163521788716780357213801%2522%252C%2522scm%2522%253A%2522

subtitle_的博客 3781

敏捷开发在国际化团队管理中的落地

探讨一下敏捷开发在跨四时区(上海、伦敦、浦那、安大略)金融科技团队中的落地实践。

William Chen's knowledge base 1194

C语言实现贪吃蛇小游戏!(超简单详细)详细思路+源码分享

我们的今天的目标就是:用C语言来实现一个贪吃蛇项目,也不用太复杂,初学者能看懂就行!

致力于C语言C++知识分享! 1万+

敏捷开发落地难点解析:如何让 Scrum 在团队中真正高效运转

本文通过文化转型流程执行团队协作持续改进四大维度,系统解析了Scrum落地的核心挑战。研究证实,成功实施需满足文化适配度>85%工具链完整率>90%度量体系有效性>80%三大基准。建立敏捷成熟度评估体系(如SAFe 5.1标准)构建端到端质量保障矩阵(涵盖流程、工具、人员)实施双轨制改进机制(快速迭代+长期优化)未来研究可聚焦于敏捷与数字化转型融合元宇宙环境下的远程协作生成式AI对敏捷流程的重构等领域。建议企业设立敏捷创新实验室,通过小步快跑模式验证前沿技术。

2501_92431580的博客 1086

WPF+Prism+LiveCharts+materialdesignin 搭建WPF开发框架

例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。提示:以下是本篇文章正文内容。

T_Tboy的博客 3054

WRF进阶:定制Vtable文件解析非标准气象数据源——以ERA5-Land土壤湿度为例

本文详细介绍了如何为WRF模式定制Vtable文件,以解析非标准气象数据源ERA5-Land的土壤湿度数据。通过剖析GRIB文件结构、详解Vtable编写逻辑与语法,并提供了从数据验证到metgrid配置的完整实战流程,帮助用户突破标准数据源限制,实现高精度陆面过程模拟。

o4p5q6r7s的博客 393

敏捷开发在中小软件团队的落地实践与优化策略

然而,在人员规模不足50人的中小软件团队中,敏捷开发的落地往往面临流程僵化、沟通成本高、资源分配不均等问题。通过本次调研,我深刻认识到,软件工程不仅是技术的集合,更是人的协作艺术。对于中小团队而言,“轻量级”的敏捷实践往往比“完美”的流程更重要。在未来的专业学习中,我将更加注重团队协作能力的培养,积极参与开源项目和课程设计,在实践中理解软件工程的本质。本次调研旨在深入分析中小软件团队在敏捷实践中的痛点,总结可复制的优化策略,为同类团队提供参考,同时也帮助我更深刻地理解软件工程中“人”与“流程”的关系。

2602_95364264的博客 356

Ubuntu上通过FinalShell或Asbru访问CentOS虚拟机

使用FinalShell或Asbru远程连接虚拟机

howard2005的专栏 2280

众安科技研发团队落地敏捷开发管理全流程

最后,团队协作得到了加强。众安科技研发团队在实施敏捷开发过程中,首先明确了项目的目标和愿景,制定了可行的开发计划。通过CI/CD,团队成员可以在提交代码之前预先构建测试环境,确保代码的质量和稳定性,减少了手工编码的错误率。为了更好地支持研发团队的高效协作和快速交付,众安科技研发团队落地了敏捷开发管理全流程,取得了显著的成效。这种方法不仅提高了研发效率和产品质量,而且加强了团队协作和知识共享,提高了企业的整体竞争力。通过Git,团队成员可以实时追踪代码更改,及时发现和解决问题,确保代码的质量和可维护性。

ZhongAnTech的博客 312

CSP - 2024 普及组初赛试题及解析

CSP - 2024 普及组初赛试题及解析

QD_Jason的博客 2911

液态神经网络(LNN):打破AI“静态快照”的连续动力学革命---AI大模型系统从零开始0029

MIT研究团队受秀丽隐杆线虫神经系统的启发,开发出革命性的液态神经网络(LNN)。该技术通过连续微分方程建模神经元动态,实现输入响应速度的自适应调节,解决了传统AI模型静态化、高能耗和低解释性的痛点。LNN具有三大突破性优势:仅需少量神经元(如20个)即可完成复杂任务;能处理非均匀时序数据;在自动驾驶、医疗监测等领域展现出卓越的适应性和鲁棒性。这项将生物智能与数学建模完美融合的技术,有望成为下一代AI的核心架构,目前已在无人机导航等场景验证了其高效性,被预测为2026年最具潜力的AI突破方向。

添柴程序猿的专栏 381

敏捷开发在大型项目中的落地实践:从团队协作到流程优化的经验分享

通过在大型项目中实施敏捷开发,我们在团队协作、迭代计划制定、持续集成与交付等方面积累了丰富的实践经验。通过组建跨职能团队、建立高效的沟通与协作机制,我们提高了团队的工作效率和协作能力;通过科学合理地制定迭代计划、有效管理产品待办事项列表,我们确保了项目的有序推进;通过搭建持续集成环境、建立自动化测试体系、优化持续交付流程,我们提高了软件的质量和交付速度。然而,在实践过程中,我们也遇到了一些问题和挑战,通过不断地探索和尝试,我们找到了相应的解决方案。

数字魔方操控师的博客 994

5G/NR 网络切片基本概念(协议版)

26.1 网络切片概念 网络切片是一个概念,可以根据每个客户的要求进行区别对待。通过切片的形式,将不同流量差异化处理,以及可以将资源进行隔离,然后移动网络运营商可以将客户视为属于不同租户类型的客户,每种客户具有不同的服务要求,这些要求根据每个租户根据SLA (Service Level Agreement,服务水平协议)可以使用哪种切片类型进行管理和订阅。 网络切片始终由RAN部分和CN部...

欢迎来到小七的博客,这里将带你深入探索5G通信的神秘世界。无论你是通信领域的专业人士还是对这一领域充满好奇心的技术爱好者,这里都有专业协议解读、通信知识普及以及有趣的Python编程内容等你发现。 1万+

敏捷开发在大型项目中的落地实践与挑战

敏捷开发是一组软件开发方法的集合,其核心思想是通过 “持续迭代” 和 “快速响应变化” 来应对软件开发过程中的不确定性。敏捷开发宣言强调了个体和交互胜过过程和工具、可工作的软件胜过详尽的文档、客户合作胜过合同谈判以及响应变化胜过遵循计划这四大价值观。围绕这些价值观,敏捷开发衍生出了十二条核心原则,例如尽早并持续地交付有价值的软件、欢迎需求的变化、频繁地交付可工作的软件、业务人员和开发人员必须紧密合作等。这些原则构成了敏捷开发的基础,指导着项目团队在开发过程中的各项活动。

数字魔方操控师的博客 1212

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

敏捷开发(Scrum-Kanban)在实际团队中落地踩过的坑

这些“坑”不仅影响开发效率,还可能打击团队士气。Kanban的核心是可视化流程,但部分团队在看板上长期堆积“进行中”任务,失去流动性。例如,某团队因未设置“在制品限制”,导致多任务并行而效率低下。许多团队将每日站会变成机械式的汇报,而非真正的协作工具。改进建议是聚焦“障碍”而非任务,鼓励成员主动提出需要协助的难点,并由Scrum Master及时跟进。例如,某团队在迭代中多次接受新需求,导致开发周期不断延长,最终交付质量下降。识别这些常见陷阱后,团队需结合自身特点调整实践,才能真正释放敏捷的潜力。

eysdsc_053的博客 171

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

上一篇: Swagger 自动生成 Dubbo 服务的接口文档,以及测试调用
下一篇: 知乎问题:北京,2020,多少k的java程序员应该懂多线程?
公众号-芋道源码
博客等级 码龄10年 1636粉丝 377原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值