软件设计师软考软件设计师考点试题(下)相应的软考软件设计师考点试题(上)请百度搜索”软考软件设计师考点试题(上)”例题六下列关于内聚和耦合的描述中,错误的是__()__.A.内聚体现的是代码功能的集中程度B.耦合体现的是模块间联系的紧密程度C.通信内聚比逻辑内聚的内聚度更高D.数据耦合比公共耦合的耦合度更高试题六分析本题主要考查内聚与耦合的概念。高内聚、低耦合是软件设计的一个原则,其中内聚是指模块内部各元素之间联系的紧密程度,也就是代码功能的集中程度。耦合是指模块之间相互联系的紧密程度。模块的内聚类型通常可以分为7种,根据内聚度从高到低排序如表4-1所示。表4-17种内聚的描述对比模块的耦合性类型通常分为7种,根据耦合度从低到高排序如表4-2所示。表4-27种耦合的描述对比软件设计师综上所述,可知本题的答案应该选D.试题六答案:D试题七选项中,不属于可用性子特性的是__()__.A.可理解性B.易学性C.依从性D.可操作性试题七分析本题主要考查ISO/IEC9126的软件质量模型。其6个质量特性和21个质量子特性是我们要理解的内容。(1)功能性功能性是指与软件所具有的各项功能及其规定性质有关的一组属性,包括:适合性:与规定任务能否提供一组功能以及这组功能的适合程度有关的软件属性。适合程度的例子是面向任务系统中由子功能构成的功能是否合适、表容量是否合适等。准确性:与能否得到正确或相符的结果或效果有关的软件属性。此属性包括计算值所需的准确程度。软件设计师互操作性(互用性):与同其他指定系统进行交互的能力有关的软件属性。为避免可能与易替换性的含义相混淆,此处用互操作性(互用性)而不用兼容性。依从性:使软件遵循有关的标准、约定、法规及类似规定的软件属性。安全性:与防止对程序及数据的非授权的故意或意外访问的能力有关的软件属性。(2)可靠性可靠性是指在规定运行条件下和规定时间周期内,与软件维护其性能级别的能力有关的一组属性。可靠性反映的是软件中存在的需求错误、设计错误和实现错误而造成的失效情况。包括:成熟性:与由软件故障引起失效的频度有关的软件属性。容错性:与在软件故障或违反指定接口的情况下,维持规定的性能水平的能力有关的软件属性。指定的性能水平包括失效防护能力。可恢复性:与在失效发生后,重建其性能水平并恢复直接受影响数据的能力以及为达此目的所需的时间和努力有关的软件属性。(3)可用性可用性是指根据规定用户或隐含用户的评估所作出的与使用软件所需要的努力程度有关的一组属性。包括:可理解性:与用户为认识逻辑概念及其应用范围所花的努力有关的软件属性。易学性:与用户为学习软件应用(例如运行控制、输入、输出)所花的努力有关的软件属性。可操作性:与用户为操作和运行控制所花努力有关的软件属性。(4)效率软件设计师效率是指在规定条件下,与软件性能级别和所用资源总量之间的关系有关的一组属性。包括:时间特性:与软件执行其功能时响应和处理时间以及吞吐量有关的软件属性。资源特性:与在软件执行其功能时所使用的资源数量及其使用时间有关的软件属性。(5)可维护性可维护性是指与对软件进行修改的难易程度有关的一组属性。包括:可分析性:与为诊断缺陷或失效原因及为判定待修改的部分所需努力有关的软件属性。可改变性:与进行修改、排除错误或适应环境变化所需努力有关的软件属性。稳定性:与修改所造成的未预料结果的风险有关的软件属性。可测试性:与确认已修改软件所需的努力有关的软件属性。此子特性的含义可能会被研究中的修改加以改变。(6)可移植性可移植性是指与一个软件从一个环境转移到另一个环境运行的能力有关的一组属性。包括:适应性:与软件无须采用为该软件准备的活动或手段就可能适应不同的规定环境有关的软件属性。可安装性:与在指定环境下安装软件所需努力有关的软件属性。遵循性(一致性):使软件遵循与可移植性有关的标准或约定的软件属性。可替换性:与软件在该软件环境中用来替代指定的其他软件的机会和努力有关的软件属性。为避免可能与互操作性(互用性)的含义相混淆,此处用可替换性而不用兼容性。特定软件的可替换性并不隐含此软件可由所考虑的软件所替代。可替换性可能包含可安装性和软件设计师适应性这两个属性。由于此概念的重要性,它已被采用作为一个独立的子特性。试题七答案:C例题八以下关于开发模型的描述中,不正确的是__()__.A.软件开发模型是指软件开发全部过程、活动和任务的结构框架B.喷泉模型主要用于描述面向对象的开发过程C.瀑布模型严格规定了各阶段必须提交的文档D.螺旋模型结合了瀑布模型和快速原型模型的优点试题八分析瀑布模型严格遵循软件生命周期各阶段的固定顺序:计划、分析、设计、编程、测试和维护,上一阶段完成后才能进入到下一阶段,整个模型就像一个飞流直下的瀑布。瀑布模型有许多优点:可强迫开发人员采用规范的方法;严格规定了各阶段必须提交的文档;要求每个阶段结束后,都要进行严格的评审。但瀑布模型过于理想化,而且缺乏灵活性,无法在开发过程中逐渐明确用户难以确切表达或一时难以想到的需求,直到软件开发完成之后才发现与用户需求有很大距离,此时必须付出高额的代价才能纠正这一偏差,这一开发模型主要适用于需求非常明确的应用。喷泉模型主要用于描述面向对象的开发过程,喷泉一词体现了面向对象开发过程的迭代和无间隙特征。迭代意味着模型中的开发活动常常需要多次重复,每次重复都会增加或明确一些目标系统的性质,但却不是对先前工作结果的本质性改动。无间隙是指在开发活动(如分析、设计、编程)之间不存在明显的边界,而是允许各开发活动交叉、迭代地进行。软件设计师快速原型模型对于许多需求不够明确的项目,比较适合采用该模型。它采用了一种动态定义需求的方法,通过快速地建立一个能够反映用户主要需求的软件原型,让用户在计算机上使用它,了解其概要,再根据反馈的结果进行修改,因此能够充分体现用户的参与和决策。原型化人员对原型的实施很重要,衡量他们的重要标准是能否从用户的模糊描述中快速地获取实际的需求。演化模型也是一种原型化开发方法,但与快速原型模型略有不同。在快速原型模型中,原型的用途是获知用户的真正需求,一旦需求确定了,原型即被抛弃。而演化模型的开发过程,则是从初始模型逐步演化为最终软件产品的渐进过程。也就是说,快速原型模型是一种抛弃式的原型化方法,而演化模型则是一种渐进式的原型化方法。螺旋模型结合了瀑布模型和演化模型的优点,最主要的特点在于加入了风险分析。它是由制订计划、风险分析、实施工程、客户评估这一循环组成的,它最初从概念项目开始第一个螺旋,这种开发模型将风险分析作为一个单独的阶段来做,比较适合风险较大的大中型的软件开发项目。综上所述,可知本题的答案应选D.试题八答案:D例题九希赛公司的财务系统功能基本完善,但由于系统比较老旧,需要二次开发,这时应该采用__()__.A.原型法B.瀑布模型C.V-模型D.螺旋模型试题九分析软件设计师结合试题八的分析,我们可以知道,原型法适用于需求不明确的开发,瀑布模型适用于需求明确的开发,而螺旋模型适用于风险较大的大中型开发项目。在本题中,财务系统是已经存在的,而且功能完善,因此如果做二次开发的话,其基本需求应该是明确的,这个时候应该采用瀑布模型开发。试题九答案:B例题十UP的基本特征是用例驱动、以架构为中心的和受控的迭代式增量开发.UP将一个周期的开发过程划分为4个阶段,其中__()__开发剩余的构件。A.初始阶段B.精化阶段C.构建阶段D.提交阶段试题十分析统一过程(UP)的基本特征是用例驱动、以架构为中心的和受控的迭代式增量开发.一个UP可分为若干个周期,每个周期的开发过程被分为4个阶段,每个阶段可进行若干次迭代。UP将一个周期的开发过程划分为如下的4个阶段。(1)初始阶段:该阶段的主要任务包括确定项目范围和边界,识别系统的关键用例,展示系统的侯选架构,估计项目费用和时间,评估项目风险。其意图是建立项目的范围和版本,确定业务实现的可能性和项目目标的稳定性。提交结果包括原始的项目需求和业务用例。(2)精化阶段:该阶段的主要任务包括分析系统问题领域,建立软件架构基础,淘汰最高风险元素。其意图是对问题域进行分析,建立系统的需求和架构,确定技术实现的可行性和系统架构的稳定性。提交结果包括系统架构及其相关文档、领域模型、修改后的业务用软件设计师例和整个项目的开发计划。(3)构建阶段:该阶段相对简单一些,其主要任务包括资源管理、控制和流程优化,开发剩余的构件,然后进行构件组装和测试等。其主要意图是增量式地开发一个可以交付用户的软件产品。(4)提交阶段:该阶段的主要任务包括进行β测试,制作发布版本,用户文档定稿,确认新系统,获取用户反馈,培训、调整产品使最终用户可以使用产品。其主要意图是将软件产品提交用户。从以上描述中可以看出,在构建阶段才开发剩余的构件,所以正确答案为C.试题十答案:C