问答题
{{B}}试题1~试题4是必答题{{/B}}
阅读以下某网上信用卡管理系统的需求描述,根据要求回答问题1、问题2和问题3。
[说明]
某银行准备开发一个网上信用卡管理系统(CCMS),该系统的基本功能如下。
①信用卡申请。非信用卡客户填写信用卡申请表,说明所要申请的信用卡类型及申请者的基本信息,提交CCMS登录。如果信用卡申请被银行接受,客户会收到银行的确认函,并告知用户信用卡的有效期及信贷限额;否则银行会发送一封拒绝函给该客户。
客户收到确认函后,需再次登录CCMS,用信用卡号和密码激活该信用卡。激活操作结束后,CCMS将激活通知发送给客户,告知客户其信用卡是否被成功地激活。
②月报表生成。在每个月第1天的零点,CCMS为每个信用卡客户创建一份月报表,对该客户上月的信用卡交易情况及交易额进行统计。信用卡客户可以登录CCMS查看月报表,也可以要求CCMS提供打印出的月报表。
③信用卡客户信息管理。信用卡客户的个人信息可以在CCMS中进行在线的管理。每个信用卡客户可以在线查询其个人信息。
④信用卡交易记录。信用卡客户使用信息卡进行的每一笔交易都会记录在CCMS中。
⑤交易信息查询。信用卡客户可以登录CCMS查询并核实其信用卡交易记录及交易额。
问答题
[问题1]
该网上信用卡管理系统(CCMS)的顶层数据流图如图4-10所示。请根据系统功能描述和数据流图,并使用[说明]中的词汇,将图4-10中(1)~(4)空缺处的内容填写完整。
【正确答案】
【答案解析】[问题1]
这是一道要求读者从题干说明信息中识别数据流的综合分析题。本试题的解答思路如下。
①数据流图(DFD)是描述数据处理过程,描绘系统逻辑模型的一种图形工具。它从数据传递和加工的角度,以图形的方式描述数据在系统流程中流动和处理的移动变换过程。通常,数据流图有4种基本图形元素,见表4-18。

{{B}}表4-18 数据流图基本元素说明表{{/B}}

{{B}}定义{{/B}}
{{B}}符号{{/B}}
{{B}}备注{{/B}}
外部实体
是指存在于软件系统之外的人员或组织
正方形或立方体
表示数据流图中要处理数据的输入来源程序或处理结果要送往的地方
加工
又称为数据处理,表示输入数据在此进行变换,产生输出数据
圆角矩形或圆形
每个加工都有一个编号和名字。编号能反映出该加工位于分层DPD中的哪个层次和哪张图中,也能看出它是由哪个加工而分解出来的子加工,其名字通常简要说明了要完成的任务
数据流
表示流动着的数据
箭线
由一组固定的数据项组成,箭头方向表示数据的流向
数据存储
表示流动着的数据
开口矩形或两条平行横线
流向数据存储的数据流表示向数据存储中写数据或从数据存储中查询,流出数据存储的数据流表示从数据存储中读数据或得到查询结果

②由题干给出的关键信息:“客户收到确认函后,需再次登录CCMS,用信用卡号和密码激活该信用卡”可知,在图4-10中外部实体“客户”将向CCMS系统提交一个激活其信用卡的请求信息,激活操作结束后,CCMS再将激活通知发送给该客户,因此,图4-10中(1)空缺处的数据流是“激活信用卡请求”。
③由题干给出的关键信息“信用卡客户可以登录CCMS查看月报表,也可以要求CCMS提供打印出的月报表”可知,在图4-10中外部实体“客户”将向CCMS系统提交一个查询(或打印)其信用卡月报表的请求信息,因此图4-10中(2)空缺处的数据流是“查询/打印月报表请求”。
④由题干给出的关键信息“交易信息查询:信用卡客户可以登录CCMS查询并核实其信用卡交易记录及交易额”可知,在图4-10中外部实体“客户”将向CCMS系统提交一个查询其信用卡交易记录和交易额的请求信息,然后CCMS系统将相关的信用卡交易信息发送给该客户,因此图4-10中(3)空缺处的数据流是“查询交易信息请求”,(4)空缺处的数据流是“信用卡交易信息”。
问答题
[问题2]
在系统的需求分析阶段,使用UML用例对系统需求建模。如表4-11和表4-12所示给出了其中两个用例的概要描述。请将表4-11和表4-12中的(5)~(11)空缺处填写完整。

{{B}}表4-11 用例“非信用卡客户申请信用卡”描述表{{/B}}

用例名称
非信用卡客户申请信用卡
触发器
{{U}}(5) {{/U}}
{{B}}主要输入{{/B}}
{{B}}主要输出{{/B}}
输入信息
角色(Actor)
输出信息
角色(Actor)
{{U}}(6) {{/U}}
{{U}}(7) {{/U}}
{{U}}(8) {{/U}}
非信用卡客户
拒绝函
非信用卡客户

{{B}}表4-12 用例“激活信用卡”描述表{{/B}}

用例名称
激活信用卡
触发器
{{U}}(9) {{/U}}
{{B}}主要输入{{/B}}
{{B}}主要输出{{/B}}
输入信息
角色(Actor)
输出信息
角色(Actor)
激活信用卡申请
信用卡客户
{{U}}(10) {{/U}}
{{U}}(11) {{/U}}
信用卡客户信息
客户信息库
修改后得信用卡信息
信用卡信息库
信用卡信息
信用卡信息库

【正确答案】
【答案解析】[问题2] 这是一道要求读者填写用例的概要描述表的综合分析题。本试题的解答思路如下。 ①用例(use case)是一组连续的操作,在参与者使用系统来完成某个过程时出现,即它确定了一个与系统参与者进行交互、并由系统执行的动作序列。可见,一个用例本身并不是一个功能需求,它代表了系统的一个单一的目标,是一个行为上相关的步骤序列。在UML规范中,参与者是指系统所涉及到的人,或者是用户在本系统中扮演的角色。 ②通常一个用例名称是从参与者的角度而非系统的角度来命名,其名称由二三个词语组成,第1个是动词,第2个是名词,其后一般为形容词。例如,本试题中“激活信用卡”用例。 ③一个用例的基本获取步骤如图4-21所示。
问答题
[问题3]
除了表4-11和表4-12给出的用例之外,从以上[说明]陈述中还可以获取哪些由信用卡客户发起的用例?(请使用[说明]中的词汇,给出用例名称即可)
【正确答案】
【答案解析】[问题3]
这是一道要求读者根据系统需求描述抽象出相应用例名称的分析理解题。本试题的解答思路如下。
①参照并领会如何根据题干中“①信用卡申请”的需求描述,抽象出题干中“非信用卡客户申请信用卡”、“激活信用卡”这两个用例。
②由题干中给出的需求描述信息“②月报表生成……信用卡客户可以登录CCMS查看月报表,也可以要求CCMS提供打印出的月报表”,可抽象出用例“信用卡客户查询月报表”,如表4-19所示。

{{B}}表4-19 用例“信用卡客户查询月报表”描述表{{/B}}

用例名称
信用卡客户查询月报表
触发器
查看或打印月报表请求
{{B}}主要输入{{/B}}
{{B}}主要输出{{/B}}
输入信息
角色(Actor)
输出信息
角色(Actor)
查看月报表申请
信用卡客户
月报表信息
信用卡客户
打印月报表申请
信用卡客户
信用卡客户信息
客户信息库
信用卡个人信息
信用卡信息库
信用卡信息
信用卡信息库

  ③由题干中给出的需求描述信息“③信用卡客户信息管理……每个信用卡客户可以在线查询其个人信息”,可抽象出用例“信用卡客户查询个人信息”,如表4-20所示。

{{B}}表4-20 用例“信用卡客户查询个人信息”描述表{{/B}}

用例名称
信用卡客户查询个人信息
触发器
查询个人信息请求
{{B}}主要输入{{/B}}
{{B}}主要输出{{/B}}
输入信息
角色(Actor)
输出信息
角色(Actor)
查询个人信息申请
信用卡客户
信用卡个人信息
信用卡客户
信用卡客户信息
客户信息库
信用卡个人信息
信用卡信息库
信用卡信息
信用卡信息库

  ④由题干中给出的需求描述信息“④信用卡交易记录。信用卡客户使用信息卡进行的每一笔交易都会记录在CCMS中”,可抽象出用例“信用卡交易信息”,如表4-21所示。

{{B}}表4-21 用例“信用卡交易信息”描述表{{/B}}

用例名称
信用卡交易信息
触发器
信用卡交易请求
{{B}}主要输入{{/B}}
{{B}}主要输出{{/B}}
输入信息
角色(Actor)
输出信息
角色(Actor)
信用卡交易申请
信用卡客户
交易后的信用卡信息
信用卡客户
信用卡客户信息
客户信息库
交易后的信用卡信息
信用卡信息库
信用卡信息
信用卡信息库

  ⑤由题干中给出的需求描述信息“⑤交易信息查询。信用卡客户可以登录CCMS查询并核实其信用卡交易记录及交易额”,可抽象出用例“信用卡客户查询”,如表4-22所示。

{{B}}表4-22 用例“信用卡客户查询”描述表{{/B}}

用例名称
激活信用卡
触发器
客户查询请求
{{B}}主要输入{{/B}}
{{B}}主要输出{{/B}}
输入信息
角色(Actor)
输出信息
角色(Actor)
客户查询申请
信用卡客户
信用卡交易信息
信用卡客户
信用卡客户信息
客户信息库
信用卡个人信息
信用卡信息库
信用卡信息
信用卡信息库