期货交易自动化论坛

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 12|回复: 0

一些银行业务的面向对象设计实例 - 金融行业 - ITPUB论坛-专业的IT技术社区

[复制链接] |主动推送

285万

主题

285万

帖子

855万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
8553710
发表于 2022-9-11 07:33:16 | 显示全部楼层 |阅读模式
台湾人写的东西,很细致。一个是业务模型和软件模型是如何转化的,一个是3层设计模式基础。因为都是以银行里的知识做例子的,所以更便于同行参考。它这都是面向对象的设计,觉得写的很到位,比许多教科书贴切。在软件工程这一块,台湾好像比我们这边要成熟的多,他们做事情很扎实,我们这边比较浮躁。可能也与我们这边传统文化的断层有关。以前在学校的时候,看到过一个台湾公司的银行业务的设计文档,找我们这些学生编程。那个设计真好,虽然不是面向对象的,但非常详细,它除了说明以外,还有例子,我们照这个例子写程序就行了,它提供一个简单的测试程序,生成测试结果文件,同源程序一起交给他们,他们再发到台湾集成。可惜当时没有意识到要保存下它的详细设计文档,也没想到后来还从事这个行业。不知哪位大虾手头有这样的设计,能否拿出来共享。附件里的文件是从www.umlchina.com网站上下载的,它 ... 投韵蟊喑探岷掀鹄础?/a>银行业务, 设计, 实例, 台湾人, 东西
文章中精要的东西摘录如下:
所谓两段式OOAD,其第1阶段是:先以OOAD技术分析企业的流程,然后第2阶段是:以OOAD技术分析资讯系统的流程。其将企业(business)与其软体(software)视为一个整体的系统,而企业与软体便成为该系统的两个层面(facet)罢了。这样,资讯系统便能有效地支持企业来创造出更佳的企业流程(business process),由更好的流程来提供给顾客更满意的服务。举世著名的软体专家Taylor[Tay95]称这种方式为「聚合式工程」(convergent engineering)。他说明了这种途径的好处如下:
1能简化设计与建造的过程(simplify the engineering process),毕其功于一役。
2消除企业流程与软体的鸿沟(eliminates the gaps between business process and supporting software),两者皆易于设计与理解。
3更能随环境而改变(facilitates change),企业与软体能同步修正,使两者皆生生不息。
Jacobson[Jac97]说到: 进行企业工程时所产出的模式,可做为定义软体架构、找出可重复使用的元件、以及开发应用程式来服务顾客等工作的绝佳基础。
第1阶段OOAD
▲ 确定系统领域(domain)
▲ 找出企业流程──以use case描述之
▲ 以OOAD分析企业流程――用Sequence Diagram描述
▲ 从企业use case导出系统的use case
第2阶段OOAD
▲ 以OOAD分析系统流程
▲OOD ──元件设计――class diagram描述
▲OOD ──细部设计――落实到类,伪码描述
▲OOP ── 落实为COM元件
上述的「OOD── 元件设计」部份是属于逻辑设计(logical design),它与OOA部份合起来构成『建立模式』(modeling)阶段。这个阶段使用模式语言(modeling language),如UML来描述之。
Modeling = OOA + OOD元件设计
上述的「OOD──细部设计」部份与OOP部份合起来构成『实作』(implementation)阶段。这个阶段使用电脑程式语言(programming language),如Visual Basic 来描述之。
Implementation = OOD细部设计 + OOP
许多人常会忽略OOD细部设计的重要性。事实上,OOD细部设计的工作相当于营建业里的总工程师的工作,非常地重要,他要评核建筑设计图(即model)的可行性,同时也要安排工地施工的分工合作。详细类别定义,必须在测试无误之后,才能将各个类别分派给不同的程式师去设计。
●        把对象状态存到后端的DB表格里
●        把对象状态丢到前端的client程序里
●        让Stateless 对象与stateful对象直接沟通
●        让stateless 对象与stateful对象更亲蜜
●        把协调stateful与stateless 对象的工作从Form独立出来
●        同时使用多个stateful对象
●        建立两个stateful对象之关系
●        支持OnDemand观念
●        支持分布式交易(distributed transaction)
●        建立企业流程(business process)对象
过去的软件开发并没有将「资料存取」、「企业规则」、「流程控制」三种逻辑区分开来,使得系统复杂度升高,如今我们不希望再重蹈覆辙了。
理想模式:将对象分为四种角色:Uco控制流程;企业对象管理企业规则:交易对象指挥交易;persist对象负责管理分散的企业资源料(资料)。
    其中,Uco对象及企业对象可视为支持client程序所需的信息,储存了跟client互动所需的资料。而交易对象及persist对象可视为负责管理企业资源(enterprise resource),让分散的企业资源能做最有效率的运用。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|期货交易自动化论坛

GMT+8, 2024-11-28 22:43 , Processed in 0.109307 second(s), 28 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表