软件工程导论期末复习重点

  • 格式:doc
  • 大小:46.50 KB
  • 文档页数:3

下载文档原格式

  / 8
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

软件工程期末复习

一、软件工程学概述

1.软件危机:计算机开发和维护的过程中所遇到的一系列问题

名词解释(需要加上软件危机产生的原因)

对用户的要求没有完整准确的认识就匆忙着手编写程序

论述题(需要加上软件危机的典型表现)

01.对软件开发成本和嫉妒的估计常常不准确

02.用户对已完成软件系统的不满意情况经常发生

03.软件的质量靠不住

2.软件工程:指导计算机开发和维护的一门工程学科☞名词解释

3.软件工程方法学的三要素:方法、工具、过程

4.软件生命周期的三个时期:软件定义、软件开发、运行维护

01.软件定义时期的三个阶段:问题定义、可行性研究、需求分析

02.软件开发时期的四个阶段:总体设计、详细设计、编码、单元测试,综合测试,前

两个称系统设计,后两个称系统实现

03.软件维护时期:只要任务是使软件持久的满足用户的需要,具体的说,当软件在使

用过程中发现错误时应该加以纠正,当环境改变时应修改软件以适应新的环境,当

用户有新的需要时,应该及时改进软件以满足用户新的需求,本时期不在划分阶段,

但是每一次维护活动本质上都是一次压缩和简化了的定义和开发过程

5.可行性研究的结果是客户做出是否继续这项工程的决定的重要依据,只有投资取得较大

收益的的那些工程项目才是值得继续进行下去的

6.需求分析的目标是:确定出系统必须具备哪些功能,和用户密切配合,充分交流信息,

以得出经过系统确认的系统逻辑模型

7.软件维护的四类维护活动:

01.改正性维护:改正和诊断在使用过程中发生的软件错误

02.适应性维护:修改软件以适应新的环境变化

03.完善性维护:根据用户的需求改善和扩充软件使它更完善

04.预防性维护:为将来的维护活动事先做准备

8.瀑布模型: ☞论述题

01.传统的瀑布模型开发软件的特点

A.阶段间具有顺序性和依赖性

B.推迟实现的观点

C.质量保证的观点

02.软件配置:程序、文档、数据

03.注释有什么用:提高代码的可读性(有待补充)

二、可行性研究

1.可行性研究的目的:就是用最小的代价在尽可能短的时间内确定问题是否能够解决

2.从三个方面研究每种解法的可读性;

01.技术可行性:使用现在的技术能实现这个系统吗?

02.经济可行性:这个系统的经济效益能超过它的开发成本吗?

03.操作可行性:系统的操作方式在这个用户组织内能行得通吗?

3.系统流程图:是概括的描绘物理系统的传统工具。它的基本思想是用图形符号以黑盒子

的形式描绘组成系统的每个部件(程序、文档、数据库、人工过程等)。系统流程图表达的是系统各部件之间的流动情况,而不是对数据进行加工处理的过程,因此,尽管系统流程图的某些符号和系统流程图的符号形式相同,但是它确是物理数据流程图而不是程序流程图。

4.数据流图:当数据在软件系统中移动时,它将被一系列的变换所修改。数据流图(DFD)

是一种图形化技术,它描绘信息流和数据从输入设备移动到输出的过程中所经受的变换。在数据流图中没有任何具体的物理部件,它只是描绘数据在软件中流动和被处理的逻辑过程。数据流图是系统逻辑功能的图形表示,即使不是计算机的专业人员也很容易理解它,因此,是分析员和用户之间极好的通信工具。设计数据流图时只需考虑系统必须完成的基本逻辑功能,完全不需要考虑要怎样具体的实现这些功能,所有是今后进行软件设计的很好的出发点。☆

5.数据流图和数据字典共同构成系统的逻辑模型,没有数据字典,数据流图就不严格,然

而,没有数据流图,数据字典就难以发挥作用。只有数据流图和对数据流图中每个元素的精确定义放在一起,才能共同构成系统的规格说明

6.数据字典的四类元素的定义组成:

01.数据流

02.数据流分量(数据元素)

03.数据存储

04.处理

7.成本效益的分析方法(要求会计算)P51—P52

8.课后第3题—航空公司的机票预定系统,要求写出问题定义并分析次系统的可行性

三、需求分析

1.E-R图概念:用来建立数据模型,包含了实体(数据对象)、关系、属性三种基本成分,

通常用矩形框代表实体,用连接相关实体的菱形框代表关系,用椭圆形或圆角矩形表示实体(关系)的属性,并用实体(关系)与其属性连接起来,可以作为用户和分析员之间有效的交流工具(有待改善)

2.要求会画E-R图及状态转换图(某校教学管理ER图)P63-67

3.课后第6题用状态转换图描绘复印机的行为

四、形式化说明技术

1.Petri网(形式化说明工具)

五、总体设计

1.总体设计的两个阶段(有待完善)☞论述题

2.模块化概念:把程序划分为独立命名且可独立访问的模块,每个模块完成一个子功能,

把这些模块集成起来构成一个整体,可以完成指定的功能,满足用户的需求

3.耦合:对一个软件模块内不同程度之间互连程度的度量

内聚:标志着一个模块内各个元素彼此结合的紧密程度

判断出程度的高低

4.深度:表示软件结构中控制的层数,往往能粗略的标志一个系统的大小和复杂程度

宽度:软件结构内同一个层次上的模块总数的最大值

扇出:一个模块直接控制(调用)的模块数目

扇入:有多少个上级模块可以直接调用它

六、详细设计

5.结构程序设计:如果一个程序的代码块仅仅通过顺序、选择和循环这三种基本控制结构

进行连接,并且每个代码块只有一个入口和一个出口,则称这个程序是结构化的

6.人机设计界面属于软件生命周期详细设计阶段

7.软件过程设计工具有哪几个P125

8.判定表作为一类题航空公司行李费的计算p128

9.Jackson给出描述能够画出图

七、实现

1.测试目的:是为了发现到现在为止还没有发生的错误

2.什么样的测试是好的测试

3.黑白盒的测试概念及解释

黑盒测试是把软件看作一个黑盒子,完全不考虑程序的内部结构和处理过程。也就是说,黑盒测试是在程序接口进行的测试,它只检查程序功能是否按照规格说明书的规定正常使用,程序是否是否能适当的接受数据并产生正确的输出信息,程序运行过程中能否保持外部信息(例如数据库或文件)的完整性。又称为功能测试

白盒测试刚好相反,它的前提是可以把程序看作一个透明的白盒子里,测试者完全知道程序的结构和处理算法。这种方法按照程序内部的逻辑测试程序,检测程序中的主要执行通路是否都能按照预定的要求正常工作,又称为结构测试

给出具体写出测试用例

4.逻辑覆盖给出条件满足哪个覆盖P162-165

5.黑盒测试技术测试功能(有待)

八、维护(软件生命周期的最后阶段)

1.软件维护的定义:是在软件已经交付使用之后,为了改正错误或者满足新的需要而修改

软件的过程,可以通过软件描述软件交付使用后可以进行的4项活动,具体定义软件维护

2.4类维护活动及概念(有待解决)