论文部分内容阅读
在现代商业社会活动中,各大公司或者组织机构每天都会用一些自动化处理软件来处理他们在工作中所遇到的各种复杂的业务处理流程。在一个业务流程的过程中,例如我们在电子商务系统上订货时,要执行相应的流程顺序(例如,选购商品,网上付款,接受商品等)。这些电子商务供应商每天都执行着这些业务流程处理程序。但是在各种新型业务流程层出不穷的今天,每天都有新的业务需求被提出,每天都要对旧流程进行修改,所以各大电子商务软件提供商会不断地修改自己的业务应用,以适应社会业务流程的变化。然而,当业务流程设计被修改和实施时,相应的文档修改往往没有跟上,导致后来系统的开发或者维护人员不能从系统文档上获得最新的业务流程信息,导致软件开发或者维护人员必须得花更多的时间到代码中理解现有的业务流程并修改相应的流程模块,这是一个耗时的也很容易出错的工作。所以要正确的修改与开发相应的流程模块,开发人员需要对应用软件在业务上要有深入理解,一致快速的开发出符合业务需求的应用软件。除此之外,由于缺乏对遗留软件系统资源的统一管理,软件开发人员常常做着一些重复的开发,这极大的降低了对软件系统的利用率,也增大了软件开发成本。对于以上的问题,本文中我们提出了面向电子商务应用软件系统的相关流程恢复方法。本文主要针对三大电子商务应用软件的电子商务页而的之间的跳转关系以及页面之间控制关系来恢复相应的流程。我们将这些流程恢复成一个流程图,在本文中用状态机模型来表示软件系统的流程,除此之外我们还设计了流程差异比较算法,对三大业务相似的电子商务应用软件进行了业务流程对比分析。在流程差异比较算法设计中本文根据代数背景知识,在不同的流程图中提出了用同态图、同构图来表示不同业务流程图之间相似的业务流程,用异构图表示不同的业务流程图之间的业务流程差异。最后通过案例进行举例分析。最后本文讨论了对业务相似的遗留系统,我们可以通过流程差异比较算法提取出遗留软件系统的共性与可变性。通过提取遗留软件系统在业务流程上的共性,我们可以开发出相应业务流程软件核心资产包括软件设计、代码模块,供以后的开发人员使用。对与提取的可变性功能,我们可以对比相似业务系统的之间的流程差异,帮助需求设计人员与软件开发人员快速了解不同系统之间的业务特点,以致开发出更符合用户需求的软件产品。