ZPEDU.ORG讲义版权由中培教育所有,未经同意,不得转印软件系统架构实践中国信息化培训中心2013年6月ZPEDU.ORG讲义版权由中培教育所有,未经同意,不得转印课程目录一、系统架构概述二、系统架构之三分过程三、系统架构之四入策略四、系统架构之六大战术五、系统架构之案例探究六、系统架构之评估体系七、系统架构师成长之路ZPEDU.ORG讲义版权由中培教育所有,未经同意,不得转印五、银行柜面系统之架构探究1.项目概述2.质量需求3.逻辑架构4.开发架构5.运行架构6.物理架构7.数据架构8.质量属性战术应对9.其他架构服务3ZPEDU.ORG讲义版权由中培教育所有,未经同意,不得转印项目概述银行柜面是商业银行最成熟最重要的服务与营销渠道,随着国内商业银行“流程银行”建设的兴起,柜面渠道IT支撑系统也将面临新的一轮改造需求。“银行柜面渠道IT解决方案”,由柜面系统、排队系统、业务集中处理中心,系统与柜面运营管理系统组成,旨在满足“流程银行”建设过程中柜面渠道的业务与技术需求,帮助银行发展业务,提升银行服务水平4ZPEDU.ORG讲义版权由中培教育所有,未经同意,不得转印七、银行柜面系统之架构探究1.项目概述2.质量需求3.逻辑架构4.开发架构5.运行架构6.物理架构7.数据架构8.质量属性战术应对9.其他架构服务5ZPEDU.ORG讲义版权由中培教育所有,未经同意,不得转印质量需求性能需求①高实时性,每次交易请求xBank内部处理时间在0.5秒内;②高并发,单节点支撑100并发请求数处理。可修改①业务需求发生变化,架构容易支持。这种变化可能是增加、修改、删除功能;②质量特性可应需修改;③系统容量可应需修改;④进行修改一项不应当影响其它功能;如果有影响,则这种影响应可控;⑤修改应当及时,并且对修改进行测试、部署。高可用性①负载均衡;②7*24连续运行;③故障转移。6ZPEDU.ORG讲义版权由中培教育所有,未经同意,不得转印质量需求高安全性①防篡改、防伪造;②权限控制;③关键数据加密;④用户认证;⑤终端合法性认证;⑥敏感信息脱敏处理。易用性①最终用户与运维人员易使用;②良好的在线帮助和在线用户手册;③良好的界面功能导航;④良好的界面提示、错误处理提示;⑤良好统一的界面风格;⑥快速支撑新开设机构的参数化设置。7可扩展性①满足不同绑定协议,如http、socket、ftp、WTC等;②支持不同消息表示,如dom、string、object等;③支持不同报文格式。如XML报文、EUSP报文、FIX报文等。ZPEDU.ORG讲义版权由中培教育所有,未经同意,不得转印七、银行柜面系统之架构探究1.项目概述2.质量需求3.逻辑架构4.开发架构5.运行架构6.物理架构7.数据架构8.质量属性战术应对9.其他架构服务8ZPEDU.ORG讲义版权由中培教育所有,未经同意,不得转印逻辑架构依据4个重要原则ZPEDU.ORG讲义版权由中培教育所有,未经同意,不得转印七、银行柜面系统之架构探究1.项目概述2.质量需求3.逻辑架构4.开发架构5.运行架构6.物理架构7.数据架构8.质量属性战术应对9.其他架构服务10ZPEDU.ORG讲义版权由中培教育所有,未经同意,不得转印开发架构11顶级包对应工程com.aaa.framework.baseBaseFrameworkcom.aaa.framework.tellerTellerFrameworkcom.aaa.framework.mibsMIBSFrameworkcom.aaa.framework.cpcCenterFrameworkcom.aaa.product.tellerTellerDevcom.aaa.product.mibsMIBSDevcom.aaa.product.cpcCenterDevZPEDU.ORG讲义版权由中培教育所有,未经同意,不得转印七、银行柜面系统之架构探究1.项目概述2.质量需求3.逻辑架构4.开发架构5.运行架构6.物理架构7.数据架构8.质量属性战术应对9.其他架构服务12ZPEDU.ORG讲义版权由中培教育所有,未经同意,不得转印七、银行柜面系统之架构探究1.项目概述2.质量需求3.逻辑架构4.开发架构5.运行架构6.物理架构7.数据架构8.质量属性战术应对9.其他架构服务13ZPEDU.ORG讲义版权由中培教育所有,未经同意,不得转印物理架构-集群部署①柜面应用服务器集群,五个节点;②处理中心服务器集群,3个节点;③数据库服务器(APP/影像库)共4台,影像独立存储;④F5共2台;14ZPEDU.ORG讲义版权由中培教育所有,未经同意,不得转印七、银行柜面系统之架构探究1.项目概述2.质量需求3.逻辑架构4.开发架构5.运行架构6.物理架构7.数据架构8.质量属性战术应对9.其他架构服务15ZPEDU.ORG讲义版权由中培教育所有,未经同意,不得转印数据架构16ZPEDU.ORG讲义版权由中培教育所有,未经同意,不得转印七、银行柜面系统之架构探究1.项目概述2.质量需求3.逻辑架构4.开发架构5.运行架构6.物理架构7.数据架构8.质量属性战术应对9.其他架构服务17ZPEDU.ORG讲义版权由中培教育所有,未经同意,不得转印质量属性战术应对可用性可修改性性能安全性易用性可测试性ZPEDU.ORG讲义版权由中培教育所有,未经同意,不得转印“系统可用性”应对措施19检测手段F5心跳检测、错误日志记录、业务最大并发数控制、后台模块可用性控制在线保障双通道工作模式,主备通道可同时运行,对外提供不停断持续服务;应用服务器多节点集群,提供负载均衡和故障转移;场景描述提供系统对外服务不中断情况下进行系统维护的策略;应用服务器单节点重启控制在3~5分钟之内;最大业务并发预警与控制,单节点最大并发数在应用级动态可控制;决策1.主动禁用有故障模块相关业务功能;2.单节点并发数控制调整,保障系统运行;3.利用系统监控日志定期分析系统瓶颈,持续优化架构质量。ZPEDU.ORG讲义版权由中培教育所有,未经同意,不得转印质量属性战术应对可用性可修改性性能安全性易用性可测试性ZPEDU.ORG讲义版权由中培教育所有,未经同意,不得转印“系统可修改”保障手段21检测手段日志系统、在线提问工单系统在线保障生产系统问题修复流程;紧急版本发布;场景描述修改及时、可测试、操作有记录、过程可审计决策方案1.框架级可修改性:平台代码、应用代码、后台模块代码分离;2.场景开发可配置:终端组件化、终端常量配置、报文配置。3.企业服务可修改性:根据场景、调用后台模块出参入参可配置性修改,服务变更无需通过编码即可修改;4.适配器可修改性:根据后台模块划分为不同的适配器;5.部署与中间件可修改:采用J2EE应用,因此与操作系统无关。目前采用的Weblogic应用服务器基本上可以替换为其它应用服务器;数据库目前采用的为DB2,如果变更数据库,则需按照脚本初始化系统运行的环境,包括存储过程的创建、初始化等。ZPEDU.ORG讲义版权由中培教育所有,未经同意,不得转印质量属性战术应对可用性可修改性性能安全性易用性可测试性ZPEDU.ORG讲义版权由中培教育所有,未经同意,不得转印“系统性能”质量目标与保障手段23检测手段ViauslVM监控、应用服务器性能监控、数据库监控、操作系统监控在线保障应用服务器集群;F5负载均衡;数据库双机热备场景描述高实时性,每次交易请求内部处理时间在0.5秒内;高并发,单节点支撑大于100并发请求数处理。决策方案1.物理资源横行可扩充:可扩充物理节点,通过增加应用服务器节点数量、数据库服务器数量等增加容量。2.不同种类数据分离:大数据量表采用历史表、业务库与图像库分离,及时处理清理转储历史数据;3.集中处理中心任务处理利用队列机制;4.流程定义、字典、机构等静态数据缓存;5.使用线程池,异步模式记录日志等;ZPEDU.ORG讲义版权由中培教育所有,未经同意,不得转印质量属性战术应对可用性可修改性性能安全性易用性可测试性ZPEDU.ORG讲义版权由中培教育所有,未经同意,不得转印安全安全服务联网核查身份认证加密验证权限控制机制依赖终端安全(硬件外设)25ZPEDU.ORG讲义版权由中培教育所有,未经同意,不得转印“系统安全性”质量目标与保障手段ZPEDU.ORG讲义版权由中培教育所有,未经同意,不得转印质量属性战术应对可用性可修改性性能安全性易用性可测试性ZPEDU.ORG讲义版权由中培教育所有,未经同意,不得转印“系统易用性”质量目标与保障手段ZPEDU.ORG讲义版权由中培教育所有,未经同意,不得转印质量属性战术应对可用性可修改性性能安全性易用性可测试性ZPEDU.ORG讲义版权由中培教育所有,未经同意,不得转印七、银行柜面系统之架构探究1.项目概述2.质量需求3.逻辑架构4.开发架构5.运行架构6.物理架构7.数据架构8.质量属性战术应对9.其他架构服务30ZPEDU.ORG讲义版权由中培教育所有,未经同意,不得转印其他组件阀值处理宕机处理终端控制FTP控制定时调度ZPEDU.ORG讲义版权由中培教育所有,未经同意,不得转印