架构设计(Java)资料

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

Workshop-实现案例1
本系ຫໍສະໝຸດ Baidu划分的逻辑层次
逻辑层次的划分可以参照分布式层次划分 物理上可以根据网络带宽,分层次部署数据库、应用服
务器 从需求上看,该应用对用户界面的响应和数据的快速录
入有比较高的要求,可以考虑智能客户端
Workshop-实现案例1
如何保证事务的完整性
某些数据访问不应该加入事务 数据必须批量提交,保证事务尽可能短 跨数据库的事务,可以考虑JTA二阶段提交
Workshop-实现案例1
用户如何得到及时的响应
避免UI的初始化出现延迟 仅提交必要的数据 限制在业务高峰时,各种查询的复杂度和返回的记录数 复杂的数据提交和事务可以考虑异步模式 客户端充分运用各种缓存技术 能在客户端进行的校验,尽可能在客户端完成
Workshop-实现案例1
系统如何部署和更新
Workshop-案例分析2
认证要求
认证与应用的业务处理逻辑分开 如何尽可能地实现单点登录 如何设计一个具有扩展性的认证架构 认证的协议可能有要求 认证信息的存储可能变化 认证方式可能有变化(用户名/口令和IC卡)
Workshop-案例分析2
机构人员系统的对外服务
需求的清晰化 如何划分系统的各个层次 各层次的实现方法
Workshop-案例分析1
企业货物申报和审核系统
某政府职能机构面向各企业的核心业务 企业向政府申报其待审批的货物,缴纳相应的税费
该政府职能机构规模简介
总部设在北京 全国下设几十个二级机构、数千个业务现场。二级机构
的规模不等,沿海地区规模较大 共有业务人员4~5万人
讨论……
Workshop-实现案例1
数据如何分布和集中
系统中涉及到的数据
审核时用到的各种参数数据(很少改变)
全国一致的参数数据 各二级机构的参数数据
全国一致的许可证数据(审核时可以改变) 全国一致的企业数据(审核时只读,但是各地方可能修改) 企业的申报单数据(实时改变) 审核时的流转数据和日志数据(实时改变)
架构设计-Workshop
议程
认识架构设计 案例分析1 案例分析2
认识架构设计 - 什么是架构设计?
从具体到抽象
认识架构设计 - 架构设计的目的
认识架构设计 – 我们已经做的
Workshop-议程
分析两个具体的业务系统并展开讨论
企业货物申报和审核系统 机构人员和授权系统
讨论的方面
数据更新,可以直接使用数据库的数据分布功能 应用服务器的更新,由总部统一发放更新包 客户端更新,总部发放到二级机构。在二级机构上设置
分发服务器
各更新模块批量打包更新,避免在高峰期占用大量带宽
Workshop-案例分析2
为其它办公应用设计一个机构人员管理系统和授权 管理系统
两个系统都对外提供服务 两个系统都提供UI可以进行编辑
系统中涉及到的数据有哪几种?
本系统划分的逻辑层次
请画出系统的逻辑架构图 是什么类型的客户端应用? 不同的逻辑层,在物理上如何部署? 列出一些主要的业务逻辑组件
如何保证事务完整性
许可证数据、申请单数据、企业数据可能部署在不同的数据库中
用户如何得到及时的响应
针对于审核过程数据检查
系统如何部署和更新
都提供基于浏览器的管理界面 由于在企业内部使用,可以统一浏览器的版本
用户数目大约有6000人,部门有2000个左右,每 个部门内最多有几十个人,部门的级别深度不超过 5级
Workshop-案例分析2
机构人员
基本要求
能够体现出机构和人员的树型结构 能够体现人员的兼职情况
扩展要求
实现人员组功能 保存人员的认证数据 数据输出服务,将机构人员数据导出到其他系统 数据变更通知服务
Workshop-案例分析1
客户要求
核心业务数据存放在总部
申报单、全国性的政策数据、企业信息、各种许可证等审核相 关的单证
项目是由总部集中开发和维护的 各分支机构以及各业务现场的硬件和软件可以统一购买,
可以安装同样的操作系统和应用软件
Workshop-案例分析1
讨论
数据如何分布和集中
Workshop-案例分析1
业务介绍
企业必须将货物向政府部门申报并且缴纳税费 政府部门会对企业下发某些货物许可证或减免税条例。
有些优惠政策同时也对货物的数量或金额进行了限制 有些政策是地方性的,而有些是全国性的 很多企业也是全国性的,因此企业信息也是全国一致的。
同一企业,可能在同一时间段内申报货物
功能可以分层 数据变更通知服务 …
UI要求
用户可以通过Copy/Paste编辑角色中的人员、机构和组
Workshop-案例分析2
角色、功能和被授权对象
用户1 用户2 用户3
用户组1 用户组2 部门1 部门2
管理员 科长 操作员
阅读绝密文件 阅读机密文件 阅读秘密文件 修改绝密文件 修改机密文件
UI要求
可以对机构、人员和组进行批量移动和删除 可以在将一个机构内的子对象进行排序 删除对象时,提供回收站功能 为其它应用提供人员选择查询的UI
Workshop-案例分析2
授权系统
基本要求
可以设置应用、角色和功能 可以将人员配置在角色中 对象封装和访问接口
扩展要求
可以将机构或组配置在角色中,形成动态角色。在动态角色中,角色 中包含哪些人是根据用户信息和外界环境决定的
Workshop-案例分析1
业务流程
企业的代表在业务现场提供货物的纸面单据 政府机构的外聘的录入员将其录入到系统中 业务系统根据货物的类别将其分派到不同的工作人员进
行审核 业务系统根据货物种类、数量和有关政策计算出税费金
额 审核和计税通过后,企业缴费后领取回执,业务办结
Workshop-案例分析1
业务规模
每个工作日,全国共产生5万票货物申请单(每年一千多 万票)
业务量还在增长,估计3~5年内增长到每年二千多万票 每天上午和下午各有两个多小时是业务高峰,平均每秒
需要有3票货物申请单入库 每票申请单关联了十几个代码表。审核时,相关的业务
数据表也有十几个 总部和二级机构的网络带宽从512K到2M不等 二级机构和下属机构(现场)为高速局域网
相关文档
最新文档