软件工程复习

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

软件工程提纲
第一章
1、软件的特点:软件是一种逻辑实体,而不是有形的系统元件,其开发成本和进度难以准确估算;软件是
被开发的或被设计的,没有明显的制造过程,一旦开发成功,只需复制即可,但其维护的工作量大;软件的使用没有硬件那样的机械磨损和老化问题。

P2
2、支撑软件:支撑软件是支撑软件的开发和维护的软件。

应用软件:应用软件是特定应用领域专用的软件。

P3
3、软件语言:软件语言是用于书写计算机软件的语言,主要包括:需求定义语言、功能性语言、设计性语
言、、实现性语言和文档语言。

P3
4、功能性语言:功能性语言是用于书写软件功能规约的语言,通常又称为功能规约语言。

设计性语言:设计性语言是用于书写软件设计规约的语言。

实现性语言按成分性质可分为顺序语言、并发语言、分布语言。

P4
5、软件工程:将系统化的、严格约束的、可量化的方法应用于软件的开发、运行和维护,即将工程化应用
于软件。

P5
6、软件工程的框架课概括为目标、过程和原则。

软件工程的目标指生产具有正确性、可用性和开销合宜的产品。

软件工程的过程指生产一个最终满足需求且达到工程目标的软件产品所需要的步骤。

软件工程的原则:1、选取适宜的开发模型;2、采用合适的设计方法;3、提供高质量的工程支撑;4、重视软件工程的管理。

P6
7、软件工程生存周期是指软件产品或软件系统从产生、投入使用到被淘汰的全过程。

P7
大致分为六个阶段:计算机系统工程、需求分析、设计、编码、测试、运行和维护。

8、软件生存周期中可以开展的活动分为5个基本过程、9个支持过程和7个组织过程。

P8
9、能力成熟度模型(CMM)目的是提供一种评价软件承接方能力的方法,也可用于帮助软件组织改进其
软件过程。

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

(书上P17的模型了解)
特点:1、接受上一阶段活动的结果作为本阶段活动的输入
2、依据上一阶段活动的结果实施本阶段应完成的活动
3、对本阶段的活动进行评审
4、将本阶段活动的结果作为输出,传递给下一阶段
缺点:缺乏灵活性,在某个活动中发现的错误往往是由前一阶段活动的错误引起的。

P16
11、喷泉模型:是一种支持面向对象开发的过程模型。

P21
12、基于构件的开发模型包括领域工程和应用系统工程。

P21
13、软件工具按软件过程的活动来分为:1、支持软件开发过程的工具;2、支持软件维护过程的工具;3、
支持软件管理过程和支持过程的工具。

P24
14、软件工具的评价和选择:1、功能;2、易用性;3、稳健性;4、硬件要求和性能;5、服务和支持。

P24
15、环境集成机制主要有数据集成、界面集成和控制集成。

P25
第三章
1、需求获取(目的内容):在需求获取阶段系统分析人员通过与用户的交流、对现有系统的观察以及对任
务进行分析,确定系统或产品范围的限制性描述、与系统或产品有关的人员及特征列表、系统的技术环境的描述、系统功能的列表及应用于每个需求的领域限制、一组描述不同运行条件下系统或产品使用状
况的应用场景以及更好地定义需求而开发的原型。

P33
第四章
1、软件设计的任务:数据/类设计、体系结构设计、接口设计、部件级设计。

P46
2、模块(软件)的独立性:内聚度和耦合度来衡量。

内聚度衡量同一个模块内部的各个元素彼此结合的紧密程度
耦合度衡量不同模块彼此相互依赖的紧密程度。

P51
第五章
1、分层数据流图的一致性:1、父图与子图平衡;
2、数据守恒
数据守恒:1、一个加工所有输出数据流中的数据,必须能从该加工的输入数据流中直接获得,或者能通过该加工的处理而产生;2、加工未使用其输入数据流中的某些数据项。

2、结构化设计的步骤:1、建立初始结构图;2、对结构图的改进;
3、书写设计文档;
4、设计评审。

P96
3、信息流可分为变换流和事务流。

理解特点会判断(必考)
变换流信息沿着输入路劲进入系统,并将输入信息的外部形式经过编辑、格式转换、合法性检查、预处理等辅助性加工后变成内部形式,内部形式的信息通过变换中心的处理,再沿着输出路径经过格式转换、组成物理块、缓冲处理等辅助性加工后变成输出信息,送到系统外;事务流:数据沿着输入路径到达一个事物中心,事物中心根据输入数据的类型在若干条动作路径中选择一条来执行。

P97
4、数据流图映射到结构图的步骤:1、复审和精化数据流图;2、确定数据流图的类型;3、将DFD映射
成初始结构图;4、改进初始结构图。

P98
第七章
1、主题域分为结构化域、动态域、物理域和模型管理域。

P131
第八章
1、用况建模步骤:1、定义系统;
2、确定执行者;
3、确定用况;
4、描述用况;
5、定义用况间的关系;
6、确认模型。

P137
2、泳道:一幅活动图可分成若干个矩形区,每个矩形区为一个泳道。

P171
第十章
1、敏捷宣言的价值观:个体和交互重于过程和工具,工作的软件重于详尽的文档,客户合作重于合同谈判,
响应变化重于遵循计划。

P200
第十一章
1、黄金原则:1、让用户拥有控制权;
2、减少用户的记忆负担;
3、保持界面一致。

P231
第十二章
1、选择与评价程序设计语言考虑的因素:1、项目所属的领域;
2、算法和计算的复杂性;
3、软件执行
的环境;4、用户需求、特别是性能上的考虑与实现的条件;5、数据结构的复杂性;6、软件开发人员的知识水平和心理因素;7、可用的编译器与交叉编译器。

P240
第十三章
1、数据流测试:根据程序中变量的定义和引用位置来选择测试用例,以发现变量赋值和引用方面的错误。

P257
2、一种测试策略就是将测试分为单元测试、集成测试、确认测试和系统测试。

P167
V模型:系统工程-----------------系统测试
需求分析-------------确认测试
设计------------集成测试
编码-------单元测试
3、回归测试:对已经进行过测试的测试用例子集的重新测试,以确保对程序的改变和修改,没有传播非
故意的副作用。

P272
第十五章
1、软件维护分类:根据起因不同,软件维护可分为纠错性维护、适应性维护、改善性维护和预防性维护。

P298
2、结构化维护:采用软件工程的方法进行软件开发,保证每个阶段都有完整且详细的文档,这样维护会
相对容易,被称为结构化维护。

反之,只有程序没有文档,则维护工作将变得十分困难,为非结构化维护。

P298
第十六章
1、软件度量:指计算机软件范围内的测量,主要是为产品开发的软件过程和产品本身定义相关的测量方
法和标度,对软件开发过程度量的目的是为了对过程进行改进,对产品进行度量的目的是为了提高产品的质量。

度量的作用是为了有效地采用定量的方式来进行管理。

P315
2、程序设计小组的组织形式:1、主程序员制小组;2、民主制小组;
3、层次制小组;P348
3、软件配置:指软件产品在不同时期的组合。

该组合随着开发工作的进展而不断变化。

配置管理:指应用技术的和管理的指导和监控方法以标识说明配置项的功能和物理特征,控制这些特征的变更,记录且报告变更处理和实现状态,并验证与规定的需求的遵循性。

P355。