软件工程复习

发布 2022-01-11 22:43:28 阅读 9595

p267.测试策略:软件测试策略吧软件测试用例的设计方法集成到一系列经周密计划的步骤中去,从而使软件的测试得以成功地完成。

早期的测试主要关注单个模块或构件,以揭露模块或构件中数据和处理策略的错误。之后经测试的模块或构件需集成为完整的系统,并对进行集中测试。最后,再执行一系列高端测试,以揭露与需求不符合的错误。

p297.软件维护:是软件生存周期中的最后一个阶段,是指软开系统交付使用以后,为了改正错误或满足性的需求而修改软件的过程。

分类:纠错性维护、适应性维护、改善性维护、预防性维护。

p300.软件维护的过程:建立维护组织、确定维护过程、保管维护记录、进行维护评价。

p16.瀑布模型。

它给出了软件生存周期活动的固定顺序,上一阶段的活动完成后向下一阶段的活动过渡,最终得到所开发软件产品。

其特征:接受上一阶段活动的结果作为本阶段活动的输入。

依据上一阶段活动的结果实施本阶段应完成的活动。

对本阶段的活动进行评审。

将本阶段活动的结果作为输出,传递给下一阶段。

优缺点:首先,客户常常难以清楚地描述所有的需求,而且在开发过程中,用户的需求也常常会有所变化,使得不少软件的需求存在着不确定性;在某个活动中发现的错误常常是由前一个阶段活动的错误引起的,为了改正这一错误必须回到前一阶段,这就导致瀑布的倒流,也就是说,实际的软件开发很少能按瀑布模型的顺序没有回流的顺流而下。其次,瀑布模型使得客户在测试完成以后才能看到真正可运行的软件,此时,如果发现不满足客户需求的问题(由于需求不确定性),那么修改软件的代价是巨大的。

p49.软件设计原则。

1、抽象与逐步求精。

抽象:抽象的过程是从特殊到一般的过程,上层概念是下层概念的抽象,下层概念是上层概念的精化和细化,主要抽象手段:过程抽象和数据抽象。

逐步求精。把问题的求解过程分解成若干步骤或阶段,每一步都比上一步更精化,更接近问题的解法。

2、模块化。

把软件按照规定原则,划分为一个个较小的,相互独立的但又相互关联的部件。

3、信息隐藏。

每个模块的实现细节对于其他模块来说应该是隐藏的。

4、功能独立。

内聚:是一个模块内部各个元素彼此结合的紧密程度的度量。

耦合:是模块之间的相互独立性(互相连接的紧密程度)的度量。

p54.软件体系结构的风格。

1、数据为中心的体系结构。

一些数据(如一个文件或者数据库)保存在整个结构的中心,并且被其他部件频繁地使用、添加、删除、修改。

2、层次式风格的体系结构。

在这种结构中,定义不同的层次,每层都完成了相对外层更靠近机器指令的操作。在最外面的层中,部件向用户提供接口操作,在最内的层中,部件使用系统接口。每个中间层都是对内层接口的封装。

p94.启发式设计策略。

改造程序结构图,降低耦合度,提高内聚度。

避免高扇出,并随着深度的增加,力求高扇入。

模块的影响范围应限制在改模块的控制范围内。

降低模块接口的复杂程度和冗余程度,提高一致性。

模块的功能应是可**的,避免对模块施加过多的限制。

尽可能设计单入口和单出口的模块。

p106.结构图改进技巧。

减少模块间的耦合度。

消除重复功能。

消除“管道”模块。

模块的大小适中。

避免高扇出。

考虑全局。p190.对可复用构件的要求。

构件设计应具有较高的通用性。

构件应易于定制。

构件应易于组装。

构件必须具有可检索性。

构件必须经过充分的测试。

p240.程序设计语言的选择:

项目所属的领域。

算法和计算的复杂性。

软件执行的环境。

用户需求,特别是性能上的考虑与实现的条件。

数据结构的复杂性。

软件开发人员的知识水平和心理因素。

可用的编译器与交叉编译器。

软件工程复习

单选填空简答思考题。1 传统的软件瀑布生命模型包括哪六个方面?需求 分析 设计 实现 交付后维护 退役2 传统瀑布生命模型的中交付后维护包括哪三种?改正性维护 适应性维护 完善性维护3 现代维护和传统维护的观点有何不同?1 传统维护的观点是先开发后维护。2 现代维护的观点是无论是在软件安装前还是安装...

软件工程复习

软件工程复习资料。备注 1.老师反复强调我们之前做过的作业要熟练掌握 需求陈述 实验课画的模型 自己画。的数据流图 2 蓝颜色的字都是老师上课补充的,还有很多需要自己去补充,欢迎修正完善。核心问题 在考试做大是要表述清楚详细,关。键词要有 问题定义 专用名词表要解决的问题是什么?达要准确,不能更改 ...

软件工程 复习

1.概念 软件危机是指在计算机软件开发 使用与维护过程中遇到的一系列严重问题。2.为什么会产生软件危机?当软件开发技术的进步不能跟上硬件技术的进步,未能满足发展的要求,致使软件开发中遇到的问题找不到解决的办法,使问题积累起来,形成了尖锐的矛盾,因而导致了软件危机。3.软件危机的表现 经费预算经常突破...