名词解释:
1.数据词典——是描述数据信息的集合,它对数据流图中的各个元素按规定格式进行详细的描述和确切的解释,是数据流图的补充工具。
2.数据流图——他以图形的方式反映系统的数据流程。
3.白盒测试——按照程序内部的结构测试程序,检验程序中的每条路径是否都能按预定要求正确工作。有两种测试法既逻辑覆盖测试法和路径测试法。
4.黑盒测试——按照程序的功能测试程序,检验与程序功能有关的输入、输出与程序执行是否正确。有四种方法既等价分类法、边界值分析法、错误猜测法和因果图法。
5.完善性维护——为了适应用户业务和机构的发展变化而对软件的功能、性能进行修改、扩充的过程称为完善性维护。因为各种用户的业务和机构在相当长的时期内不可能是一成不变的,所以功能、性能的增加是不可避免的,而且这种维护活动在整个维护工作中所占的比重很大。
6.软件可靠性——指在给定的时间内,程序按照规定的条件成功地运行的概率。
7.软件配置——是一个软件在生存周期内,他的各种形式、各种版本的文档与程序的总称。
8.软件再工程——运用逆向工程、重构等技术,在充分理解原有软件的基础上,进行分解、综合、并重新构建软件,用于提高软件的可理解性、可维护性可复用性或演化性。
9.α测试——是在一个受控的环境下,由用户在开发者的“指导”下进行的的测试,由开发者负责记录错误和使用**现的问题。
10.β测试——是由软件的最终用户(多个)在一个或多个用户场所来进行。由用户负责记下遇到的所有问题,包括主观认定的和真实的问题,定期向开发者报告,开发者在综合用户的报告之后进行修改,最后将软件产品交付给全体用户使用。
11.聚集关系——表示类或对象之间的整体与部分的关系。
12.泛化关系——表示类或对象之间的一般与特殊的关系。
13.内聚——一个模块内部各个元素彼此结合的紧密程度的度量。
14.耦合——一一个软件结构内不同模块之间互连程度的度量。
15、软件重用——也叫软件再用或复用,是指同一事物不做修改或稍加改动就能多次在软件中重复使用。
判断题:1.螺旋模型是在瀑布模型和增量模型的基础上增加了风险分析活动。(对)
2.数据字典是对数据流图中的数据流,加工、数据存储、数据的源和终点进行详细定义。(错)
语言编译器是一个case工具。(对)。
4.软件是指用程序设计语言(如pascal ,c,visual basic 等)编写的程序,软件开发实际上就是编写程序**。(错)
5.软件模块之间的耦合性越弱越好。(对)
6.数据库设计说明书是一个软件配置项(对)
7.在面向对象的软件开发方法中,每个类都存在其相应的对象,类是对象的实例,对象是生成类的模板。(错)
8.过程描述语言可以用于描述软件的系统结构。(错)
9.如果通过软件测试没有发现错误,则说明软件是正确的。(错)
10.快速原型模型可以有效地适应用户需求的动态变化。(对)
11.模块化,信息隐藏,抽象和逐步求精的软件设计原则有助于得到高内聚,低耦合度的软件产品。(对)
12.集成测试主要由用户来完成。(错)
13.确认测试计划应该在可行性研究阶段制定(错)
14.白盒测试无需考虑模块内部的执行过程和程序结构,只要了解模块的功能即可。(错)
15.软件概要设计包括软件系统结构设计以及数据结构和数据库设计。(对)
16.在可行性研究中最难决断和最关键的问题是经济可行性。(错 )
17.耦合是指一个模块内各个元素彼此结合的紧密程度。(错 )
18. 一笔交易、一个动作、甚至操作人员按一个按钮都可以看作是一次事物。( 对 )
19.概要设计阶段完成的主要文档是概要设计说明书。(对 )
20.过大的模块可能是由于分解不充分造成的,即使降低模块独立性也必须继续分解。(错)
21.程序设计语言中应绝对禁止使用goto语句。( 错 )
22.类是关于对象性质的描述,由方法和数据组成。(对 )
23.随着软件技术的发展,人们逐渐认识到编码不仅要强调效率还要强调清晰。( 对 )
25.为保证程序的安全,必须做到程序中没有任何错误存在,即容错。( 错 )
26.如果把软件开发所需的资源画成一个金字塔,人是最基本的资源。(对)
27软件开发小组人员越多越好。( x)
28.在程序运行之前没法评估其质量。( x)
29 需求是变化的,因为软件是灵活的,总可以满足需求。( x)
30有了对目标一般描述,就可以编程序,以后再详细描述。( x)
31模块越小,模块的优点越大。( x)
32、在软件开发过程中,工作量最大的一个阶段就是编码程序。( x) (注:是测试阶段)
33、开发初始原型的目的是为了确定用户的基本需求。( x)
注:只有确定了用户的基本需求之后才开发初始原型,初始原型表达了用户的基本需求)
34、尽可能推迟程序的逻辑实现是按照瀑布模型开发软件的一条重要的指导思想( x)(注:逻辑实现)
35、一般说来,模块的内聚程度越高,它们之间的耦合程度也越高。( x)
36、软件测试只能证明程序有错误,不呢个证明程序没有错误。(对)
37、独立编译的机制对于大型软件的编码工作极为重要。(对)
38、结构化程序设计方法能改善程序结构,提高程序的运行效率。( x)(注:运行效率反而降低了)
39、如果测试数据满足条件覆盖,则必然满足判定覆盖。( x)
40、信息隐藏原则禁止在模块外使用在接口说明的关于高模块的信息。( x)
注:信息隐藏原则应该隐蔽的不是有关模块的一切信息,而是模块的实现细节)
41、每个类都是其相应对象的一个实例。( x)(注:每个对象都是其相应类的一个实例)
42、在一个设计得很好的系统中,模块的控制域是模块的作用域子集。( x)
注:在一个设计得很好的系统中,模块的作用域是模块的控制域子集。)
43、编译程序可以发现源程序的一切错误,因此是程序正确性证明的实用工具。( x)
44、在程序调试时,改正该错误比找出错误的位置和性质更难。( x)
注:在程序调试时,找出错误的位置和性质比改正该错误更难。)
!!填空题:
1.在信息处理和计算机领域内,一般认为软件是和。
2. 数据流图的基本组成部分有。
3.数据流图和数据字典共同构成了系统的模型,是需求规格说明书的主要组成部分。
4.划分模块时尽量做到保持模块的独立性,尽量使用公共模块。
5.类的实例化是。
6.人们常用硬件可靠性的定量度量方法来度量软件的可靠性和可用性,常用的度量软件可。
靠性的两个指标是和。
8.将待开发的软件细化,分别估算每一个子任务所需要的开发工作量,然后将它们加起来,将得到软件的总开发量。这种成本估算方法称为。
10. 如果一个模块被 n 个模块调用,其中直接的上级模块的个数是 m 个( m<=n )那么该模块的扇入数是个。
11. 结构化设计以为基础,按一定的步骤映射成软件结构。
15. 面向对象分析的目的是对客观世界的系统进行。
16. 软件维护工作的生产性活动包括分析评价、修改设计和等。
17. 为了使应用软件适应计算机环境的变化而的过程称为适应性维护。
18. 一个进行学生成绩统计的模块其功能是先对学生的成绩进行累加,然后求平均值,则该模块的内聚性是。
19. 投资**期就是使累计的经济效益等于所需的时间。
20. 软件生存周期是指一个软件从提出开发要求开始直到为止的整个时期。
21.曾被誉为“程序设计方法的革命”的程序设计,使程序设计从主要依赖于程序员个人的自由活动。
成为有章可循的一门科学。
22.、从结构化程序设计到是程序设计方法的又一次飞跃。
23、.在单元测试时,需要为被测模块设计。
24、.软件测试是为了而执行程序的过程。
25、.运行被测程序的方法称为测试。
26、.动态测试中,主要测试软件功能的方法称为法。
27、.选择测试用例,使得被测程序中每个判定的每个分支至少执行一次,这种逻辑覆盖标准为 。
28.、要覆盖含有循环结构的所有路径是不可能的,一般通过限制来测试。
29、.用等价类划分法设计测试用例时,如果被测程序的某个输入条件规定了取值范围,则可确定一个合理的等价类和。
30、.凭经验或直觉推测程序中可能存在的错误而设计测试用例的方法是。
31、集成测试中的具体方法是 。
32、.确认测试阶段的两项工作是。
33、.在单元测试中,测试一个模块时,需要设计。
软件工程复习
单选填空简答思考题。1 传统的软件瀑布生命模型包括哪六个方面?需求 分析 设计 实现 交付后维护 退役2 传统瀑布生命模型的中交付后维护包括哪三种?改正性维护 适应性维护 完善性维护3 现代维护和传统维护的观点有何不同?1 传统维护的观点是先开发后维护。2 现代维护的观点是无论是在软件安装前还是安装...
软件工程复习
软件工程复习资料。备注 1.老师反复强调我们之前做过的作业要熟练掌握 需求陈述 实验课画的模型 自己画。的数据流图 2 蓝颜色的字都是老师上课补充的,还有很多需要自己去补充,欢迎修正完善。核心问题 在考试做大是要表述清楚详细,关。键词要有 问题定义 专用名词表要解决的问题是什么?达要准确,不能更改 ...
软件工程 复习
1.概念 软件危机是指在计算机软件开发 使用与维护过程中遇到的一系列严重问题。2.为什么会产生软件危机?当软件开发技术的进步不能跟上硬件技术的进步,未能满足发展的要求,致使软件开发中遇到的问题找不到解决的办法,使问题积累起来,形成了尖锐的矛盾,因而导致了软件危机。3.软件危机的表现 经费预算经常突破...