




已阅读5页,还剩6页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
业务建模和业务建模和 Web 环境下的驱动方法环境下的驱动方法 一 介绍一 介绍 近年来 管理信息系统的开发已经从基于 4GL 开发环境的编码实现 逐步 转向基于业务基础平台的 快速构建 随需应变 即采用业务建模平台对业务 建模 然后通过模型驱动引擎对所建立的模型进行解释 将其 解释 成相应 的业务应用系统 包括业务处理页面 业务流程和处理规则等 业务的分析和建模通常由系统分析员采用 CASE 工具来做 其成果用 UML 表达 虽然模型驱动的架构 Model driven Architecture MDA 仍然是软件行 业的一个研究热点 但至今尚没有成熟的 CASE 平台或工具能够把 UML 模型自 动转变为应用软件 其主要的原因可能在于 UML 语言对于应用软件的刻画尚难 以达到类似程序语言的细致 准确程度 一种变通的做法 也是目前软件行业流行的做法是 在可视化的模型构建 或转换工具的支持下 在系统分析员的指导下 由系统构建人员把 UML 业务模 型转换为可被业务驱动引擎准确理解的业务模型 这种业务模型的元素通常采 用 XML 元数据来描述 这是一个通过手工或半自动化方式 对 UML 业务模型 进行理解 补充 使之转换为 XML 元数据模型的过程 该过程要确保后者能够 以 XML 方式 精确地刻画出完整的业务 在这个过程中 针对业务的个性化需 求 可能需要对 XML 标签及其相应的驱动方式进行编程式的扩展 在定义良好 的业务元数据定义模式 XML Schema Definition XSD 的支持下 编程扩展的 工作量可以显著减少 从而降低应用软件开发的复杂度 本文介绍一种采用 UML 工具对业务进行分析建模 然后使用可视化的业务 建模工具把 UML 模型转变为 XML 模型 最后采用 J2EE 技术把 XML 模型驱动为 富客户端 RIA Web 应用的完整过程 二 业务分析二 业务分析 在完成业务调研后 由系统分析员采用面向对象分析 Object Oriented Analysis OOA 方法 对所获取的调研资料进行分析 使用 CASE 工具和 UML 语言 建立业务逻辑模型 这里 我们所采用的 CASE 工具为 Sparx systems 公 司的 Enterprise Architect 简称 EA 软件 把业务模型描述为业务用例 系统 用例和领域模型等三个主要组成部分 1 业务用例 业务用例 业务用例的描述包括采用 UML 表达的业务用例图 业务流程图 以及采用 Word 或 Excel 等其他文档表达的业务表单 业务报表和其他业务资料等 以某省国土资源厅土地利用规划业务分析为例 首先找出该项业务包括申 请规划修编 申请规划局部修改和申请年度计划追加三个业务 其业务用例如 图 1 所示 uc 业 业 业 业 划 划 划 划 划 划 划 划 划 划 划 划 TGBUC04业 业 业 业 业 业 业 业 业 业 业 业 业 业 业 TGBUC05业 业 业 业 业 业 业 业 业 业 业 业 TGBUC006业 业 业 业 业 业 业 业 业 业 业 业 图 1 省厅土地利用规划业务用例图 其中 申请规划业务局部修改的业务流程如图 2 所示 该流程是一个复杂的工作流 其中包含很多环节 在业务分析时 可以将 其拆解为不同的业务子流程 并采用 UML 时序图 对各个业务子流程进行建模 如图 3 所示 在业务流程的每一个环节 必须明确办理人 需要使用的表单 需要查看 的业务材料 以及需要打印出来的表单等 此处不作示例 在获得上述所有资料后 可以说对业务流程有了初步的了解 建立了能够 反映用户业务处理过程的业务模型 图 2 申请规划业务局部修改流程 图 3 用 UML 时序图表示的业务流程图 2 系统用例 系统用例 在获得业务流程的 UML 时序图后 就可以在时序图中引入信息系统对象 分析信息系统对业务流程的影响 找到哪些事情可以由信息系统承担 这些由 信息系统承担的事情及其应用场景即是系统用例 这样 通过对所有业务用例 的分析就可以找到所有的系统用例 图 4 所示的是土地利用规划的公共系统用 例图 图 4 系统用例图 系统用例是用于描述系统功能性需求的主要方式 因此 除系统用例图外 还要编写每一个系统用例的规约 根据用例规约 以 MVC 模式 对系统用例进 行鲁棒性分析 以找出支持系统用例的界面类 控制类和实体类 其中的实体 类及其关系便组成系统的领域模型 它是进行系统软件类设计和数据库设计的 根模型 3 领域模型 领域模型 如上所述 把系统用例中的实体类 以及系统分析员所了解到的与行业应 用相关的名词 术语收集起来 明确其相互之间的关系 就形成系统的领域模 型 如图 5 所示 class 业 业 业 业 业 业 业 业 业 业 业 业 业 业 业 业 业 业 业 业 业 业 业 业 业 业 业 业 业 业业 业 业 业 业 业 业 业 业 业 业 业 业 业 业 业 业 业 业 业 业 业 业 业 业 业 业 业 业 业 业 业 业 业 业 业 业 业 图 5 系统领域模型 三 业务构建三 业务构建 为了把 UML 业务模型转变为应用软件系统 接下来要做的工作就是通过人 机交互 使用可视化的业务构建工具 把 UML 模型构建为 XML 元数据模型 1 可视化的业务构建工具 可视化的业务构建工具 业务构建工具提供业务模型所涉及的业务角色 流程 表单 报表 业务 材料和业务应用等各种业务元素的构建支持 虽然各种业务元素在表现形式上 有很大的差异 但其保存格式都采用 XML 元数据描述 为了能够精细地描述出 各类业务元素 就必须针对不同的业务元素 定义与其相关的 XSD 图 6 图 7 图 8 分别是业务构建工具中工作流构建 表单构建和打印表单 构建的操作界面 图 6 业务流程构建工具 图 7 表单构建工具 图 8 打印报表构建工具 2 XML 表达的业务元素表达的业务元素 上述构建工具构建所获得的业务元素通过 XML 来描述 为此 必须针对业 务建模要求 定义用于描述各种业务元素细节的 XML 标签 即 XSD 图 9 是表 单 XSD 的结构化显示 其中包括表单所支持的各种控件定义 如文本框 列表 框 多选框 单选框 组合面板等 每一种控件都可以定义其坐标位置 长 宽 显示文字和其他属性 图 9 用于表单定义的 XSD 结构图 部分 符合上述 XSD 所构建出来的表单 XML 文件示例如图 10 所示 图 10 用 XML 描述的表单 局部 按照此 XML 定义 相应的表单界面如图 11 所示 图 11 XML 定义的表单界面示例 构建工具除了定义业务元素的展现方式外 还必须定义与业务元素绑定的 业务数据包 这个业务数据包也被称为业务数据对象 Business Data Object BDO 它是由许多更基本的逻辑数据表或外部数据源 如 FTP 文件 Web Service 数据 等组合而成的 如果事先根据领域模型做了物理数据库设计 那么逻辑数据表可以通过对物理表的过滤和逻辑映射得到 也可以通过 BDO 先 定义出逻辑数据表 然后把逻辑关系表物化为关系物理表 这就意味着 在业 务模型构建完成时 我们将获得一个业务模型库和一个业务数据库 并且业务 模型库确定了业务数据库的物理模式 Schema 四 业务驱动四 业务驱动 根据模型驱动引擎实现方式的不同 对 XML 业务模型进行驱动时 可以选 择桌面或 Web 运行方式 既可以采用 C C 或 C net 技术 将业务模型驱动 为 Windows 环境下的桌面应用 又可以采用 J2EE 技术 将业务模型驱动为网络 环境下的 Web 应用 也就是说 业务模型驱动引擎的技术选择及其运行环境 不受业务模型的约束 这里介绍采用 FLEX BlazeDS Spring Hibernate 实现的驱动架构 让我们回顾一下 当完成业务构建时 后台的关系数据库管理系统中至少 会有两个数据库 一个是业务模型库 其中以 XML 方式存放了组成业务的各个 元素的详细定义数据 以及用户信息表 另一个是业务数据库 即符合业务模 型要求的数据模式 Schema 当部署好 Tomcat 和业务模型驱动引擎 做好数 据库连接配置 设置好默认主页后 用户即可通过浏览器驱动并使用业务应用 系统了 其基本原理是 当用户输入应用系统的 URL 地址后 Tomcat 截获浏览器的请求 找到默认 的主页 其中装载有 FLEX 编写的登录 SWF 该 SWF 在前端浏览器展现出来后 用户即可输入用户名和密码 一旦提交登录请求 FLEX 将在浏览器端把输入信 息包装为一个远程对象 RemoteObject 该对象通过动作脚本消息格式 ActionScript Message Format AMF 传递给服务端 服务端通过 BlazeDS 将其 转化为 Java 对象 需要指出的是 服务器端中与业务驱动相关的 Java 对象被注入到 Spring 框 架中 以保持对象之间的相互独立性 从而使驱动引擎具有更好的可扩展性和 可维护性 用户验证的 Java 对象也不例外 服务器端的 Java 用户验证对象被启动后 根据其业务逻辑 为了验证输入 信息的正确性 必须访问用户信息表 此时它将在 Spring 框架内使用与用户信 息表之间形成对象 关系映射 O R Mapping 的 Hibernate POJO 对象 通过该对 象进行用户查询 以查看输入的用户名及其密码是否正确 最后 将验证结果 通过 AMF 反向传回给 FLEX 图 12 驱动端的渲染效果 在这个验证过程中 前端 FLEX 和服务端的 Java 应用是异步的 回传的信 息在 FLEX 中通过消息响应被相应的处理程序截获 如果获得的是验证通过信息 FLEX 将把应用系统的界面框架渲染出来 然后再向服务器端发送获取业务基本 信息请求 服务器端收到业务基本信息请求后 调用注入到 Spring 的业务信息读取对 象 该对象通过 Hibernate 到业务模型库读取相关的业务定义信息 再根据业务 定义信息 读取业务数据库表中的相关业务实例 即项目 信息 把这些信息 回传给 FLEX 后 由 FLEX 负责渲染 渲染的效果如图 12 所示 此后的业务驱动操作过程都遵循同样的架构模式 如图 13 所示 图 13 Flex BlazeDS Spring Hibernate 的业务驱动架构 五 前景和展望五 前景和展望 与传统的以代码编写为主的业务应用软件开发模式相比 基于业务基础平 台的应用软件开发模式是一种极大的改进 其实质是 将业务流程的信息化转 变为业务分析 建模 构建 模型解释和驱动过程 显然 与传统的编程方法 相比 这种模式具有更好的柔性 更能适应业务流程和业务处理需求的变化 更短的开发周期和更低的开发成本 计世资讯 CCW Research 认为 业务基础平台正引领国内软件业发生一 场变革 一个新的软件平台产业正在悄然而迅速地形成 业务基础平台是在 J2EE NET 软件基础架构平台之上的全新平台 与其他管理应用软件系统的一 个重要区别在于 它本身不是一个可立即交付用户使用的软件产品或半成品 但系统实施人员可以在此平台的支持下 快速构建出最终的应用软件产品 并 数据库端数据库端服务端服务端浏览器端浏览器端 FLEX RemoteObj
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 中国联通衡阳市2025秋招笔试行测题库及答案供应链采购类
- 2025年影像工程考试题及答案
- 国家能源东莞市2025秋招心理测评常考题型与答题技巧
- 中国广电马鞍山市2025秋招技术岗专业追问清单及参考回答
- 海南地区中储粮2025秋招购销统计岗高频笔试题库含答案
- 白城市中石油2025秋招笔试模拟题含答案市场营销与国际贸易岗
- 长治市中石油2025秋招笔试综合知识专练题库及答案
- 遂宁市中石油2025秋招笔试综合知识专练题库及答案
- 中国移动玉林市2025秋招笔试性格测评专练及答案
- 2025年金城招聘考试题及答案
- 《无人机飞行操控技术》项目2 多旋翼无人机飞行操控
- 足浴技师与店内禁止黄赌毒协议书范文
- 劳务装修包清工劳务合同
- 《计算机视觉-基于OpenCV的图像处理》全套教学课件
- GB/T 18029.1-2024轮椅车第1部分:静态稳定性的测定
- 高考生物选择性必修2生物与环境基础知识填空默写(每天打卡)
- FZT 34002-2016 亚麻印染布行业标准
- 2023年高考物理(山东卷)真题评析及2024备考策略
- 全国身份证号地区对应表
- 主要机械设备表(汇总200种)
- GB/T 18386-2017电动汽车能量消耗率和续驶里程试验方法
评论
0/150
提交评论