You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

24 KiB

上图是(状态转换图)
需求规范说明书的内容不应包括(对算法的详细过程描述)
(变换型)数据处理问题的工作过程大致分为三步,即取得数据、变换数据和给出数据
瀑布模型中软件生命周期划分为8个阶段问题的定义、可行性研究、软件需求分析、系统总体设计、详细设计、编码、测试和运行维护。8个阶段又可归纳为三个大的阶段计划阶段、开发阶段和运行阶段
研究软硬件资源的有效性是进行(技术可行性)研究的一方面
在遵循软件工程原则开发软件过程中,计划阶段应该依次完成(系统定义、可行性研究、需求分析)
现需对一款软件的规模进行估算假设乐观估计规模为6000行代码可能估计为8000行代码悲观估计为10000行代码试问该软件规模估算值应为8000
动态模型的描述工具是(状态图)
分析对象的状态并画出状态转换图,目的是(准确地认识对象的行为)
在面向对象方法中,一个对象请求另一对象为其服务的方式是通过发送(消息)
技术可行性要解决(技术风险问题)
在需求分析中,开发人员要从用户那里解决的最重要问题是(要让软件做什么)
通过执行对象的操作改变对象的属性,但它必须通过(消息)的传递。
软件测试是保证软件质量的重要措施,它的实施应该在(软件开发全过程)
在程序的描述和分析中,用以指明数据来源、数据流向和数据处理的辅助图形是(数据流图)
功能模型中所有的(数据流图)往往形成一个层次结构。在这个层次结构中一个数据流图的过程可以由下一层的数据流图作进一步的说明
Jackson方法是一种面向数据结构的方法
如上图所示,在空白处依次填入三种内聚,顺序恰当的是(功能内聚,通信内聚,逻辑内聚)
软件结构图中,模块框之间若有直线连接,表示它们之间存在(调用关系)
黑盒测试方法根据(软件要完成的功能)设计测试用例
面向对象程序设计语言不同于其他语言的最主要特点是(继承性)
一个模块把开关量作为参数传送给另一模块,这两个模块之间的耦合是(控制耦合)
软件需求说明书在软件开发中具有重要作用,但其作用不应包括(软件可行性分析的依据)
与该数据流图相对应的IPO图为与该IPO图相对应的数据流图为
在确定类时,所有(名词 )是候选的类。
一个模块直接引用另一模块中的数据,这两个模块之间的耦合是(内容耦合)
数据流图是常用的进行软件需求分析的图形工具,其基本符号是(加工、数据流、数据存储和外部实体(源和宿))
如上图所示,依次填入三种耦合顺序恰当的是(数据耦合,特征耦合,控制耦合)
结构化分析(SA)方法将欲开发的软件系统分解为若干基本加工,并对加工进行说明,下述是常用的说明工具,其中便于对加工出现的组合条件的说明工具是(判定表、判定树 )
软件定义期的任务包括(需求分析、问题定义、可行性研究)
以下可作为与用户交流的工具有E-R图、数据流图
自顶向下结合的渐增式测试法,在组合模块时的组合策略有(深度优先策略、 宽度优先策略)
软件危机的主要原因有(软件本身的特点、缺乏好的开发方法和手段)
对象模型主要描述系统内部对象的静态结构,包括(对象的属性和操作、对象本身的定义、对象与对象之间的关系)
软件需求通常包括(功能需求、可靠性和可用性需求、出错处理需求、约束、逆向需求、将来可能提出的要求、性能需求、接口需求)
以下不属于形式化需求规格说明的方法是(数据流图、自然语言)
下面可以衡量程序的可维护性的是(可理解性、可修正性、可测试性、可移植性)
通常用(数据字典、状态转换图、实体-联系图、数据流图、主要处理算法)描述系统的逻辑模型
结构化分析与设计的英文简称分别是SASD
状态转换图用来描绘系统的(行为模型)
对象之间进行通信的构造叫做(消息)
软件工程方法学三要素分别是(方法)、(工具)和(过程)
为了识别和纠正在运行中产生的错误而进行的维护称为(改正性)维护
软件工程方法学分为(传统方法学)和面向对象方法学
软件工程方法学分为传统方法学和(面向对象方法学)
软件工程研究的主要内容包括(软件开发技术)和软件开发管理两个方面
子类自动共享父类的属性和操作的机制称为(继承)
面向对象分析与面向对象设计的的英文缩写分别是OOAOOD
需求分析阶段结束之前,系统分析员应该写出(需求规格说明书 ),以书面形式准确的描述软件需求
QUAD-ROOT函数为求解一元二次方程根的函数现有3种定义形式分别为QUAD-ROOTTBL, X,其中TBL为系数a,b和常数c构成的结构体X为两个根构成的结构体QUAD-ROOTa,b,c, X,其中a,b分别为一次项系数和二次项系数c为常数项X为两个根构成的结构体QUAD-ROOTa,b,c, r1,r2,其中a,b分别为一次项系数和二次项系数c为常数项r1和r2分别为方程的根。则以下说法正确的是第3种定义形式最优
需求分析过程中对算法的简单描述记录在IPO
模块独立性是软件模块化所提出的要求,衡量模块独立性的度量标准是模块的(内聚性和耦合性)
在软件维护工作中进行得最少的部分是(预防性维护)
软件设计中划分通常遵循的原则是要使模块间的耦合性尽可能(弱)
软件从一个计算机系统或环境转换到另一个计算机和环境的容易程度称为(可移植性)
上图红色区域表示结构化分析最核心的内容,应该是(数据字典)
软件生存周期模型有多种,下列选项中,(功能模型)不是软件生存周期模型
软件开发中常采用的结构化生命周期方法,由于其特征一般称其为(瀑布模型)
在面向数据流的软件设计方法中,一般将信息流分为(变换流和事务流)
在软件生命周期中维护阶段所占的工作量最大约占70%
软件生存周期中时间最长的阶段是(维护阶段)
准确地解决“软件系统必须做什么”是(需求分析)阶段的任务
软件开发环境支持—定的(软件开发方法)或按照一定的软件开发模型组织而成
瀑布模型的问题是(缺乏灵活性)
该模型是(实际的瀑布模型)(快速原型模型)
左图对应软件过程中的(传统瀑布模型)
程序的三种基本控制结构是(顺序、选择和重复)
软件生命周期可以划分为哪三个大阶段?(软件定义时期,软件开发时期,软件维护时期)
(功能)模型表示了对象的相互行为
如上图所示的三种软件结构叙述正确的是(第三种最合理)
有关计算机程序功能、设计、编制、使用的文字或图形资料称为(文档)
结构化程序流程图中一般包括三种基本结构,下述结构中(嵌套结构)不属于其基本结构
以下软件结构图的形态特征,(宽度、深度、扇出)不能反映程序重用率
耦合的强弱取决于(通过接口的信息、调用模块的方式、模块间接口的复杂程度)
以下说法正确的是(数据流图是用于建立功能模型的工具、实体联系图是用于建立数据模型的工具、状态转换图是用于描述行为模型的工具)
软件危机可以表现为(软件的可维护性差、软件产品的质量差、工作量估计困难,难以控制软件开发成本和进度、产品不符合用户的需要)
面向对象方法学要点包括(把所有对象都划分成各种对象类,每个类都定义一组数据和方法、对象之间仅通过互相传递消息联系、按照子类与父类的关系将若干个对象组织成一个层次结构的系统、认为客观世界是由各种对象组成,任何事物都是对象)
以下属于结构设计过程的是(审查和复审、设计软件结构、书写文档、功能分解、设计数据库、指定测试计划)
多态性通常是通过重载实现的,重载有(函数重载、运算符重载)
需求分析阶段所要编写的文档有(确认测试计划、初步用户使用手册、需求规格说明书)
下列属于不标准的书写格式(程序中不加注释、嵌套结构不使用分层缩进的写法、一行写入多条语句)
要把数据流图(DFD)转换成软件结构首先必须研究DFD的类型。各种软件系统一般可分为(变换型)和事务型两类
软件生存周期是指一个软件从提出开发要求开始直到该软件报废为止的整个时期。通常,软件生存周期包括(可行性研究)、(需求分析)、(概要设计)、(详细设计)、(编码)、(测试)、(维护)等活动,可以将这些活动以适当方式分配到不同阶段去完成
成本-效益分析首先是估算将要开发的系统的(开发成本),然后与可能取得的效益进行比较和权衡
模块的独立程度可以由(内聚)和(耦合)两个定性标准度量
(模块独立性)要求每个模块只完成一个相对独立的特定子功能,并且与其他模块的联系尽可能简单。
瀑布模型是将软件生存周期各个活动规定为依线性顺序连接的若干阶段的模型。它包括问题定义、(可行性研究)、需求分析、总体设计、详细设计、编码、测试、维护,它规定了由前至后、相互衔接的固定次序,如同瀑布流水,逐级下落
模块独立性是软件模块化所提出的要求,衡量模块独立性的度量标准是模块的(内聚性和耦合性)
软件开发中常采用的结构化生命周期方法,由于其特征一般称其为(瀑布模型)
软件开发环境支持一定的(软件开发方法)或按照一定的软件开发模型组织而成
程序的三种基本控制结构是(顺序、选择和重复)
应用执行对象的操作可以改变该对象的(属性)
白盒测试方法重视(测试覆盖率)的度量。
软件设计阶段一般又一可分为(概要设计与详细设计)
如上图所示事务流对应的软件结构图为()
常用动词或动词词组来表示(关联)
结构化程序设计主要强调的是(程序易读性)
在软件生存周期中,工作量所占比例最大的阶段是(维护)阶段
软件工程方法学三要素包括(方法、工具和过程)
软件生存周期包括可行性分析和项目开发计划、需求分析、概要设计、详细设计、编码、(测试)、维护等活动
判定表和判定树是数据流图中用以描述加工的工具,它通常描述的对象是(组合组件)
软件的集成测试最好由(不属于该软件开发组的软件设计人员)承担,以提高集成测试的效果
集成测试时,能较早发现高层模块接口错误的测试方法为(自顶向下渐增式测试)
模块内的某成分的输出是另一成分的输入,该模块的内聚度是(顺序性)的
对象具有封装性,实现了(操作、数据)的组合
使用面向对象方法开发软件,需要建立的模型是(对象模型、功能模型、动态模型)
假设C(x)表示处理问题x的复杂度E(x)表示处理问题x的开销C(P1)+C(P2)<C(P1+P2)、E(P1)+E(P2)<E(P1+P2)、若C(P1)>C(P2),则E(P1)>E(P2)
开发人员在选择面向对象语言时,应该着重考虑以下哪些因素(将来能否占主导地位、能提供给开发人员使用的、可重用性、类库和开发环境)。开发工具、开发平台、发行平台
面向对象语言的优点有(可重用性好、可维护性好、一致的表示方法)
面向对象建模主要任务是建立以下模型(对象模型、功能模型、动态模型)
瀑布模型本质上是一种(线性)顺序模型
ER图实体联系图E-R图e-r图实体与联系实体与联系图实体和联系实体和联系图是用于建立数据模型的工具
在单元测试中,测试一个模块时,需要设计(驱动模块)和桩模块
实体联系图用来描述系统的(数据模型)
开发软件工具的主要目的是为了提高软件生产率和改善(软件的质量)
结构化分析方法使用的描述工具(数据字典)定义了数据流图中每一个图形元素
关于需求分析阶段,下列说法正确的是(以上都对)
若一个计算类型的程序它的输入量只有一个Y其范围是[-10.00,10.00],现从输入的角度考虑一组测试例:-10.001-1.001.0010.001,设计这组测试用例的方法是(等价分类法)
表示对象的相互行为的模型是(动态)模型
所有的对象可以成为各种对象类,每个对象类都定义了一组(方法)
服务的名称应由动词和(名词)组成
结构化程序设计的一种基本方法是(逐步求精法)
以下选项中对面向对象技术描述最准确的是(面向对象=对象+类+继承+通信)
维护由引起的原因不同可分为几类,(适应性维护)是由于外部环境或数据库的环境的变化造成的
选择这些体系结构风格所考虑的因素不包括(数据分布和功能分布)
在整个软件维护阶段所花费的全部工作中,(完善性维护)所占的比例最大
在数据库技术中,独立于计算机系统的模型是(E-R模型)
估算软件规模的主要技术有(代码行技术、功能点技术)
常见的内聚类型有(时间内聚、逻辑内聚、过程内聚、通信内聚)
经过长期的经验积累,总结出一些软件设计的启发规则,以下说法正确的是(提高模块的独立性;模块的作用域应该在控制域范围之内;力争降低模块接口复杂度;深度、宽度应适中)
数据流图是用于表示软件模型的一种图示方法,在下列可采用的绘图方法中,(分层绘制、逐步求精、自顶向下)是常采用的
假设以上数据流图分解正确无误则有df5=df10+df11、df2=df7
软件开发期通常由哪些阶段组成(测试、编码、总体设计、详细设计)
为了使应用软件适应计算机硬件、软件及数据环境所发生的变化而修改软件的过程称为(适应性)维护
(可移植性)是指程序从一个计算机环境移植到另一个计算机环境的容易程度
数据流图用来描绘系统的(功能模型)
为增加软件功能、增强软件性能、提高软件运行效率而进行的维护活动称为(完善性)维护
测试用例由(输入数据)和预期的输出结果两部分组成
在数据流图中,不能被计算机处理的成分是(数据源/终点)
下列哪项不属于描绘软件结构的图形工具(层次方框图)
判定表和判定树是数据流图中用以描述加工的工具,它通常描述的对象是(组合组件)
顾客在下单后系统会生成订单信息。模块X负责将传入的Date类型数据转为String类型并且将Date类 型数据插入数据库的订单信息表中。上述描述中,存在的内聚为:(逻辑内聚)
程序控制-般分为(顺序)、分支、循环三种基本结构
经验表明,在程序测试中,某模块与其他模块相比,若该模块已发现并改正的错误较多,则该模块中残存的错误数目与其他模块相比,通常应该(较多)
在某大学学籍管理信息系统中假设学生年龄的输入范围为15-35则根据黑盒测试中的等价类划分技术下面划分正确的是可划分为2个有效等价类1个无效等价类
在用面向对象观点建立起的3种模型中对象模型是最基本、最重要、最核心的
敏捷过程的价值观包括(个体和交互胜过过程和工具、可以工作的软件胜过面面俱到的文档、客户合作胜过合同谈判、响应变化胜过遵循计划)
Jackson方法可用(顺序、选择、重复)基本结构来表示
详细设计阶段采用的工具包括PAD、NS、PDL
在设计人机界面时,应主要考虑的因素有(系统响应时间、错误处理、用户求助机制)
已知项目PA和项目PB的信息如上表且有生产率: PM =L/E,每千行代码的平均成本:CKL =S/L,文档与代码比: DI = Pd / L,代码出错率:EQRI = Ne / L。PB的平均成本高;PB的代码出错率高.
什么是软件危机?软件危机表现在哪些方面? 软件危机是指在计算机软件开发和维护过程中所遇到的一系列的严重问题。 具体表现在以下几方面: ①软件产品不符合用户的实际需要; ②软件开发生产率提高的速度远远不能满足客观需要; ③软件产品的质量差; ④对软件开发成本和进度的估计常常不准确; ⑤软件的可维护性差; ⑥软件文档资料通常不完整、不合格; ⑦软件的价格昂贵,软件成本在计算机系统总成本中所占的比例逐年上升。
以上选项中属于白盒测试技术的有(语句覆盖、判定覆盖、条件覆盖)
软件测试主要包括(软件编码、软件设计、软件计划)方面的差错和纠错
软件测试时需要输入的信息有(测试配置、软件配置)
假设数值范围[1,100]为有效等价类,则无效等价类应为:(-∞1100+∞)
软件调试活动有哪些组成(确定程序中可疑错误的确切性质和位置;对程序进行修改,排除这个错误)
采用黑盒技术设计测试用例的方法一般有(等价类划分、边界值分析、错课推测、因果图)
软件测试分哪几个步要进行(单元测试、集成测试、确认测试、系统测试)
动态测试方法中根据测试用例的设计方法不同,分为(黑盒测试、白盒测试)
程序功能说明中指出:由三个输入数据表示一个三角形的三条边长。根据黑盒法中的边缘值分析法设计测试用例,应选(a=1,b=2,c=3)
成功的测试是指(发现程序的错误)
现有一个计算类型的程序,它的输入只有一个Y,其范围是-50<=Y<=50,现从输入的角度考虑设计了一组测试用例:-100,100,0。设计这组测试用例的万法是(等价划分法)
在程序测试中,目前要为成功的测试设计数据,产生这些测试用例主要依赖于(白盒测试)
使用白盒测试方法时,确定测试数据应根据(程序的内部逻辑)和指定的覆盖标准
黑盒测试是从(用户)观点出发的测试,白盒测试是从(开发人员)观点出发的测试
定义属性活动不能推迟到OOD阶段
判断题:
一个加工只能表示一个程序。 ×
静态测试是指通过人工检测和计算机辅助静态分析的手段对程序进行检测,动态测试是指通过运行程序发现错误,因此动态测试比静态测试更先进,软件测试中通常仅仅采用静态测试方法。 ×
结构化方法由结构化分析、结构化设计和结构化程序设计构成。它是一种面向对象的开发方法。 ×
耦合衡量不同模块之间的联系紧密程度。
为了防止软件概要设计的错误传播到开发的后续阶段,在概要设计文档完成以后,要进行软件评审。
使用质量是基于开发人员观点的软件产品用于指定的环境和使用周境时的质量。 ×
面向对象的开发方法包括面向对象的分析OOA、面向对象的设计OOD和面向对象的程序设计OOP
测试程序时,人们可能根据经验或直觉推测程序中可能存在的各种错误,从而有针对性地编写检查这些错误的测试用例,这就是错误推测法。
外部质量是基于外部视角的软件产品特性的总体。
如果通过软件测试没有发现错误,则说明软件是正确的。 ×
软件测试中的集群现象含义是:80%的错误可能是由20%的模块造成的。
一个加工只能有一个输入一个输出。 ×
在面向对象方法中,信息隐蔽通过对象的封装性来实现。类结构分离了接口与实现,从而支持了信息隐蔽。
面向对象的设计的主要目标是提高生产效率,提高质量和可维护性。
一个加工不一定是一个程序,也可以是一系列程序或者程序的一个模块。
软件结构的设计是详细设计最关键的一步,直接影响到下一阶段编码的工作。 ×
软件测试中仅需要针对有效等价类设计测试用例并实施测试,对无效等价类无需进行相应的测试。 ×
在一个好的系统中,所有受判定影响的模块都应该从属于作出判定的哪个模块,最好局限于作出判定的那个模块及它的直接下属模块。
一个加工可以有多个输入,也可以有多个输出。
划分模块可以降低软件的复杂度和工作量,所以应该将模块分得越小越好。 ×
系统流程图是概括的描述系统控制结构的传统工具。 ×
软件测试时应该穷举所有的测试用例。 ×
模块之间联系越紧密,其耦合性就越弱,模块的独立性就越强。 ×
模块化,信息隐藏,抽象和逐步求精的软件设计原则有助于得到高内聚,低耦合度的软件产品。
传统方法学也称为生命周期方法学或结构化泛型
对于软件的独立性的衡量,根据模块的外部特征和内部特征,提出了两个定量的度量标准,即:耦合性和内聚性。 ×
内部质量是基于内部视角的软件产品特性的总体。
独立第三方比软件开发人员或用户更加适合测试工作。 ×
软件就是程序,编写软件就是编写程序。 ×
数据字典有以下4类条目:数据流、数据项、数据存储、基本加工。数据项是组成数据流和数据存储的最小元素。
软件文档只起备忘录的作用,可以在软件开发完成后再整理生成。 ×
白盒测试无需考虑模块内部的执行过程和程序结构,只要了解模块的功能即可。 ×
内聚衡量一个模块内部各个要素之间的联系紧密程度。
用等价类划分法设计测试用例时,如果被测试程序的某个输入条件规定了取值范围,则可确定一个合理的等价类和两个不合理的等价类。
对象的抽象是类,类的具体化就是对象,也可以说类的实例是对象。
类的设计过程包括:确定类,确定关联类,确定属性,识别继承关系。
20世纪70年代中期出现了“面向数据结构”的设计方法其中有代表性的是Jackson方法和Warnier方法
一般而言,发现错误多的模块,残留在模块中的错误也多。
img 以上数据流图分解是正确的。 ×