网站服务中的自动化商业智能恢复方法
2017-06-02康剑
康剑
本文目标探讨一套基于网站服务功能需求和设计需求分析的自动化商业智能恢复方法,阐述用什么样的步骤和方法建立商业智能数据库,最终达到从网站服务中恢复商业智能的目的。
【关键词】网站服务 商业智能 反向工程
1 简介
伴随数字化社会的建立,我们生活的方方面面,都在日益被网络信息和服务紧密包裹起来,网站的功能需求和设计需求在不断被丰富,并在逐步取代实体营业厅中每一项过去以人工实现的服务内容,这是一个不可逆转的发展趋势。比如电信营业厅,目前几乎已实现了从开卡到停机100%生命周期服务。尽管如此,当客户需求产生变化时,网站服务仍然需要改进,去不断适应新的服务需求,比如:通过做客户使用行为分析,提供更佳体验的数据漫游服务等。
文本我们以电信网站服务为例阐述网站服务中自动化的商业智能恢复方法,帮助我们理解如何在网站服务中建立商业智能数据库和运用商业智能理解网站服务。
2 什么是商业智能和商业智能恢复
在软件行业,商业智能和商业智能恢复不是一个新概念。早期,它的核心目的就是关注、分析和强化一个软件程序的商业价值,使软件程序在维护和演化过程中,形成正向发展、服务需求的目标。比起简单的代码分析和维护而言,一个软件程序的商业智能恢复能力,代表着这个软件程序的最高商业逻辑理解能力和实现能力,在这个层面开展的工作内容,一定是和程序设计和性能紧密相关。
我们首先需要定义商业智能的基本组成。商业智能是由一个个相关联的概念信息组成的,每一个独立的概念信息又可以称之为一个单元,若干个强关系的单元组成了一条规则,若干条强关系的规则组成了一个模型。我们再将所有这些找到的单元、规则、模型都放在一个数据库内,进而组成了商业智能数据库。有了这个商业智能数据库,我们就具备了运用商业智能的进行程序线性分析和理解程序的基础。对于这种从小到大、从低到高的组合分析过程,我们称之为商业智能恢复。
3 商业智能恢复的步骤和方法
我们可以假想一下,每一个商业智能数据库单元应该是一个小的立方体。以电信网站手机服务合同为例,这个单元可能存在三类信息:
(1)按时间服务;
(2)按包服务;
(3)按用量服务。
共3种服务,且在时间的维度上存在月度、分、秒3种计算单位,在包服务维度上存在多少分钟、多少条短信、多少兆流量免费使用的3种计算单位,在用量服务维度上又存在超出免费使用部分的多少分钟、多少条短信、多少兆流量的3种计算单位。这样看来,我们就可以建立起一个由3×3×3=27个商业智能单元所组成的商业智能矩阵。如果在这个矩阵以上,并不存在任何其他具备相同关系矩阵的情况,我们就暂时可以称这个商业智能矩阵为一个独立的商业智能数据库。
我们现在的研究目标,就是在这个独立的商业智能矩阵中,找到各个单元,评价各个单元之间的逻辑关系,依据这些关系的强弱度,画出一副可以描述其背后商业逻辑的图谱。我们先梳理一下现有的商业智能恢复方法,共有6大类,包括程序分割方法、程序抽取方法、数量分析方法、通用建模语言方法、本体图方法,用以实现不同层级的程序理解功能。传统的商业智能恢复方法又可分成人工的和自动化的两大类,我们在此只探讨的是自动化这一类方法。
至此,我们研究路径就可以定义三个步骤,同时明确在不同阶段中所运用的方法,来确保实现我们描绘商业逻辑图谱的目标。
3.1 将商业智能矩阵分解成单元
我们可以将单元之间的关系简单描绘成强关系和弱关系两种,这样大大降低的问题描述的复杂性。还是以电信网站手机服务合同为例,“付费结果”与“月租”和“月租以外使用量”之间的关系都很强,所以如果单看“月租”和“月租以外使用量”,计算机会认为是两个独立的商业智能单元,但是如果引入了“付费结果”,三者就变成强关系,可以组成一个商业智能单元。所以,虽然商业智能矩阵的分解结果是商业智能单元,但是商业单元存在单独有效性问题,一个强关系紧耦合的商业智能单元,可以独立完整表达一个商业逻辑。
3.2 依据商业智能单元做线性程序分割
当我们得到了商业智能矩阵和单元,我们就可以思考如何一一对应实现程序切割。传统的程序分割方法都是非线性的,这是因为通常情况下,程序分割能力一定受到计算机资源的限制,且难以满足在线实时的程序分割需求。由于我们所提出的方法是基于商业智能单元的分割方法,且商业模块具备线性逻辑分析的基础,我们就依据商业智能单元和源程序存在一一对应的关系进行程序分割,这样不仅避免了重复使用计算资源和侵占计算资源,还实现反向工程的自动化效率提升。
3.3 依据分割结果抽取商业智能的概念图谱
给定一段已经根据最小商业智能单元分割出来的程序代码,我们就可以在其中找到一些基本的商业名词定义。但是我們发现,在程序编写中间,往往这些名词的命名规则都做了特殊处理,比如缩写。我们将这种商业智能名词从模糊到正统的恢复过程,以及不同层级间抽取商业智能名词的分析方法称之为归正还原分析方法。其本质是在配对规则上建立多种匹配标准,比如:完全匹配、前五个字母、一一对应、混合匹配等等,并将不同级别的名词按照它们固有的级别进行摆放,以形成一张商业智能的概念图谱。
4 总结
建立商业智能数据库是一个行而有效的程序理解提升办法,它会自动将软件程序中的诸多商业智能元素进行组合,而产生不同种的可能的软件理解方式,这些理解方式都将成为未来软件维护和依据需求改进的重要依据或路径。
作者单位
华大半导体有限公司 上海市 201203