架构概要设计说明书

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

架构概要设计说明书

1.1编写目的

本文档描述了F支撑平台的总体设计思路,包括产品对架构的要求和与之对应的技术实现方案

本文档面向的读者是:架构组的开发人员、测试人员以及项目组中其他想要了解架构总体设计思路的人员。架构组的开发人员、测试人员应该阅读全文。

1.2背景

本文档仅仅适用于项目一期。在二期开始后,如有新的需求出现,可能会导致本文档的修改。

1.3定义

1.4参考资料

2总体设计

2.1需求规定

说明对本系统的主要的输入输出项目、处理的功能性能要求,详细的说明可参见附录C。

2.2运行环境

系统采用j2ee架构,分成客户端、应用服务器、数据库服务器三部分。

2.2.1客户端

2.2.2应用服务器

2.2.3数据库服务器

2.3基本设计概念和处理流程

2.4结构

基础支撑平台作作为整个系统的底层支撑技术平台,提供以下几个方面的支持:

2.5接口设计

2.5.1外部接口

说明本系统同外界的所有接口的安排包括软件与硬件之间的接口、本系统与各支持软件之间的接口关系。

数据大集中和跨部门需求是的特点,此处主要是跨部门接口,逐一说明同其他部门之间的的接口内容

2.5.1.1外部模块名称:集成平台2.5.1.1.1登录认证

2.5.1.1.2工作任务通知

2.5.2模块接口

2.5.2.1页面控件同其它所有模块的接口2.5.2.1.1静态树控件

2.5.2.1.2动态树控件

2.5.2.1.3CHECKBOX树控件

2.5.2.1.4菜单控件

2.5.2.1.5格式化金额输入控件

2.5.2.1.6大写金额控件

2.5.2.1.7分页控件

2.5.2.1.8排序树控件

2.5.2.2工作流引擎同业务模块和预算模块的接口2.5.2.2.1创建流程定义

2.5.2.2.2加载流程定义

2.5.2.2.3查找最新的流程定义

2.5.2.2.4创建流程实例

2.5.2.2.5停止流程实例

2.5.2.2.6创建任务实例

2.5.2.2.7加载任务实例

2.5.2.2.8收回任务实例

2.5.2.2.9统计待办事宜任务数目

2.5.2.2.10查询待办事宜列表

2.5.2.2.11统计已办事宜任务数目

2.5.2.2.12查询已办事宜列表

2.5.2.2.13统计当前运行流程实例数目

2.5.2.2.14查询当前运行流程实例列表

2.5.2.2.15统计已完成流程实例数目

2.5.2.2.16查询已完成流程实例列表

2.5.2.3ACTIVEX控件和J2EE后台接口2.5.2.

3.1querySql

2.5.2.

3.2updateSql

2.5.2.

3.3execProc

2.5.2.4权限处理和所有模块的接口

2.5.2.5操作日志处理和所有模块的接口

2.5.2.6长期后台任务和所有模块的接口

2.5.3内部接口

说明本系统之内的各个系统元素之间的接口的安排。

2.5.

3.1Struts 和业务层的接口

2.5.

3.1.1ACTION与SERVICE的接口

2.5.

3.2业务层和资源层的接口

2.5.

3.2.1SERVICE中取得DAO

3运行设计

3.1运行模块组合

说明对系统施加不同的外界运行控制时所引起的各种不同的运行模块组合,说明每种运行所历经的内部模块和支持软件。

3.2运行控制

说明每一种外界的运行控制的方式方法和操作步骤。

3.3运行时间

说明每种运行模块组合将占用各种资源的时间。

4工作流引擎设计

4.1工作流逻辑结构设计要点

4.1.1JBPM的基本概念

4.1.1.1面向图的程序设计

当前工作流和业务流程管理(BPM)的总体发展来说是极其零碎的.在一些工具,规范和学术界发现很少的统一意见 .传统方法导致笨重的,单系统把大量的功能包含在一个单一的系统中. Java开发语言中缺少的特性导致在这个范围产生了完整系列的解决方法. 这个文章将标识缺少的特性并且提出一个简单的解决方法让java变成面向图的开发语言.面向图的开发语言可以看作是构造工作流,BPM及流程编排通用构造模块.

4.1.1.1.1缺少的一环

先从比较高层面来看看当前工作流,BPM和流程编排(或协调)领域的解决方法.

一览工作流,BPM和流程编排

因为现在没有很清晰和被普遍接受的有关工作流,BPM和流程编排(或协调)的定义,我们还是做一些普通的观察

工作流是同人们管理任务最接近的. 重点关注工作流指明的由人完成的任务同流程目标的联系.

业务流程管理(BPM),指把工作流和企业应用集成(EAI)结合起来 . 一个业务流程指明通过人通过一些软件完成的任务及他们如何互相联系来完成业务流程目标.

流程编排(Orchestration)根据它所处的环境而有显著的不同. 流程编排(Orchestration)语言(像BPEL)是定位于web 服务环境. 流程编排(orchestration)语言是为web服务所用的编程语言. 这就表明你可以由流程编排来为其他web Serverice 编写新的web Service. 流程编排语言有控制流结构作为语言的一部分.其他的基本操作需要调用其他的 web services.

现在,我们对这三个领域的一般的期望都有了明显的认识. 对流程来说有等待状态是必须具有的能力.这些流程的在等待状态时必须能暂停执行.

暂停执行在Java中是不可能的.实际上在Java里暂停和继续一个thread(线程)是可能的 (比如用 Object.wait()和 Object.notify() ).但是由于永久化的原因这同流程的等待状态不是非常匹配.工作流, BPM 和流程编排方法在等待状态时候需要永久化它们的执行.事实上, 在流程流程中状态的改变对应着服务器上的事务..在这些事务之间暂停执行应该被永久化到数据库中或文件系统里.

相关文档
最新文档