项目研发流程及管理之我见

简介: 随着工作年限的增长,我们从一开始负责一个功能,再到负责一个模块的数据字典及框架设计。再到负责整个系统的需求评审及架构设计。这一路见证着程序猿的成长。但当我们逐步成为一名架构师,或是一名项目管理人员时,会发现一个项目的成功,会牵扯到各式各样的问题及风险。
   随着工作年限的增长,我们从一开始负责一个功能,再到负责一个模块的数据字典及框架设计。再到负责整个系统的需求评审及架构设计。这一路见证着程序猿的成长。但当我们逐步成为一名架构师,或是一名项目管理人员时,会发现一个项目的成功,会牵扯到各式各样的问题及风险。无论是系统本身要兼容快速发展的业务形态,还是由于人员因素导致的项目延迟,又或是系统代码的臃肿或是难以维护,亦是新人来后的一脸迷茫。那么下面,分享下,项目流程管理之我见。

一、整体项目流程
    1、 需求评审与确认
    要求:PD会进行需求的整理并放入需求资源池。确定本期研发的功能需求,并开始需求评审,需求评审时,能够使技术人员能够完全理解本次需求的前因后果,作用,目标及整个流程。
产出:该阶段主要为pd产出相关prd及demo,对需求进行宣讲,并记录疑问及难点。

    2、模块流程文档
    要求:围绕着本次迭代的核心问题,编写整个模块的闭环业务流程。如有复杂逻辑,需要画出用例图、协作图等。
    同时,要给出该模块的非功能性需求,例如:调用量、日均增量、访问次数等待。
    产出:领域模型、开发模块架构图、技术架构图、人员分工(每个人负责哪个模块)

    3、详细设计及评审
        (1)概念映射:抽取本次模块迭代的一些属于概念。
        (2)框架设计:围绕着本次迭代的核心,进行模块的扩展构思,不仅仅以完成本次功能的模块为主旨,还需要考虑未来的体系中,该模块的可用性、扩展性。
        (3)数据库设计:数据库设计时要严格遵守数据库范式、同时围绕系统做到可扩展。
        (4)功能细化与调研各个环节中需要调用哪些接口服务。
        (5)前后端传输对象的映射及定义,进行前后端最后评审。
         产出:技术架构图、数据库关联关系图等,一致评审通过后,形成完整文档。

   4、编码
      (1)围绕着模块的核心构建核心框架代码(遇到问题可互相讨论)
      (2)编码及功能实现。
      (3)接口注释、复杂逻辑注释。

   5、测试
       要求:测试阶段,根据代码逻辑,编写每一个case的相关测试用例及单元测试。变更覆盖率不得低于百分之80。
       产出:测试用例文档及单元测试TestCase。

   6、发布前准备与发布
       要求:查看代码检测工具,质量分不得小于35分、行单测覆盖率不得小于百分之60。从开发->集成->预发->发布阶段,每一阶段都需要进行验证及日志查看。 
       注:预发前要充分做好回归测试(根据每次迭代的测试用例及单元测试进行测试),防止线上已有功能受到影响。

   7、线上问题修复及运维
       要求:(1)发布上线后出现问题,需要紧急变更处理,做好线下及预发验证,发布线上。同时在lark上记录该问题的前因后果。
                 (2)约定时间,每日查看自己负责的模块及整体系统运行情况,发现问题及时抛出。
        
二、代码质量及review
      要求:每次迭代完的下个星期,抽出一下午时间进行代码质量及review(pmd检测大部分代码质量问题),包括:
     (1)代码结构是否合理,能否有更好的实现。(结构角度、方法抽象、jvm堆栈内存占用等)
     (2)代码中没考虑到的情况

三、项目管理
    项目管理要点分为,时间把控、风险把控、补位意识、结果与目标导向四点:

    时间把控:
     (1)整个项目流程分为需求、设计、开发、测试、实施阶段。根据需求的复杂度、团队整体能力水平、调研负责度进行迭代周期的预测。
     (2)一旦时间确定下来,就严格按照每个阶段的产出实行。

    风险把控:
     (1)意外情况或有进度风险的情况。需要及时暴露出来 风险原因及风险问题。并进行相关协调沟通,补位意识。

    补位意识:
     (1)项目风险确定,每个成员都有自身的长项,发现影响进度的问题,包含于自己能力的能力范畴内,帮助对方提速,追赶项目进度。

    结果与目标导向:
     (1)保质保量完成需求及模块的迭代。
     (2)优化review及补充,使每个人能够知道对方模块的逻辑及全系统逻辑。
     (3)问题总结及技能总结。
     (4)从整个系统的层面、业务大图的层面去考虑整个系统或产品的发展及扩展。

    当然,现实或许是残酷的,时间或许是紧迫的。很多时候,我们会因为各种各样的原因而搁置其中的部分流程。但规范决定着长远的风险可控,倘若有时间一定要将必要的补上,这是对别人负责,同时也是对自己负责。
目录
相关文章
|
6月前
|
监控 数据挖掘 BI
探索项目管理系统:解析五大功能,洞悉项目成功的关键
项目新手常忽视管理系统的价值,而高手已借助系统实现规划清晰。优秀的项目管理系统必备五大功能:项目WBS分解、图表报表、工时管理、团队协作和任务自动化。WBS能将复杂项目拆分成可管理任务,明确责任,评估时间和资源需求,便于跟踪进度。Zoho Projects作为示例,支持创建任务层级,利用甘特图和资源利用图监控进度和资源分配,工时管理则帮助控制项目时间和成本。同时,系统促进团队协作,如通过即时通讯和知识库增强团队凝聚力,而任务自动化则减少错误,提升效率。
92 1
|
29天前
|
监控 供应链 数据可视化
团队高效流程管理必备:方法与实用软件推荐
在当前激烈的商业竞争环境中,高效的业务流程管理对企业成功至关重要。本文介绍了业务流程管理的方法,包括流程梳理、优化、监控与评估及员工培训与参与,并推荐了几款实用的业务流程管理系统(BPMS)。BPMS能自动化、可视化业务流程,提升效率。具体推荐包括板栗看板、Trello和Wrike,它们分别在任务管理、团队协作及项目管理方面有各自的优势。选择合适的BPMS有助于提高工作效率、增强流程透明度、提升团队协作能力,规范管理并降低风险,从而增强企业竞争力。
61 0
|
3月前
|
敏捷开发 运维 安全
不懂就问:哪款项目管理神器,可以和外部伙伴一起协作管理项目?
YesDev协作云是一款支持内外部协作的项目管理平台(Yesdev.cn)。它不仅便于团队内部高效管理项目,还能与外部合作伙伴及甲方客户共享项目进展,促进多方协作。 YesDev提供了一站式的项目协作解决方案,支持敏捷开发、DevOps等模式,适用于需要内外部协作的企业。通过YesDev,可以轻松实现项目信息的共享与协作,提升项目管理效率。
|
6月前
|
存储 测试技术 持续交付
团队配置管理规范:高效协作的秘诀与浅见
介绍软件配置管理规范的一些内容
182 2
|
6月前
|
新零售 人工智能 搜索推荐
2+1链动互助模式系统开发|项目方案|流程分析
对于消费者而言,我们已经习惯了便捷的网络购物方式,但是网购我们无法了解商品的质量,
|
6月前
|
存储 云计算
生信工程师高效工作的背后——可观测性、资源适配与自动化
使用Memory Machine Cloud(简称MMCloud)的生信工程师们为什么工作效率比别人高呢?我们悄悄总结了MMCloud的三个核心优势——可观测性、资源适配与自动化。
190 0
|
Devops 项目管理 开发者
敏捷项目管理基础(一)
敏捷项目管理基础(一)
144 0
|
监控 数据可视化 项目管理
敏捷项目管理基础(二)
敏捷项目管理基础(二)
116 0
|
敏捷开发 人工智能 数据可视化
敏捷需求管理流程规范-免费敏捷工具
Leangoo领歌是一款专业的敏捷开发管理工具,它覆盖了敏捷项目研发全流程,包括小型团队敏捷开发,规模化敏捷SAFe,Scrum of Scrums大规模敏捷。提供端到端敏捷研发管理解决方案,涵盖敏捷需求管理、任务协同、进展跟踪、统计度量等。
|
存储 人工智能 监控
【MarTech参考架构】Credera的MarTech参考架构第5部分:营销自动化和活动管理
【MarTech参考架构】Credera的MarTech参考架构第5部分:营销自动化和活动管理