软件工程学习资料(1)
一、填空
1、软件工程学的内容可包括理论、结构、方法、工具、环境、管理、规范等。
2、N-S图中的顺序结构:
在PAD图中表示为: PAD图设置五种基本控制结构,并允许
递归使用。
3、模块的独立程度可以由两个定性标准度量,这两个标准分别称为内聚和耦合。
耦合衡量不同模块彼此之间相互依赖的紧密程度。
内聚衡量一个模块内部各个元素彼此结合的紧密程度。
4、软件测试方法按测试过程是否在实际应用环境中分为静态分析和动态测试。
二、单项选择题
1、模块在同一段时间内完成各种初始化工作,这属于 。
A.偶然内聚 B.逻辑内聚 C.时间内聚 D.过程内聚
2、在编程安全方法方面,一般来说无法做到 。
A. 避开错误 B.完美无缺,绝无错误 C. 冗余 D.设计防错程序
3、在衡量软件质量时,最重要的标准是 。
A. 成本低 B. 可维护性好 C. 符合要求 D. 界面友好
4、下列工具中,不属于详细设计工具的是 。
A. 测试工具 B. 图形工具 C. 表格工具 D. 语言工具
5、下列哪个做法会导致不利的语句结构
A. 避免使用ELSE GOTO结构
B.对递归定义的数据结构尽量不再使用递归过程
C.模块功能尽可能单一化,模块间的耦合能够清晰可见
D.利用信息隐蔽,确保每一个模块的独立性
三、判断题
1、Jackson系统开发方法是一种典型的面向对象的分析设计方法。(×)
第1页
2、HIPO图是由一组IPO图加一张HC图组成,是美国IBM公司在软件设计中使用的主要表达工具。(√)3、在软件开发中采用原型系统策略的主要困难是成本问题。(√)
4、软件开发所需的资源可以画成一个金字塔,塔的高层最基本的资源是人。(√)
5、下图表示的是WHILE型循环。(×)
6、数据流图与程序流程图的主要区别是程序流程图中各处理框之间有严格的时间上的顺序,而数据流图只反映数据的流向,不反映处理逻辑的先后。(√)
四、问答题
1、什么是软件
答:软件是一种产品,包含下面三方面的含义。
(1)在运行中能提供所希望的功能和性能的指令集(即程序);
(2)使程序能够正确运行的数据结构;
(3)描述程序研制过程、方法所用的文档。
2、简述面向数据流的需求分析方法。
答:结构化分析方法是面向数据流进行需求分析的方法。结构化分析方法使用数据流图DFD和数据字典DD来描述,面向数据流问题的需求分析适合于数据处理类型软件的需求描述。其核心思想是分解化解问题,将物理与逻辑表示分开,对系统进行数据与逻辑的抽象。具体来说,结构化分析方法就是用抽象模型的概念,按照软件内部数据传递、变换的关系,自顶向下逐层分解,直到到满足功能要求的所有可实现的软件为止。
3、模块独立性的重要性是什么
答:具有独立性的模块软件比较容易开发出来,独立的模块比较容易测试和维护。
4、简述在编码风格上需要注意的四个问题。
答:(1)源程序文档化 (2)数据说明的方法 (3)语句结构 (4)输入/输出方法
五、分析题
1、根据伪码程序画出程序流程图、盒图(N-S图)。
START ENDIF
A STOP
IF x1 THEN
REPEAT UNTIL x2
b
END REPEAT
ELSE
BLOCK
c
d
第2页
ENDBLOCK START
N
Y
Y N
STOP
2、用Jackson图表示下图所示的二维表格:
学生名册
ipo指的是什么
姓名 | 性别 | 年龄 | 学号 |
…………… | …………… | …………… | …………… |
该学生名册由表头和表体两部分组成。其中表头又顺序包括表名和字段名。表体可由任意行组成,每行包括姓名、性别、年龄和学号。
第3页
软件工程学习资料(2)
一、填空
1、数据流图4种基本图形元素为数据输入的源点和数据输出的汇点、加工、数据流、数据存储文件。
2、软件测试的步骤可分为单元测试、集成测试、确认测试、系统测试。
3、编码风格主要包括四个方面:源程序文档化、数据说明的方法、语句结构、输入/输出方法。
4、模块的独立程度可以由两个定性标准度量,这两个标准分别称为内聚和耦合。
耦合衡量不同模块彼此之间相互依赖的紧密程度。
内聚衡量一个模块内部各个元素彼此结合的紧密程度。
5、结构化程序设计采用自顶向下逐步求精的设计方法和单入口单出口的控制结构。
二、单项选择题
1、软件开发时,一个错误发现得越晚,为改正它所付出的代价就 。
A. 越大 B. 越小 C. 越不可捉摸 D. 越接近平均水平
2、总体设计的目的是确定整个系统的 。
A. 规模 B. 测试方案 C. 费用 D. 功能及模块结构
3、 不是软件维护的内容。
A 编写维护报告 B记录维护数据 C 修改需求分析 D重写相关模块的编码
4、下列各方法中, 不是软件测试方法。
A. 白盒法 B. 黑盒法 C. 动态测试 D. 盒法
5、下列哪个做法会导致不利的语句结构
A.避免过多的循环嵌套和条件嵌套
B.对递归定义的数据结构尽量不再使用递归过程
C.模块功能尽可能单一化,模块间的耦合能够清晰可见
D.确保所有变量在使用前都进行初始化
三、判断题
1、软件产品与其他任何产品不同,它是无形的,完全没有物理属性。(√)
2、使用好的开发工具可以降低开发成本。(√)
3、需求分析报告只有软件分析人员能看懂。(×)
4、无条件转移是程序的基本结构之一。(×)
5、为了提高程序的易读性,尽可能使用高级语言编写程序。(√)
6、Jackson图只能表示数据结构,不能表示程序结构。(×)
四、问答题
1、什么叫软件的生存期软件的生存期可以分为几个阶段
答:一个软件产品从定义、开发、维护到废弃的时间总和称为软件的生存周期。
软件的生存期可以分为7个阶段:
(1)问题定义 (2)可行性研究 (3)需求分析 (4)设计 (5)编码
第4页
(6)测试 (7)运行与维护2、简述程序设计语言的特点。
答:程序设计语言是人与计算机交流的媒介,其特点为:
(1)名字说明 (2)类型说明 (3)初始化 (4)程序对象的局限性
(5)程序模块 (6)循环控制结构 (7)分支控制结构 (8)异常处理
(9)独立编译
3、什么是数据流图简述绘制数据流图的基本步骤。
答:数据流图是描述数据处理过程的工具。数据流图从数据传递和加工的角度,以图形的方式刻画数据从输入到输出的移动变换过程。数据流图的基本4种成分为加工、外部实体、数据流和数据存储文件。画数据流图的基本步骤,就是自外向内,自顶向下,逐层细化,完善求精。
五、分析题
1、根据下列描述,画出教材征订系统的第一层数据流图。学生入学后到教材科订书,教材科根据教材库存情况分析是否需要买书,如需购买,则向书店购买。各种资金往来通过学校的会计科办理。
答:第一层数据流图如下:
订书 订书
发书 发书
收 应
款 付
通 F1 教材库存 款
知 通
知
2、画出下列伪码程序的程序流程图,盒图(N-S图)。
START START
IF p THEN
WHILE q DO N
f
END DO Y
ELSE N
BLOCK
g Y
n
END BLOCK STOP
END IF
STOP
第5页
软件工程学习资料(3)
一、填空
1、软件工程学的基本原则包括分解、独立性、一致性、确定性等。
2、软件生存周期一般可分为问题定义、可行性研究、需求分析、设计、编码、测试、运行与维护阶段。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论