文:余西波 (科技信息部 软件工程师 管理咨询师)
【摘要】“三流五力矩阵分析法”是开放、自由、创新的思想方法,也是符合数理逻辑的判断方法,还是系统的过程管理方法。“三流五力矩阵分析法”可以作为软件开发的指导思想、也可以构建软件开发的业务模型、还可以规范软件项目管理,确实是软件开发不可多得的好方法,值得我们二次开发的软件项目团队学习、引进和应用。
【关键词】三流五力;二次开发
说到软件二次开发,还须追溯到汇融公司第一次软件开发。在公司第一次开发时,以供应链的三流(物流、资金流、信息流)为业务模型,开发完成了一套浮动抵押融资监管软件。这套软件被取名为《汇融中小企业融资管理信息平台》,并通过了国家软件测评中心测评,获得了著作权。但是,随着公司上下对资产监管业务研究的深入,逐渐认识到,软件只实现了“中小企业融资管理”这个大命题的部分功能和部分流程,还不能完全支撑起汇融公司整个金融中介服务的信息化进程,更不能杠起“全面促进中小企业融资”的大旗,它需要二次开发。
二次开发需要基础平台,而公司第一次开发的基础平台是购买的第三方平台,这个平台版权是开发方私有的、原代码是封闭的、授权是单服务器使用的、技术文档对我们是封锁的,所以,我们二次开发团队不能也不愿在一次开发的平台上进行,只能重建基础平台。重建基础平台的二次开发难度和强度都远胜于一次开发:不但要在新平台中对数据模型、钩稽关系、权限控制、流程设置、标准依据等变更创新,还要移植和和新增一次开发的大部分功能模块,更重要的是要完成更多一次开发时候未完成或未认识清楚的功能系统。这一切都需要有创新的软件思想来指导,需要有创新的软件业务模型来支撑,需要有创新的软件设计和测试方法来构建。
创新需要方法指导,方法在哪里呢?通过这段时间对“三流五力矩阵分析法” 的研究,我感叹 “三流五力”方法博大精深:它不仅是一个简单的排列矩阵,以物流、资金流、信息流为行,以运营能力、盈利能力、变现能力、抗风险能力、持续发展能力为列的行列式;它是思想,站在哲学的高度,用历史的眼光审视发展的进程;它是管理,站在科学的立场,用严谨的框架规范工作的进行;它是方法,站在技术的角度,以数理的逻辑指导创新的进步。这就是我们苦苦寻找的指导方法,这就是“三流五力矩阵分析法”。
那么,“三流五力矩阵分析法”究竟怎么应用到软件开发中去呢?我认为可以从软件指导思想、软件创新模型、软件需求设计和软件项目管理等四个方面去探讨。
首先,“三流五力矩阵分析法”的思想可以作为软件开发的指导思想。“三流五力矩阵分析法”提倡开放、自由与创新,这些思想与优秀软件系统所需要的思想不谋而合,它就是能指导开发的先进软件思想。“三流五力矩阵分析法”全面、系统、兼容并包,套句公司“三流五力矩阵分析法”研究小组的顺口溜,“三流五力是个框,什么内容都可以装”,这句话表现出来的就是“三流五力矩阵分析法”思想的开放性。另外,“三流五力矩阵分析法”选择面广、发挥空间大、限制和约束小,“三”就是“多”的意思,表示各个方面,“流”就是流动,表示不固定、不拘泥,五力是东南西北中五方都可以用力,再套用研究小组的一句话,“三流天上飞,五力地上走”,这句话表现出来的是自由思想。还有,“三流五力矩阵分析法”本身是创新,还能指导创新,三流是自由的、发散的,五力是汇聚的、归纳的;三流寻找原因,五力总结经验;三流与五力的结合就是创新的条件。软件的开放思想,是指软件开发基础平台开源、软件使用技术开放、软件测试手段多样、软件的集成性好、开发出的软件适用面广等;软件自由的思想,就是软件设计要有发挥的空间,软件开发要能解放束缚业务运行发展和个人实际行为的羁绊,目标软件使用起来要更加得心应手;软件的创新思想,是指具有创新思想的人,以创造性的动力来做出与众不同的软件。我们对监管系统的二次开发,需要有开源的平台、开放的技术、广博的知识、自由的思路、宽阔的胸怀、创新的态度、长远的目标,才能开发出优秀的、满足公司业务需求的信息系统。所以,“三流五力”理论的思想,是培育软件开发创造力的土壤、广纳先进技术和文化的海洋,是任我翱翔的天空。
其次,应用“三流五力矩阵分析法”可以完成二次开发的业务建模。第一次开发采用的企业供应链三流模型,无法清楚表达现在的业务关系,需要引进五力,建立“业务三流五力模型”和“企业三流五力模型”,然后分解这两个业务模型,就能抽象出各子系统的数据模型。对于“企业三流五力模型”可以这样理解:汇融公司的业务对象是企业,我们把企业资源的流动称为物流、把企业资金的流动称为资金流,按照财务的说法,资产和现金是一对相互转换的平衡关系,那么,物流和资金流就可以看作一正一反两个方向总体平衡的流动,物流和资金流以企业各种资源为节点进行交换,信息流垂直流过这些节点,过滤出各种参数信息,指向企业的五种能力。企业三流物流业务模型可以参照附图。从附图我们可知,企业的资源包括由原材料、半成品、产成品和生产设备所组成的动产资源,它们是浮动抵押所要监管的对象;企业的长期资源如地皮、厂房、大型设备等,就是固定资产,是以前银行贷款所钟爱的抵押物;人力资源和无形资源是企业股权融资的基础。逆向流动的资金流,在各个节点上与物流交换,这种交换是总体的平衡和时时刻刻的不平衡所构成:我们以企业整体作为节点交换,当资金流与物流不平衡时,企业就需要融资;我们以商品环节作为节点,如果资金流滞后,则产生了应收账款;我们以人才资源作为节点,如果长期没有资金流回流,人才资源就会枯竭。信息流以垂直于物流与资金流方向流过,形成内外两个环,带出每次交换的各种信息,通过内部资源能力分析,外部环境分析,最终归结为企业的五种能力,把握住企业这五种能力,就能达到监管的目的。监管软件就是围绕这个模型展开的。“业务三流五力模型”是对“一担保三防线”模式的抽象,参见“一担保三防线”融资模型,在这里不作探讨。
第三,“三流五力矩阵分析法”是软件需求设计的出发点和落脚点。软件、特别是我们这种创新的软件,必须要有需求分析这个步骤,需求分析需要明确软件要收集什么材料,是需求设计的出发点;要达到什么功能,是需求设计的落脚点。继续深入这种逻辑,那么,三流是出发点,五力就是落脚点。举例说明,开发资产评估软件时,最难的事情就是有效数据的收集和评估结论的选择。而解决这两个难点却是“三流五力”方法的强项。材料收集已经经过检验,高效、可靠、全面,可参见同期研究的相关课题《实践“三流五力”矩阵分析法的感受》与《浅谈“三流五力”在征信工作中的应用》,上面有详细的阐述。至于评估结果的选择,就看我们需要评估的目的:比如风险处置,需要评估变现能力,采用清算法较好;比如浮动抵押,需要评估运营能力、变现能力和抗风险能力,采用成本法更佳;对于管理咨询,需要评估运营能力、盈利能力和持续发展能力,就可以采用收益法。如此这些,只要我们根据评估目的确定重点分析五力中的哪些部分,就可以解决评估结果选择难的问题。
第四,“三流五力矩阵分析法”可以规范软件开发的项目管理。软件项目管理包含项目分析、总体管理、时间管理、成本管理、质量管理、文档管理、人力资源管理、风险管理等。“三流五力矩阵分析法”作为一种科学严谨的管理方法,可以使软件项目的逻辑清楚、结构清晰、归类明确、思考全面;另外,“三流五力矩阵分析法”最先研究的目的就是风险分析和征信调查,当然对项目的分析与项目风险管理有作用。
通过以上四点分析,我们知道“三流五力矩阵分析法”是可以在软件开发中发挥作用的,那么,引进了“三流五力矩阵分析法”后的软件二次开发会是什么效果呢?我认为:
第一,可以认清公司整个信息化进程,明确需要开发些什么软件,哪些先开发、哪些后开发。“三流五力模型”为我们描绘出了整个软件的结构,并明确了各系统在过程中所起的作用。
第二,可以正确、快速地建立起业务模型,加快软件开发的步伐,而不必按照常规的开发方式,等到有了真实的业务流程,才将流程翻译成软件。“三流五力矩阵分析法”就是为我们的业务所建好的模型,只需要我们在开发中构造一些具体的步骤和操作方式。
第三,可以使软件开发过程的管理更规范,软件编写的质量更高,软件测试的效果更好,软件需求的设计不易漏落。这是“三流五力矩阵分析法”系统性的体现。
第四,软件的生命周期更长,软件也更好用。“三流五力矩阵分析法”开放、自由、创新的思想为软件的合用性和适用性提供了很好的基础。
第五,软件的开发成本和使用成本都更低,维护也更方便。基于开放思想指导下的软件,注定了其可维护性好,也使得他没有知识产权之争,没有技术封锁。
第六,可以造就一批全面的人才,降低对特殊专业的依赖程度。“三流五力矩阵分析法”其“有法无定法”、“道,可道,非常道”的思想精髓使得人才既能有章可循、有法可依、有道可走,又可自由翱翔、任由发挥,确实是发现人才和培养人才的好方法。
既然“三流五力矩阵分析法”应用在软件开发中有这么多好处,我们还有理由不引进、吸收、使用它吗?我们一定会努力把“三流五力矩阵分析法”成功引入软件的二次开发中去。