【自己整理】软件工程复习提纲.pdf
文本预览下载声明
软件工程复习提纲(年糕整理,不一定全)
目录
第一章 概述 1
第二章 可行性研究 4
第三章 需求分析6
第五章 总体设计 8
第六章 详细设计 11
第七章 实现13
第八章 维护17
第十三章 软件项目管理 19
第一章 概述
概念
软件危机:在计算机软件的开发和维护过程中遇到的一系列严重的问题。包含
如何开发软件,如何维护已有软件。
软件:计算机程序、方法、规则、相关文档资料以及在计算机上运行时必需的
数据。
软件工程:①把系统的、规范的、可度量的途径应用到软件开发、运行和维护
过程;②研究① 中提到的途径。
软件工程方法学(范型):软件生命周期全过程中使用的一套技术方法的集
合。最广泛的有传统方法学、面向对象方法学。
传统方法学(生命周期方法学、结构化范型):采用结构化计数来完成软件开
发的各项任务,使用适当的软件工具据或软件工程环境来支持结构化技术运
用。
软件生命周期:从提出软件产品(项目)开始,直到该软件被淘汰的全过程。
软件过程:为了获得高质量软件所需要完成的一系列任务的框架,它规定了完
成各项任务的工作步骤。
软件生命周期模型:跨越整个生存期的系统开发、运作和维护所实施的全部过
程、活动和任务的结构框架。
简答
软件危机的 7 个典型表现?
1. 成本进度估计不足。
2. 客户需求经常变更或无法满足。
3. 软件质量无法保证或不可靠。
4. 软件维护无法进行或不可维护。
5. 软件文档缺少或不合要求。
6. 软件成本在总成本中占比逐年提升。
7. 开发生产率的提高速度比计算机应用普及深入速度慢。
软件危机出现的原因?
(1) 来自软件自身的特点:是逻辑部件,缺乏可见性;规模庞大、复杂,修改、
维护困难。
(2) 软件开发与维护的方法不当:忽视需求分析;认为软件开发等于程序编写;
轻视软件维护。
(3) 供求矛盾将是一个永恒的主题:面对日益增长的软件需求,人们显得力不从
心。
软件工程的 7 个本质特性?
1. 关注大型程序。
2. 中心课题是控制复杂性。
3. 软件经常变化。
4. 效率非常重要。
5. 和谐合作是关键。
6. 有效地支持用户工作。
7. 为其他领域和文化背景创造产品。
[记忆]软件工程的 7 条基本原理?
1. 按生命周期计划严格管理。
2. 坚持进行阶段评审。
3. 实行严格的产品控制。
4. 采用现代程序设计技术。
5. 结果应能清楚地审查。
6. 开发小组成员少而精。
7. 不断改进软件工程实践。
分析结构化范型和面向对象范型它们的优缺点?
传统方法学:也称为生命周期方法学或结构化范型。
优点:把软件生命周期划分成基干个阶段,每个阶段的任务相对独立,而且比
较简单,便于不同人员分工协作,从而降低了整个软件开发过程的困难程度。
缺点:当软件规模庞大时,或者对软件的需求是模糊的或会承受时 间而变化的
时候,开发出的软件往往不成功;而且维护起来仍然很困难。
2. 面向对象方法学:
优点:降低了软件产品的复杂性;提高了软件的可理解性;简化了软件的开发
和维护工作; 促进了软件重用。
[记忆]软件生命周期的 3 个时期、8 个阶段?
三个时期:软件定义、设计实现、运行维护。
八个阶段:
1. 问题定义
2. 可行性研究
3. 需求分析
4. 总体设计
5. 详细设计
6. 编码和单元测试
7. 综合测试
8. 软件维护
举例生命周期模型?
瀑布模型、快速原型模型、增量模型、螺旋模型、喷泉模型。
比较各个生命周期模型的优缺点
瀑布模型
优点:提供了一个使得分析、设计、编码、测试和支持的方法有共同指导的模
板。缺点:(1)实际的项目大部分情况难以按照该模型给出的顺序进行,而且这
种模型的迭代是间接的,这很容易由微小的变化而造成大的混乱。
(2)经常情况下客户难以表达真正的需求,而这种模型却要求如此,这种模型是
不欢迎具有二义性问题存在的。
(3)客户要等到开发周期的晚期才能看到程序运行的测试版本,而在这时发现大
的错误时,可能引起客户的惊慌,而后果也可能是灾难性的。
快速原型模型
优点:使用户能够感受到实际的系统,使开发者能够快速地构造出系统的框
架。缺点:产品的先天性不足,因为开发者常常需要做实现上的折中,可能采
用不合适的操作系统或程序设计语言,以使原型能够尽快工作。
显示全部