V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
这是一个专门讨论 idea 的地方。

每个人的时间,资源是有限的,有的时候你或许能够想到很多 idea,但是由于现实的限制,却并不是所有的 idea 都能够成为现实。

那这个时候,不妨可以把那些 idea 分享出来,启发别人。
meeop
V2EX  ›  奇思妙想

我想做一个壮举,把业务系统完全流程图化,会不会很高级?

  •  
  •   meeop · 2023-08-02 11:29:54 +08:00 · 3406 次点击
    这是一个创建于 465 天前的主题,其中的信息可能已经有所发展或是发生改变。

    业务系统随着时间增加会堆一大堆的业务逻辑,特别是经过几轮开发换手后,基本上就是毛线团一般交织的逻辑

    那如果使用流程引擎(先别关心性能),把方法级调用都塞到一个流程节点里,这样就能得到一个网状的全局代码执行流程图,了解一个系统时,就能像看地图一样观察一个请求如何走过若干子系统,以及一个方法内部如何调用了其他方法

    其实系统级的流程图很多公司有,一帮称之为 XXtrace 系统,系统内部的逻辑调用链路就没了,得看代码才能追逻辑

    大家评评理,如果建设方法级执行流程分析,有没有用啊?

    30 条回复    2024-05-18 13:07:36 +08:00
    sunshower
        1
    sunshower  
       2023-08-02 11:34:09 +08:00 via Android
    你的管理级别到了这个地步了吗?
    Chad0000
        2
    Chad0000  
       2023-08-02 11:37:47 +08:00
    并不会很高级,这么做的话一开始很壮观,但真正用起来那个图并不会及时更新。即使更新了,相关人员也不会及时看。即使是开发人员。

    我为什么这么说呢,因为为了理解我们公司的各平台,我已经做了这样的一款软件用来画出所有数据和流程的扭转,将系统所有模块和表展示出来,可以自己画流程,这些流程还是动态显示和隐藏的,组里的评价也很好,但也就此而已,目前是暂停状态,主要是我在考虑软件的价值,如何才能让大部分用户发现它有足够的价值。而且我只是在用自己的业余时间在做,没有看到足够价值前我想暂停投入。
    hsiaochi
        3
    hsiaochi  
       2023-08-02 11:38:38 +08:00
    所谓工作流管理?可以参考下影视飓风的有期视频
    wangxiaoaer
        4
    wangxiaoaer  
       2023-08-02 11:46:10 +08:00 via iPhone   ❤️ 1
    @Chad0000 题主的意思是把各种最细粒度的方法开发好,然后通过配置的方式把每个业务通过不同的方法串起来,多个业务合并成大图,这个图就是实际业务的体现,类似工作流引擎的流程图,不存在更新不及时的情况。
    wangxiaoaer
        5
    wangxiaoaer  
       2023-08-02 11:48:21 +08:00 via iPhone
    @hsiaochi 17 年 1 月 24 日那个吗?压根不是一个东西。
    TWorldIsNButThis
        6
    TWorldIsNButThis  
       2023-08-02 11:48:35 +08:00 via iPhone
    如果这个图是你们业务规则的单一信源的话可能可以
    如果只是同步结果那肯定最后没人维护
    Chad0000
        7
    Chad0000  
       2023-08-02 11:50:41 +08:00
    @wangxiaoaer
    那就更麻烦了,每个公司的系统写的风格都不一定一样。是不是微服务,代码相互调用乱不乱,如何能准确提取调用链就已经是一个问题了。

    我做出来的图,未及时更新只是一方面,另外一方面是开发人员不去看那个图,因为过了一段时间你对自己负责的部分已经足够了解。而其他部门的人根本不会看你这个图,他们需要时直接找你就行。
    emSaVya
        8
    emSaVya  
       2023-08-02 11:54:43 +08:00
    不是什么新东西吧。稍微大一点的项目都有的, 可视化以后就是个漏斗模型。

    拿 uber jaeger/腾讯天机阁 稍微改改就有了。
    ysy950803
        9
    ysy950803  
       2023-08-02 11:55:18 +08:00
    逃不了屎山的命运。
    toenola
        10
    toenola  
       2023-08-02 11:55:24 +08:00
    系统级别的链路追踪足够了,但不太理解把链路追踪细化到方法内部级别的意义。 如果真的多次换手,谁接手改动都得去看代码本身, 而流程图逻辑肯定没代码逻辑清楚,只能说方便了 pm 或者 leader 全局了解项目逻辑,对接手代码的人帮助不大。 想法很美好,但实际价值不大。
    Chad0000
        11
    Chad0000  
       2023-08-02 12:01:19 +08:00
    @Chad0000
    我做的东西截图在此,Web 版但目前还没开放:
    https://cdn2u.com/images/upload/158905-401d2de2ef7afbd9bba4c885a6324721-1851x1104.jpg
    nothingistrue
        12
    nothingistrue  
       2023-08-02 12:17:54 +08:00
    你说的这东西,至晚 2005 年就有人开始做了,且 2011 年就已经成型了,但至今仍然只是引擎,不是通用业务系统,它的名字叫做 BPMN 。
    DavidTsou
        13
    DavidTsou  
       2023-08-02 12:20:35 +08:00
    就问一句,公司给你多少钱,让你这么尽心的搞
    sadfQED2
        14
    sadfQED2  
       2023-08-02 12:46:20 +08:00 via Android
    屁用没有,图不会及时更新,而且看图的效率并不一定比看代码高多少。对于研发来说,就算你图看懂了,你还不是得去看代码,光看图有屁用啊
    gps949
        15
    gps949  
       2023-08-02 13:01:18 +08:00
    没看懂,如果说的是画流程图自动生成代码的话应该还是比较高级的,算是低代码/无代码的一种?
    Pastsong
        16
    Pastsong  
       2023-08-02 13:02:25 +08:00
    不就是 BPMN 吗
    krapnik
        17
    krapnik  
       2023-08-02 13:11:33 +08:00
    看到标题让我想起了这个:我原来想整部电影一镜到底,是不是很大胆.jpg
    forbreak
        18
    forbreak  
       2023-08-02 13:52:57 +08:00
    不就是工作流吗,简单工作流有点脱裤子放屁。复杂工作流,配起来乱七八糟。还是看不懂。 之前做了个系统用工作流,刚开始想象很美好。现在维护两三年了,面对实时变化的需求,一直再后悔当初干嘛要用工作流。 自己给自己上了个枷锁。
    maxssy
        19
    maxssy  
       2023-08-02 13:56:55 +08:00
    不看好
    不说市场上很可能已有同类软件, 就算你这个系统是业界第一个, 那么困难的点也不在技术而是在老板
    你要确定这个系统是老板随口说说的还是真决心干?
    如果是真决定干那么这个决心能不能大到即便影响赚钱都要推进的地步?
    如果两个都是否定或不确定的这事就成不了
    yongp
        20
    yongp  
       2023-08-02 14:07:57 +08:00
    先看你的级别和话语权,很多事需要从上往下推,不然可能刚开始就结束了
    NoOneNoBody
        21
    NoOneNoBody  
       2023-08-02 14:48:04 +08:00
    1. 这个流程图要很细致,非高级人员不需要、不能也不应该看到全局流程,他们只需要或只能局部,权限相关
    2. 看流程图一般也需要一定逻辑能力,逻辑不佳的人其实“任务清单”更好用
    3. 综上,做这个流程图成本不亚于完成代码
    meeop
        22
    meeop  
    OP
       2023-08-02 19:23:19 +08:00
    @toenola 你说对了,我其实就是写文档很痛苦,老板动不动就让画架构图流程图,如果系统流程引擎化的话,这个图就不用我画了
    meeop
        23
    meeop  
    OP
       2023-08-02 19:25:04 +08:00
    其实我也觉得收益很难大过成本,除非成本非常低免费赠送,代码自动扫描这种
    meeop
        24
    meeop  
    OP
       2023-08-02 19:28:32 +08:00
    @Pastsong 对的,就是这个,不过我配过最复杂的流程引擎也就一百来个节点,如果出一个方法级粒度流转的全局大图,估计得有百万到千万级的节点,如果能实现应该挺壮观,所以说是壮举,目前肯定是没人这么干的
    Chad0000
        25
    Chad0000  
       2023-08-02 20:03:23 +08:00
    @meeop #31
    这样的图不需要到方法力度,只需要你的系统如果能做到每个模块或服务都是完全独立的,外加一些限制,那么你就可以做到你做出来的流程或关系图就是整个系统。我现在就在设计这样的平台,这也是我暂停开发那个流程关系图软件的原因之一,这个平台比那个图更有前途。
    ZGame
        26
    ZGame  
       2023-08-03 08:32:58 +08:00
    有价值啊 ,这就是虚幻里的蓝图啊 ,让设计和开发能一起协助开发,开发专注于开发新插件。 只不过你这里是交付,产品或者开发,不过要支持可视化编排和代码的逃脱通道,这个可是要前后端很多人一起配合试错开发吧。。
    cxumol
        27
    cxumol  
       2023-08-03 11:21:51 +08:00
    不懂虚幻蓝图, Blender 的几何节点是真的香
    ZGame
        28
    ZGame  
       2023-08-03 17:45:02 +08:00
    @meeop 如果觉得画图都麻烦了... 系统流程引擎化不会更简单.. 你可以简单先在 controller service 上打上注解 前端渲染生成流程图看看...
    yolio2003
        29
    yolio2003  
       2023-08-04 10:54:00 +08:00
    支持下,虚幻、unity 和 blender 类似的系统真的很好。期待能用上试试。
    blsm
        30
    blsm  
       175 天前
    工作流引擎,我们部门目前就在使用
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1134 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 23:42 · PVG 07:42 · LAX 15:42 · JFK 18:42
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.