2006 上半年系统分析师考试真题及答案-下午卷
试题一
阅读下列系统需求陈述,回答问题 1、问题 2、问题 3 和问题 4。
某银行准备开发一个网上信用卡管理系统 CCMS,该的基本功能为:
(1) 信用卡申请。非信用卡用户填写信用卡申请表,说明所要申请的信用卡类型及
申请者的基本信息,提交 CCMS 登录。如果信用卡申请被银行接受,客户会收到
银行的确认函,并告知用户信用卡的有效期及信贷限额;否则银行会发送一封
拒绝函给该客户。客户收到确认函后,需再次登录 CCMS,用信用卡号和密码激
活该信用卡。激活操作结束后,CCMS 将激活通知发送给客户,告知客户其信用
卡是否被成功地激活。
(2) 月报表生成。在每个月第一天的零点,CCMS 为每个信用卡客户创建一份月报表,
对该客户上月的信用卡交易情况及交易额进行统计。信用卡客户可以登录 CCMS
查看月报表,也可以要求 CCMS 提供打印出的月报表。
(3) 信用卡客户信息管理。信用卡客户的个人信息可以在 CCMS 中进行在线的管理。
每个信用卡客户可以在线查询其个人信息。
(4) 信用卡交易记录。信用卡客户使用信用卡进行的每一笔交易都会记录在 CCMS
中。
(5) 交易信息查询。信用卡客户可以登录 CCMS 查询并核实其信用卡交易记录及交易
额。
在系统的需求分析阶段,使用用例对系统需求建模。表 1-1 和表 1-2 给出了其中两个用
例的概要描述。
表 1-1 用例“非信用卡客户申请信用卡”的描述
用例名称:非信用卡客户申请信用卡
触发器:(1)
输入信息
(2)
主要输入
主要输出
角色(Actor)
输出信息
角色(Actor)
(3)
(4)
(6)
(5)
(7)
表 1-2 用例“激活信用卡”描述
用例名称:激活信用卡
触发器:(8)
主要输入
主要输出
输入信息
角色(Actor)
激活信用卡申请
信用卡客户信息
信用卡客户
客户信息库
信用卡信息
信用卡信息库
【问题 1】
输出信息
(9)
角色(Actor)
(10)
修改后的信用卡信息
信用卡信息库
将表 1-1 和表 1-2 中的(1)~(10)填充完整。
【答案】
(1) 提交信用卡申请表
(2) 信用卡类型及申请人的基本信息
(3) 非信用卡客户
(4) 确认函
(5) 非信用卡客户
(6) 拒绝函
(7) 非信用卡客户
(8) 信用卡激活请求
(9) 激活通知
(10) 信用卡客户
注:(4)、(6)答案可以互换。
【问题 2】
除了表 1-1 和表 1-2 给出的用例外,从上述系统陈述中还可以获取哪些由信用卡客户发
起的用例?(给出用例名称即可)
【答案】
信用卡客户查询个人信息、信用卡客户查询信用卡交易信息、信用卡客户查询月报表。
【问题 3】
用 400 字以内文字,简要说明用例获取的基本步骤。
【答案】
(1) 定义该应用系统的边界(可以用计算机系统作为边界,也可以使用该应用系统
的那个机构中的部门界限作为边界,还可以用该机构本身作为边界)。
(2) 识别出该应用所有的角色(Actor)。
(3) 对于所识别出的每一角色,分别确定:
该角色所参与的每一种业务活动
各种业务活动的完整的事件序列
激发上述每一个事件序列的角色
(4) 对(3)中确定的事件序列进行分析,去掉其中重要的事件序列
(5) 用结构化的自然语言来描述(4)中确定的每一个事件序列,得到初步确定的
每一个用例。
(6) 对(5)中初步确定的每一个用例进行分析和必要的重组,采用包含(include)、
扩展(extend)和概括(generalization)关系来表示用例之前的关系,最
终得到所有的用例。
【问题 4】
用例除了使用表 1-1 和表 1-2 所示的形式描述外,还可以使用 UML 的用例图来表示。分
别用 100 字以内文字,解释 UML 用例图中扩展用例和抽象用例的内涵。
【答案】
扩展用例是一个由某个更复杂的用例提取出来的事件序列所构成的用例,以便简化原始
用例并扩展其功能。
若几个用例执行了同样的功能步骤,可以把这些公共步骤提取成独立的抽象用例,抽象
用例代表了某种形式的“复用”,可以降低用例之间的冗余。
试题二
阅读以下关于工作流系统性能分析的叙述,回答问题 1、问题 2 和问题 3。
某企业正在创建一个工作流管理系统,目前正处于过程定义阶段,即创建工作流模型阶
段。对于这些工作流模型,除了要考虑工作流的正确性外,工作流的性能也是十分重要的。
工作流性能主要反映工作流定量方面的特性,例如,任务的完成时间、单位时间内处理的任
务数量、资源的利用率以及在预定的标准时间内完成任务的百分比等等。
图 2-1 所示的是一个简单的工作流模型(其中单位时间为 1 小时),它表示这样一个执
行过程:每小时将会有 20 个任务达到 c1,这 20 个任务首先经过处理 task1,再经过处理
task2,最终将结果传递到 c3。处理 task1 和处理 task2 相互独立。
假设性能评价模型符合 M/M/1 排队模型,在计算性能指标的过程中可以使用下列公式进
图 2-1
行计算:
其中表示资源利用率,表示单位时间内到达的任务数,表示该资源单位时间内能够
L=/(1-),S=1/(-),W=/(-)
完成的任务数。
【问题 1】
计算图 2-1 所示的工作流模型的下列性能指标:
(1) 每个资源的利用率;
(2) 每个处理中的平均任务数 L;
(3) 平均系统时间 S;
(4) 每个处理的平均等待时间 W。
【答案】
使用下列公式进行计算:
=/,L=/(1-),S=1/(-),W=/(-)
Task1
=20
=60/2.5=24
=0.83
L=5
S=0.25 小时(或 15 分钟)
W=0.208 小时(或 12.5 分钟)
task2
=20
=60/2=30
=0.67
L=2
S=0.1 小时(或 6 分钟)
W=0.066 小时(或 4 分钟)
【问题 2】
图 2-1 所给出的工作流模型的性能并不是最好的。实际上,对于工作流系统而言,同样
的工作、同样的资源,采用不同的工作流设计,任务的平均等待时间也不尽相同。若要在不
改变资源利用率、任务的到达速率和平均处理时间(S-W)的情况下,降低平均完成时间,
在设计工作流系统时应遵循哪三个基本原则?用 150 字以内文字说明。
【答案】
若要在不改变资源利用率、任务的到达速率和平均处理时间(S-W)的情况下,降低平
均完成时间,在设计工作流系统时应遵循的原则为:
(1) 尽可能并行执行任务。并行处理能够缩短完成时间。
(2) 争取提高资源弹性。确保资源能够胜任尽可能多的任务。弹性资源的使用能够
来高水平的资源利率和较短的完成时间。
(3) 尽可能按照处理时间为序来处理任务。通常最好给处理时间短的任务比处理时
长的任务更高的优先级。
【问题 3】
针对以上三个设计原则,选择其中的一种原则对图 2-1 所示的工作流模型进行修正。给
出修正后的工作流模型(画图说明)。
【答案】
(1) 使 task1 和 task2 并行。
(2) 提高资源弹性。
(3) 按照处理时间为序处理任务。
试题三
阅读下列关于软件开发方法的讨论,回答问题 1、问题 2 和问题 3。
张工和李工分别是某公司信息系统项目组和系统开发组的负责人。下面是张工与李工信
息系统项目组承接的新项目时的对话。
张工:我们这次承接的新系统很具有挑战性,在开发过程中不仅要使用一种新的数据库
管理系统,用户所给的开发时间也比较短。我担心使用传统的 SDLC(软件开发生存周期)
方法可能无法按期完成系统开发任务。
李工:这个项目有什么特点吗?
张工:我不知道用户是否确切地明白他们想要一个怎样的新系统。他们提出了许多要求,
但是我不敢确定他们是否真正理解了这个新系统的功能。而且,这个系统可能会相当复杂,
因为它要与多个已有的系统进行交互。
李工:我希望我们有更多使用 RAD(Rapid Application Development,快速应用开发)
方法的经验。目前你所面临的状况可能比较适合使用这种方法。
张工:我同意。但是这个项目的时限不允许我们去学习运用 RAD 方法的工具以及即将要
使用的新的 RDBMS(关系数据库管理系统)。
【问题 1】
用 100 字以内文字,分析使张工放弃采用传统 SDLC 方法的原因。
【答案】
张式放弃传统的 SDLC 的原因是:
(1) 开发时间成为制约软件开发的重要因素;
(2) 不明确的用户需求;
(3) 必须使用不熟悉的开发技术。
【问题 2】
用 200 字以内文字,说明 RAD 方法的基本思想。
【答案】
RAD 的基本思想:
(1) 让用户更主动地参与项目分析、设计和构造活动中来;
(2) 将项目开发组织成一系列重点突出的研讨会,研讨会要让项目投资方、用户、
分析员、设计人员和构造人员一同参与;
(3) 通过一种迭代的构造方法加速需求分析和设计阶段;
(4) 让用户提前看到一个可工作的系统。
【问题 3】
如果张工采用 RAD 方法开发该项目,应如何解决对 RAD 工具不熟悉以及使用新数据库管
理系统的问题?用 150 字以内文字说明。
【答案】
(1) 张工应尽可能在项目活动之前对项目组的部分成员进行 RAD 工具和相关技术
以及要采用的新 RDBMS 的培训;
(2) 可以聘请一个专业顾问(consultant)来指导项目组使用 RAD 工具和相关技术。
在需求不明确、对新技术不熟悉的情况下,专业顾问能够帮助项目组快速掌
握相关工具和技术。
试题四
阅读下列关于系统运行的叙述,回答问题 1、问题 2、问题 3 和问题 4。
A 公司准备建立一个合同管理和查询系统。该系统由 1 台服务器和 100 台客户机构成,
服务器和客户机之间通过局域网进行通信,服务器通过专线联接到两个交易网关 A 和 B、系
统构成如图 4-1 所示。
服务器是对称多处理器系统,操作系统使用虚拟存储。操作系统需要 60MB 的主存(假
图 4-1A 公司的合同管理和查询系统
设与 CPU 的数量无关)。
表 4-1 服务器完成的 4 种任务的描述
任务
名称
接受
任务
应用
任务 1
应用
任务 2
任务
描述
占用的
服务器主
存
5MB
6MB
6MB
服务器每隔 10 秒从
交易网关 A 和 B 接收
最新的交易数据
将来自交易网关 A 和
交易数据传送给客户
机
将来自交易网关 B 的
交易数据传送给客户
机
数据量
CPU
处理时
间
200ms
300ms 交易数据由 2000 个
记录构成,每个记录
64B
200ms 交易数据由 1000 个
记录构成,每个记录
64B
数据传
输
时间
10s
10s
应用
任务 3
处理来自客户机的合
同数据
10MB
忽略 合同包括的数据为
30s
3600B
系统需要处理 4 种类型的操作:从交易网关接收数据,完成应用 1 到应用 3 的操作。服
务器直接从交易网关接收数据(这个操作被称为接收任务)。应用 1 至应用 3 需要客户机与
服务器协作完成。应用 1、应用 2 和应用 3 中由服务器执行的部分分别称为应用任务 1、应
用任务 2 和应用任务 3(见表 4-1)。对于接收任务,即便是在峰值时间,也必须在 10s 内完
成,否则数据会丢失。
系统中 100 台客户机的配置完全相同。一台客户机一次只能处理一个应用,不能同时处
理多个应用。一个应用完成后,才能处理下一个。
服务器根据客户机选择的应用创建不同的应用任务。当客户机上的处理完成后,相应的
应用任务也完成了。服务器启动时,分别为每个交易网关创建一个接收任务。
在峰值时间,处理应用 1 的客户机有 50 台,处理应用 2 的客户机有 30 台,处理应用 3
的客户机有 20 台。
由于该系统使用虚拟存储,因此没有必要全部从内存中为操作系统和每个任务申请存储
空间。但是,如果系统从主存中分配给操作系统的存储空间不到其所需的 80%,分配给应用
任务的存储空间不到其所需的 50%,分配给接收任务的存储空间不到其所需的 80%,系统性
能会下降到不能接受的程度。
【问题 1】
要保证在峰值时间应用任务的处理速度仍可接受,服务器所需的最小主存是多少?(单
位:MB)
【答案】
接收任务所需的主存:2*5=10MB
应用任务所需的主存:50*6+30*6+20*10=600MB
操作系统所需主存:60MB
峰值时间服务器所需的最小主存为:10*0.8+680*0.5+60*0.8=396MB
【问题 2】
在峰值时间,使用单独的 CPU 无法保证在规定的时间内完成各种应用。为了解决这个问
题,需要增加 CPU 的数量。计算在这种情况下,服务器上安装的 CPU 的最小数量。(注:处
理速度与 CPU 的数量成正比)。
【答案】
保证在 10s 内不丢数据。
50*0.3+30*0.2+2*0.2=21.4s
服务器上安装的 CPU 的最小数量:[21.4/10]=3
【问题 3】
如果在服务器和客户机之间采用 TCP/IP 协议通信,在峰值时间,局域网上传输的数据
的最小流量是多少?
【答案】
50*2000*64B/10s+30*1000*64B/10s+20*3600B/30s=834.4KB/s
834.4*8Kbp/s=6675.2Kbp/s
若考虑局域网上控制信息的开销(以太网帧头、TCP/IP 头),传输的最小数据量约为
7Mbp/s。
【问题 4】
在该系统中是否适合采用 UDP 作为服务器与客户机的通信协议?用 150 字以内文字,说
明原因(可针对不同应用进行讨论)。
(1) 应用 1、应用 2 是实时显示交易数据,而且数据在局域网内传输,丢包的概率
非常低,偶发性的数据包丢失关系不大,适合采用 UDP。
(2) 应用 3 处理合同数据,数据不准丢失,为保证数据的完整性,不宜采用 UDP,
应采用 TCP。
试题五
阅读下列关于成本效益分析的描述,回答问题 1、问题 2 和问题 3。
某企业准备开发一个信息管理系统,其生存周期为 5 年。该系统的预计开发成本、预计
的年运行/维护成本,以及预计的收益如表 5-1 所示(其中带括号的数据表示负值)。
表 5-1 某企业信息管理系统成本/效益分析
第 0 年
第 1 年
第 2 年
第 3 年
第 4 年
第 5 年
开发成本
(¥300,00
0)
运行/维护成
(¥15,000
(¥16,000
(¥17,000
(¥18,000
(¥19,000
本
)
)
)
)
)
折现系数
1.000
0.893
0.797
0.712
0.636
0.567
成本的现值 (¥300,00
¥13,395 ¥12,752 ¥12,104 ¥11,448 ¥10,773
0)
累计的成本现
(¥300,00
0)
值
收益
折现系数
收益的现值
1.000
¥0
累计的收益现
¥0
值
累计的成本现
值+收益现值
【问题 1】
(¥300,00
0)
¥150,000 ¥170,000 ¥190,000 ¥210,000 ¥230,000
0.893
0.797
0.712
0.636
0.567
¥133,950 ¥135,490 ¥135,280 ¥133,560 ¥130,410
(1) 目前许多管理人员将投资的净现值作为首选的成本效益分析。用 100 字以内文
字,说明什么是净现值?
(2) 根据表 5-1 给出的数据,第 5 年的累计的成本现值+收益现值是多少?利用净现
值技术分析该项目是否具有经济可行性?并解释原因。
【答案】
(1) 净现值分析:在贴现了所有的成本和收益之后,贴现后的收益与贴现后的成本
之和就等于净现值。如果结果为正,则投资就是可行的;如果为负,则投资
就不够好,其有最高正净现值的方案就是最佳投资方案。
(2) 第 5 年的累计的成本现值+收益现值是¥319,666。
该项目具有经济可行性。其最终的净现值为正,说明项目能够回收投入的成
本。
【问题 2】
投资回收分析技术用于确定投资是否可以收回以及什么时候收回。在自然增长的收益超
过自然增长和持续付出的成本之前的那一段时间被称为投资回收期。根据表 5-1 给出的数
据,该项目的投资回收期是()年(从 A、B、C、D 四个选项中选择一个)。
A.1-2
B.2-3
C.3-4
D.4-5
【答案】
由上表计算出的数据可知,在第 2~3 年时,收益已经超过了所投入的成本。所以,该项
目的投资回收期为 2~3 年。选择 B。
【问题 3】
一个项目的投资回报率 ROI(Return of Investment)是度量企业从一项投资中获得的
回报总量与投资总量之间的关系的百分率。根据表 5-1 给出的数据,计算该项目的全生存期
的投资回报率(lifetime ROI)和年平均投资回报率(annual ROI)。
【答案】