V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
leiuu
V2EX  ›  程序员

假设让你接手一个中小规模的软件项目,你该如何入手

  •  
  •   leiuu · 2022-04-03 18:21:59 +08:00 · 2580 次点击
    这是一个创建于 970 天前的主题,其中的信息可能已经有所发展或是发生改变。

    RT.

    项目规模可能是之前一个 4-5 人左右的前后端团队开发,涉及前端、后端、数据等,框架有 10 余种。

    例如最基本的,可能需要熟悉系统的人,提供部署图、目前的整体架构图、git 地址列表等。

    除此之外,交接人提供什么样的图表或者资料,可以供快速熟悉系统?

    对了时间不宜过长,一般是在一个月内。

    感觉是个通用问题,请教大家了。

    第 1 条附言  ·  2022-04-03 22:09:02 +08:00
    有同学提到了文档的重要性,提供哪些文档会很重要或者最有帮助?
    第 2 条附言  ·  2022-04-03 22:22:17 +08:00
    不跑路 哈哈哈 1 月的时间如果有问题 那就增加到 1.5-2 月 目的是看看提供什么文档或走通哪些流程 可以对老系统理解和上手开发最有帮助
    22 条回复    2022-04-04 21:08:24 +08:00
    bootvue
        1
    bootvue  
       2022-04-03 19:28:38 +08:00
    不该跑路吗
    4ark
        2
    4ark  
       2022-04-03 19:32:22 +08:00 via iPhone
    这种时候就体现文档的重要性了
    westoy
        3
    westoy  
       2022-04-03 19:33:24 +08:00   ❤️ 1
    如果能跑, 就别去动它
    Cielsky
        4
    Cielsky  
       2022-04-03 19:38:28 +08:00 via Android
    文档详细:尽量不动原代码
    文档不全 /没有:趁早跑路
    gotounix
        5
    gotounix  
       2022-04-03 19:40:11 +08:00
    关键是工作内容,是新功能开发还是老功能维护。功能维护也分很多种情况,负责几个模块还是整个系统。

    我觉得,最重要的还是熟悉业务。建设的比较完善的项目,可能你上面列的那些都有。但是很多情况下,可能只是给你个 git 地址,什么部署图、架构图可能都没有。而且,有可能文档(详设、概设、数据库设计)跟实际代码不一致,或者年久失修。

    只要业务熟悉,碰到问题解决问题,很快就能熟悉代码。
    seakingii
        6
    seakingii  
       2022-04-03 19:46:18 +08:00   ❤️ 1
    1 所有源码编译一次
    2 在新的测试环境搭建一次所有的模块
    3 所有的文档过一遍
    4 所有的源代码看一遍(至少每个文件打开看看)
    janus77
        7
    janus77  
       2022-04-03 19:49:46 +08:00
    4-人 5 团队的东西让一个人去做,这什么通用问题啊
    pupboss
        8
    pupboss  
       2022-04-03 19:53:50 +08:00 via iPhone
    这种事我干的多了,让交接给你的人,手把手带你从零搭建起来一套环境,只要能跑起来,以后一切好说

    设计文档作用很小,没人老老实实照着规范写代码,后期 debug 主要靠自己一点一点熟悉
    leiuu
        9
    leiuu  
    OP
       2022-04-03 22:10:06 +08:00
    @gotounix 同意熟悉业务是个很重要的角度,请教这个实践当中对应什么类型的文档比较好
    leiuu
        10
    leiuu  
    OP
       2022-04-03 22:10:31 +08:00
    @seakingii 编译一次,部署一次!同意。
    leiuu
        11
    leiuu  
    OP
       2022-04-03 22:11:41 +08:00
    @janus77 单人接手,后续不一定是单人开发。
    leiuu
        12
    leiuu  
    OP
       2022-04-03 22:13:49 +08:00
    @pupboss 搭建蛮重要的 但可能只是一个辅助视角 必要的文档对理解系统会更有帮助
    中小规模的系统 逐行读代码的效率会比较差一些 假设有多语言的话 读起来可能会更费劲
    所以可能想着从规范文档的角度 来加速理解系统 以及方便系统传承
    liangkang1436
        13
    liangkang1436  
       2022-04-03 22:15:51 +08:00 via Android
    让你一个人接手四五个人做的项目,是一个已经成熟的项目你只负责后期维护,还是只开发到一半让你接着开发?你的领导是不是告诉你,这是个机遇同时也是个挑战?哈哈哈哈
    liangkang1436
        14
    liangkang1436  
       2022-04-03 22:18:28 +08:00 via Android
    涉及到的技术栈那么多,你一个人全部啃下来一个月估计够呛,我建议你扛两天之后就跟领导要人,如果实在要不到,就要点工资涨幅,如果这些都没有,让你硬扛,那你就得考虑跑路了
    leiuu
        15
    leiuu  
    OP
       2022-04-03 22:20:27 +08:00
    @liangkang1436 哈哈哈 兄弟 你太坏了 我是负责人 只是想看看大家对类似很常见的场景下 如何做更加有效率 感觉传统的工作交接并不一定是最佳实践
    所以想软件工程角度看看 从文档下手 能不能提高交接效率 为后期大家维护和参与开发遗留系统做好铺垫工作
    liangkang1436
        16
    liangkang1436  
       2022-04-03 22:22:52 +08:00 via Android   ❤️ 2
    我之前待过的公司就干过这种事,不过当事人不是我,是我前同事,他硬扛了一个月,客户不停地发邮件催,他刚入职,不熟悉,确实搞不定,天天加班也搞不定,压力大到流眼泪,领导什么都不管,就让他自己这么扛,最后他跑路了,这种状况下,人是不会有成长的,还会打击你的信心,让你更加害怕困难和挑战
    liangkang1436
        17
    liangkang1436  
       2022-04-03 22:23:55 +08:00 via Android
    @leiuu 哈哈哈,不好意思,那我分享的例子就不适合这个帖子了
    leiuu
        18
    leiuu  
    OP
       2022-04-03 22:27:10 +08:00
    @liangkang1436
    真实例子对分析也是有帮助的 !
    如果不是候选人本身能力问题的话
    这个我感觉是前领导问题 新人上来接项目是不合适的 负责人起码前期做一些铺垫的 简单系统还好 如果新人面临业务不熟悉、技术栈有偏差的情况下 激进推进是不合适的
    jones2000
        19
    jones2000  
       2022-04-04 00:09:09 +08:00
    首先看这个项目是否是公司重要的项目,是否是公司盈利项目, 如果是就硬抗了,文档, 代码,调试,业务逻辑都看, 不知道的问团队的人。 如果是无关紧要,或内部工具, 那就自己了。
    tedding
        20
    tedding  
       2022-04-04 01:32:51 +08:00
    vue2 迁移 到 angular 12 , 没有文档 纯代码手工迁移 6 个周才搞定所有功能,包括所有 ts 类型
    bthulu
        21
    bthulu  
       2022-04-04 12:54:15 +08:00
    @tedding 好端端的为啥要迁移, 等你离职了, 下一个人岂不是又要花两个月迁移回 vue3, 你们这么做, 对得起老板发的工资么
    tedding
        22
    tedding  
       2022-04-04 21:08:24 +08:00
    @bthulu 说话的时候你为啥不思考一下再指责? 你觉得这种事情是为什么?原因是很简单 就是公司规划的技术栈 是 angular ,vue 项目 是遗留问题,要不然怎么会有迁移一说?
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1550 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 17:07 · PVG 01:07 · LAX 09:07 · JFK 12:07
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.