多项选择题

系统科学方法针对的是复杂性问题,而复杂性又是相对于人的能力而言的。要理解软件开发的复杂性和困难,就有必要先了解“人固有能力的局限性,以及使用工具后产生的力量“。下列哪些选项支撑这个观点?()

A.就体力而言,例如,目前跳高的世界纪录是2.45m(1993年,古巴人哈维尔·索托马约尔创造),而对一个普通的成年人来说,要想跳过1m的高度并不困难。现在,如果我们借鉴在算法复杂性分析中的“大O”表示,那么,显然,世界冠军与我们一般的成年人相比,其体力处在同一个数量级。
B.就脑力而言,要说人的能力处在同一个数量级更是让人难以接受。然而,如果能像体育运动那样明确比赛规则的话,就不得不接受人固有的脑力也处在同一个数量级的事实。比如,1加2加3一直加到N,规定必须一步一步相加,当N确定时,人们所花费的时间不会相差太多,更一般的,当用同一个算法解决同一个问题时,不同的人所花费的时间大致在一个数量级之中。换言之,在这种意义上,人的脑力处于同一个数量级。
C.既然人的体力和脑力极其有限,人固有的体力和脑力又处在同一个数量级上,那又如何解释人类在认知和改造客观世界中所产生的巨大力量?答案在于,依靠工具,人既能够创造工具又能够使用工具。
D.尽管人还未能跳过2.45m的高度,计算的速度也不快(智力本质上可以看作是一个认知过程,就时间而言,所有的智力过程都是不可逆的、确定的计算过程,也就是一种计算)。然而,若使用有形的工具,如飞机,人就可以飞得很高;使用无形的工具,如数学理论,就可以在较短的时间内解决一些复杂的计算问题。

相关考题

对软件的分析,可以从系统的角度,也可以从集合的角度来分析。因此,控制和降低软件的复杂度的问题就可以转化为如何降...


多项选择题对软件的分析,可以从系统的角度,也可以从集合的角度来分析。因此,控制和降低软件的复杂度的问题就可以转化为如何降低系统的复杂性,或更为基础地如何降低集合复杂性的问题。下列哪些选项能够有效地降低系统(或集合)的复杂性?()

A.要使一个集合的复杂性下降,就要想办法使它有序;而要使一个集合有序,最好的办法就是对它按等价类进行分割。
B.要使一个软件系统的复杂性下降,无非也是分割,就要将其进行分割,也就是将一个大系统划分为若干小的子系统,最终,使人们易于理解和交流。
C.系统软件开发中,要遵循抽象第一的原则。所谓抽象,就是要对实际的事物进行人为处理,抽取所关心的、共同的、本质特征的属性,并对这些事物及其特征属性进行描述。由于抽取的是共同的、本质特征的属性,从而大大降低了系统元素的绝对数量。
D.我们知道,一个系统就是一个集合。那么,一个系统的分解也就是一个集合的分解。在集合分解中,有一个称为等价类的重要概念,使用该概念可以将一个集合划分为若干互不相交的子集(等价类),从而降低了系统的复杂性。