计算机考点例题三.docx
- 文档编号:11273007
- 上传时间:2023-02-26
- 格式:DOCX
- 页数:31
- 大小:92.83KB
计算机考点例题三.docx
《计算机考点例题三.docx》由会员分享,可在线阅读,更多相关《计算机考点例题三.docx(31页珍藏版)》请在冰豆网上搜索。
计算机考点例题三
第3章软件工程基础
考点1:
软件工程基本概念★★★★
考点点拨:
主要考查软件定义与特点,软件危机与软件工程,软件工程过程与生命周期,软件工程的目标与原则,软件开发工具与开发环境。
【试题1】软件工程研究的内容主要包括:
技术和软件工程管理。
答案:
软件开发
分析:
软件工程的目标是:
在给定成本、进度的前提下,开发出具有有效性、可靠性、可理解性、可维护性、可重用性、可适应性、可移植性、可跟踪性和可互操作性并且满足用户需求的产品。
软件工程是计算机软件的一个重要分支和研究方向。
软件工程的理论和技术性研究的主要内容包括软件开发技术和软件工程管理。
理论链接:
软件开发技术和软件工程管理
(1)软件开发技术
软件开发技术包括:
软件开发方法、开发过程、开发工具和软件工程环境,其中软件开发方法是主体内容。
(2)软件工程管理
软件工程管理是软件按工程化生产时的重要环节,它要求按照预先制定的计划、进度和预算执行,以实现预期的经济效益和社会效益。
主要包括:
软件管理学、软件工程经济学、软件心理学等内容。
【试题2】下列叙述中,正确的是。
A)软件就是程序清单
B)软件就是存放在计算机中的文件
C)软件应包括程序清单以及运行结果
D)软件包括程序和文档
答案:
D
分析:
从软件工程的观点看,软件是程序以及开发、使用和维护程序所需的所有文档的总和,广义地说,所有使用软件的技能也属于软件的范畴。
软件分系统软件和应用软件两种。
理论链接:
软件
计算机软件是计算机系统中与硬件相互依存的重要部分,它是包括程序、数据及相关文档的完整集合。
程序是软件开发人员根据用户需求开发的、用程序设计语言描述的、适合计算机执行的指令(语句)序列。
数据是使程序能正常操纵信息的数据结构。
文档是与程序开发、维护和使用有关的图文资料。
软件由程序和数据以及相关的文档组成。
【试题3】在软件生命周期中,能准确地确定软件系统必须做什么和必须具备哪些功能的阶段是。
A)概要设计B)详细设计C)可行性分析D)需求分析
答案:
D
分析:
需求分析阶段的任务是确定待开发软件的功能、性能、数据、界面等要求,从而确定系统的逻辑模型。
需求分析阶段产生的文档有需求规约(requirementsspecification),习惯上称它为需求规格说明书。
理论链接:
软件生命周期
任何一个软件产品或软件系统都要经历软件定义、软件开发、软件维护直至被淘汰这样一个全过程,我们把软件的这一全过程称为软件生存周期。
主要包括:
软件定义、软件开发和软件运行维护三个阶段。
软件定义阶段主要解决的问题是待开发的软件要“做什么”,也就是要确定软件的处理对象,软件与外界的接口,软件的功能和性能,界面以及有关的约束和限制。
软件定义阶段通常可分成系统分析、软件项目计划、需求分析等阶段。
软件开发阶段主要解决的问题是该软件“怎么做”,包括数据结构和软件结构的设计,算法设计,编写程序,测试,最后得到可交付使用的软件。
软件开发阶段通常可分成软件设计、编码、测试等阶段。
软件开发阶段结束后,软件即可交付使用。
软件的使用通常要持续几年甚至几十年,在整个使用期间,都可能因为某种原因而修改软件,这便是软件维护。
【试题4】下面不属于软件工程的3个要素之一的是。
A)工具B)过程C)方法D)环境
答案:
D
分析:
软件工程的3个要素是方法、工具和工程。
(1)方法是完成软件工程项目的技术手段。
(2)工具支持软件的开发、管理、文档生成。
(3)过程支持软件开发的各个环节的控制、管理。
【试题5】软件是程序、数据和的集合。
答案:
文档
分析:
软件是计算机系统中与硬件相互依存的重要部分,它是包括程序、数据及相关文档的完整集合。
【试题6】软件开发环境是全面支持软件开发全过程的集合。
答案:
软件工具
分析:
软件开发环境是全面支持软件开发全过程的软件工具集合。
这些软件工具按照一定的方法或模式组合起来,支持软件生命周期内的各个阶段和各项任务的完成。
其宗旨是为计算机软件的生产提供计算机辅助手段,改变长期以来懂得手工式生产方式,以提高软件产品的生产率,降低软件开发成本和改善软件的质量。
计算机辅助软件工程(CASE)是当前软件开发环境中富有特色的研究工作和发展方向。
它将各种软件工具、软件开发技术和软件开发系统集成到一个统一而一致的框架中,形成软件工程环境。
【试题7】瀑布模型(WaterfallModel)突出的缺点是不适应的变动。
A)算法B)平台C)程序语言D)用户需求
答案:
D
分析:
瀑布模型将软件生命周期的各项活动规定为依固定顺序连接的若干阶段工作,形如瀑布流水,最终得到软件产品。
其优点是强调开发的阶段性;强调早期计划及需求调查;强调产品测试。
其缺点是依赖于早期进行的惟一一次需求调查,不能适应需求的变化,不适应于用户需求的变动,因为其结构上下存在依赖性和连续性;由于是单一流程,开发中的经验教训不能反馈应用于本产品的过程;风险往往迟至后期的开发阶段才显露,因而失去及早纠正的机会。
【试题8】在编写程序时,应采纳的原则之一是。
A)不限制goto语句的使用B)减少或取消注解行
C)程序越短越好D)程序结构应有助于读者理解
答案:
D
分析:
在编写程序时,应使程序正确、可靠、可测试、可维护、可扩充,程序结构应有助于读者理解。
【试题9】软件工程过程是把输入转化为输出的一组彼此相关的和活动。
答案:
资源
分析:
根据ISO9000定义,软件工程过程是把输入转化为输出的一组彼此相关的资源和活动。
(1)软件工程过程是指为了获得软件产品,在软件工具支持下由软件工程师完成的一系列软件工程活动。
一般包含以下4种基本活动。
●P(plan):
软件的规格说明。
主要规定软件的功能及其运行时间的限制。
●D(do):
软件开发。
产生满足规格说明的软件。
●C(check):
软件确认。
主要确认软件能否满足客户提出的要求。
●A(action):
软件演进。
为满足客户的变更要求,软件必须在使用的过程中演进。
(2)从软件开发的观点看,软件工程过程是使用适当的资源,为开发软件进行的一组开发活动,在过程结束时将输入(用户要求)转化为输出(软件产品)。
【试题10】软件生命周期一般包括可行性研究与、设计、实现、测试、交付使用以及维护等活动。
答案:
需求分析
分析:
我们将软件产品从提出、实现、使用维护到停止使用甚至退役的过程称为软件生命周期。
任何一个软件产品或软件系统都要经历软件定义、软件开发、软件维护直至被淘汰这样一个全过程。
软件生命周期一般包括可行性研究与需求分析、设计、实现、测试、交付使用以及维护等活动。
【试题11】软件工程的原则包括抽象、、模块化、局部化、确定性、一致性、完备性和可验证性。
答案:
信息隐蔽
分析:
软件工程的原则包括抽象、信息隐蔽、模块化、局部化、确定性、一致性、完备性和可验证性。
(1)抽象:
抽象是人类在认识复杂问题的过程中所使用的最有力的思维工具,它抽取出事物的本质特性而暂时不考虑它的细节。
采用分层次抽象,自顶向下,逐层细化的办法控制软件开发过程的复杂性。
(2)信息隐蔽:
信息隐蔽是开发整体程序结构时使用的规则,即将每个程序的成分隐蔽或封装在一个单一的设计模块中,使模块接口尽可能简单。
(3)模块化:
模块是程序中相对独立的成分,一个独立的编程单位,应有良好的接口定义。
每个模块完成一个相对独立的特定子功能,并且与其他模块之间的联系简单。
(4)局部化:
局部化就是希望每个模块都是高内聚低耦合,有助于控制解的复杂性。
(5)确定性:
软件开发过程中所有的概念表达应是确定的、无歧义且规范的。
(6)一致性:
包括程序、数据和文档的整个软件系统的各个模块应使用已知的概念、符号和术语;程序内外部接口应保持一致,系统规格说明与系统行为应保持一致。
(7)完备性:
软件系统完全实现系统所需功能,不丢失任何重要部分。
(8)可验证性:
系统分解应遵循容易检查、测评、评审的原则,以确保系统的正确性。
考点2:
结构化分析方法★★★
考点点拨:
主要考查需求分析的概念与需求分析的方法,结构化分析方法,软件需求规格说明书的基本概念。
【试题12】结构化方法的核心和基础是。
答案:
结构化程序设计理论
分析:
结构化方法目前已经成为系统的、成熟的软件开发方法之一。
主要包括结构化分析方法、结构化设计方法和结构化编程方法,其核心和基础是结构化程序设计理论。
【试题13】数据流程图(DFD)中的箭头代表的是。
A)数据流B)控制流C)调用关系D)组成关系
答案:
A
分析:
数据流程图(DFD)是描述数据处理过程的工具,是需求理解的逻辑模型的图形表示,它直接支持系统的功能建模。
在数据流程图中,表示数据流;○表示加工;表示文件;表示源、潭,是系统和环境的接口,属系统之外的实体。
表示存储。
理论链接:
数据流程图的建立
建立数据流程图的步骤如下:
(1)从外向里:
先画系统的输入输出,然后画系统的内部。
(2)自顶向下:
顺序完成顶层、中间层、底层数据流程图。
(3)逐层分解。
顶层主要描述软件的作用范围,对总体功能、输入、输出进行抽象描述,并反映软件和系统、环境的关系。
【试题14】数据流程图用于抽象描述一个软件的逻辑模型,数据流程图由一些特定的图符构成。
下列图符名表示的图符不属于数据流程图合法图符的是。
A)控制流B)加工C)数据存储D)源和潭
答案:
A
分析:
数据流程图由一些特定的图符构成。
主要有加工、数据存储、源和潭和数据流等4种合法图符。
【试题15】在数据流程图(DFD)中,带有名字的箭头表示。
A)模块之间的调用关系B)程序的组成成分
C)控制程序的执行顺序D)数据的流向
答案:
D
分析:
在数据流程图(DFD)中,带有名字的箭头表示数据的流向。
沿箭头方向传送数据的通道,一般在箭头旁边标注数据流名。
【试题16】下列工具中为需求分析常用工具的是。
A)PADB)PFDC)N-SD)DFD
答案:
D
分析:
结构化分析常用工具有数据流程图(DFD)、数据字典(DD)、判定树和判定表。
数据字典是结构化分析方法的核心。
它对所有与系统相关的数据元素的一个有组织的列表,以及精确的、严格的定义,使得用户和系统分析员对于输入、输出、存储成分和中间计算结果有共同的理解。
数据字典把不同的需求文档和分析模型紧密地结合在一起,与各模型的图形表示配合,能清楚地表达数据处理的要求。
问题分析图(PAD,problemanalysisdiagram)是日立公司提出的图形描述工具。
PAD符合自顶向下逐步求精的原则,也符合结构化程序设计的思想,同时能够方便地从PAD转换成程序语言的源程序代码。
N-S图是由Nassi和Shneiderman提出的一种符合结构化程序设计原则的图形描述工具。
使用判定树进行描述时,应先从问题定义的文字描述中分清哪些是判定的条件,哪些是判定的结论,根据描述材料中的连接词找出判定条件之间的从属关系、并列关系、选择关系,并根据这些来构造判定树。
判定表与判定树相似,当数据流程图中的加工要依赖于多个逻辑条件的取值,即完成该加工的一组动作是由于某一组条件取值的组合而引发的,使用判定表描述比较适宜。
【试题17】Jackson方法是一种面向的结构化方法。
答案:
数据结构
分析:
Jackson设计方法是由英国的M.Jackson提出的,它是一种典型的面向数据结构的设计方法,以数据结构作为设计的基础,根据输入/输出数据结构导出程序的结构,适合用于规模不大的数据处理系统。
【试题18】在结构化方法中,软件功能分解属于下列软件开发中的阶段。
A)详细设计B)需求分析C)总体设计D)编程调试
答案:
C
分析:
总体设计主要包括总体布局、设计原则、模块结构设计、数据存储设计、系统配置方案等。
软件功能分解属于总体设计的阶段。
【试题19】软件需求分析阶段的工作,可以分为四个方面:
需求获取,需求分析,编写需求规格说明书,以及。
A)阶段性报告B)需求评审C)总结D)都不正确
答案:
B
分析:
需求分析阶段的工作,可以概括为四个方面:
需求获取,需求分析,编写需求规格说明书,以及需求评审。
(1)需求获取:
其目的是确定对目标系统的各方面需求。
主要任务是建立获取用户需求的方法框架,并支持和监控需求获取的过程。
(2)需求分析:
对获取的需求进行分析和综合,最终给出系统的解决方案和目标系统的逻辑模型。
(3)编写需求规格说明书:
需求规格说明书作为需求分析的阶段成果,可以为用户、分析人员和设计人员之间的交流提供方便,可以直接支持目标软件系统的确认,又可以作为控制软件开发过程的依据。
(4)需求评审:
是需求分析的最后一步,对需求分析阶段的工作进行复审,验证需求文档的一致性、可行性、完整性和有效性。
理论链接:
需求分析方法
常见的需求分析方法有:
(1)结构化分析方法,主要包括:
面向数据流的结构化分析(structuredanalysis,SA)方法,面向数据结构的Jackson方法,面向数据结构的结构化数据系统开发方法(DSSD)。
(2)面向对象分析方法OOA(Object-OrientedAnalysis)。
面向对象分析,就是抽取和整理用户需求并建立问题域精确模型的过程。
【试题20】是对软件系统所必须解决的问题作出的详细说明。
A)功能描述B)性能描述
C)数据描述D)参考文献目录
答案:
C
分析:
数据描述是对软件系统所必须解决的问题作出的详细说明。
功能描述中描述了为解决用户问题所需要的每一项功能的过程细节。
对每一项功能要给出处理说明和在设计时需要考虑的限制条件。
在性能描述中说明系统应达到的性能和应该满足的限制条件,检测的方法和标准,预期的软件响应和可能需要考虑的特殊问题。
参考文献目录中应包括与该软件有关的全部参考文献,其中包括前期的其他文档、技术参考资料、产品目录手册以及标准等。
附录部分包括一些补充资料。
如列表数据、算法的详细说明、框图、图表和其他材料。
【试题21】在结构化分析方法中,用于描述系统中所用到的全部数据和文件的文档称为。
答案:
数据字典
分析:
数据字典是结构化分析方法的核心。
它对所有与系统相关的数据元素的一个有组织的列表,以及精确的、严格的定义,使得用户和系统分析员对于输入、输出、存储成分和中间计算结果有共同的理解。
数据字典把不同的需求文档和分析模型紧密地结合在一起,与各模型的图形表示配合,能清楚地表达数据处理的要求。
【试题22】是需求分析阶段的最后成果。
答案:
软件需求规格说明书
分析:
软件需求规格说明书是需求分析阶段的最后成果,是软件开发中的重要文档之一。
编写软件需求规格说明书是确保软件质量的有力措施,软件需求规格说明书是一份在软件生命周期中至关重要的文件,它在开发早期就为尚未诞生的软件系统建立了一个可见的逻辑模型,它可以保证开发工作的顺利进行,因而应及时地建立并保证它的质量。
作为设计的基础和验收的依据,软件需求规格说明书应该是精确而无歧义性的,需求说明书越精确,则以后出现错误、混淆、反复的可能性越小。
用户能看懂需求说明书,并且发现和指出其中的错误是保证软件系统质量的关键,因而需求说明书必须简明易懂,尽量少包含计算机的概念和术语,以便用户和软件人员双方都能接受它。
理论链接:
软件需求规格说明书的特点
衡量软件需求规格说明书质量好坏的标准:
(1)正确性。
体现待开发系统的真实要求。
(2)无歧义性。
对每一个需求只有一种解释,其陈述具有惟一性。
(3)完整性。
包括全部有意义的需求,功能、性能、设计、约束及属性或外部接口等方面的需求。
(4)可验证性。
描述的每一个需求都是可以验证的,即存在有限代价的有效过程验证确认。
(5)一致性。
各个需求的描述不矛盾。
(6)可理解性。
需求说明书必须简明易懂,尽量少包含计算机的概念和术语,以便用户和软件人员都能接受它。
(7)可修改性。
SRS的结构风格在需求有必要改变时是易于实现的。
(8)可跟踪性。
每一个需求的来源、流向是清晰的,当产生和改变文件编制时,可以方便地引证每一个需求。
考点3:
结构化设计方法★★★
考点点拨:
主要考查软件设计的基本概念,概要设计与详细设计的概念。
【试题23】下面不属于软件设计原则的是。
A)抽象B)模块化C)自底向上D)信息隐蔽
答案:
C
分析:
适用于在软件设计中应该遵循的基本原则有以下几个。
(1)抽象:
抽象是一种思维工具,就是把事物本质的共同特性提取出来而不考虑其他细节。
软件设计中考虑模块化解决方案时,可以定出多个抽象级别。
抽象的层次从概要设计到详细设计逐步降低。
在软件概要设计中的模块分层也是由抽象到具体逐步分析和构造出来的。
(2)模块化:
模块是指把一个待开发的软件分解成若干小的简单的部分。
如高级语言中的过程、函数、子程序等。
每个模块可以完成一个特定的子功能,各个模块可以按一定的方法组装起来成为一个整体,从而实现整个系统的功能。
模块化是指解决一个复杂问题时自顶向下逐层把软件系统划分成若干模块的过程。
为了解决复杂的问题,在软件设计中必须把整个问题进行分解来降低复杂性,这样就可以减少工作量并降低开发成本和提高软件生产率。
但是划分模块并不是越多越好,因为这会增加模块之间工作量,所以划分模块的层次和数量应该避免过多或过少。
(3)信息隐蔽:
信息隐蔽是指在一个模块内包含的信息(过程或数据),对于不需要这些信息的其他模块来说是不能访问的。
(4)模块独立性:
模块独立性是指每个模块只完成系统要求的独立的子功能,并且与其他模块的联系最少最简单。
模块的独立程度是评价设计好坏的重要度量标准。
衡量软件的模块独立性使用耦合性和内聚定性的度量标准。
理论链接:
软件设计的基本概念
软件设计是软件工程的重要阶段,是一个把软件需求转换为软件表示的过程。
软件设计的基本目标是用比较抽象概括的方式确定目标系统如何完成预定的任务,即软件设计是确定系统的物理模型。
软件设计的重要性和地位概括为以下几点。
(1)软件开发阶段(设计、编码、测试)占据软件项目开发总成本绝大部分,是在软件开发中形成质量的关键环节。
(2)软件设计是开发阶段最重要的步骤,是将需求准确地转化为完整的软件产品或系统的惟一途径。
(3)软件设计作出的决策,最终影响软件实现的成败。
(4)设计是软件工程和软件维护的基础。
【试题24】在结构化设计方法中生成的结构图(SC)中,带有箭头的连线表示。
A)模块之间的调用关系B)程序的组成成分
C)控制程序的执行顺序D)数据的流向
答案:
A
分析:
常用的软件结构设计工具是结构图(SC,structurechart),也称程序结构图。
使用结构图描述软件系统的层次和分块结构关系,它反映了整个系统的功能实现以及模块与模块之间的联系与通讯,是未来程序中的控制层次体系。
结构图是描述软件结构的图形工具。
在结构图中模块用一个矩形表示,矩形内注明模块的功能和名字;箭头表示模块问的调用关系。
在结构图中还可以用带注释的箭头表示模块调用过程中来回传递的信息。
如果希望进一步标明传递的信息是数据还是控制信息,则可用带实心圆的箭头表示传输的是控制信息,用带空心圆的箭头表示传递的是数据。
【试题25】为了使模块尽可能独立,要求。
A)模块的内聚程度要尽量高且耦合程度要尽量强
B)模块的内聚程度要尽量高且耦合程度要尽量弱
C)模块的内聚程度要尽量低且耦合程度要尽量弱
D)模块的内聚程度要尽量低且耦合程度要尽量强
答案:
B
分析:
为了使模块尽可能独立,模块分解时应满足信息隐蔽原则。
尽量使模块的内聚度高,模块间的耦合度低。
模块的大小适中(通常一个模块以50~100个语句行最为适宜)。
【试题26】下列叙述中,正确的是。
A)接口复杂的模块,其耦合程度一定低
B)耦合程度弱的模块,其内聚程度一定低
C)耦合程度弱的模块,其内聚程度一定高
D)上述三种说法都不对
答案:
C
分析:
耦合是指模块之间联系的紧密程度。
耦合度越高则模块的独立性越差。
内聚是指模块内部各元素之间联系的紧密程度。
例如一个完成多个功能的模块的内聚度就比完成单一功能的模块的内聚度低。
内聚度越低模块的独立性越差。
因此,模块独立就是希望每个模块都是高内聚低耦合的。
如图3.1所示。
图3.1内聚度与模块的独立性的关系
【试题27】耦合和内聚是评价模块独立性的两个主要标准,其中反映了模块内各成分之间的联系。
答案:
内聚
分析:
内聚性是一个模块内部各个元素间彼此结合的紧密程度的度量。
内聚是从功能角度来衡量模块内各成分之间联系的。
模块的内聚通常也分成7种,下面按内聚度从低到高的次序依次介绍。
(1)偶然内聚:
如果一个模块完成一组任务,这组任务彼此间即使有关系,其关系也是很松散的,这个模块属于偶然内聚。
(2)逻辑内聚:
如果一个模块完成逻辑上相关的一组任务,这个模块是逻辑内聚的。
例如,产生与类型无关的全部输出的模块。
(3)瞬时内聚:
如果一个模块所包含的任务必须在同一时间间隔内执行,这个模块属于瞬时内聚。
例如初始化模块。
(4)过程内聚:
如果一个模块的处理元素是相关的,而且必须按特定的次序执行,这个模块属于过程内聚。
(5)通信内聚:
如果一个模块的所有处理元素集中在一个数据结构的区域上,该模块属于通信内聚。
例如,一个模块中的所有处理元素使用同一输入数据。
(6)顺序内聚:
如果一个模块的处理元素是相关的,而且必须顺序执行,这个模块属于顺序内聚。
(7)功能内聚:
如果一个模块完成一个单一的功能,模块中的各部分在此目标下协同工作,而且都是为完成这一功能而不可缺少的,那么这个模块是功能内聚的。
耦合是指模块之间联系的紧密程度。
耦合度越高则模块的独立性越差。
两个模块之间的耦合方式通常有如下7种,按它们的耦合度从低到高的次序依次如下:
(1)非直接耦合:
是指两个模块没有直接关系,它们之间的联系完全通过主模块的控制和调用来实现的,则称这两个模块为非直接耦合。
其独立性最强。
(2)数据耦合:
若一模块访问另一模块,被访问模块的输入输出都是数据项参数,即两模块间通过数据参数交换信息,则这两个模块为数据耦合。
(3)标记耦合:
若两个以上的模块都需要其余某一数据结构子结构时,不使用其余全局变量的方式,而是用记录传递的方式,即两模块间通过数据结构交换信息。
(4)控制耦合:
若一模块明显地把开关量、名字等信息送入另一模块,控制另一模块的功能,则为控制耦合。
(5)外部耦合:
一组模块都访问同一全局简单变量(而不是同一全局数据结构),且不通过参数表传递全局变量的信息,称为外部耦合。
(6)公共耦合:
若一组模块都访问同一全局数据结构,则它们之间的耦合称为公共耦合。
(7)内容耦合:
如一个模块直接访问另一模块的内容,则这两个模块称为内容耦合。
【试题28】数据流程图的类型有和事务型两种。
答案:
变换型
分析:
典型的数据流类型有两种:
变换型和事务型。
(1)变换型。
变换型是指信息沿输入通路进入系统,同时由外部形式变换成内部形式,进入系统的信息通过变换中心,经加工处理以后再沿输出通路变换成外部形式离开软件系统。
变换型数据处理问题的工作过程大致分为三步,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机 考点 例题