当前位置:文档之家› 面向对象方法题库1-0-5

面向对象方法题库1-0-5

面向对象方法题库1-0-5问题:[单选]当()时,用例是捕获系统需求最好的选择。

A.系统具有很少的用户B.系统具有很少的接口C.系统算法复杂,功能单一D.系统有很多参与者用例描述的是系统的执行者(参与者)与系统的交互,同时也是开发人员与用户进行交流的工具,可用来很好地定义系统的边界。

所以,当执行者较多的时候,用例是捕获系统需求最好的选择。

问题:[单选]对OO系统的技术度量的识别特征,Berard定义了导致特殊度量的特征。

其中()抑制程序构件的操作细节,只有对访问构件必需的信息被提供给其他希望访问的构件。

A.局部化B.封装C.信息隐藏D.继承面向对象的软件和用传统方法开发的软件有本质的不同,为此,对OO系统的技术度量必须调整以适应那些区别OO和传统软件的特征。

Berard定义了5个导致特殊度量的特征,分别是局部化、封装、信息隐蔽、继承和对象抽象技术。

(1)局部化。

局部化是软件的一个特征,它指明信息在程序中被集中的方式,例如,针对功能分解的传统方法围绕功能局部化信息,它们典型地以过程模块来实现。

数据驱动方法围绕特定的数据结构局部化信息。

在OO语境中,信息是通过封装数据和处理在类或对象的边界内而集中的。

因为传统软件强调函数为局部化机制,软件度量着重于函数的内部结构或复杂性(例如,模块长度、内聚性或环路复杂性等)或函数间相互连接的方式(例如,模块耦合)。

因为类是OO系统的基本单位,所以,局部化是基于对象的,因此,度量应该应用于作为一个完全实体的类(对象)。

此外,在操作(函数、方法)和类间的关系不必要是一对一的。

因此,反应类协作方式的度量必须能够适应一对多和多对一的关系。

(2)封装。

Berard定义封装为“一组项的包装(或捆绑在一起),(对传统软件的)低层封装例子包括记录和数组,而子程序(例如,过程、函数、子例程和段落)是封装的中层机制”。

对OO系统,封装包含了类的责任,包括其属性(和针对聚合对象的其他类)和操作,以及由特定的属性值定义的类的状态。

封装通过将测度的焦点从单个模块改变到数据(属性)和处理模块(操作)包而影响度量。

此外,封装鼓励在高抽象层的测度。

将此层次的抽象同传统的度量相比较,传统的着重于布尔条件的计数或代码行数。

(3)信息隐蔽。

信息隐蔽隐瞒(或隐藏)程序构件的操作细节,只将对访问该构件必须的信息提供给那些希望访问它的其他构件。

良好设计的OO系统应该鼓励信息隐蔽,因此,指明隐蔽所达到程度的度量应该提供了对OO设计质量的一个指标。

(4)继承。

继承是使得某对象的责任能够传播到其他对象的机制,继承出现在类层次的所有层面上,通常,传统的软件不支持该特征。

因为继承是很多OO系统的关键特征,所以很多OO度量是关注于它的。

(5)抽象。

抽象是使得设计者能够关注程序构件(数据或过程)的本质性细节而不须考虑低层细节的机制。

如Berard所说:“抽象是一个相对概念,当我们移向更高的抽象级别时,我们忽略了越来越多的细节;当我们移向抽象的低层时,我们引入了更多的细节,即我们提供了概念或项的更特定的视图”。

因为类是一种抽象,它可以在很多不同的细节级别上并以一系列不同的方式(例如,作为一个操作列表、作为一个状态序列、作为一系列协作)来观察,所以OO度量用类的测度(例如,每个应用的每个类的实例数、每个应用的参数化类数以及参数化类和非参数化类的比率)来表示抽象。

问题:[单选]博学公司欲开发一个在线交易系统。

为了能够精确表达用户与系统的复杂交互过程,应该采用UML的()进行交互过程建模。

A.类图B.序列图C.部署图D.对象图显然,为了能够精确地表达用户与系统的复杂交互过程,应该使用交互图。

在UML中,交互图包括顺序图、交互概览图、通信图和定时图。

顺序图也称为序列图,强调消息的时间次序;通信图强调消息流经的数据结构;定时图强调消息跨越不同对象或角色的实际时间;交互概览图是活动图和顺序图的一个综合体。

(羽毛球教学 /)问题:[单选]UML是面向对象开发方法的标准化建模语言。

采用UML对系统建模时,用()模型描述系统的功能,等价于传统的系统功能说明。

A.分析B.设计C.用例D.实现显然,采用UML对系统建模时,使用用例模型来描述系统的功能。

问题:[单选,共用题干题]在计算机系统中,某一功能的处理时间为整个系统运行时间的50%,若使该功能的处理速度加快10倍,根据Amdahl定律,这样做可以使整个系统的性能提高(1)倍。

若要使整个系统的性能提高1.5倍,则该功能的处理速度应加快(2)倍。

空白(1)处应选择()A.A.1.6B.1.7C.1.8D.1.9Amdahl定律表明:利用这一公式,代入fe=0.5,re=10,可以得到系统的加速比为1.8左右。

当加速比要求为1.5时,利用上述公式,可以算出该功能部件的加速比为3倍。

问题:[单选]以下关于改进信息系统性能的叙述中,正确的是()A.将CPU时钟周期加快一倍,能使系统吞吐率增加一倍B.一般情况下,增加磁盘容量可以明显缩短作业的平均CPU处理时间C.如果事务处理平均响应时间很长,首先应注意提高外围设备的性能D.利用性能测试工具,可以找出程序中最花费运行时间的20%代码,再对这些代码进行优化系统吞吐率不单是取决于CPU的速度,还与内外存交换速度、磁盘存取速度等计算机的基本性能有关,也与应用程序的性能有关。

因此,A是错误的。

增加磁盘容量与CPU处理时间没有直接的关系,所以,B也是错误的。

如果事务处理平均响应时间很长,就需要我们去分析其中的原因,然后根据原因采取相应的措施。

如果是因为外围设备导致系统瓶颈,才去提高外围设备的性能。

因此,C是错误的。

根据20-80法则,一个程序中20%的代码使用了该程序所占资源的80%;一个程序中20%的代码占用了总运行时间的80%;一个程序中20%的代码使用了该程序所占内存的80%。

从这个规律出发,我们在做程序优化的时候,就有了针对性。

比如想提高代码的运行速度,根据这个规律可以知道其中20%的代码占用了80%的运行时间,因此我们只要找到这20%的代码,并进行相应的优化,那么我们程序的运行速度就可以有较大的提高。

要想找出那20%的代码,我们可以使用性能测试工具,检查程序中各个模块所分配内存的使用情况,以及每个函数所运行的时间等。

问题:[单选]下列关于UML叙述正确的是()A.UML是一种语言,语言的使用者不能对其扩展B.UML仅是一组图形的集合C.UML仅适用于系统的分析与设计阶段D.UML是独立于软件开发过程的UML是一个通用的可视化建模语言,用于对软件进行描述、可视化处理、构造和建立软件系统的文档。

它记录了对必须构造的系统的决定和理解,可用于对系统的理解、设计、浏览、配置、维护和信息控制。

UML是独立于软件开发过程的,它适用于各种软件开发方法、软件生命周期的各个阶段、各种应用领域,以及各种开发工具,UML是一种总结了以往建模技术的经验并吸收当今优秀成果的标准建模方法。

UML包括概念的语义,表示法和说明,提供了静态、动态、系统环境及组织结构的模型,它允许用户对其进行扩展。

它可被交互的可视化建模工具所支持,这些工具提供了代码生成器和报表生成器。

UML标准并没有定义一种标准的开发过程,但它适用于迭代式的开发过程。

它是为支持大部分现存的面向对象开发过程而设计的。

UML不是一种可视化的编程语言,但是UML 描述的模型可与各种编程语言直接相连,即可把用UML描述的模型映射成编程语言。

问题:[单选]UML是面向对象开发方法的标准化建模语言。

采用UML对系统建模时,用()模型描述系统的功能,等价于传统的系统功能说明。

A.分析B.设计C.用例D.实现显然,采用UML对系统建模时,使用用例模型来描述系统的功能。

问题:[单选]博学公司欲开发一个在线交易系统。

为了能够精确表达用户与系统的复杂交互过程,应该采用UML的()进行交互过程建模。

A.类图B.序列图C.部署图D.对象图显然,为了能够精确地表达用户与系统的复杂交互过程,应该使用交互图。

在UML中,交互图包括顺序图、交互概览图、通信图和定时图。

顺序图也称为序列图,强调消息的时间次序;通信图强调消息流经的数据结构;定时图强调消息跨越不同对象或角色的实际时间;交互概览图是活动图和顺序图的一个综合体。

问题:[单选]对OO系统的技术度量的识别特征,Berard定义了导致特殊度量的特征。

其中()抑制程序构件的操作细节,只有对访问构件必需的信息被提供给其他希望访问的构件。

A.局部化B.封装C.信息隐藏D.继承面向对象的软件和用传统方法开发的软件有本质的不同,为此,对OO系统的技术度量必须调整以适应那些区别OO和传统软件的特征。

Berard定义了5个导致特殊度量的特征,分别是局部化、封装、信息隐蔽、继承和对象抽象技术。

(1)局部化。

局部化是软件的一个特征,它指明信息在程序中被集中的方式,例如,针对功能分解的传统方法围绕功能局部化信息,它们典型地以过程模块来实现。

数据驱动方法围绕特定的数据结构局部化信息。

在OO语境中,信息是通过封装数据和处理在类或对象的边界内而集中的。

因为传统软件强调函数为局部化机制,软件度量着重于函数的内部结构或复杂性(例如,模块长度、内聚性或环路复杂性等)或函数间相互连接的方式(例如,模块耦合)。

因为类是OO系统的基本单位,所以,局部化是基于对象的,因此,度量应该应用于作为一个完全实体的类(对象)。

此外,在操作(函数、方法)和类间的关系不必要是一对一的。

因此,反应类协作方式的度量必须能够适应一对多和多对一的关系。

(2)封装。

Berard定义封装为“一组项的包装(或捆绑在一起),(对传统软件的)低层封装例子包括记录和数组,而子程序(例如,过程、函数、子例程和段落)是封装的中层机制”。

对OO系统,封装包含了类的责任,包括其属性(和针对聚合对象的其他类)和操作,以及由特定的属性值定义的类的状态。

封装通过将测度的焦点从单个模块改变到数据(属性)和处理模块(操作)包而影响度量。

此外,封装鼓励在高抽象层的测度。

将此层次的抽象同传统的度量相比较,传统的着重于布尔条件的计数或代码行数。

(3)信息隐蔽。

信息隐蔽隐瞒(或隐藏)程序构件的操作细节,只将对访问该构件必须的信息提供给那些希望访问它的其他构件。

良好设计的OO系统应该鼓励信息隐蔽,因此,指明隐蔽所达到程度的度量应该提供了对OO设计质量的一个指标。

(4)继承。

继承是使得某对象的责任能够传播到其他对象的机制,继承出现在类层次的所有层面上,通常,传统的软件不支持该特征。

因为继承是很多OO系统的关键特征,所以很多OO度量是关注于它的。

(5)抽象。

抽象是使得设计者能够关注程序构件(数据或过程)的本质性细节而不须考虑低层细节的机制。

如Berard所说:“抽象是一个相对概念,当我们移向更高的抽象级别时,我们忽略了越来越多的细节;当我们移向抽象的低层时,我们引入了更多的细节,即我们提供了概念或项的更特定的视图”。

相关主题