软件开发技术复习题0309004446.docx
《软件开发技术复习题0309004446.docx》由会员分享,可在线阅读,更多相关《软件开发技术复习题0309004446.docx(15页珍藏版)》请在冰豆网上搜索。
软件开发技术复习题0309004446
软件开发技术复习题
一、填空及简述:
1、软件、工程、软件工程及其三要素?
P1-3
答:
计算机系统中的程序及其文档称为软件。
工程是将科学论理和知识应用于实践的科学。
软件工程是一类求解软件的工程。
它应用计算机科学、数学及管理科学等原理,借鉴传统工程的原则、方法,创建软件以达到提高质量、降低成本的目的。
软件工程的三要素是指——目标、原则、活动
1软件工程的目标可概括为“生产具有正确性、可用性以及开销合宜的产品”。
2四条基本原则〜⑴选取适宜的开发模型⑵采用合适的设计方法⑶提供高质量
的工程支持⑷重视开发过程的管理
3软件工程的活动包括〜需求、设计、实现、确认和支持。
2、软件开发模型的种类、适用情况、缺点?
P5-10
答:
①瀑布模型〜在支持结构化软件开发、控制软件开发的复杂性、促进软件开发工程化
等方面起着显著作用。
最为突出的缺点是该模型缺乏灵活性,无法通过开发活动澄清本来不够确切的软件需求,可能导致开发出的软件并不是用户真正需要的软件,无疑要进行返工或不得不在维护中纠正需求的偏差,为此必须付出高额的代价,为软件开发带来不必要的损失。
2演化模型〜针对事先不能完整定义需求的软件开发。
但忽略风险分析。
3螺旋模型〜适合于大型软件的开发。
使用时需要具有相当丰富的风险评估经验和专门知识,如果项目风险较大,又未能及时发现,势必造成重大损失。
4喷泉模型〜主要用于支持面向对象开发过程。
软件刻画活动需要多次重复。
5增量模型〜广泛地使用开计算机工业中。
需不断地进行系统的增量开发。
3、设计的分类?
P43答:
软件设计可采用多种方法,如结构化设计方法、面向数据结构的设计方法、面
向对象的设计方法等。
4、结构化设计方法的分类及功能?
P43、P65
答:
结构化设计方法分为〜①总体设计。
其功能是设计被建系统的模块结构,即系统实现据需要的软件模块-系统中可标识软件成分,以及这些模块之间的调用关系。
②详细设计。
这个阶段的功能是确定怎样具体地实现所需求的系统,即应该得出对目标系统的精确描述,从而在编码阶段可以将这个描述直接翻译成用某种程序设计语言书写的程序,基本上决定了最终的程序代码的质量。
5、模块及其独立性和相关内容?
P56答:
模块是执行一个特殊任务或实现一个特殊的抽象数据类型的一组例程和数据结
构。
模块由两部分组成〜一部分是接口,列出可由其他模块或例程访问的对象,如常量、变量、数据类型、函数等;另一部分是实现模块功能的执行机制,包括私有量(只能由本模块自己使用的)及实现模块功能的过程描述或源程序代码。
6、评价软件设计的基本准则及其相关内容?
P56-60
答:
基本准则是“高内聚”、“低耦合”。
⑴耦合是对不同模块之间相互依赖程度的度量。
紧密耦合是指两个模块之间存在着很强的依赖关系;松散耦合是指两个模块之间存在一些依赖关系,但它们之间的连接比较弱;无耦合是指模块之间根本没有任何连接。
耦合的强度依赖于以下几个因素〜①一个模块对另一个模块的引用②一个模块向另
一个模块传递的数据量③一个模块施加到另一个模块的控制的数量④模块之间接口的复杂程
度
耦合的类型(从强到弱)〜①内容耦合②公共耦合③控制耦合④标记耦合
⑤数据耦合
⑵内聚度量的是一个模块内部各成分之间相互关联的强度。
一个模块内聚程度越高,
模块的内部各成分之间以及同模块所完成的功能之间的关联也就越强。
内聚的类型(从低到高)~①偶然内聚②逻辑内聚③时间内聚④过程内聚
⑤通信内聚⑥顺序内聚⑦功能内聚
7、软件测试及技术分类?
P154-155
答:
软件测试可定义为~按照特定规程,发现软件错误的过程。
IEEE定义为~使用人工或自动手段,运行或测定某个系统的过程,其目的是检验它是否满足规定的需求,或是清楚了解预期结果与实际结果之间的差异。
软件测试技术分为两大类~一类是白盒测试技术,依据的是程序的逻辑结构,典型的是路径测试技术;另一类是黑盒测试技术,又称为功能测试技术,依据的是软件行为的描述,包括事务处理流程技术、状态测试技术、定义域测试技术等。
8、CMM勺成熟度等级和内部结构?
P212图7。
3、P214-219图7。
4图7。
5
答:
CMM勺成熟度等级为分五级〜①初始级[1级]②可重复级[2级]③已定义级[3级]④
已管理级[4级]⑤持续优化级[5级]
CMM勺每个等级是通过三个层次加以定义的,分别是关键过程域、关键实践类和关键实践。
每个关键过程又按四个关键实践类加以组织〜制定方针政策、确保必备条件、实施软件过程和
检查实施情况
9、模块作用域和控制域勺含义、关系及改进?
P61答:
模块勺作用域定义为受该模块内一个判定影响勺所有模块勺集合。
模块勺控制域是这个模块本身以及所有直接或间接从属于它勺模块勺集合。
模块勺作用域应该在控制域之内图4。
25例
改进方法〜一个方法是把做判定勺点往上移;另一个方法是把那些在作用域内但不在控制域内勺模块移到控制域内。
10、详细设计勺工具及其优缺点?
P67-70
答:
①程序流程图,又称程序框图。
主要优点是对控制流程的描绘很直观,便于初学者掌握。
主要缺点有〜⑴程序流程图本质上不是逐步求精的好工具,它诱使程序员过早地
考虑程序的控制流程,而不去考虑程序的全局结构⑵程序流程图中用箭头代表控制流,因此程
序员不受任何约束,可以完全不顾结构程序设计的精神,随意转移控制⑶程序流程图不易表示
数据结构
②盒图(N-S图)。
同程序流程图相比,它以一种结构化的方式严格地限制从一个处理到另一个处理的控制转移。
3PAD问题分析图。
主要优点有〜⑴使用表示结构化控制结构的PAD符号所设计岀来的程序必
然是结构化程序⑵PAD图所描述的程序结构十分清晰⑶用PAD图表现程序逻辑,易读、易懂、
易记⑷很容易将PAD图转换成高级语言源程序⑸既可用于表示程序逻辑,也可用于描述数
据结构⑹PAD图的符号支持自顶向下、逐步求精方法的使用
4类程序设计语言PDL,也称为伪码。
优点有〜⑴可以作为注释直接插在源程序中间⑵
可以使用普通的正文编辑程序或文字处理系统,很方便地完成PDL的书写和编辑工作⑶已经有
自动处理程序存在,而且可以自动由PDL生成程序代码。
缺点是不如图形工具形象直观,描
述复杂的条件组合与动作间的对应关系时,不如判定表或判定树清晰简单
11、DFD模型平衡规则?
P27-28
答:
①数据流图中所有的图形元素必须根据它们的用法规则正确使用②每个数据流和数
据存储都要在数据字典中有定义,数据字典将包括各层数据流图中数据元素的定义③数据字典
中的定义使用合法的逻辑构造符号④数据流图中最底层的加工必须在小说明中有定义⑤父
图和子图必须平衡,即父图中某加工的输入输岀和分解这个加工的子图的输入输岀必须完全一致,这种一致性不一定要求数据流的名称和个数一一对应,但它们在数据字典中的定义必须一致,数据流或数据项既不能多也不能少⑥小说明和数据流图的图形表示必须一致。
12、数据流图DFD转换为模块结构图MSD勺步骤?
P51-56
答:
①复查基本系统模型②复查并精化数据流图③确定输入、变换、输岀这三部分之
间勺边界④“第一级分解”——系统模块结构图顶层和第一层勺设计⑤“第二级分解”——自顶
向下,逐步求精⑥使用设计度量和启发式规则,对初始的模块结构图进行精化
13、路径测试策略勺分类?
P157-158
答:
①路径测试〜执行所有可能的穿过程序的控制流程路径②语句测试(P1)〜至少执
行程序中所有语句一次品③分支测试(P2)〜至少执行程序中每一分支一次④条件组合
测试~设计足够的测试用例,使每个判定中的所有可能的条件取值组合至少执行一次
14、数据流图、程序框图、控制流程图的区别?
P20、P67、P156
答:
⑴数据流图由四个基本部分组成~①加工(用圆圈表示)②数据流(用箭头表示)
③数据存储(用两条平行线表示)④数据源和数据潭(用矩形表示)
⑵程序框图又称程序流程图,使用的主要符号有~顺序结构、选择结构、循环结
构及一些等价符号。
与数据流图不同的是,程序框图中的箭头代表的控制流而不是数据流。
⑶控制流程图是程序控制结构的图形表示,其基本要素是过程块、结点、判定。
与程序框图不同的是,控制流程图中不显示过程块的细节,而在程序流程图中,着重于过程属性的描述。
15、黑盒法(功能测试技术)的种类?
P165-167
答:
①等价类划分方法〜是把所有可能的输入数据即程序的输入域分成若干部分(即若干等价类),然后从每一部分中选取数据作为测试用例。
②边界值分析方法~测试工作经验表明,大量的错误经常发生在输入或输岀范围的边界上。
在设计测试用例时,选择一些边界值进行测试,这就是边界值分析测试技术的主要思想。
③因果图方法~通过为判定表的每一列设计一个测试用例,从而实现测试用例的设计与选择。
1.在详细设计阶段所使用到的设计工具是():
A)程序流程图,PAD图,N-S图,HIPO图,判定表,判定树•
B)数据流程图,Yourdon图,程序流程图,PAD图,N-S图,HIPO图。
C)判定表,判定树,数据流程图,系统流程图,程序流程图,PAD图,N-S
图。
D)判定表,判定树,数据流程图,系统流程图,程序流程图,层次图。
2、按照软件工程的原则,模块的作用域和模块的控制域之间的关系是():
A)模块的作用域应在模块的控制域之内。
B)模块的控制域应在模块的作用域之内。
C)模块的控制域与模块的作用域互相独立。
3、包含所有可能情况的测试称为穷尽测试。
下面结论成立的是:
A)只要对每种可能的情况都进行测试,就可以得岀程序是否符合要求的结论。
B)一般来说对于黑盒测试,穷尽测试是不可能作到的。
C)一般来说对于白盒测试,穷尽测试是不可能作到的。
D)在白盒测试和黑盒测试这两个方法中,存在某一个是可以进行穷尽测试的。
4、在数据流图中,0(椭圆)代表()。
A、源点B、终点C、加工D、模块
5、模块内聚度越高,说明模块内各成分彼此结合的程度越()。
A、松散B、紧密C、无法判断D、相等
6、软件设计阶段的输出主要是()。
A、程序B、模块C、伪代码D、设计规格说明书
7、SD方法设计的结果是()。
A、源代码B、伪代码C、模块D、模块结构图
8、软件维护是软件生命周期中的固有阶段,一般认为,各种不同的软件维护中以()维护所占的维护量最小()。
A、纠错性维护B、代码维护C、预防性维护D、文档维护
9、软件需求分析是保证软件质量的重要步骤,它的实施应该是在()。
A、编码阶段B、软件开发全过程C、软件定义阶段D、软件设计阶段
10、软件测试方法中,黑盒、白盒测试法是常用的方法,其中白盒测试主要用于测试(
)。
A、结构合理性B、软件外部功能C、程序正确性D、程序内部逻辑
11、软件的结构化设计(SD)方法中,一般分为概要设计和详细设计两阶段,其中详细设计主要是要建立()。
A、软件结构B、软件过程C、软件模型D、软件模块
12、在下述哪一种测试中,测试人员必须接触到源程序()。
I功能测试□结构测试
A、均不需B、只有IC、只有HD、I和H
13、检查软件产品是否符合需求定义的过程称为()。
A、确认测试B、集成测试C、验收测试D、验证测试
14、软件文档是软件工程实施中的重要万分它不仅是软件开发各阶段的重要依据,而且与影响软件的()。
A、可理解性B、可维护性C、可扩展性D、可移植性
15、在瀑布模型中,将软件划分为若干个时期,软件项目的可行性研究一般归属于()
A、维护时期B、计划时期C、运行时期D、开发时期
16、在七种偶合中,最低偶合是()。
A、内容偶合B、公共偶合C、数据偶合D、非直接偶合
17、结构化分析方法SA、结构化设计方法SD方法,是在软件开发过程中常用的方法,人们使用SA方法时可以得到(),使用SD方法时可以得到()。
A、程序流程图B、具体的语言程序C、模块结构图及模块的功能说明书
D、分层数据流图
练习题
1.画出对应于计算托运费比率的判定树和判定表。
邮局货物托运费的比率规定如下:
专递:
如果货物重量小于等于50g,则一律收费6元;如果货物重量大于50g而又小于等于200g,则一律收费3元/10g;如果货物重量大于200g,则一律收费4元/10g;
普通:
若为慢件每10g收费为1元;若为快件,当重量小于等于200g时,收费为2元
/50g;当重量大于200g时,收费为3元/50g。
2.画出与下列用PDL书写的程序所对应的盒图和PAD图。
Kn;
FI..AG1
IFFLAG>OTHENDO
KK+l
FLAG0
FORTOKDO
L':
」:
’L(J+1)
Fl.AG1
ENDFOR
ENDDO
3■已知有一抽象的DFD图如下所示,请用SD方法画出相应的结构图。
4.针对如右程序流程图所示的程序结构,用PAD图表示出该程序结构;假设程序中变
统记录存款人姓名、住址、存款类型、存款日期及利率等信息,并印出存款单给储户;如果是取款,系统计算清单给储户。
请用分层DFD描绘该功能的需求。
6.对求平方根的程序SQRT((x-3)/(5-x)用黑盒法设计测试用例
等价分类法
输入条件
合理等价类
不合理等价类
用边缘值分析法设计测试用例
参考答案:
1.判定树:
判定表:
托运类型
专递
普通
快慢件
慢件
快件
质量
mW50g
50gvmW200g
m>200g
mW200g
m>200g
托运费比率
6元/件
3元/件
4元/件
1元/10g
2元/50g
3元/50g
2.盒图
K—n
FLAG—1
T__2AGT
K—K+1
FlAg
j—1
J<=K
L(J)=L(J+1)
FLAG—1
J—J+1
PAD图:
注意:
盒图与流程图FOR语句的表达。
3、
4、PAD图
8组条件组合:
①
I<10X=1
②
I<10Y>5
③
I>10X工1
④
I>10X=1
⑤
I>10Y>5
⑥
I<10X工1
⑦
I>10Y<5
⑧
I<10Y<5
用例:
①X=1,Y=5,
②X=2,Y=6,
31=11,X=1,
41=11,X=2,
1=7,A=6=>A=9,1=11满足①⑧
1=7,A=6=>A=9,1=11满足②⑥
Y=5=>A保持原值满足④⑦
Y=6=>A保持原值满足③⑤
6组条件组合:
①
I<10
②
I>10
③
X=1
Y>5
④
X工1
Y>5
⑤
X=1
Y<5
⑥
X工1
Y<5
用例:
1|=7,X=1,Y=5满足①⑤
21=11,X=2,Y=6满足②④
31=11,X=1,Y=6满足③
5、0层图
1号图(略)2号图(略)3号图(略)
DFD=>结构图
MAIN
分类存款处理取款处理
(略)
6、
等价分类法
输入条件
合理
不合理
X
3XV3②X>5③
SQRT((X-3)/(5-X))成立要求3WXV5
1X=4SQRT((X-3)/(5-X)=1
2X=2无意义
3X=6无意义
边缘值:
①X=3结果0②X=5无意义③X=4结果1④X=2无意义
⑤X=6无意义