系统架构-层次式架构设计
层次式体系结构是最通用的架构,大部分的应用会分成表现层(展示层)、中间层(业务层)、数据访问层(持久层)和数据层
表现层架构设计
使用XML设计表现层
使用UIP框架设计表现层,UIP将表现层分为以下两层:
User Interface Components:就是原来的表现层,负责获取用户的数据且返回结果
User Interface Process Components:用于协调用户界面的各部分,使其配合后台的活动
表现层动态生成设计:
可实现灵活的界面配置(静态)、界面动态生成和界面定制(动态)
其思路是用XML生成配置文件及界面所需的元数据,按不同需求生成界面元素及软件界面
中间层架构设计
组件设计:业务逻辑组件分为接口和实现类两个部分。从而实现面向接口编程
工作流设计:业务流程的全部或部分自动化称为工作流。其一般包含6各基本模块:工作流执行服务、工作流引擎、流程定义工具、客户端应用、调用应用和管理监控工具
- 接口一:过程定义导入/导出接口。用于格式转换,从而支持过程定义信息间的互相转换
- 接口二:客户端应用程序接口。工作流机通过这个接口与任务表处理器交互,组织任务
- 接口三:应用程序调用接口。让工作流机激活一个应用工具,来执行一个活动
- 接口四:工作流机协作接口,定义相关标准,多个工作流能够进行任务传递
- 接口五:管理和监视接口。提供管理监控工作流执行的功能
实体设计:实体提供对业务数据及相关功能的状态编程访问,业务逻辑层实体开源使用具有复杂结构的数据来构建。可以用XML、通用DataSet、有类型的DataSet等表示。
业务框架设计:通常采用业务容器的方式,将业务逻辑封装在一个业务容器中,可以降低业务层和相邻层的耦合。 在业务容器中,业务逻辑按照Domain Model —— Service ——Control思想来实现
- Domain Model是领域层业务对象,仅包含业务相关的属性
- Service是业务过程实现的组成部分,是应用程序不同的功能单元
- Control是服务控制器,用于切换不同的服务
数据访问层架构设计
五种数据访问模式:
- 在线访问:占用一个数据库连接,读取后台数据库中的数据
- DataAccessObject(DAO):是标准的J2EE面向对象设计的设计模式之一,开发人员用这种模式将底层数据访问操作与高层业务逻辑分离开
- DataTransferObject(DTO):经典的 EJB设计模式之一。DTO本身就是一组对象或数据的容器,它需要跨不同的进程或网络的边界来传输数据,这类对象本身不包含具体的业务逻辑。
- 离线数据模式:以数据为中心,数据从数据源获取之后,按照某种预定义的结构存放在系统中,称为应用的中心。
- 对象/关系映射(ORM):将应用程序中的数据转换成关系型数据库中的记录;或将关系型数据库中的记录转换成应用程序中代码便于操作的对象
数据层架构设计
数据库设计与XML设计融合
经常提出的XML文档的存储方式有两种:基于文件的存储方式和数据库存储方式
- 基于文件的存储方式:经XML文档按其原始文本形式存储,后续也将使用XML文件进行通信
- 数据库存储方式: 采用数据库对XML文档进行存取和操作,可以有效利用数据库本身的优势
图片来源于网络