1、电子商务系统分析与设计练习试卷 1 及答案解析(总分:56.00,做题时间:90 分钟)一、选择题(总题数:19,分数:56.00)1.选择题()下列各题 A、B、C、D 四个选项中,只有一个选项是正确的,请将此选项涂写在答题卡相应位置上,答在试卷上不得分。_2.在开发一个系统时,如果用户对系统的目标不是很清楚,需求难以定义,这时最好使用_。(分数:2.00)A.原型法B.瀑布模型法C.V-模型D.螺旋模型3._用来描述数据的流程。(分数:2.00)A.数据字典B.数据流图C.程序流程图D.甘特图4.软件开发中的瀑布模型典型地刻画了软件生存周期的阶段划分,与其相适应的软件开发方法是_。(分数:
2、2.00)A.构件化方法B.结构化方法C.面向对象方法D.快速原型方法5.下述任务中,不属于软件工程需求分析阶段的是_。(分数:2.00)A.分析软件系统的数据要求B.确定软件系统的功能需求C.确定软件系统的性能要求D.确定软件系统的运行平台6.软件设计的主要任务是设计软件的构造、过程和模块,其中软件结构设计的主要任务是要确定_。(分数:2.00)A.模块间的操作细节B.模块间的相似性C.模块间的组成关系D.模块间的具体功能7.在结构化分析方法中,数据字典是重要的文档。对加工的描述是数据字典的组成内容之一,常用的加工描述方_。(分数:2.00)A.只有结构化语言B.有结构化语言和判定树C.有结
3、构化语言和判定树和判定表D.判定树和判定表8.在面向数据流的设计方法中,一般把数据流图中的数据流划分为_两种。(分数:2.00)A.数据流和事物流B.变换流和数据流C.变换流和事物流D.控制流和事物流9.系统中模块的_不仅意味着作用于系统的小变动将导致行为上的小变化,也意味着规格说明的小变动将影响到一小部分模块。(分数:2.00)A.可分解性B.保护性C.可理解性D.连续性10.下面关于面向对象方法中消息的叙述,不正确的是_。(分数:2.00)A.键盘、鼠标、通信端口、网络等设备一有变化,就会产生消息B.操作系统不断向应用程序发送消息,但应用程序不能向操作系统发送消息C.应用程序之间可以相互发
4、送消息D.发送与接收消息的通信机制与传统的子程序调用机制不同11.面向对象技术中,对象是类的实例。对象有三种成分:_属性和方法(或操作)。(分数:2.00)A.标识B.规则C.封装D.消息12.在使用 UML 建模时,若需要描述跨多个用例的单个对象的行为,使用_是最为合适的。(分数:2.00)A.协作图(collaboration Diagram)B.序列图(Sequence Diagram)C.活动图(Activity Diagram)D.状态图(Statechart Diagram)(1)的任务是根据系统说明书中规定的功能要求,具体设计实现逻辑模型的技术方案,这个阶段形成的技术文档是(2)
5、。(分数:4.00)A.系统分析阶段B.系统规划阶段C.系统实施阶段D.系统设计阶段A.需求建议书B.系统设计说明书C.系统维护手册D.系统测试分析报告常见的开发模型有瀑布模型、演化模型、螺旋模型、喷泉模型等。其中(1)适用于需求明确或很少变更的项目,(2)模型主要用来描述面向对象的软件开发过程。(分数:4.00)A.瀑布模型B.演化模型C.螺旋模型D.喷泉模型A.瀑布模型B.演化模型C.螺旋模型D.喷泉模型关于程序模块优化的启发式规则有若干条,以下规则中不符合优化原则的是(1)。如果一个模块调用下层模块时传递一个数据结构,则这种耦合属于(2)。(分数:4.00)A.通过模块的合并和分解,降低
6、模块的耦合度,提高模块的内聚性B.提高上层模块的扇出,减少模块调用的层次C.将模块的作用范围限制在模块的控制范围之内D.降低模块之间接口的复杂性,避免“病态连接”A.简单耦合B.直接耦合C.标记耦合D.控制耦合软件设计包括四个既独立又相互联系的活动,分别为(1)、(2)、数据设计和过程设计。(分数:4.00)A.用户手册设计B.语言设计C.体系结构设计D.文档设计A.文档设计B.程序设计C.实用性设计D.接口设计OMT 定义了三种模型来描述系统。(1)可以用状态图来表示;(2)可以用数据流图来表示。(3)为上述两种模型提供了基本的框架。(分数:6.00)A.对象模型B.功能模型C.动态模型D.
7、类模型A.对象模型B.功能模型C.动态模型D.类模型A.对象模型B.功能模型C.动态模型D.类模型软件开发的螺旋模型综合了瀑布模型和演化模型的优点,还增加了(1)。采用螺旋模型时,软件开发沿着螺线自内向外旋转,每转一圈都要对(2)进行识别和分析,并采取相应的对策。螺旋线第一圈的开始点可能是一个(3)。从第二圈开始,一个新产品开发项目开始了,新产品的演化沿着螺旋线进行若干次迭代,一直运转到软件生命期结束。(分数:6.00)A.版本管理B.可行性分析C.风险分析D.系统集成A.系统B.计划C.风险D.工程A.原型项目B.概念项目C.改进项目D.风险项目UML 结构包括了基本构造块,公共机制和(1)
8、。UML 中提供了扩展机制,其中,构造型(Stereotype)扩展了UML 的(2),约束(Constraint)扩展了 UML(3)。(分数:6.00)A.把这些构造块放在一起的规则B.图形或文字修饰C.类与对象的划分以及接口与实现的分离D.描述系统细节的规格说明A.构造块的特性,允许创建详述元素的新信息B.构造块的语义,允许增加新的规则或修改现有的规则C.语意,允许创建新的构造块D.词汇,允许创建新的构造块A.构造块的特性,允许创建详述元素的新信息B.构造块的语义,允许增加新的规则或修改现有的规则C.语意,允许创建新的构造块D.词汇,允许创建新的构造块电子商务系统分析与设计练习试卷 1
9、答案解析(总分:56.00,做题时间:90 分钟)一、选择题(总题数:19,分数:56.00)1.选择题()下列各题 A、B、C、D 四个选项中,只有一个选项是正确的,请将此选项涂写在答题卡相应位置上,答在试卷上不得分。_解析:2.在开发一个系统时,如果用户对系统的目标不是很清楚,需求难以定义,这时最好使用_。(分数:2.00)A.原型法 B.瀑布模型法C.V-模型D.螺旋模型解析:解析:在开发一个系统时,如果用户对系统的目标不是很清楚,需求难以定义,这时最好使用原型化方法,先根据用户基本需求快速构建系统原型,随着用户或开发人员对系统理解的加深而不断地对这些需求进行补充和细化,通过正常的迭代而
10、避免非正常的反复,使系统原型逐步完善,并使有关各方直接感受并最终接受系统原型,这样可以有效地降低开发费用,加快开发进度,并降低开发风险。3._用来描述数据的流程。(分数:2.00)A.数据字典B.数据流图 C.程序流程图D.甘特图解析:解析:数据流图用来描述数据流从输入到输出的变换流程。数据字典是关于数据的信息的集合,也就是对数据流图中包含的所有元素的定义的集合。程序流程图是一种描述程序处理流程的过程设计工具。甘特图则是一种简单的进度管理工具。4.软件开发中的瀑布模型典型地刻画了软件生存周期的阶段划分,与其相适应的软件开发方法是_。(分数:2.00)A.构件化方法B.结构化方法 C.面向对象方
11、法D.快速原型方法解析:解析:瀑布模型严格遵循软件生命周期各阶段的固定顺序:计划、分析、设计、编程、测试和维护,上一阶段完成后才能进入到下一阶段,整个模型就像一个飞流直下的瀑布,其相适应的软件开发方法是结构化方法。5.下述任务中,不属于软件工程需求分析阶段的是_。(分数:2.00)A.分析软件系统的数据要求B.确定软件系统的功能需求C.确定软件系统的性能要求D.确定软件系统的运行平台 解析:解析:需求分析阶段的主要任务是了解、分析、确定目标系统用户的需求,包括功能需求、性能需求、安全需求、界面需求、数据要求等。6.软件设计的主要任务是设计软件的构造、过程和模块,其中软件结构设计的主要任务是要确
12、定_。(分数:2.00)A.模块间的操作细节B.模块间的相似性C.模块间的组成关系 D.模块间的具体功能解析:解析:软件结构设计的主要任务就是设计程序的体系结构,也就是确定程序由哪些模块组成以及模块之间的关系。7.在结构化分析方法中,数据字典是重要的文档。对加工的描述是数据字典的组成内容之一,常用的加工描述方_。(分数:2.00)A.只有结构化语言B.有结构化语言和判定树C.有结构化语言和判定树和判定表 D.判定树和判定表解析:解析:加工逻辑描述了输入数据流、输入文件与输出数据流、输出文件之间的逻辑关系。常用的加工逻辑描述方法有三种:结构化语言、判定表和判定树。8.在面向数据流的设计方法中,一
13、般把数据流图中的数据流划分为_两种。(分数:2.00)A.数据流和事物流B.变换流和数据流C.变换流和事物流 D.控制流和事物流解析:解析:信息流大体可分为两种类型: (1)变换流。信息沿着输入通道进入系统,然后通过变换中心(也称主加工)处理,再沿着输出通道离开系统。具有这一特性的信息流称为变换流。具有变换流型的数据流图可明显地分成输入、变换(主加工)、输出三大部分。 (2)事务流。信息沿着输入通道到达一个事务中心,事务中心根据输入信息(即事务)的类型在若干个动作序列(称为活动流)中选择一个来执行,这种信息流称为事务流。事务流有明显的事务中心,各活动以事务中心为起点呈辐射状流出。9.系统中模块
14、的_不仅意味着作用于系统的小变动将导致行为上的小变化,也意味着规格说明的小变动将影响到一小部分模块。(分数:2.00)A.可分解性B.保护性C.可理解性D.连续性 解析:解析:模块的可分解性是指:如果一种设计方法提供了将问题分解成子问题的系统化机制,它就能降低整个系统的复杂性,从而实现一种有效的模块化解决方案。 模块的保护性是指:如果模块内部出现异常情况,并且它的影响限制在模块内部,则错误引起的副作用就会被最小化。 模块的可理解性是指:如果一个模块可以作为一个独立的单位(不用参考其他模块)被理解,那么它就易于构造和修改。 模块的连续性是指:如果对系统需求的微小修改只导致对单个模块而不是整个系统
15、的修改,则修改引起的副作用就会被最小化。10.下面关于面向对象方法中消息的叙述,不正确的是_。(分数:2.00)A.键盘、鼠标、通信端口、网络等设备一有变化,就会产生消息B.操作系统不断向应用程序发送消息,但应用程序不能向操作系统发送消息 C.应用程序之间可以相互发送消息D.发送与接收消息的通信机制与传统的子程序调用机制不同解析:解析:消息就是向对象发出的服务请求。应用程序之间可以相互发送消息,应用程序还可以向操作系统发送消息,所有 I/O 设备输入输出时也会产生消息。消息通信机制与传统的子程序调用机制不同,予程序被凋用是完全被动的,而消息的接收方是处理的主体。11.面向对象技术中,对象是类的
16、实例。对象有三种成分:_属性和方法(或操作)。(分数:2.00)A.标识 B.规则C.封装D.消息解析:解析:对象有三种成份:标识、属性和方法(或操作)。12.在使用 UML 建模时,若需要描述跨多个用例的单个对象的行为,使用_是最为合适的。(分数:2.00)A.协作图(collaboration Diagram)B.序列图(Sequence Diagram)C.活动图(Activity Diagram)D.状态图(Statechart Diagram) 解析:解析:UML 由五类九种图组成,需要充分理解每类图的使用场合、阶段,并要重点掌握依赖、泛化、关联三个关系在其中的沟通作用。 第一类是用
17、例图,从用户角度描述系统功能,并指出各功能的操作者。第二类是静态图,包括类图、对象图。其中类图描述系统中类的静态结构。对象图是类图的实例,几乎使用与类图完全相同的标识。它们的不同点在于对象图显示类的多个对象实例,而不是实际的类。 第三类是行为图,包括状态图和活动图,描述系统的动态模型和组成对象间的交互关系。其中状态图描述类的对象所有可能的状态以及事件发生时状态的转移条件。而活动图描述满足用例要求所要进行的活动以及活动间的约束关系,有利于识别并行活动。 第四类是交互图,包括顺序图和合作图,描述对象间的交互关系。其中顺序图显示对象之间的动态合作关系,它强调对象之间消息发送的顺序,同时显示对象之间的
18、交互;合作图描述对象间的协作关系,合作图跟顺序图相似,显示对象间的动态合作关系。 第五类是实现图,包括组件图和实施图。其中组件图描述代码部件的物理结构及各部件之间的依赖关系。实施图定义系统中软硬件的物理体系结构。它以实际的计算机和设备(用节点表示)以及它们之间的连接关系,也可显示连接的类型及部件之间的依赖性。由于单个对象在多个用例交付,状态不断在变化,故答案是 D。(1)的任务是根据系统说明书中规定的功能要求,具体设计实现逻辑模型的技术方案,这个阶段形成的技术文档是(2)。(分数:4.00)A.系统分析阶段B.系统规划阶段C.系统实施阶段D.系统设计阶段 解析:A.需求建议书B.系统设计说明书
19、 C.系统维护手册D.系统测试分析报告解析:解析:根据系统说明书中规定的功能要求,具体设计实现逻辑模型的技术方案,是系统设计阶段的任务。系统设计阶段形成的主要技术文档是系统设计说明书。常见的开发模型有瀑布模型、演化模型、螺旋模型、喷泉模型等。其中(1)适用于需求明确或很少变更的项目,(2)模型主要用来描述面向对象的软件开发过程。(分数:4.00)A.瀑布模型 B.演化模型C.螺旋模型D.喷泉模型解析:A.瀑布模型B.演化模型C.螺旋模型D.喷泉模型 解析:解析:瀑布模型严格遵循软件生命周期各阶段的固定顺序:计划、分析、设计、编程、测试和维护,上一阶段完成后才能进入到下一阶段,整个模型就像一个飞
20、流直下的瀑布。瀑布模型有许多优点:可强迫开发人员采用规范的方法;严格规定了各阶段必须提交的文档;要求每个阶段结束后,都要进行严格的评审。但瀑布模型过于理想化,而且缺乏灵活性,无法在开发过程中逐渐明确用户难以确切表达或一时难以想到的需求,直到软件开发完成之后才发现与用户需求有很大距离,此时必须付出高额的代价才能纠正这一偏差。 演化模型是一种原型化开发方法,其开发过程是从初始模型逐步演化为最终软件产品的渐进过程。 螺旋模型综合了瀑布模型和演化模型的优点,还增加了风险分析。螺旋模型包含四个方面的活动:制订计划、风险分析、实施工程、客户评估。这四项活动恰好可以放在一个直角坐标系的四个象限,而开发过程恰
21、好像一条螺旋线。采用螺旋模型时,软件开发沿着螺旋线自内向外旋转,每转一圈都要对风险进行识别和分析,并采取相应的对策。螺旋线第一圈的开始点可能是一个概念项目。从第二圈开始,一个新产品开发项目开始了,新产品的演化沿着螺旋线进行若干次迭代,一直运转到软件生命期结束。 喷泉模型主要用于描述面向对象的开发过程。喷泉一词体现了面向对象开发过程的迭代和无间隙特征。迭代意味着模型中的开发活动常常需要多次重复,每次重复都会增加或明确一些目标系统的性质,但却不是对先前工作结果的本质性改动。无间隙是指在开发活动(如分析、设计、编程)之间不存在明显的边界,而是允许各开发活动交叉、迭代地进行。关于程序模块优化的启发式规
22、则有若干条,以下规则中不符合优化原则的是(1)。如果一个模块调用下层模块时传递一个数据结构,则这种耦合属于(2)。(分数:4.00)A.通过模块的合并和分解,降低模块的耦合度,提高模块的内聚性B.提高上层模块的扇出,减少模块调用的层次 C.将模块的作用范围限制在模块的控制范围之内D.降低模块之间接口的复杂性,避免“病态连接”解析:A.简单耦合B.直接耦合C.标记耦合 D.控制耦合解析:解析:模块的扇入应尽量大,扇出不宜过大。一个模块的扇入是指直接调用该模块的上级模块的个数。一个模块的扇出是指该模块直接调用的下级模块的个数。扇入大表示模块的复用程度高,扇出大表示模块的复杂度高。 如果两个以上的模
23、块都需要某一数据结构时,不使用全局变量的方式而是借助于模块接口被传递,这种耦合称为标记耦合。软件设计包括四个既独立又相互联系的活动,分别为(1)、(2)、数据设计和过程设计。(分数:4.00)A.用户手册设计B.语言设计C.体系结构设计 D.文档设计解析:A.文档设计B.程序设计C.实用性设计D.接口设计 解析:解析:软件设计包括体系结构设计、接口设计、数据设计和过程设计。OMT 定义了三种模型来描述系统。(1)可以用状态图来表示;(2)可以用数据流图来表示。(3)为上述两种模型提供了基本的框架。(分数:6.00)A.对象模型B.功能模型C.动态模型 D.类模型解析:A.对象模型B.功能模型
24、C.动态模型D.类模型解析:A.对象模型 B.功能模型C.动态模型D.类模型解析:解析:OMT 方法的 OOA 模型包括对象模型、动态模型和功能模型。 对象模型表示静态的、结构化的系统的“数据”性质。它是对模拟客观世界实体的对象及对象彼此间的关系的映射,描述了系统的静态结构,通常用类图表示。 动态模型表示瞬时的、行为化的系统的“控制”性质,它规定了对象模型中对象的合法变化序列,通常用状态图表示。 功能模型表示变化的系统的“功能”性质,它指明了系统应该“做什么”,因此更直接地反映了用户对目标系统的需求,通常用数据流图表示。 对象模型为动态模型和功能模型提供了基本的框架。软件开发的螺旋模型综合了瀑
25、布模型和演化模型的优点,还增加了(1)。采用螺旋模型时,软件开发沿着螺线自内向外旋转,每转一圈都要对(2)进行识别和分析,并采取相应的对策。螺旋线第一圈的开始点可能是一个(3)。从第二圈开始,一个新产品开发项目开始了,新产品的演化沿着螺旋线进行若干次迭代,一直运转到软件生命期结束。(分数:6.00)A.版本管理B.可行性分析C.风险分析 D.系统集成解析:A.系统B.计划C.风险 D.工程解析:A.原型项目B.概念项目 C.改进项目D.风险项目解析:解析:螺旋模型是在瀑布模型和演化模型的基础上,加上两者所忽略的风险分析所建立的一种开发模型。螺旋线第一圈的开始点可能是一个概念项目。UML 结构包
26、括了基本构造块,公共机制和(1)。UML 中提供了扩展机制,其中,构造型(Stereotype)扩展了UML 的(2),约束(Constraint)扩展了 UML(3)。(分数:6.00)A.把这些构造块放在一起的规则 B.图形或文字修饰C.类与对象的划分以及接口与实现的分离D.描述系统细节的规格说明解析:A.构造块的特性,允许创建详述元素的新信息B.构造块的语义,允许增加新的规则或修改现有的规则C.语意,允许创建新的构造块D.词汇,允许创建新的构造块 解析:A.构造块的特性,允许创建详述元素的新信息B.构造块的语义,允许增加新的规则或修改现有的规则 C.语意,允许创建新的构造块D.词汇,允许
27、创建新的构造块解析:解析:UML 是一种语言,是一种可视化的语言,是一组图形符号,是面向对象建模的重要工具。学习用 UML 建模的需要掌握三个要素:UML 的基本构造块、这些构造块放在一起的规则、一些运用于整个UML 的公共机制。UML 中有四种贯穿整个语言且一致应用的公共机制,因此使得 UML 变得较为简单:这四种公共机制分别是详述、修饰、通用划分和扩展机制。 1详述:在建模的过程中,我们利用 UML 的图形表示对 BPEL4WS 系统进行可视化,利用 UML 的详述来描述 BPEL4WS 系统的细节问题。在文章前面提到的注释的问题实际上就是详述机制的问题,一个完备的 BPEL4WS 系统不
28、仅要包括完整的系统模型元素,还要有详细的详述才能称得上是一个健壮的系统。 2修饰:UML 表示法中的每一个元素都有一个基本符号,可以把各种修饰细节加到这个符号上以扩展其含义。在 BPEL4WS 系统中,我们可以较自由地对系统中的各个元素进行修饰以扩充其含义,但注意要保证这种扩充是在受控制的范围中。 3通用划分;在对 BPEL4WS系统建模时,我们可以采用两种通用划分的手段,一种是对类和对象的划分(类是一个抽象,而对象是这种抽象的一个具体形式);第二种是对接口和实现的分离(接口声明了一个契约,而实现则表示了对该契约的具体实施,它负责如实地实现接口的完整语义)。 4扩展机制:扩展机制是对已有的 U
29、ML 语义按不同系统的特点合理地进行扩展。UML 扩展机制又包括如下三种。 (1)构造型(Stereo type):我们在对BPEL4WS 系统建模的时候,会发现现有的 UML 构造块不能完整无歧义地表示出 BPEL4WS 系统中的每一元素,因此我们可以利用构造型来扩展 UML 的词汇,我们可以 利用它来创造新的构造块,这个新创造的构造块既可以从现有的构造块派生,又专门针对我们要解决的问题。 (2)标记值(Tagged value):利用标记值,我们可以扩展 UML 构造块的特性,我们可以根据我们的需要来创建详述元素的新元素。 (3)约束(Constraint):如果我们需要对 UML 构造块的语义进行扩展,我们就可以使用约束机制,这种机制使我们可以增加新的规则和修改现有的规则。