H>T为止。
中。
A(i)值送入Key,A(i+1)......A(N+1)移到A(i),......A(N)查不到时,将.
四、填空题
1:
结构化方法是一种面向数据流的开发方法。
又结构化分析、_结构化程序设
计___、构成
2:
为了减少软件开发费用,缩短软件开发周期、减少软件内部潜在的错误,可
以减少程序复杂性,以提高软件的简单性和___可理解性________。
3:
结构化程序设计方法是使用_____三种基本控制结构___构造程序。
4:
与编码风格有关的因素有数据说明、语句构造、输入输出、效率等,其中还
有一个重要的因素是___源程序文档化_______.
5:
结构化程序设计方法是提倡开发人员的组织形式是__主程序员组
6:
增量模型在开发过程中以一系列增量方式开发系统,忽略某些阶段的细节,
从而尽早产生__工作软件_____
7:
数据流图仅反映系统必须完成的逻辑功能,所以它是一种_____功能____模
型
判断题:
N)1.在进行总体设计时应加强模块间的联系。
(系统结构图是精确表达程序结构的图形表示法。
因此,有时也可以将系统结构图当作2.)N系统流程图使用。
(
)N用黑盒法测试时,测试用例是根据程序内部逻辑设计的。
(3.
在程序调试时,找出错误的位置和性质比改正该错误更难。
(Y)4.
以对象、类、继承和通信为基础的面向对象设计方法(OOD5.)也是常见的软件概要设计
方法之一。
(Y)
如果通过软件测试没有发现错误,则说明软件是正确的。
(N6.)
快速原型模型可以有效地适应用户需求的动态变化。
(Y7.)
模块化,信息隐藏,抽象和逐步求精的软件设计原则有助于得到高内聚,低耦合度的8.)Y软件产品。
9集成测试主要由用户来完成10软件危机完全是由于硬件问题引起的
Warnie方法也是一种面向数据结构的设计方其逻辑更严格.(×
PA图在设置了五种基本控制结构还允许递归调(×
为了加快软件维护作业的进应尽可能增加维护人员的数目.(×
当验收测试通软件开发就完成了.(×
完成测试作业为了缩短源程序的长度应删除程序中的注解.(×
章:
可行性研
:
可行性研究实质上是一次简压缩了需求分析和设
:
可行性研究的三个方面技术可行操作可行社会可行(经济
行性
1_数据流______数据字_共同构成系统的逻辑模型
:
技术可行性要研究的问题之一是
:
存在侵权:
成本效益问:
运行方式可行:
技术风险问
:
研究硬件资源的有效性是进行)研究的一方
:
技术可行:
经济可行:
社会可行:
操作可行
三:
名词解释1.可行性研究:
可行性研究实质上是要进行一次大大压缩简化了的系统分析和
设计的过程,也就是在较高层次上以较抽象的方式进行的系统分析和设计的过
程;
2.技术可行性:
对待开发的系统进行功能、性能和限制条件的分析,确定在现
有的资源条件下,技术风险有多大,系统能否实现;
3.经济可行性:
这个系统的经济效益能超过它的开发成本吗?
4.社会可行性:
实用性怎样
四.问答题
1.可行性研究的任务是什么:
可行性研究最根本的任务是对以后的行动方针提
出建议
2可行性研究有那些步骤)复查系统规模和目标)研究目前正在
用的系统)导出新系统的高层逻辑模型)进一步定义问题)
出和评价供选择的解法)推荐行动方针)草拟开发计划)书
文档提交审查
3可行性研究的目可行性研究的目的不是解决问题,而是确定问题是否
得去解决
数据流图的基本符)正方形(或立方体)表示数据的源点或终点
)圆角矩形(或圆形)代表变换数据的处理)开口矩形(或两条平
横线)代表数据存储)箭头表示数据流,即特定数据的流动方向
数据流图的作用
、便于用户表达功能需求和数据需求及其联系
、便于两类人员共同理解现行系统和规划系统的框架
、清晰表数据的情况
、有利于系统建模
什么是数据流图数据流图从数据传递和加工的角度,以图形的方式刻画
据流从输入到输出的移动变换过程
数据字:
数据字典是关于数据的信息的集合,也就是对数据流图中包含
所有元素的定义的集合;数据字典的作用是在软件分析和设计的过程中给人
供关于数据的描述信息
成效益分析方是可行性研究的一项重要内容,是客户组织负责人从
济角度判断是否继续投资于这项工程的主要依据
应考虑①货币的时间价值;②投资回收期;③纯收入;④投资回收
①代码行技术;②任务分解技术;③自动估计成本技成本估计有:
第章:
需求分析3
一.填空题
1.需求分析阶段,分析人员要确定对问题的综合需求,其中最主要的是(功能)需
求
3.数据字典中,一般不出现的条件是(D)
数据数据存加源点与终
8需求分析阶段不适用于描述加工逻辑的工具
结构化语判定判定流程
简答
1什么是需求分该阶段的基本任务是什么需求分析是发现、求精、建模
规格说明和复审的过程;准确定义未来系统目标,确定为了满足用户的需要
统必须做什么
2简述结构化分析的步骤)系统分析员应该从不同的角度抽象出目标系
的特性)使用精确的表示方法构造系统的模型)验证模型是否满
用户对目标系统的需求)在设计过程中逐渐把和实现有关的细节加进模
中,直至最终用程序实现模型
总体设
填空
1在软件概要设计阶建立软件结构还应该为每个模块写一份处理说明
接口说
2两个模块都使用同一张模块的这种耦合称公共耦
通信这个模块的内聚性称一个模块内部各程序段都在同一张表上操3.聚)
4.软件结构是以(模块)为基础而组成的一种控制层次结构
5.反映软件结构的基本形态特征是(深度,宽度,扇入,扇出)
6.一个模块把数值作为参数传送给另一个模块,这种耦合方式称为(数据耦合)
7.两个模块通过全程变量相互作用,这种耦合方式称为(公共耦合)
8.一个模块的作用范围指(受该模块内一个判定影响的所有模块)的集合
9.一个模块的控制范围指(模块本身以及其所有从属模块)的集合
10.结构化设计以(数据流图)为基础映射成软件结构
11.为了防止软件概要设计的错误传播到开发后续阶段,在概要设计文档完成以后,
要进软件评
5耦合性耦合是指一个模块与其它模块之间的联系,又称为块间联系,是
块之间相对独立性的度量
6内聚性内聚是指模块内部各个成分之间的关系,又称为块内联系,是模
功能相对强度的度量
7模块的控制范围一个模块的控制范围是指该模块本身及其所属的(直接
间接调用的)所有模块的集合
8模块的作用范围受该模块内一个判定影响的所有模块的集合9软件结构
软件结构图
10模块在软件中,通常把用一个名字就可以调用的一段程序称为模块
3模块的耦合内聚性包括那些内其含义)低耦合:
非直接耦合
数据耦合,标记耦合)中耦合:
控制耦合,外部耦合)高耦合:
共耦合,内容耦合)低内聚:
偶然内聚,逻辑内聚,时间内聚)
内聚:
过程内聚,通讯内聚)高内聚:
顺序内聚,功能内聚
4为了提高模块的独立模块内部最好
逻辑内时间内功能内通信内
5为了提高模块的独立模块之间最好
数据耦内容耦控制耦公共耦A.6.结构化设计方法在软件开发中,用于(B)
A测试用例设计B软件概要设计C程序设计D软件详细设计
7.划分模块时,一个模块的(A)
A作用范围应该在其控制范围之内B控制范围应该在其作用范围之内
C作用范围与控制范围互相不包含D作用范围与控制范围不受任何限制
第章:
6
一.填空题
1结构化程序设计方法的要点是使三种基本控制结)自顶向逐步
地构造算法或程
2结构化分析的基本思想是采自顶向下逐步分方能有效的控制系统
复杂
3当数据流图中某个加工的一组动作存在着多个条件复杂组合的判断其
工逻辑判定表或判定描述较
4数据流图中有四种符号元它们数据加数据存数据源点和终
3在详细设计阶一种历史悠使用最广泛的描述程序逻辑结构的工具
程序流程
4结构化程序设计技术指导人们用良好的思想方法开容易理容易验
程
5详细描述处理过程常用的三种工具是图语言表
6详细设计的目标不仅是逻辑上正确的实现每个模块的功还应该使设计出
处理过清晰易
7在详细设计阶除了对模块内的算法进行设还应该对模块内数据结
进行设
2结构化设计方法是一种面的设计方
数据结程数据数据
1结构化程序设计主要强调的
程序的效程序的执行速程序的易读程序的规
2详细设计的任务是确定每个模块
A算法B功能C调用关系D输入输出数据
3.结构化程序设计的一种基本方法是(D)
A筛选法B递归法C迭代法D逐步求精法
)4.B程序的三种基本控制结构是(
A过程,子程序和分程序B顺序,选择和重复
D,堆栈和队列调用,返回和转移C递归
)5.程序的三种基本控制结构的共同特点是(D
A不能嵌套使用B只能用来写简单程序
D已经用硬件实现只有一个入口和一个出口C
3.详细设计主要使用那一个描述工具:
程序流程图,盒图,PAD图,判定表,
判定树。
4.结构化程序设计:
如果一个程序的代码块仅仅通过顺序、选择和循环这三种
基本控制结构进行连接,并且每个代码块只有一个入口和一个出口,则称这个
程序时结构华的;第章:
实现7
1.为了提高程序的易读性,同时减少错误,提高软件开发效率,编码时注意养成
良好的(程序设计风格)
1.软件测试程序不在机器上运行,而是采用人工检测和计算机辅助分析检测的手
段称(静态)测试.
2.用等价类划分法设计一个测试用例时,使其覆盖(尽可能多的)尚未被覆盖的合
理等价类
3用等价类划分法设计一个测试用例使其覆一不合理等价
4在单元测试需要为被测试模块设驱动模块与桩模
5在集成测试时有两种测试方它们渐增式和非渐增
6软件测试是为发现错而执行程序的过
动测7运行被测试程序的方法称
8动态测试主要测试软件功能的方法称黑
9运行测试用使得被测试程序中每个判定分支至少执行一这种逻辑覆
标准称判定覆
来设计测试用例1软件测试白盒法是通过分析程序
应用范内部逻功输入数
来设计测试用例黑盒法是根据程序
应用范内部逻功输入数
3为了提高软件测试的效应)
随机地选取测试数
取一切可能的输入数据作为测试数
在完成编码以后制定软件的测试计
选择发现错误可能性大的数据作为测试用
下列几种逻辑覆盖标准7查错能力最强的
8.语句覆判定覆条件覆条件组合覆
8在黑盒测试着重检查输入条件组合的方法
因果图错误推测边界值分析等价类划分
9.软件测试过程中的集成测试主要是为了发现(B)阶段的错误
A需求分析B概要设计C详细设计D编码
10.不属于白盒测试的技术是(D)
A路径覆盖B判定覆盖C循环覆盖D边界值分析
11.确认测试以(A)文挡作为测试的基础
A需求规格说明书B设计说明书C源程序D开发计划
2.与选择编程语言无关的因素是(C)
BA软件开发的方法软件执行的环境
D软件开发人员的知识C程序设计风格
B)3.源程序文档化要求在每个模块之前加序言性注释,该注释内容不应该有(
A模块的功能B语句的功能C模块的接口D开发历史
1.在结构化程序设计思想提出之前,程序设计中曾强调程序的效率,现在人们更
重视程序的(D)
C一致性技巧性D可理解性B保密性A
4.D)提高程序效率的根本途径并非在于(
A选择良好的设计方法B选择良好的数据结构
DC选择良好的算法对程序语句作调整
B)5.为了提高易读性,源程序内部应该加功能性注释,用于说明(
A模块总的功能B程序段或语句的功能
DC模块参数的用途数据的用途
软件维护时,对测试阶段未发现的错误进行测试、诊断、定位、纠错,直至修改的回1.
归测试过程称为A。
A、改正性维护B、适应性维护
D、预防性维护C、完善性维护
三.名词解释
所谓编码就是把软件设计结果翻译成用某种程序设计语言书写的程序;编码:
1.
所谓程序设计风格是指书写源程序的习惯、程序代码的逻辑程序设计风格:
2.
结构与习惯的编程技术。
从软件工程要求出发,程序设计风格应包括以下要素:
输入输出④数据说明③语句构造①源程序文档化②
白盒测试技术:
逻辑覆盖和基本路径覆盖?
黑盒测试技术:
等价类划分、边界测试、错误推测、因果图?
软件测试步骤:
单元测试、集成测试和确认测试?
简答题四.
1.在项目开发时,选择程序设计语言通常考虑那些因素:
人的思维和解题方式;
人和计算机通信的方式和质量;其他人阅读和理解程序的难易程度;
2.什么是程序设计风格?
应该在那些方面注意培养良好的设计风格?
(1)程
序内部的文档;
(2)数据说明;(3)语句构造;(4)输入输出;(5)效
率;第章:
维护8
一.填空题
1.为了识别和纠正软件在运行中的错误而进行的维护称为(校正性)维护
)2.在软件维护中,因修改软件而导致出现的错误或其它情况称为(维护的副作用
3.维护阶段是软件生存周期中时间最长的阶段,也是花费精力和费用(最多)的
阶段
4.在软件交付使用后,由于在软件开发过程中产生的错误没有完全彻底在开发
阶段发必然有一部分隐含错误带维阶
非结构维5采用手工方法开发软件只有程序而无文这是一
6所有的软件维护申请报告要按规定方式提该报告也软件问报
选择
为了增加软件功能和性能而进行的软件修改维护过程
完善性维预防性维校正性维适应性维
2维护因修改全局或公共数据而引起的错误
文档副作数据副作设计副作3编码副作
软件生存周期时间困难大的阶段
需求分编测维
4软件维护困难的主要原因
费用人员开发方法的缺维护
5产生软件维护的副作是
开发时的错隐含的错因修改软件而造成的错运行时误操
3名词解
1校正性维护满足用户对已开发产品的性能与运行环境不断提高的要求,
而达到延长软件寿命的目的
2适应性维护对程序使用期间发现的程序错误进行诊断和改正的过程,配
变化了的环境进行修改软件的活动
3完善性维护满足用户在使用过程中提出增加新的功能或修改已有功能的
议而进行的工作;
4.预防性维护:
为了改善未来的可维护性或可靠性而修改软件的工作。
5.软件可维护性:
维护人员理解、改正、改动或改进这个软件的难易程度。
6.软件维护的副作用:
(1)编码副作用。
在使用程序设计语言修改原代码时可
能引入的错误;
(2)数据副作用。
在修改数据结构时,有可能造成软件设计与
数据结构不匹配,因而导致软件错误。
数据副作用是修改软件信息结构导致的
错误。
但它可以通过详细的设计文档加以控制;(3)文档副作用。
如果对可执
行软件的修改没有反映在文档中,就会产生文档副作用;
四.问答题
1.维护有那些类型?
其内容:
(1)校正性维护;
(2)适应性维护;(3)完善
性维护;(4)预防性维护;