软件工程要点(包括部分内容)

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

1,软件工程基本概念

软件工程是软件工程师用工具和技术(方法),按照某一过程和范例来构造软件,从而增强软件产品的质量,更有效地解决问题.

2,软件危机的原因

a , 软件产品是复杂的人造系统,具有复杂性、不可预见性和易变性,难以处理。

b ,个人和小组非常有效的开发小型软件的编程技术和过程,在开发大型、复杂系统时难以发挥同样的作用。

c ,软件是知识产品,技术更新快,行业竞争激烈,难以在可以接受的成本和工期内提供高质量的产品。

3,软件工程包括的四个元素(特点)

方法(methods) 语言(languages) 工具(tools) 过程(procedures)

4,软件的生命周期(由哪几部分组成)

计划需求分析设计程序编写测试运行维护等六个步骤

5,瀑布模型(有哪几种模型)

6,面向对象生存期模型

7,面向对象性—统一过程

8,可行性研究目的、任务(技术、经济、操作)

目的:确定问题是否值得去解

任务

进一步分析和澄清问题的定义

导出系统的逻辑模型

探索若干种解决方案,并分析各种方案的

技术可行性

经济可行性

操作可行性

对以后的行动方针提出建议

9,数据流图(*)

数据字典的定义

对数据流图中包含的所有元素的定义的集合

10,需求分析的任务,综合要求

分析系统的数据要求

导出系统的逻辑模型:

数据流图,

数据字典,

处理算法。

修正系统开发计划

开发原型系统

功能性能可靠性和可用性出错处理接口需求约束逆向需求

11,分析过程的基本方法

结构化分析方法(SA)

面向对象的分析方法(OOA)

12,什么是概念模型或信息模型

按用户的观点来对数据和信息建模

13,概念模型的基本概念E-R图

概念模型的基本概念

实体(Entity):客观存在并可相互区分的事务

属性(Attribute)

码(Key)

域(Domain)

实体型(Entity Type)

实体集(Entity Set)

联系

14,状态转换图

15,IPO图

16,知道有哪几种形式化说明技术

形式化方法:用基于数学的技术描述系统需求规格说明和设计结果。

非形式化方法:用自然语言描述系统需求规格说明和设计结果。

半形式化方法:用数据流图或E-R图描述需求规格说明和设计结果。17,总体设计的任务

划分出组成系统的物理元素;设计软件的结构。

18,总体设计的过程

设想供选择的方案:设计各种可能的分组。

选取合理的方案。

对每个方案准备以下资料:

系统流程图

物理元素清单

成本/效益分析

进度计划

推荐最佳方案,并制定详细的实现计划。

19,模块化(*)(概念)

模块化:将程序分成若干个模块。

模块化的目的:将复杂问题简单化。

模块化程度应适当。

20,抽象的定义

抽象是抽取事务的本质特性而暂不考虑细节

21,模块独立

模块的独立性:每个模块的功能相对独立,与其他模块的关系简单。

模块独立的优势

易于分工开发;

易于测试和维护。

通过模块化、抽象、信息隐蔽和局部化,即可达到模块独立。

22,耦合内聚(*)

低内聚

偶然内聚:一个模块完成的一组任务之间有松散的关系。

逻辑内聚:完成的任务在逻辑上属于相同或相似的一类。

时间内聚:完成的任务必须在同一段时间内执行。

中内聚

过程内聚:模块内的处理元素相关且须以特定次序执行。

通信内聚:模块内的所有元素都使用同一个输入数据和(或)产生同一个输出数据。

高内聚

顺序内聚:模块内的处理元素和同一个功能密切相关,且须顺序执行。

功能内聚:一个模块内的处理元素属于一个整体,完成一个单一的功能。

23,信息流的分类

24,数字仪表板(分析)(*)

25,详细设计任务和目标

(程序流程图)

任务

设计程序流程图,从而确定具体实现系统的方法。

目标

从逻辑上正确实现每个模块的功能;

设计的处理过程应尽可能简明易懂。

26,结构程序设计的定义,优点

定义

采用自顶向下逐步求精的设计方法和单入口单出口的控制结构。

结构程序设计的优点

可以提高程序的开发效率和成功率。

程序层次结构清晰,易于阅读、理解、测试和维护。

容易保证程序的正确性。

27,N-S图

28,环形复杂度

29,实现的定义(英文写的不知道...)

30,测试的定义,目标

目标:

测试是指为了发现程序中的错误而执行程序的过程,并最终修正错误(调试)。

测试不可能发现软件中所有的错误。

31,测试的方法(黑、白)

黑盒测试(功能测试):检验程序的每个功能是否正常。

白盒测试(结构测试):检验程序的逻辑结构和处理过程是否正常。

32,步骤

模块测试

子系统测试

系统测试

验收测试

平行运行(试运行)

33,单元测试的主要内容

模块接口

局部数据结构

重要的执行通路

出错处理通路

相关文档
最新文档