2010年软件设计师考试复习资料 (42页完美打印版)
(29) A. 提供严格定义的文档 B. 加快需求的确定 C. 简化项目管理 D. 加强用户参与和决策 (30) A. 熟练的开发人员 B. 完整的生命周期 C. 较长的开发时间 D. 明确的需求定义 (31) A. 丰富的编程技巧 B. 灵活使用开发工具 C. 很强的协调组织能力 D. 快速获取需求
●软件能力成熟度模型 CMM(CapabilityMaturityModel)描述和分析了软件过程能力的发展与改进的程度,确立了一个软件过程成熟程度的分级标准。在初始级,软件过程定义几乎处于无章法可循的状态,软件产品的成功往往依赖于个人的努力和机遇。
在__(32)__,已建立了基本的项目管理过程,可对成本、进度和功能特性进行跟踪。在。__(33)__,用于软件管理与工程两方面的软件过程均已文档化、标准化,并形成了整个软件组织的标准软件过程。在已管理级,对软件过程和产品质量有详细的度量标准。
在__(34)__,通过对来自过程、新概念和新技术等方面的各种有用信息的定量分析,能够不断地、持续地对过程进行改进。 (32) A.可重复级 B.管理级 C.功能级 D.成本级 (33) A.标准级 B.已定义级 C.可重复级 D.优化级 (34) A.分析级 B.过程级 C.优化级 D.管理级 2003年试题
● 系统中模块的__(l)__不仅意味着作用于系统的小变动将导致行为上的小变化,也意味着规格说明的小变动将影响到一小部分模块。 (1) A. 可分解性 B. 保护性 C. 可理解性 D. 连续性
●软件开发的螺旋模型综合了瀑布模型和演化模型的优点,还增加了__(27)__。采用螺旋模型时,软件开发沿着螺线自内向外旋转,每转一圈都要对__(28)__ 进行识别和分析,并采取相应的对策。螺旋线第一圈的开始点可能是一个__(29)__ 。从第二圈开始,一个新产品开发项目开始了,新产品的演化沿着螺旋线进行若干次迭代,一直运转到软件生命期结束。
(27) A. 版本管理 B.可行性分析 C. 风险分析 D. 系统集成 (28) A.系统 B.计划 C. 风险 D.工程 (29) A.原型项目 B.概念项目 C. 改进项目 D风险项目
●关于程序模块优化的启发式规则有若干条,以下规则中不符合优化原则的是__(30)__。如果一个模块调用下层模块时传递一个数据结构,则这种耦合属于__(31)__。
(30)A.通过模块的合并和分解,降低模块的耦合度,提高模块的内聚性 B.提高上层模块的扇出,减少模块调用的层次
C.将模块的作用范围限制在模块的控制范围之内 D.降低模块之间接口的复杂性,避免“病态连接” (31)A.简单耦合 B.直接耦合 C.标记耦合 D.控制耦合
●软件设计包括四个既独立又相互联系的活动,分别为__(32)__、__(33)__、数据设计和过程设计。 (32)A.用户手册设计 B.语言设计 C.体系结构设计 D.文档设计 (33)A.文档设计 B.程序设计 C.实用性设计 D.接口设计
●系统论认为系统是“相互作用的多个元素的复合体”,系统具有多元性、相关性以及整体性,其中(35)是系统思想的核心。 (35)A.动态性 B.多元性 C.相关性 D.整体性
●美国卡内基—梅隆大学SEI提出的CMM模型将软件过程的成熟度分为5个等级,以下选项中,属于可管理级的特征是__(36)__。 (36)A.工作无序,项目进行过程中经常放弃当初的计划B.建立了项目级的管理制度 C.建立了企业级的管理制度D.软件过程中活动的生产率和质量是可度量的 2004年上半年试题
●当在软件工程的环境中考虑风险时,主要基于Charette提出的三个概念。以下选项中不属于这三个概念的是__(27)__。项目风险关系着项目计划的成败,__(28)__关系着软件的生存能力。在进行软件工程风险分析时,项目管理人员要进行四种风险评估活动,这四种活动是 (29) 以及确定风险估计的正确性。
(27)A.关心未来 B.关心变化 C.关心技术 D.关心选择 (28)A.资金风险 B.技术风险 C.商业风险 D.预算风险 (29) A.建立表示风险概率的尺度,描述风险引起的后果,估计风险影响的大小
B.建立表示风险概率的尺度,描述风险引起的后果,确定产生风险的原因 C.确定产生风险的原因,描述风险引起的后果,估计风险影响的大小 D.建立表示风险概率的尺度,确定产生风险的原因,估计风险影响的大小 ●软件的互操作性是指__(30)__。
(30)A.软件的可移植性 B.人机界面的可交互性C.连接一个系统和另一个系统所需的工作量D.多用户之间的可交互性 ●面向对象的测试可分为四个层次,按照由低到高的顺序,这四个层次是__(31)__。
(31)A.类层——模板层——系统层——算法层 B.算法层——类层二—模板层——系统层 C.算法层——模板层——类层——系统层 D.类层——系统层——模板层——算法层
共42页 第31页
2010年软件设计师考试复习资料 (42页完美打印版)
●在选择开发方法时,有些情况不适合使用原型法,以下选项中不能使用快速原型法的情况是__(32)__。
(32)A.系统的使用范围变化很大 B.系统的设计方案难以确定 C.用户的需求模糊不清 D.用户的数据资源缺乏组织和管理 ●以下选项中,最适合于用交互式计算机软件解决的问题是__(34)__。
(34)A.非结构化决策问题 B.半结构化决策问题 C.结构化决策问题 D.确定性问题
●CMU/SEI推出的__(35)__将软件组织的过程能力分为五个成熟度级别,每一个级别定义了一组过程能力目标,并描述了要达到这些目标应该具备的实践活动。
(35)A.CMM B.PSP C.TSP D.SSE-CMM 2004年下半年: ? ?
软件开发中的瀑布模型典型的刻画了软件生存周期的阶段划分,与其最相适应的软件开发方法是__(9)__。 下述任务中,不属于软件工程需求分析阶段的是__(10)__。
(9)A.构件化方法 B.结构化方法 C.面向对象方法 D.快速原型法
(10)A.分析软件系统的数据要求 B.确定软件系统的功能需求 C.确定软件系统的性能要求 D.确定软件系统的运行平台 解析:
需求分析和定义:用户、项目负责人和系统分析师确定系统必须做什么?但不关心具体怎么做?要确定系统的功能、性能、数据、界面等要求,从而确定系统的逻辑模型。 ? ? ?
软件设计的主要任务是设计软件的结构、过程和模块,其中软件结构设计的主要任务是要确定__(11)__。
系统测试是将软件系统与硬件、外设和网络等其他因素结合,对整个软件系统进行测试。__(12)__不是系统测试的内容。 (12)A.路径测试 B.可靠性测试 C.安装测试 D.安全测试 项目管理工具中,将网络方法用于工作计划安排的评审和检查的是__(13)__。 (13)A.Gantt图 B.PERT网图 C.因果分析图 D.流程图 解析: PERT网图
(11)A.模块间的操作细节 B.模块间的相似性 C.模块间的组成关系 D.模块的具体功能
? ? ? ?
在结构化分析方法中,数据字典是重要的文档。对加工的描述是数据字典的组成内容之一,常用的加工描述方法__(14)__。 (14)A.只有结构化语言 B.有结构化语言和判定树 C.有结构化语言、判定树、判定表 D.有判定树和判定表 CMM模型将软件过程的成熟度分为5个等级。在__(15)__使用定量分析来不断地改进和管理软件过程。 在面向数据流的设计方法中,一般把数据流图中的数据划分为__(16)__两种。 OMT定义了三种模型来描述系统。_(49)_可
(15)A.优化级 B.管理级 C.定义级 D.可重复级
(16) A.数据流和事务流 B.变换流和数据流 C.变换流和事务流 D.控制流和事务流 以用状态图来表示;_(50)_可以用数据流图来表示。_(51)_为上述两种模型提供了基本的框架。 (49)A.对象模型 B.功能模型 C.动态模型 D.类模型 (50)A.对象模型 B.功能模型 C.动态模型 D.类模型 (51)A.对象模型 B.功能模型 C.动态模型 D.类模型 2005年上半年(8分): ?
下列叙述中,与提高软件可移植性相关的是___(18)____
共42页 第32页
A.选择时间效率高的算法 B.尽可能减少注释 C.选择空间效率高的算法 D.尽量用高级语言编写系统中对效率要求不高的部分
2010年软件设计师考试复习资料 (42页完美打印版)
?
在系统转换的过程中,旧系统和新系统并行工作一段时间,再由新系统代替旧系统的策略称为___(19)____;在新系统全部正式运行前,一部分一部分地代替旧系统的策略称为_____(20)_____。 (19)A.直接转换 B.位置转换 C.分段转换 D.并行转换 (20)A.直接转换 B.位置转换 C.分段转换 D.并行转换 ?
下列要素中,不属于DFD的是___(21)____。当使用DFD对一个工资系统进行建模时,____(22)_____可以被认定为外部实体。 供选择的答案:
(21)A.加工 B.数据流 C.数据存储 D.联系 (22)A.接收工资单的银行 B.工资系统源代码程序 C.工资单 D.工资数据库的维护 ●在系统验收测试中,____(23)____ 是在一个模拟的环境下使用模拟数据运行系统;__(24)___是在一个实际环境中使用真实数据运行系统。
供选择的答案:
(23)A.验证测试 B.审计测试 C.确认测试 D.模块测试 (24)A.验证测试 B.审计测试 C.确认测试 D.模块测试
●采用瀑布模型进行系统开发的过程中,每个阶段都会产生不同的文档。以下关于产生这些文档的描述中,正确的是____(25)_____。 供选择的答案:
A.外部设计评审报告在概要设计阶段产生B.集成测试计划在程序设计阶段产生
C.系统计划和需求说明在详细设计阶段产生D.在进行编码的同时,独立地设计单元测试计划 2005年下半年(10分): ? ?
在开发一个系统时,如果用户对系统的目标是不很清楚,难以定义需求,这时最好使用 (6) 。 应该在 (7) 阶段制定系统测试计划。 (6)A. 原型法 B. 瀑布模型 C. V-模型 D. 螺旋模型 (7)A. 需求分析 B. 概要设计 C. 详细设计 D. 系统测试 ?
代码走查(code walkthrough)和代码审查(code inspection)是两种不同的代码评审方法,这两种方法的主要区别是_(14)____。 供选择的答案:
(14)A.在代码审查中由编写代码的程序员来组织讨论,而在代码走查中由高级管理人员来领导评审小组的活动 B.在代码审查中只检查代码中是否有错误,而在代码走查中还要检查程序与设计文档的一致性 C.在代码走查中只检查程序的正确性,而在代码审查中还要评审程序员的编程能力和工作业绩 D.代码审查是一种正式的评审活动,而代码走查的讨论过程是非正式的 ?
在软件项目管理中可以使用各种图形工具来辅助决策,下面对Gannt图的描述不正确的是_____(15)____。 供选择的答案:
A.Gannt图表现各个活动的顺序和它们之间的因果关系 B.Gannt图表现哪些活动可以并行进行 C.Gannt图表现了各个活动的起始时间 D.Gannt图表现了各个活动完成的进度 ?
一个故障已经被发现,而且也被排除了,为了检查修改是否引起了其它故障,这时应该进行___(19)___。 供选择的答案:
(19)A.程序走查 B.退化测试 C.软件评审 D.接收测试 ?
一个系统的模块结构图如下所示,用{×,×,×}表示这个系统的测试模块组合。下面的选项中___(20)___表示自顶向下的测试,____(21)___表示三明治式测试。
供选择的答案: (20)
A.{A}{A,B,C,D,E}{A,B,C,D,E,F,G,H,I,J,K}
B.{F}{G}{H}{I}{J}{K}{B,F,G}{C,H}{D,I,J}{E,K}{A,B,C,D,E,F,G,H,I,J,K}
共42页 第33页
2010年软件设计师考试复习资料 (42页完美打印版)
C.{K}{J}{I}{H}{G}{F}{B}{C}{D}{E}{A,B,C,D,E,F,G,H,I,J,K}
D.{A}{F}{G}{H}{I}{J}{K}{B,F,G}{C,H}{D,I,J}{E,K}{A,B,C,D,E,F,G,H,I,J,K} (21)
A.{A}{A,B,C,D,E}{A,B,C,D,E,F,G,H,I,J,K}
B.{F}{G}{H}{I}{J}{K}{B,F,G}{C,H}{D,I,J}{E,K}{A,B,C,D,E,F,G,H,I,J,K} C.{K}{J}{I}{H}{G}{F}{B}{C}{D}{E}{A,B,C,D,E,F,G,H,I,J,K }
D.{A}{F}{G}{H}{I}{J}{K}{B,F,G}{C,H}{D,I,J}{E,K}{ A,B,C,D,E,F,G,H,I,J,K } ?
以下内容中,___(42)___应写入操作手册。 供选择的答案:
(42)A.描述系统对各种输入数据的处理方法 B.说明系统升级时厂商提供的服务 C.描述系统处理过程的各个界面 D.说明系统各部分之间的接口关系 ●某软件工程项目各开发阶段工作量的比例如下表所示
需求分析 0.29 概要设计 0.13 详细设计 0.17 编码 0.10 测试 0.31 假设当前已处于编码阶段,3000行程序已完成了1200行,则该工程项目开发进度已完成的比例是____(43)___。 供选择的答案:
(43)A.29% B.45% C.59% D.63% ?
关于维护软件所需的成本,以下叙述正确的是___(45)___。 供选择的答案:
A.纠正外部和内部设计错误比纠正源代码错误需要更大的成本
B.与需求定义相比,源代码的文字量大得多,所以源代码的维护成本更高 C.用户文档需要经常更新,其维护成本超过了纠正设计错误的成本
D.需求定义的错误会在设计时被发现并纠正,因此需求定义纠错的成本小于源代码纠错的成本
2006年上半年:
? 使用LOC (lines of code)度量软件规模的优点是___(9)___。
(9)A. 容易计算 B. 与使用的编程语言相关 C. 与使用的开发模型有关 D. 在设计之前就可以计算出LOC ? 渐增式开发方法有利于___(4)___。
(4)A. 获取软件需求 B. 快速开发软件 C. 大型团队开发 D.商业软件开发
● 在软件项目管理中可以使用各种图形工具来辅助决策,下面对Gantt图的描述中,不正确的是___(15)___。 A.Gantt图表现了各个活动的持续时间 B.Gantt图表现了各个活动的起始时间 C.Gantt图反映了各个活动之间伪依赖关系 D.Gantt图表现了完成各个活动的进度 ● 模块的耦合度描述了___(16)___。
(16)A.模块内各种元素结合的程度 B.模块内多个功能之间的接口 C.模块之间公共数据的数量 D.模块之间相互关联的程度 ● 内聚是一种指标,表示一个模块___(17)___。
(17)A.代码优化的程度 B.代码功能的集中程度
C.完成任务时及时程度 D.为了与其他模块连接所要完成的工作量 ● 在软件项目开发过程中,评估软件项目风险时,___(18)___与风险无关。
A.高级管理人员是否正式承诺支持该项目 B.开发人员和用户是否充分理解系练的需求 C.最终用户是否同意部署已开发的系统 D.开发需要的资金是否能按时到位
●最主要的软件质量度量指标有正确性、可维护性、完整性和可用性,下面关于这些质量指标的描述中正确的是___(26)___。 A.软件维护的工作量比开发阶段的工作量小 B.正确性用每千行代码的故障(fault)数来度量
C.软件完整性是指软件功能与需求符合的程度 D.可用性与用户的操作效率和用户对软件的主观评价有关 解析:
1.软件开发阶段的工作量占软件生命周期工作量的40%,而维护阶段的工作量则占60%甚至更多。 2.软件的正确性是指软件完成所需功能的程度,尽管这种程度与每千行代码的故障数有关,但不完全等同。 3.软件的完整性指软件在安全方面抗攻击的能力。 4.软件可用姓用来度量软件的“用户有好性”。
● 正式的技术评审FTR(Formal Technical Review)是软件工程师组织的软件质量保证活动,下面关于FTR指导原则中不正确的是__(28)__。
共42页 第34页
2010年软件设计师考试复习资料 (42页完美打印版)
(28)A.评审产品,而不是评审生产者的能力 B.要有严格的评审计划,并遵守日程安排
C.对评审中出现的问题要充分讨论,以求彻底解决 D.限制参与者人数,并要求评审会之前做好准备
● 两个小组独立地测试同一个程序,第一组发现25个错误,第二组发现30个错误,在两个小组发现的错误中有15个是共同的,那么可以估计程序中的错误总数是 (29) 个。 (29)A.25 B.30 C.50 D.60 解析:
对于第一小组:发现了第二组发现的错误的15/30=50%; 对于第二小组:发现了第一组发现的错误的15/25=60%; 根据第一组发现的错误数和第一组的效率得到: 25/50%=50;
根据第二组发现的错误数和第二组的效率得到: 30/60%=50;
● 下面有关测试的说法正确的是___(30)__。
A.测试人员应该在软件开发结束后开始介入B.测试主要是软件开发人员的工作
C.要根据软件详细设计中设计的各种合理数据设计测试用例D.严格按照测试计划进行,避免测试的随意性 ● 在绘制数据流图时,要遵循的一个原则是父图与子图的平衡,所谓平衡是指___(31)___。 (31)A.父图和子图都不得改变数据流的性质 B.子图不改变父图数据流的—致性
C.父图的输入/输出数据流与子图的输入/输出数据流一致 D.子图的输出数据流完全由父图的输入数据流确定● 下图中的程序由A、B、C、D、E 5个模块组成,下表中描述了这些模块之间的接口,每一个接口有一个编号。此外,模块A、D和E都要引用一个专用数据区。那么A和E之间耦合关系是___(32)___。
(32)A.公共耦合 B.数据耦合 C.内容耦合 D.无耦合 解析:
耦合是对一个软件结构内不同模块之间互连程度的度量。 耦合可以分成下列几种,它们之间的耦合度由高到低排列。 ?
内容耦合
直接操作或修改另一模块的数据,或不通过正常入口转入另一个模块。
软件设计时应坚决禁止内容耦合,应设计成单入口、单出口的模块,避免病态连接。 ? ? ? ? ?
公共耦合
多个模块引用同一全局数据区。例如,C语言中的external数据类型、磁盘文件等都是全局数据区。 外部耦合
模块与软件以外的环境有关联。例如,输入输出把一个模块与特定的设备、格式、通信协议耦合在一起。 控制耦合
一模块明显把开关量、名字等信息送入另一模块,控制另一模块的功能。 标记耦合
两个模块之间通过传递公共指针或地址相互作用的耦合。 数据耦合
模块间通过传递数据交换信息。
共42页 第35页