一、背景说明
在软件开发领域中,流程协作一直是热门的话题之一,不同的组织架构中,定义不同角色和人员的职责范围,并且通过流程规范来管理不同角色之间的衔接机制,以求不断提高协作效率。
文章图片
核心要素
- 角色:不同的组织架构下,角色配置各不相同,角色与人员对应明确;
- 职责:对不同角色的责任定义,用来明确介入流程的阶段与时间;
- 流程:根据场景定义对应的流程中节点顺序,例如开发、测试、部署;
- 节点:明确不同节点中的负责角色,作为节点有序完成的推动者;
二、常规流程 【基于流程管理,提高工作质量和效率】
文章图片
产品从需求到发布中间经历多个关键节点,在协作的过程中,任何阶段出现问题,都会对整个流程的上下游产生影响,所以对各个节点输出结果的质量需要有适当的要求,避免出现工作反复的低效率情况。
从如下四个方面看具体细节:产品需求、项目管理、研发管理、项目总结,把握好这几个关键阶段对团队的稳定和效率都有巨大的提升。
三、产品需求
文章图片
- 收集:多方需求的接收,可能是业务侧、产品规划、系统优化、架构升级、等多个来源;
- 整理:对收集的需求分类整理,根据重要紧急的策略做好需求统筹和实现的规划,提供初版文档;
- 业务评审:给到业务(需求)方流程管理,产品初版的操作示意图,对齐心里上的预期;
- 技术评审:完善需求的细节规则,技术评估合理性、可实现性、复杂度、风险等相关问题;
四、项目管理
文章图片
项目管理是一件繁杂的事情,通常分为:启动、执行、监控、收尾四个阶段,以此实现项目的"质量、成本、时间"的把控,在不降低质量的情况下,同时降低时间和成本是多数公司的追求,故而形成现在互联网的内卷态。
文章图片
- 启动:启动阶段主要指资源的合理分配,项目工时评估,里程碑节点明确等事项;
- 执行:在软件开发中即指:UI设计,开发实现,测试,线上部署等一系列流程;
- 监控:关键点在于进度与风险,对进度的有节奏跟进,以及可能出现的风险判断和解决方案;
- 收尾:对项目的质量验收,整个流程的复盘总结,以及相关人员的通知;
五、研发管理 研发是一个耗时较长且容易出现问题的阶段,所以在这个节点要细致化的管理和推动,对质量的追求要放在绝对首位,避免因为"多-快-好-省"的想法而出现豆腐渣工程,如此返工带来的成本会更加高昂。
文章图片
- 准备:即在版本开发初期,要精准的理解需求,完成功能模块拆解,以及对应的工时评估;
- 设计:UI界面输出,开发前后端设计,测试用例,各个节点完成设计的评审对齐;
- 编码:前后端代码实现,API对接联调,配置改动、结构脚本、逻辑流程等日常文档记录;
- 测试:开发自测,专业测试,自动化脚本测试,UI视觉验收,产品功能流程验收;
- 发布:预发布环境模拟部署,线上灰度环境发布,正式生产环境上线,完成线上验收;
文章图片
服务端在面对复杂业务时,将需求落实到设计上至关重要,首先就是对需求有全面细致的理解,很多时候流程中的一个细小规则对应的实现成本都是巨大的,其次就是对于开发流程的构思设计并输出,并完成项目组内开发的评审对齐,这样基本能确保开发的顺利完成。
六、项目总结 在复杂的项目中,最后的总结分析很容易被忽略掉,总是感觉版本正常上线没有问题就可以,当然作为一名开发选手我的内心是支持这个说法的。
复杂的业务对应复杂的产品设计,同时也意味着超长的项目周期,即高昂的成本,线上的正常使用只是意味着研发的质量很高,但是对整体业务的需求和产品设计的合理性是需要基于用户的使用去分析:
文章图片
- 动作埋点:对业务流程上的各个环节做埋点动作,用来对行为数据的收集;
- 日志采集:关键API的请求做日志记录,用来对系统及业务做分析判断;
- 数据分析:分类汇总业务流程中各个核心节点数据,形成一整套的数据分析结果;
- 总结报告:结合业务的需求,对产品功能做出客观的分析,并输出必要的优化方案;
同系列文章推荐
- 互联网:逻辑上的黑话才是真正的花里胡哨
- 职场:3天准备5天面试,跳槽完成
- 职场:跳槽之后,如何平稳走过试用期
- 职场:工作五年之后,对技术和业务的思考
- 架构设计:微服务架构中,二次浅封装实践
文章图片
推荐阅读
- 学习笔记(01):区块链技术进阶-深入详解以太坊智能合约语言 solidity(含源码)-核心概念 - 货币单位及GAS...
- 学习笔记(12):NumPy数据分析-NumPy创建数组的方法-fromiter
- 研发管理|学习笔记(02):高并发下的Nginx性能优化实战-日志管理和日志切割