RUP过程与UML模型驱动开发方法在证券研发项目中的应用实践.pdf
《RUP过程与UML模型驱动开发方法在证券研发项目中的应用实践.pdf》由会员分享,可在线阅读,更多相关《RUP过程与UML模型驱动开发方法在证券研发项目中的应用实践.pdf(76页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、SYSWAY-SXPR UP过程与UML模型驱动开发方法 在证券研发项目中的应用实践新思维金融软件研发中心 新思雄SYSWAYSYSWAY-SXP内容提要-软件开发没有银弹-统一通道平台开发项目简介 项目的开发目录结构与RUP核心工件 贯穿全局的统一 UML模型.用前景文档定义目标系统 软件构架文档与4+1视图-契约式开发与单元测试 自动化构建与持续集成-迭代开发模式新思雄SYSWAYSYSWAY-SXP新思雄SYSWAYSYSWAY-SXP软件项目复杂、不确定和高风险-软件因其固有的复杂、不确定和高风险等属性,使得其开发活动非常难以控制-软件产品用于解决一个或多个领域的现实问题,不仅与其开发
2、者本身直接相关,还牵涉到客户、最终用户、第三方伙伴等众多涉众,所谓众口 难调,但一个成功的软件必须能满足多方面的 需求 软件所依赖的核心技术、项目的开发方法、软 件过程、项目管理和团队协作等,都是事关项 目成败的关键因素新思雄SYSWAYSYSWAY-SXPCMMI 与 RUP-根据CMMI的定义,软件过程要达到第三成熟度 等级,需要实施十八个关键过程域;普通团队 虽然不一定向此标准看齐,但实际上仍然涉及 到这十八个关键过程域所涵盖的近百项活动,只不过可能实施的力度较小、质量不高、或者 忽略了活动本身的含义而已 R U P与CMMI第三成熟度等级相对应,定义了九 个核心准则(Disciplin
3、e),和九百项活动 这还仅仅只是软件过程的范畴,项目中人的管 理、沟通以及具体的关键技术等等,其牵涉面 将更广新思雄SYSWAYSYSWAY-SXP软件开发没有银弹-诸多因素分属不同的范畴,针对不同的 问题,需要应用不同的技术、技能和方 法,要求项目成员拥有不同的知识、素 质与背景Z-没有一种方法或途径能够解决软件项目 中所有的问题,即所谓“没有银弹”,所以不要迷信存在所谓的一劳永逸的终 极解决方案新思雄SYSWAYSYSWAY-SXP成功意味着多方面的艰苦努力-软件项目适用于“木桶原理”,要获得成功,必须由所有成员在多个方面都付出艰苦的努力,包括完成一些繁琐与枯燥的工作,并保证任何 一个环节
4、都不出重大问题-在下面介绍的一个实际项目中,将会看到我们 是如何通过裁减R U P过程来主导项目的开发活 动,使用统一的U ML模型来表达和沟通设计,利用共享的产品目录结构来协同开发,并通过 如强团队建设,场长避鹿,发挥各成员的长处 等总之从多个方面来努力,方才最终达成 项目成功的过程新思雄SYSWAYSYSWAY-SXP实例歹,目简J新思雄SYSWAYSYSWAY-SXP证券统一通道平台项目项目的目标系统(统一通道平台)是在 证券公司总部和所有营业部网点统一部 署的、适应不同网络拓扑结构的、支持 内外网段物理安全隔离的、基于消息的 通讯中间件平台系统,用以支持热自助、电话委托等各类外围客户端
5、系统,集中 经纪业务系统、传统营业部柜台系统等 核心服务系统,以及银行端银证业务系 统等第三方系统的透明接入新思雄SYSWAYSYSWAY-SXPucs辐射型拓扑 部署结构图 c s癌/Platform Independent Model(PIM)-Platform Specific Mode!(PSM)-Implementation新思雄SYSWAYSYSWAY-SXP贯穿全局的统一 UML模型 使用一个统一的可视化模型来表达项目的分析、设计思想,进而通过标准的语言(U ML)来进 行成员间的沟通,以减低传递过程中信息丢失 和错误理解的风险 利用建模工具(R ose)对双向工程(R ound
6、 Trip Engineering)的支持,初步实现MDA中 平台相关的模型到实施代码框架的转换(PSM-Implementation)新思雄SYSWAYSYSWAY-SXP,Rational Rose-PChl_RUP.mdl-Class Diagram:Logical View/Welcome iread-only File Edit View Format Browse Report Query Tools Add-Ins Window Help口田口|甚电扇|昌|甘耳|回胸目国国|困图PChil RUFUse Case ViewCJ Context Use-Case ModelCj S
7、ubsystem Use-Case ModelUse-Case Model球 Main三 AssociationsLogical ViewC3 Analysis Model3 C+Reverse Engineered口 COMContext Analysis ModelLJ Design ModelTemp目 Welcome三 AssociationsComponent ViewImplementation ModelE ComponentsE-Infrastructures回Libraries国 SubSystems,,Implementation Model St画|Mainffil Ma
8、inDeployment ViewModel PropertiesContext Use-Cases(from Context Use-Case Model)的RoNo documentation _jConversation Mechanism Use-Case Realizations(from Conversation Mechanism)模鎏示例新思雄SYSWAYSYSWAY-SXP度aL ont ex t Use-CasesUse Case View Context Use-Case Model 申,Actors from Stakehol由&9sBBED;出口券商端柜台银证业专 i
9、由。银行端柜台银证业s:由。自助类普通经纪业专;鬲口自助类银证业务Architectural con for bank worker for stockhodler G lobal View of Us request to bank Associations;使Main,三 AssociationsSubsystem Use-Case Mode?Use-Case ModelMainAssociationsLogical ViewAnalysis Model C+Reverse Engineered口 COMContext Analysis Model 匚口 Design Model上X文分析
10、模叁示例新思JiSYSWAYSYSWAY-SXP0 O Subsystem Use-Case Mode A|白。Use-Case Model国-ActorsS-6 Use Cases国 C3 Bank Services Use 回 口 Operational Manag 臼 Cl Peripheral Servi cji同MainE O commit common 国 O login国 O query status cO query status c:O query status c S self transfer 由 三 Associations度 Ar chi t ectur ally S
11、=三 Associations,除 all usecasesI 移 G lobal View of Actor,圄 Model Structure;三 Associations院 Main=AssociationsLogical ViewE C Analysis ModelIfl Pl C+Reverse Engineered 由。COMJoPeri pher al_Pr otoc ol_API(&an Ictss as G MDaation ftrticvtor)雳求模型示例SYSWAY-SXP通道平台实现层,是 对话机制接口层的具 体实现被直接用来构建目标系统的通用底层开发包,提供各种应用
12、软件较为共性的功能,将被紧密地嵌 入目标应用,而且通常没有必须 作为一个整体来使用的限制层次野斯模至示为SYSWAY-SXPsingleton stub_factory_base(from Stub Base)1_service_name、servant_id j_connectionset_connection()Scurrent_connection()jservant_i d()singleton peri pheral s tub fac tory_sys_admin()prder_queryor()order_broker()svrobj_stub_base(from S tub B
13、ase)_connection|svrobj stub base()sys_admin_stubsys_admin(fran Core Peripheral S ervice O bje.),login。qlogout。order_queryor(fran Core Peripheral S ervice O bit.)I 专|query_order 0query_order 0order_broker(fran Cere ft ri ph er al S ervice O bject i jbuy_stock()sell_stock()rr p hii v ttcrkCorder query
14、or s tuborder broker stub洋缈发井模型示例SYSWAY-SXP:loEin resD用翔实现模叁示例SYSWAY-SXP模叁示例SYSWAY-SXPIN ovell文件服 务器DBF_files自助交易网关S elf-Trade G atewayI deploy follow Msg-Queues:S ite influx for R equest and R esponse):influx_site001;:bundlerecvsiteO O l;I/外围客户端模拟器Peripheral Client S inulatorU CS传输网-网点LAN自助交易前端服务器
15、S elf-TradeFrontEnd-网点LANucs网点服务器Windows S ubDomain ControlerMS MQ S ite S erver U CS Link S erverdeploy followMsg-Queues:resp_rece ive_c102;dcploy follow Msg-Queues:rec e i ve for R esponse:rcsp_rcceivc_c302;deploy follow Msg-Queues:resp_receive_c1003;网点路由渊1U CS传输网-企业WANDDN专线电话拨号备份线deploy fol low M
16、sg-Queues:re sp_r ecei ve_c 103:无线交易网关Wire less-G at way W ire less-Tra de_App中心路由器银行端业务前 置机Bankucs网点服务器网点路由器2DDN专线电话拨号备份线 Kuh Domain Controler S ite S erver Link S ervedsitelD=site002)deploy follow Msg-Queues:influx_site002;:bundle recv site002:deploy follow Msg-Queues:influx_ent000;:bundle_recv_en
17、t000;4部署模型示例网站交易Web服 务器IIS Hteb-S erver Web-Trade App目-,Manage Consol证券集中交易模拟系统Brokage S erver S inulator中心内部网R equestor G atewayU CS传输所中心LAN/副ucs中心服务器Windows Enterprise Domain Controler 狈terprise S erverU CS l.ink_S erver U CS Management S erver系统管理控制台银证交易前置 机Bank S a-vant G ateway(deploy fol lowMs
18、g-Queues:,:resp_recei ve c 105:deploy follow Msg-Queues:receive for R equest:req_rece ive_s302;deploy follow Msg-Queues:req_receive_s201;证券集中交易系统服务调度Peripheral S ervant S chedulerSYSWAY-SXPSYSWAY-SXP用前景文档定义目标系统 根据软件应用的上下文(或业务建模),将要解决的领域问题,涉众(特别是最 终用户)对产品的要求,相关的限制条 件等,确定目标系统的定义-确定系统的范围,用特性来定义系统,并给出相关
19、的优先级顺序-功能性特性将映射到系统用例新思雄SYSWAYSYSWAY-SXP产品定位 确定目标系统的市场背景-列明系统将要解决的重大问题-系统的概括定义新思雄SYSWAYSYSWAY-SXP涉众/用户及其需要-标识目标系统的最终用户与其他涉众,以确定需求收集的来源-分析用户与涉众的基本特点,以帮助获 取与辨别系统的需求-列明用户与涉众针对目标系统的各类需 要(needs),它们决定了最终系统需求新思雄SYSWAYSYSWAY-SXP产品概述明确地定义目标系统勾画目标系统的上下文环境与边界-列明目标系统的主要(能力)特性及其 提供给客户的利益-明示目标系统当前所做的假定和其依赖 的条件,它们将
20、可能是未来引起需求变 更的重要因素SYSWAY-SXP产品特性-以特性(Feature)的方式定义目标系统 的高层需求-特性表达了目标系统为了实现用户利益 而必须具备的能力(Capability)-特性是一种对外的服务,通常要求用户 提供一系列输入以得到响应的结果新思雄SYSWAYSYSWAY-SXP其它图层需求-设计约束限定了目标系统设计乃至实现 方案的选择范围 接口需求-质量范围概略描绘了目标系统的重要质 量需求 4产-适用标准、硬件需求及环境需求等新思雄SYSWAYSYSWAY-SXP优先级-目标系统的产品特性优先级大致可以分 为:关键、重要和有用-特性优先级为项目开发顺序的选择提供 了
21、原始依据(当然目标系统各构件间的 依赖关系对开发顺序的影响更大)-特性优先级是用于实施需求管理的重要 内容新思雄SYSWAYSYSWAY-SXP用例规约与补充规约-用例详述是对功能性特性的细化 系统用例的整体结构适于用U ML的U se Case模型表达-在U ML模型中使用序列图描述所有的系统 用例是一种有效的表达方式-补充规约是对公共功能性需求和质量等 非功能性需求的细化新思雄SYSWAYSYSWAY-SXP新思雄SYSWAYSYSWAY-SXP软件构架表述新思雄SYSWAYSYSWAY-SXP构架描述(构架文档)的用途 表达(软件)系统及其演 用于系统涉众之间的交流 以一致的方式来评估与
22、比较软件构架 用来计划、管理与执行系统开发的各项活动 存达系统的固有特性与支撑原则,以引导可接 受的变更-验证系统的实现符合构架描述-充实软件密集系统的构架知识库(参考构架)新思雄SYSWAYSYSWAY-SXP4+1视图 软件系统本身包含的内容太丰富且复杂,就像 建筑一样,人们无法同时从一个角度看到其全 貌,因此需要使用多个视图(View)来表达系 统的构架 视图是视点(Viewpoint)的实例,并拥有一个 或多个模型(Model)4+1视图分别从外部功能,静态结构,动态行 为,运行时刻形态和物理部署拓扑等方面来描 述目标软件的构架新思雄SYSWAYSYSWAY-SXP构架设计目标与约束-
23、构架设计的目标首先要满足目标系统的关键功 能需求-目标系统的质量需求、接口要求等对构架往往 产生决定性的影响 项目开发策略,例如第三方构件的选用等是展 开构架设计的重要基础 变更案例(Change Case)要求构架必须具备 相应的可扩展性和适应性-设计约束等则限定了构架方案选择的范围新思雒CVCIA/AVSYSWAY-SXP用例视图用例视图从用户使用的角度描述系统构 架的基本外部行为特性,通常包含业务 用例模型与系统用例模型。-通常应选取用例模型中对系统构架的内 容产生重大影响的应用场景与用例集合,这些用例代表了系统主要的核心功能,往往决定了系统构架的基本组成元素。新思雄SYSWAYSYSW
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- RUP 过程 UML 模型 驱动 开发 方法 证券 研发 项目 中的 应用 实践
限制150内