实时UML与RationalRoseRealTime建模案例剖析.docx

上传人:b****6 文档编号:8758607 上传时间:2023-02-01 格式:DOCX 页数:20 大小:97.73KB
下载 相关 举报
实时UML与RationalRoseRealTime建模案例剖析.docx_第1页
第1页 / 共20页
实时UML与RationalRoseRealTime建模案例剖析.docx_第2页
第2页 / 共20页
实时UML与RationalRoseRealTime建模案例剖析.docx_第3页
第3页 / 共20页
实时UML与RationalRoseRealTime建模案例剖析.docx_第4页
第4页 / 共20页
实时UML与RationalRoseRealTime建模案例剖析.docx_第5页
第5页 / 共20页
点击查看更多>>
下载资源
资源描述

实时UML与RationalRoseRealTime建模案例剖析.docx

《实时UML与RationalRoseRealTime建模案例剖析.docx》由会员分享,可在线阅读,更多相关《实时UML与RationalRoseRealTime建模案例剖析.docx(20页珍藏版)》请在冰豆网上搜索。

实时UML与RationalRoseRealTime建模案例剖析.docx

实时UML与RationalRoseRealTime建模案例剖析

 

2007-4-416:

09:

00

当前章节:

·

·

·

·

·

·

优异性能开发团队2008魁北克会议演讲

 

了解80后一代的职场观

 

真公司、真职位、实名的高级技术人员如果你希望与真诚的人真诚的交流,欢迎加入!

11.1 自动取款机系统概述

自动取款机是由计算机控制的持卡人自我服务型的金融专用设备。

本节主要简单介绍自动取款机系统及其开发流程。

11.1.1 自动取款机简介

是英文的缩写,即自动取款机的意识,图11-1是一个自动取款机的示意图。

是最普遍的自助银行设备,可以提供最基本的银行服务之一,即出钞交易,有些全功能的产品还可以提供信封存款业务。

在自动取款机上也可以进行账户查询和改密的业务。

作为自助式金融服务终端,除了提供金融业务功能之外,自动取款机还具有维护、测试、事件报告、监控和管理等多种功能。

11.1.1 自动取款机简介

是英文的缩写,即自动取款机的意识,图11-1是一个自动取款机的示意图。

是最普遍的自助银行设备,可以提供最基本的银行服务之一,即出钞交易,有些全功能的产品还可以提供信封存款业务。

在自动取款机上也可以进行账户查询和改密的业务。

作为自助式金融服务终端,除了提供金融业务功能之外,自动取款机还具有维护、测试、事件报告、监控和管理等多种功能。

11.1.2 自动取款机的开发流程

自动取款机系统的开发流程遵循实时系统的统一开发过程,主要生命周期包括系统分析、概要设计、详细设计和实现与测试,采用的软件开发方法为迭代式。

开发流程详细说明如下。

l 系统分析。

主要标识系统涉及的用例,以及为每个用例创建的事件流。

而且,还需要定义初始功能测试用例,作为检查最后实现是否正确和完备的工具。

系统分析还需要显示用例隐含的类,利用分析类图进行文档化处理。

l 概要设计。

使用卡,定义每个类的职责。

首先通过全局类图定义设计的静态结构,然后定义设计的动态结构,使用状态图定义主要控制类的动态行为,为主要用例创建交互图。

l 详细设计。

包括为每个类定义属性和操作,利用包图对相关类进行组织。

l 代码生成。

利用代码生成工具将设计转换为代码,并对代码进行详细处理,编写辅助代码,完成系统实现,并能够对设计进行模拟,能够作为运行,能够在浏览器中查看可执行版本。

需要注意的是,本实例采用实时作为最后的实现语言,创建了一个自动取款机的模拟程序。

模拟真实机的行为,还需要的支持。

11.1.3 自动取款机系统初始需求描述

下面是一个自动取款机系统初始需求描述示例,供读者参考。

“自动取款机系统初始需求规格说明书”

1.引言

1.1 目的

本文档描述了自动取款机系统的软件需求,支持的设计人员、开发人员和维护人员。

1.2 范围

的功能要求支持计算机银行网。

1.3 概述

文档剩余部分组织如下:

本节后续部分将给出一些重要术语的定义;第2部分将包含对的一些基本描述;第3部分表示特定的功能需求、外部接口和性能需求。

1.4 定义

l 账号。

在银行中,事务应用的单个账号。

账号可以为多种类型,但是至少包括支票和存款。

每个顾客可以拥有多个账号。

l 。

一个工作站终端,使得顾客能够使用现金卡在上进行自己的事务处理。

同顾客进行交互,收集事务信息,并发送事务信息到中心计算机,由中心计算机确认和处理信息之后,将现金通过提供给顾客。

l 银行。

一个金融机构,负责保存顾客的账号信息,执行授权卡通过网访问账号。

l 银行计算机。

银行拥有的计算机,同网和银行自己的现金工作站进行交互。

银行可以拥有自己的内部计算机网处理账号,但是我们只关心同网络进行交互的计算机。

l 现金卡。

每张卡提供给一个银行客户,授权客户可以使用机访问自己的账号。

每张卡包含一个银行代码和一个卡号,银行代码根据信用卡的国际标准进行编码,卡号确定卡能够访问的账户。

一张卡不能访问客户的所有账户。

每张卡只能有一个持卡人,但是多个复本可能存在,所以必须考虑从不同的机同时使用相同卡的行为。

l 客户。

拥有银行的一个或者多个账号的人。

客户可以包括一个人或者多个人,或者是公司。

相同的人,拥有不同银行的账号被认为是不同的客户。

事务。

对单个客户账号的单个完整的操作请求。

11.2 自动取款机系统的初始模型的创建

在中,创建自动取款机系统模型的第1步是创建初始模型,其操作步骤如下。

(1)启动,在“”对话框中,选择“”选项,这是因为自动控制系统采用实时实现,需要导入框架。

然后单击“”按钮,如图11-4所示。

图11-4 定义模型框架

(2)将在工具集中初始化一个空的模型,标题将显示为“()”,表示这是一个新模型,还没有保存到磁盘中。

(3)保存所创建的模型,并命名为“”,如图11-5所示。

这样就完成了初始模型的创建操作,下面将介绍如何创建其他模型。

11.4 自动取款机系统的概要设计

明确需求之后,就需要开始对系统进行概要设计。

概要设计的主要输出是概要设计说明书,但在此并不介绍如何编写自动取款机系统的概要设计说明书,而是分析如何基于面向对象的思想、和执行系统的概要设计。

11.4.1 分析初始类模型

通过对自动取款机系统的用例模型进行分析,可以提取以下和类。

l 自动取款机:

,由以下组成。

Ø 操作面板:

Ø 读卡机:

Ø 顾客面板:

Ø 同银行的网络连接:

Ø 吐钱机:

Ø 现金接收器:

Ø 收据打印机:

l 对应于用例的。

Ø 会话类:

Ø 事务类(抽象类,复杂公共特性,支持对特定事务类型的继承):

l 信用卡类:

l 机器维护的事务日志:

基于用例分析和上述提取的和类,可以创建以下初始分析类图,以显示类同参与者及类图之间的关系,如图11-17所示。

图11-17 初始分析类图

11.4.2 创建的卡

()卡建模是一种简单且有效的面向对象的分析技术。

在一个实时系统开发项目中,包括用户、系统分析员和开发者,在建模和设计过程中,经常应用卡建模,使整个开发团队普遍的理解形成一致。

卡由类()、职责()和协作()3部分组成。

类代表许多类似的对象。

而对象是系统模型化中关注的事物。

对象可以是人、地方、事情或任何对系统有影响的概念。

类名一般列在卡的顶部。

职责是类需要知道或需要做的任何事物。

这些职责是类自身所具备的知识,或类在执行时所需要的知识。

协作是指为获取消息或协助执行活动的其他类。

在特定情形下,与指定的类按一个设想共同完成同一个(或许多)步骤。

协作的类名在卡的右边排列。

在此,主要为以下和类定义卡。

卡:

如表11-2所示,它是自动取款机的顶层类,用于实现操作的业务逻辑。

表11-2 卡

当开关打开时,启动系统

当开关关闭时,关闭系统

当顾客插入信用卡时,开始一个新的会话

提供对和构件的访问能力

l 卡:

如表11-3所示,用于读取现金卡的信息。

表11-3 卡

告诉信用卡什么时候插入的

从卡上读取信息

弹出信用卡

保存信用卡

l 卡:

如表11-4所示,该类用于处理弹出现金操作的业务逻辑。

表11-4 卡

跟踪信用卡,采用初始金额进行初始化

报告是否有足够的金额

吐钱

l 卡:

如表11-5所示,该类用于支持用户控制台操作。

表11-5 卡

显示消息

显示提示信息,从键盘接收口令

显示提示信息和菜单,从键盘接收一个选项

显示提示信息,从键盘接收输入的金额数量

对用户按下的取消键作出响应

l 卡:

如表11-6所示,该类用于处理现金接收器的业务逻辑。

表11-6 卡

从顾客接收现金

l 卡:

如表11-7所示,用于记录操作日值。

表11-7 卡

记录发送到银行的消息

记录从银行接收到的消息

记录吐的现金数

记录从顾客接收的现金数

l 卡:

如表11-8所示,用于支持同银行的连接。

表11-8 卡

在机启动时初始化同银行的连接

向银行发送消息,等待响应

在系统关闭时终止同银行的连接

l 卡:

如表11-9所示,用于处理操作面板的业务逻辑。

表11-9 卡

通知将状态修改为开关状态

允许操作员定义初始现金的数量

l 卡:

如表11-10所示,用于支持收据打印。

表11-10 卡

打印收据

l 卡:

如表11-11所示,用于支持用户会话的业务逻辑。

表11-11 卡

执行会话用例

如果顾客重新输入口令,则更新口令值

l 卡:

如表11-12所示,用于支持用户事务操作的业务逻辑。

 

表11-12 卡

(续表)

允许顾客选择事务类型

 

 

 

 

 

执行事务用例

 

 

 

 

 

 

 

 

 

执行非法口令扩展用例

l 卡:

如表11-13所示,用于处理用户取款事务的业务逻辑。

表11-13 卡

执行取款事务用例相关操作

l 卡:

如表11-14所示,用于处理用户存款事务的业务逻辑。

表11-14 卡

执行存款事务用例相关操作

l 卡:

如表11-15所示,用于处理用户转账的业务逻辑。

表11-15 卡

执行转账事务用例相关操作

l 卡:

如表11-16所示,用于执行账户查询的业务逻辑。

表11-16 卡

执行查询事务用例相关操作

l 卡:

如表11-17所示,用于存储账户信息的类。

表11-17 卡

表示银行返回的账户余额信息

l 卡:

如表11-18所示,用于处理现金卡信息的类。

表11-18 卡

表示顾客卡的编码信息

l 卡:

如表11-19所示,用于处理操作消息的类。

表11-19 卡

表示在网络上发送到银行的信息

l 卡:

如表11-20所示,用于处理收据的类。

表11-20 卡

表示在收据上打印的信息

l 卡:

如表11-21所示,用于处理事务状态的类。

表11-21 卡

表示银行返回的事务状态信息

11.5 自动取款机系统的详细设计与实现

11.5.1 详细设计

详细设计的一个主要任务是为类图中的类添加属性和方法。

在自动取款机系统中,需要明确以下内容。

l 类是一个活动类,也就是说,对象具有自己的线程。

l 使用特定的信号初始化计算。

l 类层次包含抽象类和4个具体的子类(,,和)。

l 类是一个抽象类,每种事务类型的()方法创建一个实例,包含相关的事务信息。

l 类是一个抽象类。

类的()方法构造一个具体的实例,包含发送到银行的相关信息。

表11-22至表11-43是自动取款机系统的相关类的详细设计方法。

表11-22 

属   性

方   法

-:

+(:

:

:

:

(续表)

属   性

方   法

-:

-:

-:

-:

-:

-:

-:

-:

-:

-:

-:

-:

-:

-:

-:

-:

-:

+()

+()

+

+()

+():

+():

+():

+():

+():

+():

+():

+():

+():

+():

+():

-()

-()

表11-23 

属   性

方   法

-:

+(:

+():

+()

+()

表11-24 

属   性

方   法

-:

-:

-:

+(:

+(:

+(:

):

+(:

表11-25 

属   性

方   法

 

+()

+(:

+(:

):

+(:

:

[]):

+(:

):

表11-26 

属   性

方   法

-:

+(:

+()

表11-27 

属   性

方   法

 

+()

+(:

+(:

+(:

+()

表11-28 

属   性

方   法

-:

-:

+(:

:

+()

+()

+(:

:

):

表11-29 

属   性

方   法

-:

+(:

+():

表11-30 

属   性

方   法

 

+()

+(:

表11-31 

属   性

方   法

-:

-:

-:

-:

-:

-:

-:

:

-:

-:

+(:

)>

+()

+()

表11-32 

属   性

方   法

#:

#:

#:

#:

#:

#:

#:

-:

[]

-:

-:

-:

-:

-:

-:

-:

-:

#(:

:

:

:

+(:

:

:

:

):

+():

+():

+():

#():

#():

表11-33 

属   性

方   法

-:

-:

+(:

:

:

:

#():

#():

表11-34 

属   性

方   法

-:

-:

+(:

:

:

:

#():

#():

 

表11-35 

属   性

方   法

-:

-:

-:

+(:

:

:

:

#():

#():

表11-36 

属   性

方   法

-:

+(:

:

:

:

#():

#():

表11-37 

属   性

方   法

 

+:

[]

+:

[]

表11-38 

属   性

方   法

-:

-:

+()

+(:

:

+():

+():

表11-39 

属   性

方   法

-:

+(:

+():

表11-40 

属   性

方   法

+:

+:

+:

+:

+:

-:

-:

-:

-:

-:

-:

-:

+(:

:

:

:

:

:

:

+():

+(:

+():

+():

+():

+():

+():

+():

+():

表11-41 

属   性

方   法

-:

+(:

+(:

:

+(:

+():

+(:

+(:

+(:

):

表11-42 

属   性

方   法

-:

[]

#():

[]

-:

[]

#(:

:

:

:

+():

表11-43 

属   性

方   法

 

+():

+():

+():

+():

11.6 自动取款机系统模拟

为了模拟自动取款机系统,这里创建了一个表单,命名为“”,其代码如下,读者可以参考本书附带的源代码。

<"1.0""8"?

>

<

      "31.0"

      "11">

<"""""">

<>

<""""""/>

<""",,,,"/>

<><>

<>

<>

;<2>

;<3>

<"""""450""780">

,'ta. !

<1>

<>

<>

<>

在浏览器中运行时的模拟示意图如图11-32所示。

图11-32 模拟示意图

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 自然科学 > 数学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1