简答题。
1、 什么叫软件?
2、 什么叫软件危机?软件危机包含哪两点?软件危机产生的原因是什么?
3、 什么叫软件工程?
4、 两种软件工程方法学开发软件时要建立哪些模型?
5、 软件过程模型有哪些?简述它们的特点。
6、 什么是软件生命周期?
7、 软件生命周期有哪几个阶段和步骤?
8、 计算机软件的开发经过哪三个大阶段?
9、 软件开发的各阶段的任务是什么?
10、 软件设计分哪两个阶段?总体设计的两个阶段分别是什么?
11、 软件与硬件的区别是什么?
12、 软件需求分析的任务是什么?
13、 瀑布模型与原型模型分别适用于开发哪些软件?
14、 数据流图的作用是什么?如何画数据流图?
15、 什么叫数据字典?如何写数据字典?
16、 软件设计的原则有哪些?
17、 耦合与内聚分别有哪些?如何定义?如何区分?
18、 详细设计阶段用到了哪些图形工具?
19、 软件工程的启发式规则有哪些?
20、 模块的作用域与控制域分别指什么?
21、 模块的扇入、扇出、深度、宽度分别是什么意思?
22、 软件测试的目的是什么?
23、 单元测试有那些内容?
24、 什么是集成测试?非渐增式和渐增式有什么区别?渐增式如何组装模块?
25、 什么是确认测试?该阶段有那些工作?
26、 什么叫流图?如何画出流图?流图的环形复杂度如何计算?
27、 白盒测试与黑盒测试分别有哪些测试方法?如何对具体问题测试?
28、 软件测试的步骤有哪些?每个测试阶段的测试依据是什么?分别有谁来测试?
29、 什么叫维护?维护的类型有哪些?
30、 uml中活**、状态图、顺序图都分别描述什么?
31、 uml中的事物有哪些?
32、 面向对象的基本概念类、对象、封装、继承等定义是什么?
33、 用例图的作用是什么?
34、 uml中的关系有哪些?
35、 uml中实现关系、依赖关系、泛化关系等符号?
36、 用例、活动、状态、节点等图形符号分别是什么?
填空。1、画出uml中依赖关系的图形符号。
2、在uml 2.0中定义了四种交互图,其中强调对象调用顺序的是图。
3、uml中实现关系的图形符号是。
4、软件生命周期可划分为8个阶段,它们是什么?
5、软件测试的目的是发现错误,通常把测试方法按功能划分为和两大类。因为通常不可能做到穷尽测试,所以精心设计是保证达到测试目的所必须的。
6、计算机软件的开发经过三个阶段分别为:定义和运行。
7、软件维护的活动包括四种和。
预防性维护。
8、在软件测试过程的4个步骤中,测试依据是需求规格说明的是 。
选择题。1、以下哪个不是详细设计中常用的图形描述工具。
a、数据流图 b、程序流图 c、盒图(n-s图) d、问题分析图(pad)
2、耦合是对软件结构中各个不同模块之间互相关联程度的度量。一个模块直接访问另一个模块的内部信息应属于方式。
a、控制耦合 b、内容耦合 c、数据耦合 d、外部耦合。
3、在七种内聚中属于最强的是内聚,最弱的是内聚。
4、软件工程的原则包括抽象与信息隐藏与局部化。
模块则说明模块的独立性越强。
a. 耦合越强 b、 扇入数越高 c、扇入数越低 d、耦合越弱。
5、软件设计包括两个阶段。
a、接口设计和结构设计 b、数据设计和概要设计。
c、结构设计和过程设计 d、概要设计和详细设计。
6、现有一个计算类型的程序,它的输入只有一个y,其范围是—50≤y≤50。现从输入的角度考虑设计了一组测试用例:—100,100,0。设计这组测试用例的方法是 。
a、条件覆盖法 b、边缘值分析法 c、错误推测法 d 、等价划分法。
7、系统设计分为两个阶段分别为与。
8、对于变换型的数据流图,按照软件设计思想,要将一个大型复杂的软件进行分解,要确定数据流图的输入边界,输出边界和。
9、自顶向下结合的渐增式测试法,在组合模块时有两种组合策略:深度优先策略和。
10、在用面向对象观点建立起的3种模型中是最基本、最重要、最核心的。
a、动态模型b、对象模型 c、功能模型 d、状态模型。
11、在软件结构图的有关术语中,用于表示软件结构中控制的层数的是。
a、扇出b、扇入c、深度d、宽度。
12、指出pdl是哪种语言 。
13、在进行软件测试时, 首先应当进行测试,然后再进行组装测试,最后再进行有效性测试。
14、结构化设计方法是面向的设计。
a.数据编码 b.数据流 c.数据库 d.数据结构。
15、软件工程的过程模型中是经典的传统模型。
16、模块定义为受该模块内一个判断影响的所有模块集合。
a. 控制域 b、 作用域 c、 宽度 d、 接口。
17、在软件生命周期中,能准确确定软件系统的体系结构的功能阶段是。
a、概要设计 b、详细设计 c、需求分析 d、可行性分析。
18、下面不属于软件工程的基本原则的是__
a、模块化 b、抽象c、局部化 d、自顶向上。
19、在数据流图中,用圆或者椭圆来表示。
a、数据流 b、数据源点或终点 c、数据存储 d、加工。
20、 软件是计算机系统中与硬件相互依存的部分,它是包括(a)、(b)、及(c)的完整集合。其中,(a)是按事先设计的功能和性能要求执行的指令序列,(b)是使程序员能够正确操纵信息的数据结构,(c)是与程序开发、维护和使用有关的**材料。
①软件 ②程序 ③** ④硬件 ⑤文档 ⑥外设 ⑦数据 ⑧图表。
21、 开发软件时,对于提高软件开发人员工作效率至关重要的是(a)。软件工程中描述软件生存周期的瀑布类型一般包括计划、(b)、设计、编码、测试、维护等几个阶段。其中,设计阶段在管理上可以依次分成(c)和(d)两个步骤。
a:① 程序开发环境 ② 操作系统的资源管理功能③ 开发程序人员数量 ④ 计算机的并行处理能力。
b: ①需求分析 ②需求调查 ③可行性分析 ④问题定义。
c、d: ①方案设计 ② **设计 ③ 概要设计 ④ 数据设计 ⑤ 运行设计 ⑥ 详细设计 ⑦ 故障处理设计 ⑧ 软件体系结构设计。
22.在结构化的分析方法中,用以表达系统内数据的运**况的工具有( )
a:数据流图 b:数据词典 c:结构化英语 d:判定表与判定树。
23.在结构化的分析方法中,用实体关系图表达系统中的对象及其关系,在实体关系图中,表达对象的实例关系之间的关联有三种类型:一对一联系,( 联系,多对多联系。
a:一对多 b:多对多。
24.软件需求分析的任务,不应包括(a),进行需求分析可使用多种工具,但(b)是不适用的,在需求分析中,分析员要从用户那里解决的最重要的问题是(c)。规格说明书的内容不应当包括(d),该文档在开发中具有重要的作用,但其作用不应包括(e)。
a: 1 问题分析 2 信息域分析 3 结构化程序设计 4 确定逻辑模型。
b: 1 数据流图 2 判定表 3 pad图 4 数据词典。
c: 1 要让软件做什么 2 要对该软件提供哪些信息
3 要求软件工作效率如何 4 让软件具有什么结构。
d: 1 对重要功能的描述 2 对算法的详细过程性描述
3 软件确认准则 4 软件的性能。
e: 1 软件设计的依据 2 用户和开发人员对软件要”做什么”的共同理解
3 软件验收的依据 4 软件可行性分析的依据。
25.原型化方法是用户和软件开发人员之间进行的一种交互过程,适用于(a)系统,它从用户界面的开发入手,首先形成(b),用户(c),并就(d)提出意见。
a: 1 需求不确定性高的 2 需求确定的 3 管理信息 4 决策支持。
b: 1 用户界面使用手册 2 用户界面需求分析说明书
3 系统界面原型 4 完善的用户界面。
c: 1 改进用户界面的设计 2 阅读文档资料
3 模拟用户界面的运行 4 运行用户界面原型。
d: 1 同意什么和不同意什么 2 使用和不使用哪一种编程语言
3 程序的结构 4 执行速度是否满足要求。
26.从下列有关系统结构图的描述中选出正确的叙述。
系统结构图中反映的是程序中数据流的情况。
系统结构图是精确表达程序结构的图形表示法。因此有时也可将系统结构图当作程序流程图使用。
一个模块的多个下属模块在系统结构图中所处的左右位置是无关紧要的。
在系统结构图中,上级模块与其下属模块之间的调用关系用有向线段表示。这时使用斜的线段和水平、垂直的线段具有相同的含义。
27.选出正确答案:
一组语句在程序中多处出现,为了节省内存空间,把这些语句放在一个模块中,该模块的内聚性是(a)的。
将几个逻辑上相似的成份,放在同一个模块中,通过模块入口的一个判断决定执行哪一个功能,该模块的内聚性是(b)的。
模块中所有成份引用共同的数据,该模块的内聚性是(c)的。
模块内的某成份的输出是另一些成份的输入,该模块的内聚性是(d)的。
模块中所有成份结合起来完成一项任务,该模块的内聚性是(e)的。
a—e:①偶然内聚 ②时间内聚 ③功能内聚 ④通信内聚 ⑤逻辑内聚 ⑥信息内聚 ⑦过程内聚。
软件工程作业题
5 软件测试的目的是发现错误,通常把测试方法按功能划分为和两大类。因为通常不可能做到穷尽测试,所以精心设计是保证达到测试目的所必须的。6 计算机软件的开发经过三个阶段分别为 定义和运行。7 软件维护的活动包括四种和。预防性维护。8 在软件测试过程的4个步骤中,测试依据是需求规格说明的是 选择题。1 ...
软件工程作业题 2019
题目1 简易银行卡管理系统的开发。分为两个部分 1 简易银行卡管理系统的分析与设计。2 简易银行卡管理系统的实现。要求按下列步骤完成 1 分析了解银行卡管理的功能。通过分析与调查,获得了该系统的主要功能 1 开户。2 存款。3 取款。4 挂失。5 修改密码。6 重置密码。7 消户。2 总体设计。把系...
软件工程作业题 10 10 18
软件工程作业。1 目标。选择一个小项目,完成一个相对独立的完整的系统,该系统仅仅是一个简单的模拟系统,并非一个实质的应用 实用 系统 通过该题目的实验,加强对软件工程基本概念和理论的理解,掌握系统开发的基本过程。学习和掌握常用的软件开发方法和工具 进一步加深理解与相关课程的关系 例如,数据库 网络 ...