软件工程试题 A卷:
一、填空题(每空2分,20空,共40分
1.软件定义时期包括两个阶段,它们是(【1】可行性研究和(【2】需求分析两个阶段。
2.数据流图有(【3】4种基本符号,数据流图中,箭头表示(【4】数据流。 3.数据流图有变换型结构和(【5】事务型结构两种类型。 4.4个人之间的通信量是(【6】6
5.评定模块的独立性的标准是耦合和内聚。(【7】耦合是对软件内部块间联系的度量,
按照由弱到强的顺序,可以把它分为(【8】7类。其中,最弱的是(【9】非直接耦合,最强的是(【10】内容耦合
6.程序结构的复杂性度量值V(G取决于程序控制流的复杂程度。顺序结构的V(G值
为(【11】1,选择结构的为(【12】2。
7.在模块结构图中,(【13】扇入是指直接调用该模块的模块数
8.模块的独立性可用耦合和内聚的高低来评定,设计较好的模块要求(【14】内聚高、
耦合(【15】低。
9.语句覆盖测试技术是(【16】白盒测试方法的一种
10.等价类划分技术是属于(【17】黑盒测试方法的
11.按维护的起因,可以将维护活动分为4类:(【18】改正性维护、(【19】适应性维护、
完善性维护和预防性维护。完善性维护占总维护量的(【20】50%以上。 二、名词解释(每题4分,5题,共20分
1.软件的可靠性:是指在给定的时间间隔内,程序成功运行的概率。
2.内聚:标志一个模块内各个元素被此结合的紧密程度,它是信息隐蔽和局部化概念的自
然扩展。
3.模块化:把一个程序划分成若干个模块,每个模块完成一个子功能,将这些模块组装成
一个整体,即可完成该程序指定的功能。
4.改正(纠错性维护:为改正软件系统中潜藏的错误而进行的活动
5.对象:对象是客观世界事物和个体的抽象表示。是它的属性和相关操作的统一封装体。
三、简述题(每题10分,4题,共40分 1.软件是什么?其特点有那些? 答:软件(2分
是计算机程序及其说明程序的各种文档,软件=程序+文档(+数据 特点(8分,每个2分,答出4个即可
(1软件开发更依赖于开发人员的业务素质、智力、人员的组织、合作和管理。软件开发、设计几乎都是从头开始,成本和进度很难估计。
(2软件存在潜伏错误,硬件错误一般能排除。 (3软件开发成功后,只需对原版进行复制。 (4软件在使用过程中维护复杂: (5软件不会磨损和老化。
2.简述静态测试方法和动态测试方法 答:静态测试(5分:
是指不在机器上进行测试,而是采用人工检测和计算机辅助静态分析手段对程序进行检
测,方法如下:
(1人工测试。主要靠人工审查程序和评审软件,据统计,能有效的发现30%-70%的逻辑设计和编程错误。
(2计算机辅助静态分析。指利用静态分析工具对被测软件进行特性分析。 动态测试(5分
指通过运行程序发现错误。一般有两种方法,黑盒法和白盒法。
黑盒测试着眼于程序的外部特征,而不考虑程序的内部结构。测试时、测试者把被测程序看作是一个黑盒,仅以程序的功能为依据,看其是否满足功能要求。
白盒测试着眼于程序的内部结构。测试者对程序的内部逻辑与处理过程了如指掌,并依据程序的逻辑结构,对程序的所有逻辑路径进行测试,确定其实际状态与预期的状态是否一致。
3.什么是可行性研究,简述可行性研究的任务 答:可行性研究(2分
是为了弄清所定义的项目是不是肯能实现和值得进行。 可行性研究的任务是(8分,每个2分
(1技术可行性:技术可行性指在现有情况下能否完成这个项目。
(2经济可行性:经济可行性包括软件开发项目的成本效益估计,以确定软件系统可能带来的经济效益是否超过研制和维护所需要的费用。
(3法律可行性:软件开发是否会侵犯他人、集体或国家的利益,是否违反国家的法律并由此而承担法律责任。
(4运行操作可行性:系统的运行方式在用户单位是否可以有效的实施,是否与原有的其他系统相矛盾。系统的操作规程在用户单位内是否可行。
4.选择程序设计语言时,可以从哪几个方面来考虑? 答:(每个2分 (1项目的应用领域。 (2软件的开发方法 (3软件开发的环境 (4算法和数据结构的复杂性 (5软件开发人员的知识